param_data; $param['user_data'] = $request->user_data; Db::beginTransaction(); try { Validator::input($param, [ 'affiliated_bank' => Validator::notEmpty()->stringType()->setName('归属银行'), 'account_holder' => Validator::notEmpty()->stringType()->setName('开户人'), 'card_number' => Validator::notEmpty()->setName('银行卡号'), ]); BankCardBusiness::UpData($param); } catch (\Throwable $exception) { Db::rollBack(); return error($exception->getMessage()); } Db::commit(); return success(); } #[Apidoc\Title("领取银行卡")] #[Apidoc\Url("api/card/receive_card.html")] #[Apidoc\Method("POST")] #[Apidoc\Header("token", type: "string", require: true, desc: "身份令牌Token", mock: "@token")] #[Apidoc\Param("name", type: "string", require: true, desc: "姓名", mock: "")] #[Apidoc\Param("number", type: "string", require: true, desc: "身份证", mock: "")] #[Apidoc\Param("mobile", type: "string", require: true, desc: "手机号", mock: "")] #[Apidoc\Param("address", type: "string", require: true, desc: "地址", mock: "")] public function receiveCard(Request $request) { Db::beginTransaction(); try { $param = $request->param_data; $param['user_data'] = $request->user_data; // Validator::input($param, [ // 'name' => Validator::notEmpty()->setName('姓名'), // 'mobile' => Validator::notEmpty()->setName('手机号'), // 'address' => Validator::notEmpty()->setName('地址'), // ]); $datalist = Db::table('wa_user_social_cark') ->where('user_id', $param['user_data']['id']) ->where('type', 1) ->first(); if ($datalist) { throw new \Exception('已经领取,请不要重复操作!'); } $card_num = generateBankAccountNumber(); Db::table('wa_user_social_cark')->insert([ 'type' => 2, 'user_id' => $param['user_data']['id'], 'card_num' => $card_num, 'password' => $param['user_data']['password'], 'name' => Arr::get($param, 'name', $param['user_data']['name']), 'number' => Arr::get($param, 'number', ''), 'address' => Arr::get($param, 'address', ''), 'mobile' => Arr::get($param, 'address', $param['user_data']['mobile']), 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s'), 'addtime' => time(), ]); Db::table('wa_users')->where('id', $param['user_data']['id'])->update(['card_code' => $card_num]); } catch (\Throwable $exception) { Db::rollBack(); return error($exception->getMessage()); } Db::commit(); return success([ 'card_num' => $card_num, 'name' => Arr::get($param, 'name', $param['user_data']['name']), 'number' => Arr::get($param, 'number', ''), 'address' => Arr::get($param, 'address', ''), 'mobile' => Arr::get($param, 'mobile', $param['user_data']['mobile']), ], '领取成功'); } #[Apidoc\Title("银行卡详情")] #[Apidoc\Url("api/card/card_details.html")] #[Apidoc\Method("POST")] #[Apidoc\Header("token", type: "string", require: true, desc: "身份令牌Token", mock: "@token")] #[Apidoc\Param("type", type: "int", require: false, desc: "类型", mock: '默认:2')] #[Apidoc\Returned(name: "id", type: "string", require: true, desc: 'ID', default: '132')] #[Apidoc\Returned(name: "card_num", type: "string", require: true, desc: '卡号', default: '132')] #[Apidoc\Returned(name: "name", type: "string", require: true, desc: '名称', default: '132')] #[Apidoc\Returned(name: "status_name", type: "string", require: true, desc: '状态', default: '132')] #[Apidoc\Returned(name: "money_two", type: "string", require: true, desc: '卡余额', default: '132')] public function cardDetails(Request $request) { Db::beginTransaction(); try { $param = $request->param_data; $param['user_data'] = $request->user_data; $datalist = Db::table('wa_user_social_cark') ->where('user_id', $param['user_data']['id']) ->where('type', 2) ->select('id', 'card_num', 'name', 'number', 'address', 'mobile', 'status') ->first(); $status_name = ''; if ($datalist) { //状态:1=审核,2=审核完成,3=正在制卡,4=制卡完成,5=等待邮 if ($datalist->status == 1) { $status_name = '完成'; } elseif ($datalist->status == 2) { $status_name = '审核中/审核完成/待制卡'; } elseif ($datalist->status == 3) { $status_name = '审核中/审核完成/正在制卡'; } elseif ($datalist->status == 4) { $status_name = '审核中/审核完成/正在制卡/制卡完成'; } elseif ($datalist->status == 5) { $status_name = '审核中/审核完成/正在制卡/制卡完成/等待邮寄'; } elseif ($datalist->status == 6) { $status_name = '审核中/审核完成/正在制卡/制卡完成/等待邮寄/已发货'; } $datalist->status_name = $status_name; $datalist->money_two = $param['user_data']['money_two']; } } catch (\Throwable $exception) { Db::rollBack(); return error($exception->getMessage()); } Db::commit(); return success($datalist, '获取成功'); } #[Apidoc\Title("银行卡地址编辑")] #[Apidoc\Url("api/card/card_address.html")] #[Apidoc\Method("POST")] #[Apidoc\Header("token", type: "string", require: true, desc: "身份令牌Token", mock: "@token")] #[Apidoc\Param("id", type: "int", require: true, desc: "ID", mock: "2")] public function cardAddress(Request $request) { $param = $request->param_data; $param['user_data'] = $request->user_data; Db::beginTransaction(); try { Validator::input($param, [ 'id' => Validator::notEmpty()->setName('id'), ]); $datalist = Db::table('wa_user_social_cark') ->where('user_id', $param['user_data']['id']) ->where('id', $param['id']) ->first(); if (!$datalist) { throw new \Exception('非法操作'); } Db::table('wa_user_social_cark')->where('id', $datalist->id)->update([ 'mobile' => Arr::get($param, 'mobile', $param['user_data']['mobile']), 'name' => Arr::get($param, 'name', $datalist->name), 'number' => Arr::get($param, 'number', $datalist->number), 'address' => Arr::get($param, 'address', $datalist->address), ]); } catch (\Throwable $exception) { Db::rollBack(); return error($exception->getMessage()); } Db::commit(); return success([], '操作成功'); } #[Apidoc\Title("设置密码")] #[Apidoc\Url("api/card/card_pass.html")] #[Apidoc\Method("POST")] #[Apidoc\Header("token", type: "string", require: true, desc: "身份令牌Token", mock: "@token")] #[Apidoc\Param(name: "pass_one", type: "int", require: true, desc: '密码', default: '1')] public function cardPass(Request $request) { Db::beginTransaction(); try { $param = $request->param_data; $param['user_data'] = $request->user_data; Validator::input($param, [ 'pass_one' => Validator::notEmpty()->setName('密码'), ]); Db::table('wa_users') ->where('id', $param['user_data']['id']) ->update(['pass_one' => $param['pass_one']]); } catch (\Throwable $exception) { Db::rollBack(); return error($exception->getMessage()); } Db::commit(); return success([], '修改成功'); } #[Apidoc\Title("获取银行账号")] #[Apidoc\Url("api/card/system.html")] #[Apidoc\Method("POST")] #[Apidoc\Header("token", type: "string", require: true, desc: "身份令牌Token", mock: "@token")] #[Apidoc\Returned(name: "account", type: "string", require: true, desc: '开户人', default: '132')] #[Apidoc\Returned(name: "card_number", type: "string", require: true, desc: '卡号', default: '132')] #[Apidoc\Returned(name: "opening_bank", type: "string", require: true, desc: '开户行', default: '132')] public function system(Request $request) { Db::beginTransaction(); try { $system = Db::table('wa_system')->first(); $data = [ 'account' => $system->account, 'card_number' => $system->card_number, 'opening_bank' => $system->opening_bank, ]; } catch (\Throwable $exception) { Db::rollBack(); return error($exception->getMessage()); } Db::commit(); return success($data, '修改成功'); } }