findOrEmpty(); if(!$info->isEmpty()){ throw new \Exception('该手机号已入驻代理'); } PropertyHead::create([ 'property_name' => $params['property_name'], 'village_name' => $params['village_name'], 'address' => $params['address'], 'head_name' => $params['head_name'], 'head_mobile' => $params['head_mobile'], 'ratio' => $params['ratio']??0, 'head_bank_card' => $params['head_bank_card']??'', 'head_corporate_bank' => $params['head_corporate_bank']??'', 'lon' => $params['lon']??0, 'lat' => $params['lat']??0, 'remark' => $params['remark']??'', 'bind_date'=>!empty($params['bind_date'])?$params['bind_date']:0, 'sale_type'=>$params['sale_type']??0, 'sale_id'=>$params['sale_id']??0, 'is_cooperate'=>$params['is_cooperate']??1, 'province' => $params['province']??0, 'city' => $params['city']??0, 'area_name' => $params['area_name']??'', 'door_images' => $params['door_images']??'', 'openid' => $params['openid']??'', 'corporate_bank_name' => $params['corporate_bank_name']??'', 'scale_images' => $params['scale_images']??'', 'rating_value' => $params['rating_value']??0, ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 编辑 * @param array $params * @return bool * @author likeadmin * @date 2024/09/19 10:48 */ public static function edit(array $params): bool { $headMobile = PropertyHead::where('id', $params['id'])->value('head_mobile'); Db::startTrans(); try { // 手机号不同时做判断 if($headMobile != $params['head_mobile']){ $user = User::where(['mobile' => $params['head_mobile']])->findOrEmpty(); if (!$user->isEmpty()) { throw new \Exception('该手机号已被注册'); } // 更换用户手机号 account User::where(['mobile' => $headMobile])->save(['mobile' => $params['head_mobile']]); } PropertyHead::where('id', $params['id'])->update([ 'property_name' => $params['property_name'], 'village_name' => $params['village_name'], 'address' => $params['address'], 'head_name' => $params['head_name'], 'head_mobile' => $params['head_mobile'], 'ratio' => $params['ratio'], 'head_bank_card' => $params['head_bank_card'], 'head_corporate_bank' => $params['head_corporate_bank']??'', 'lon' => $params['lon'], 'lat' => $params['lat'], 'remark' => $params['remark'], 'bind_date'=>!empty($params['bind_date'])?$params['bind_date']:0, 'sale_type'=>$params['sale_type']??0, 'sale_id'=>$params['sale_id']??0, 'is_cooperate'=>$params['is_cooperate']??1, 'province' => $params['province']??0, 'city' => $params['city']??0, 'area_name' => $params['area_name']??'', 'door_images' => $params['door_images']??'', 'openid' => $params['openid']??'', 'corporate_bank_name' => $params['corporate_bank_name']??'', 'scale_images' => $params['scale_images']??'', 'rating_value' => $params['rating_value']??0, ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 删除 * @param array $params * @return bool * @author likeadmin * @date 2024/09/19 10:48 */ public static function delete(array $params): bool { return PropertyHead::destroy($params['id']); } /** * @notes 获取详情 * @param $params * @return array * @author likeadmin * @date 2024/09/19 10:48 */ public static function detail($params): array { return PropertyHead::findOrEmpty($params['id'])->toArray(); } public static function updateUserId(string $head_mobile,int $userId): bool { Db::startTrans(); try { PropertyHead::where('head_mobile', $head_mobile)->update(['user_id' => $userId]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } public static function selectList(): array { return PropertyHead::where('id','>',0)->select()->toArray(); } /** * @param $params * @param $url * @return string */ public static function getWechatQrcode($params,$url) { try { $mnp_page = 'pages/tabView/main'; $response = (new WeChatMnpService())->getUnlimitedQRCode( 'property_head_id='.$params['id'], $mnp_page, env('miniprogram.mini_env_version', 'release'), false ); $qrcode = $response->getContent(); if(!is_dir('./uploads/wx_qrcode/'.date('Ymd'))){ mkdir('./uploads/wx_qrcode/'.date('Ymd')); } $file_name = 'uploads/wx_qrcode/'.date('Ymd').'/'.time().rand(1000,9999).'.png'; file_put_contents($file_name, $qrcode); return 'data:png;base64,' . base64_encode(file_get_contents($file_name)); } catch (\Throwable $e) { Log::info('getQRCode:'.$e->getMessage()); return ''; } } }