get('page', 1); $pageSize = $request->get('pageSize', 10); $id = $request->get('id', ''); $mobile = $request->get('mobile', ''); $rows = Member::where('member_is_owner', 'N') ->when($id != '', function ($query) use ($id) { $query->where('member_id', 'like', '%' . $id . '%'); })->when($mobile != '', function ($query) use ($mobile) { $query->where('member_mobile', 'like', '%' . $mobile . '%'); }); // 总条数 $total = $rows->count('member_id'); $rows = $rows->with([ 'info' => function ($query) { $query->select('join_info_member_id', 'member_info_nickname', 'member_info_headimg'); } ])->select('member_id', 'member_is_owner', 'member_classify', 'member_status', 'member_mobile', 'member_from') ->orderBy('member_addtimes', 'DESC') ->forPage($page, $pageSize) ->get() ->toArray(); foreach ($rows as &$row) { $row['info']['member_info_headimg'] = getenv('STORAGE_DOMAIN') . $row['info']['member_info_headimg']; } return json_success('', compact('rows', 'page', 'pageSize', 'total')); } /** * @Desc 添加会员 * @Author Gorden * @Date 2024/3/25 13:40 * * @param $params * @return \support\Response */ public static function add($params) { Db::beginTransaction(); try { $memberId = self::generateMemberId(); // 先写主表,要ID $memberData = [ 'member_id' => $memberId, 'member_is_owner' => $params['is_owner'], 'member_classify' => $params['classify'], 'member_status' => $params['status'], 'member_mobile' => $params['mobile'], 'member_from' => $params['source'], 'member_addtimes' => time(), ]; Member::insert($memberData); // member cert $certData = [ 'join_cert_member_id' => $memberId, 'member_cert_name' => $params['cert_name'], 'member_cert_nbr' => $params['cert_nbr'], 'member_cert_birth' => $params['birth'], 'member_cert_gender' => $params['gender'], 'member_cert_addr' => $params['addr'], 'member_cert_face' => str_replace(getenv('STORAGE_DOMAIN'), '', $params['member_cert_face']), 'member_cert_photo' => str_replace(getenv('STORAGE_DOMAIN'), '', $params['member_cert_photo']), ]; MemberCert::insert($certData); // member info $infoData = [ 'join_info_member_id' => $memberId, 'member_info_nickname' => $params['account_name'], 'member_info_headimg' => str_replace(getenv('STORAGE_DOMAIN'), '', $params['avatar']) ]; MemberInfo::insert($infoData); Db::commit(); } catch (\Exception $e) { Db::rollBack(); dump($e->getMessage() . ';line:' . $e->getLine()); return json_fail("数据添加失败"); } return json_success('数据添加成功'); } private static function generateMemberId() { $id = SysSerial::getSerial(); return "ME" . str_pad($id, 16, "0", STR_PAD_LEFT) . random_string(8); } }