where("uid",$request->user["uid"])->order("id desc")->find(); $userAuditData = (new UserAudit)->where("uid",$request->user["uid"])->order("id desc")->find(); $typeAuditData = (new TypeAudit)->where("uid",$request->user["uid"])->order("id desc")->find(); $data = []; $data['nickname'] = $request->user['nickname']; $data['avatar'] = $request->user['avatar']; $data['name'] = $request->user['name']; $data['info_audit_status'] = empty($infoAuditData)?-2:$infoAuditData["status"]; $data['user_audit_status'] = empty($userAuditData)?-2:$userAuditData["status"]; $data['type_audit_status'] = empty($typeAuditData)?-2:$typeAuditData["status"]; return app('json')->success($data); } /** * 设置用户信息 * @param Request $request */ public function setUserInfo(Request $request){ $post = UtilService::getMore([ ['avatar',''], ['nickname',''], ['name',''], ['mobile',''], ['sex', ''], ],$request); $save=[]; if(!empty($post["avatar"])){ $save["avatar"] = $post["avatar"]; } if(!empty($post["nickname"])){ $save["nickname"] = $post["nickname"]; } if(!empty($post["name"])){ $save["name"] = $post["name"]; } if(!empty($post["mobile"])){ if(is_mobile($post["mobile"])){ return app("json")->fail("请输入正确的手机号码"); } $save["mobile"] = $post["mobile"]; } if(in_array((string)$post["sex"],["0","1","2"])){ $save["sex"] = (int)$post["sex"]; } if(empty($save)){ return app("json")->fail("提交数据为空"); } //是否需要审核 $isInfoAudit = 0; if($isInfoAudit==0){ $r = (new UserModel)->where("uid",$request->user["uid"])->update($save); if(!$r){ return app("json")->fail("提交数据为空"); } }else{ $data = (new UserAudit)->where("uid",$request->user["uid"])->order("id desc")->find(); if(!empty($data) && $data["status"]==0){ return app('json')->fail("资料审核中,请勿重复提交"); } $save["uid"] = $request->user["uid"]; $save["status"] = 0; $r = (new UserAudit)->insert($save); if(!$r){ return app("json")->fail("提交数据为空"); } } return app("json")->success("提交成功"); } /** * 提交资料审核 * @param Request $request */ public function subInfoAudit(Request $request){ $data = (new InfoAudit)->where("uid",$request->user["uid"])->order("id desc")->find(); if(!empty($data) && $data["status"]==0){ return app('json')->fail("资料审核中,请勿重复提交"); } $post = UtilService::getMore([ ['avatar',''], ['name','','empty','请输入真实姓名'], ['mobile','','is_moblie','请输入正确的手机号码'], ['idcard','','empty','请输入正确的身份证号码'], ['birthday',''], ['service_type',''], ['service_price',''], ['service_area',[]], ['service_project',[]], ['service_intro_content',''], ['service_intro_imgs',[]], ['service_audit_imgs',[]], ],$request); $save=[]; $save["avatar"] = empty($post["avatar"]) ? "" : $post["avatar"]; $save["name"] = empty($post["name"]) ? "" : $post["name"]; $save["mobile"] = empty($post["mobile"]) ? "" : $post["mobile"]; $save["idcard"] = empty($post["idcard"]) ? "" : $post["idcard"]; $save["birthday"] = empty($post["birthday"])? 0 : strtotime($post["birthday"]); //服务类型 if(!empty($post["service_type"])){ $timeTypeData = (new ServiceTimeType)->where("code",$post["service_type"])->where("status",1)->select(); if(empty($timeTypeData)){ return app('json')->fail("服务时长类型不存在"); } $save["service_type"] = $post["service_type"]; } //服务价格区间 $save["service_price"] = empty($post["service_price"]) ? "" : $post["service_price"]; //服务区域 $cityModel = new CityModel(); if(!empty($post["service_area"]) && is_array($post["service_area"])){ $saveAre=[]; foreach($post["service_area"] as $k=>$v){ if(empty(trim($v))){ continue; } $itemData = $cityModel->where("name",trim($v))->where("level",2)->find(); if(!empty($itemData)){ $saveAre[]=$itemData["id"]; } } if(!empty($saveAre)){ $save["service_area"] = implode(",", $saveAre); } } //服务内容 $serviceTypeModel = new ServiceTypeModel(); if(!empty($post["service_project"]) && is_array($post["service_project"])){ $saveCon=[]; foreach($post["service_project"] as $k=>$v){ if(empty(trim($v))){ continue; } $itemData = $serviceTypeModel->where("id",(int)$v)->where("status",1)->find(); if(!empty($itemData)){ $saveCon[]=$itemData["id"]; } } if(!empty($saveCon)){ $save["service_project"] = implode(",", $saveCon); } } $save["service_intro_content"] = empty($post["service_intro_content"])?"": $post["service_intro_content"]; $save["service_intro_imgs"] = empty($post["service_intro_imgs"]) ?"": implode(",", $post["service_intro_imgs"]); $save["service_audit_imgs"] = empty($post["service_audit_imgs"]) ?"": implode(",", $post["service_audit_imgs"]); $save["status"] = 0; $save["time"] = time(); $save["uid"] = $request->user["uid"]; $r = (new InfoAudit)->insert($save); if(!$r){ return app('json')->fail("系统错误"); } return app('json')->success("提交成功,请耐心等待审核"); } /** * 提交资料审核2 * @param Request $request */ public function subTypeAudit(Request $request){ $data = (new TypeAudit)->where("uid",$request->user["uid"])->order("id desc")->find(); if(!empty($data) && $data["status"]==0){ return app('json')->fail("资料审核中,请勿重复提交"); } $post = UtilService::getMore([ ['avatar',''], ['name','','empty','请输入真实姓名'], ['mobile','','is_moblie','请输入正确的手机号码'], ['idcard','','empty','请输入正确的身份证号码'], ['birthday',''], ['service_type',''], ['service_price',''], ['service_area',[]], ['service_project',[]], ['service_intro_content',''], ['service_intro_imgs',[]], ['service_audit_imgs',[]], ],$request); $save=[]; $save["avatar"] = empty($post["avatar"]) ? "" : $post["avatar"]; $save["name"] = empty($post["name"]) ? "" : $post["name"]; $save["mobile"] = empty($post["mobile"]) ? "" : $post["mobile"]; $save["idcard"] = empty($post["idcard"]) ? "" : $post["idcard"]; $save["birthday"] = empty($post["birthday"])? 0 : strtotime($post["birthday"]); //服务类型 if(!empty($post["service_type"])){ $timeTypeData = (new ServiceTimeType)->where("code",$post["service_type"])->where("status",1)->select(); if(empty($timeTypeData)){ return app('json')->fail("服务时长类型不存在"); } $save["service_type"] = $post["service_type"]; } //服务价格区间 $save["service_price"] = empty($post["service_price"]) ? "" : $post["service_price"]; //服务区域 $cityModel = new CityModel(); if(!empty($post["service_area"]) && is_array($post["service_area"])){ $saveAre=[]; foreach($post["service_area"] as $k=>$v){ if(empty(trim($v))){ continue; } $itemData = $cityModel->where("name",trim($v))->where("level",2)->find(); if(!empty($itemData)){ $saveAre[]=$itemData["id"]; } } if(!empty($saveAre)){ $save["service_area"] = implode(",", $saveAre); } } //服务内容 $serviceTypeModel = new ServiceTypeModel(); if(!empty($post["service_project"]) && is_array($post["service_project"])){ $saveCon=[]; foreach($post["service_project"] as $k=>$v){ if(empty(trim($v))){ continue; } $itemData = $serviceTypeModel->where("id",(int)$v)->where("status",1)->find(); if(!empty($itemData)){ $saveCon[]=$itemData["id"]; } } if(!empty($saveCon)){ $save["service_project"] = implode(",", $saveCon); } } $save["service_intro_content"] = empty($post["service_intro_content"])?"": $post["service_intro_content"]; $save["service_intro_imgs"] = empty($post["service_intro_imgs"]) ?"": implode(",", $post["service_intro_imgs"]); $save["service_audit_imgs"] = empty($post["service_audit_imgs"]) ?"": implode(",", $post["service_audit_imgs"]); $save["status"] = 0; $save["time"] = time(); $save["uid"] = $request->user["uid"]; $r = (new TypeAudit)->insert($save); if(!$r){ return app('json')->fail("系统错误"); } return app('json')->success("提交成功,请耐心等待审核"); } /** * 发布圈子 * @param Request $request */ public function upCircle(Request $request){ $post = UtilService::getMore([ ['id',''], ['title',''], ['content','','empty','请输入动态内容'], ['imgs',[]], ['video',''], ['video_img',''], ['video_time',0], ['pro_id',''], ],$request); $post["status"]=0; $post["imgs"] = empty($post["imgs"]) ? "" : $post["imgs"]; $post["update_time"] = time(); if(empty($post["imgs"]) && empty($post["video"])){ return app('json')->fail("请至少上传一张主图"); } if(!empty($post["imgs"])){ $post["video"]=""; $post["video_img"]=""; $post["video_time"]=0; } if(!empty($post["video"])){ $post["imgs"]=""; if(empty($post["video_img"])){ return app('json')->fail("视频封面错误"); } if(empty($post["video_time"]) || (int)$post["video_time"]<=0){ return app('json')->fail("视频时长错误"); } } if(!empty($post["pro_id"])){ $proData = (new Goods)->where("id",$post["pro_id"])->where("status",1)->find(); if(empty($proData)){ return app('json')->fail("当前商品不可选中"); } }else{ $post["pro_id"]=0; } $id = $post["id"]; unset($post["id"]); $r=0; if(empty($id) || $id=="0"){ $post["time"] = time(); $post["uid"] = $request->user["uid"]; $r = (new UserCircle)->insert($post); }else{ $r = (new UserCircle)->where("id",$id)->update($post); } if($r){ return app('json')->success("发布成功,等待客服审核。"); }else{ return app('json')->fail("数据保存失败"); } } /** * 图片上传 * @param Request $request * @return type */ public function upload(Request $request){ $sysData = (new SysModel())->where("id",1)->find(); $file = $request->file('file'); $code = $request->post("code","image"); if(empty($file)) { return app('json')->fail("未上传文件"); } if(!in_array($code, ["avatar","video","image","circle","advert","goods","activity"])){ return app('json')->fail("上传路径错误"); } $ext = $file->extension(); if(!in_array($ext, array("png","jpeg","gif","jpg"))){ return app('json')->fail("图片类型错误"); } $upPath = \think\facade\Filesystem::disk('resource')->putFile( $code, $file); if(!$upPath){ return app('json')->fail("上传失败01"); } $savePath = $sysData['file_url'].'/resource/' . $upPath; $imgUrl = str_replace("\\", "/", $savePath); return app('json')->success(['img'=>$imgUrl]); } /** * 视频上传 * @param Request $request * @return type */ public function uploadVideo(Request $request){ $sysData = (new SysModel())->where("id",1)->find(); $file = $request->file('file'); $code = $request->post("code","video"); if(empty($file)) { return app('json')->fail("未上传文件"); } if(!in_array($code, ["video"])){ return app('json')->fail("上传路径错误"); } $ext = $file->extension(); if(!in_array($ext, array("mp4","megp4"))){ return app('json')->fail("视频类型错误"); } $upPath = \think\facade\Filesystem::disk('resource')->putFile( $code, $file); if(!$upPath){ return app('json')->fail("上传失败01"); } $savePath = $sysData['system_url'].'/resource/' . $upPath; $imgUrl = str_replace("\\", "/", $savePath); return app('json')->success(['video'=>$imgUrl]); } /** * 钻币明细 * @param Request $request */ public function scoreList(Request $request) { $pageSize = 10; [$page, $type, $monthTime] = UtilService::getMore([ ['page', 1], ['type',0], ['monthTime', ''], ], $request, true); $data = (new UserScoreDetail) ->where("uid", $request->user['uid']) ->when($type!=0, function ($query) use ($type) { if($type==1){ $query->where("type", 1); } if($type==-1){ $query->where("type", -1); } }) ->when(!empty($monthTime), function ($query) use ($monthTime) { $query->whereMonth("time", $monthTime); }) ->order("id", "desc") ->page((int)$page, $pageSize) ->select(); $tAr = UtilService::getParam([ 'id', 'title', 'content', 'type', ['into','v',function($item){ return floatval($item); }], ['time', 'time', 'date("Y-m-d H:i:s",$1)'], ], $data); return app('json')->success(['list' => $tAr, 'pageSize' => $pageSize]); } }