checkUid()){ return response()->error('NOT_LOGIN'); } $data = UserService::getById($this->uid); $data['is_vip'] = 0; $data['vip_days'] = 0; $year_record = YearOrderService::getRecord($this->uid); if($year_record){ $data['is_vip'] = 1; $time = strtotime($year_record['end_time'])-time(); if($time>=86400){ $data['vip_days'] = floor($time/86400).'天'; }elseif ($time>3600) { $data['vip_days'] = floor($time/3600).'小时'; }elseif ($time>60) { $data['vip_days'] = floor($time/60).'分钟'; }else{ $data['vip_days'] = $time.'秒'; } } $data['is_all_life'] = 0; $activity_id = env('FOREVER_ACTIVITY_ID'); if($activity_id){ if(OrderService::userIsParticipateActivity($this->uid,$activity_id)){ $data['is_vip'] = 0 ; $data['vip_days'] = '99年'; $data['is_all_life'] = 1; } } return response()->success($data); } /** * @apiVersion 1.0.0 * @apiDescription 用户签到记录 * @api {GET} user/sign_record 用户签到记录 * @apiGroup User * @apiName signRecord * @apiSuccess {int} code 状态码 * @apiSuccess {String} msg 信息 * @apiSuccess {object} data 结果集 * @apiSuccess {reward} data.reward 奖励金额. * @apiSuccess {sign_time} data.sign_time 签到时间. * @apiParam {page} page * @apiSuccessExample {json} Success-Response: * * { * code: 0, * msg: "", * data: { * list: [ * { * reward: 50, * sign_time: "2018-03-20 13:43:11" * }, * { * reward: 50, * sign_time: "2018-01-18 16:22:33" * }, * ], * meta: { * total: 12, * per_page: 15, * current_page: 1, * last_page: 1, * next_page_url: "", * prev_page_url: "" * } * } * } */ public function signRecord(Request $request){ $sign_result = paginationTransform(new SignRecordTransformer(),UserSignService::getUserSignRecord($this->uid)); $sign_status = UserSignService::isSign($this->uid); $result = [ 'sign_status'=>$sign_status, 'sign_result'=>$sign_result ]; return response()->success($result); } public function getCoupons(Request $request){ $activity_id = $request->input('activity_id'); if(!DB::table('discount_coupons')->where('uid',$this->uid)->where('activity_id',$activity_id)->count()){ DB::table('discount_coupons')->insert([ 'uid'=>$this->uid, 'activity_id'=>$activity_id, 'created_at'=>date('Y-m-d H:i:s'), 'updated_at'=>date('Y-m-d H:i:s') ]); } return response()->success(); } public function sign(Request $request){ //sign_days //$day = date('Y-m-d'); $sign = UserSignService::isSign($this->uid); $sign_count = ReadRecordService::getSignCount($this->uid); if($sign){ //如果已经签过到 if(!$sign_count){ ReadRecordService::setSignCount($this->uid,1); ReadRecordService::setSignDay($this->uid); $sign_count = 1; } $fee = 30; if($sign_count>=3){ $fee = 50; } $data = ['sign_days'=>$sign_count,'sign_reard'=>$fee,'status'=>1]; return response()->success($data); } //还没有签到 $status = UserSignService::signToday($this->uid); $sign_count = ReadRecordService::getSignCount($this->uid); $data = ['sign_days'=>$sign_count,'sign_reard'=>$status,'status'=>0]; return response()->success($data); } public function recordShare(Request $request){ if(!$this->checkUid()){ return response()->error('NOT_LOGIN'); } $uid = $this->uid; $distribution_channel_id = $this->distribution_channel_id; $type = 'click'; $bid = $request->get('bid'); $cid = $request->get('cid',0); if(!$bid){ return response()->error('PARAM_ERROR'); } !is_numeric($bid) && $bid = Hashids::decode($bid)[0]; WapReaderPageFissionService::createV2($uid,$bid,$distribution_channel_id,$type,0,$cid); $user = $this->_user_info; $data = []; if(in_array($distribution_channel_id,[2,14,211]) && $user){ $data['username'] = $user->nickname; $data['head_img'] = $user->head_img; $url = 'https://'._domain().'/detail?fromtype=readershare&id='.Hashids::encode($bid).'&fromflag='.$uid; //$url = str_replace('http://', $h5_scheme . '://', url()->current() . '?' . http_build_query($params)); $data['share_url'] = $url; } return response()->success($data); } /** * @apiVersion 1.0.0 * @apiDescription 用户点击广告统计 * @api {post} user/advisitstat 用户点击广告统计 * @apiGroup User * @apiName signRecord * @apiParam {Int} bid bid * @apiParam {Int} cid cid * @apiParam {Int} type type类型(CLICK|UNLOCK) * @apiSuccess {int} code 状态码 * @apiSuccess {String} msg 信息 * @apiSuccess {object} data 结果集 * @apiParam {page} page * @apiSuccessExample {json} Success-Response: * * { * code: 0, * msg: "", * data: { * { * reward: 50, * sign_time: "2018-03-20 13:43:11" * }, * { * reward: 50, * sign_time: "2018-01-18 16:22:33" * }, * } * } */ public function adVisitStat(Request $request){ $bid = $request->get('bid'); $cid = $request->get('cid',0); $type = $request->get('type'); if(!$bid || !$type){ return response()->error('PARAM_ERROR'); } !is_numeric($bid) && $bid = Hashids::decode($bid)[0]; AdVisitStatService::create($this->uid,$bid,$cid,$type); return response()->success(); } public function urgeUpdate(Request $request){ $bid = $request->get('bid'); if(!$bid){ return response()->error('PARAM_ERROR'); } $bid = Hashids::decode($bid)[0]; $result = BookUrgeUpdateService::UrgeRecord($this->uid,$bid); if($result && !$result->id){ BookUrgeUpdateService::UrgeUpdate($this->uid,$bid,$result->updated_at); } return response()->success(); } function logout() { setcookie(env('COOKIE_AUTH_WEB_WECHAT'), '', -1); setcookie('u', '', -1); return response('logout'); } function test_add_user_login_cookie(Request $request) { $uid = $request->get('uid'); \Log::info('test_add_user_login_cookie:'.$uid); Cookie::queue(env('COOKIE_AUTH_WEB_WECHAT'), $uid, env('U_COOKIE_EXPIRE'), null, null, false, false); return response('add_cookie:'.$uid); } }