diff --git a/app/Admin/Common/Auth.php b/app/Admin/Common/Auth.php index e085779..a7baf1d 100644 --- a/app/Admin/Common/Auth.php +++ b/app/Admin/Common/Auth.php @@ -19,21 +19,21 @@ class Auth extends AdminController * @param $roles * @return mixed */ - public static function addAdminUser($form, $model, $cid, $roles) + public static function addAdminUser($form, $model, $id, $roles,$type=0) { $adu = new AdminUsers(); - if (!$cid) { + if (!$id) { return '-2'; } - $row = $model::find($cid); + $row = $model::find($id); - //>>1.添加市场经理前,去查询是否已存在相同的帐号 + //>>1.添加前,去查询是否已存在相同的帐号 $count = $adu->where(['username' => $form->phone])->count(); if ($count) { $row->delete(); return '-1'; } - //>>2.添加市场经理登陆帐号 + //>>2.添加登陆帐号 $adu->username = $form->phone; $adu->password = Hash::make(substr($form->phone, -5)); $adu->name = $form->name; @@ -56,6 +56,6 @@ class Auth extends AdminController $aru->save(); //>>5.生成可提现金额信息 - LanzuUserBalance::create($adu->id, 3); + LanzuUserBalance::create($adu->id, $type); } } diff --git a/app/Admin/Common/FinancialRecord.php b/app/Admin/Common/FinancialRecord.php new file mode 100644 index 0000000..21b0bd6 --- /dev/null +++ b/app/Admin/Common/FinancialRecord.php @@ -0,0 +1,41 @@ +user_id = $adminUserId; + $model->user_type = $userType; + $model->money = $money; + $model->money_type = $mType; + $model->desc = $desc; + $model->comment = $comment; + $model->save(); + + //添加公司流水 + $model = new \App\Models\LanzuFinancialRecord(); + $model->user_id = -1; + $model->user_type = -1; + $model->money = $money; + $model->money_type = $mType; + $model->desc = $desc; + $model->comment = $comment; + $model->save(); + } +} diff --git a/app/Admin/Controllers/LanzuCsInfoController.php b/app/Admin/Controllers/LanzuCsInfoController.php index fa271d4..535b458 100644 --- a/app/Admin/Controllers/LanzuCsInfoController.php +++ b/app/Admin/Controllers/LanzuCsInfoController.php @@ -110,7 +110,7 @@ class LanzuCsInfoController extends AdminController $model = new modelCsInfo(); if ($form->isCreating()) { //>>1.添加登录帐号 - $res = Auth::addAdminUser($form, $model, $cid, 'lanzu_cs'); + $res = Auth::addAdminUser($form, $model, $cid, 'lanzu_cs',3); if ($res == -1) { return $form->error('该手机号作为登陆帐号已存在!'); } elseif ($res == -2) { diff --git a/app/Admin/Controllers/LanzuMmInfoController.php b/app/Admin/Controllers/LanzuMmInfoController.php index 0828f48..da6a4ea 100644 --- a/app/Admin/Controllers/LanzuMmInfoController.php +++ b/app/Admin/Controllers/LanzuMmInfoController.php @@ -2,6 +2,7 @@ namespace App\Admin\Controllers; +use App\Admin\Common\Auth; use App\Admin\Repositories\LanzuMmInfo; use App\Models\AdminUsers; use \App\Models\AdminRoles; @@ -120,53 +121,27 @@ class LanzuMmInfoController extends AdminController { return Form::make(new LanzuMmInfo(), function (Form $form) { $form->display('id'); + $form->text('user_id', '懒ID')->placeholder('对应懒族小程序个人中心的懒ID')->required(); $form->text('name')->required(); $form->text('phone')->required(); $form->select('market_id', '所属市场')->options('/api/getMarket')->required(); - $form->text('user_id', '小程序用户ID')->required(); $form->image('id_frond')->uniqueName(); $form->image('id_back')->uniqueName(); $form->text('id_number'); $form->radio('status', '状态')->options(['禁用', '启用'])->default(1); - $form->saved(function (Form $form, $result) { - $adu = new AdminUsers(); + $form->saved(function (Form $form, $mmid) { + $model = new mmInfo(); if ($form->isCreating()) { - $newId = $result; - if (!$newId) { - return $form->error('市场经理添加失败'); - } - $mm = mmInfo::find($newId); - //>>1.添加市场经理前,去查询是否已存在相同的帐号 - $count = $adu->where(['username' => $form->phone])->count(); - if ($count) { - $mm->delete(); + $res = Auth::addAdminUser($form, $model, $mmid, 'lanzu_mm',2); + if ($res == -1) { return $form->error('该手机号作为登陆帐号已存在!'); + } elseif ($res == -2) { + return $form->error('添加失败!'); } - //>>2.添加市场经理登陆帐号 - $adu->username = $form->phone; - $adu->password = Hash::make(substr($form->phone, -5)); - $adu->name = $form->name; - $adu->status = $form->status; - $res = $adu->save(); - if (!$res) { - //删除刚添加的服务商 - $mm->delete(); - return $form->error('市场经理添加失败'); - } - //>>3.将帐号id关联到市场经理 - $mm->admin_user_id = $adu->id; - $mm->save(); - - //添加到admin roles中 - //添加服务商角色 - $lanzu_mm = AdminRoles::where('slug', 'lanzu_mm')->first(); - $aru = new AdminRoleUsers; - $aru->role_id = $lanzu_mm->id; - $aru->user_id = $adu->id; - $aru->save(); } else { //>>4.编辑时同步登陆帐号状态 + $adu = new AdminUsers(); $id = $form->getKey(); $mm = mmInfo::find($id); $ad = $adu->find($mm->admin_user_id); diff --git a/app/Admin/Controllers/LanzuMmWithdrawController.php b/app/Admin/Controllers/LanzuMmWithdrawController.php index e35c35b..452fca1 100644 --- a/app/Admin/Controllers/LanzuMmWithdrawController.php +++ b/app/Admin/Controllers/LanzuMmWithdrawController.php @@ -2,6 +2,7 @@ namespace App\Admin\Controllers; +use App\Admin\Common\FinancialRecord; use App\Admin\Repositories\LanzuMmWithdraw; use App\Models\ImsCjdcUser; use App\Models\LanzuMmWithdraw as MmWithdraw; @@ -157,7 +158,7 @@ class LanzuMmWithdrawController extends AdminController $mm = LanzuMmInfo::find($mmId); if ($form->status == -1) { //如果提现申请被拒绝,返回提现金额 - MpBalance::returnBalance($mm->user_id, 0, $form->model()->money); + MpBalance::returnBalance($mm->admin_user_id, 0, $form->model()->money); } elseif ($form->status == 1) { //调用微信企业付 $data = []; @@ -172,7 +173,15 @@ class LanzuMmWithdrawController extends AdminController $mmw = MmWithdraw::find($form->model()->id); $mmw->is_pay = 1; $mmw->save(); + + //添加流水记录 + $adminUserId = $mm->admin_user_id; + $money = $form->model()->money; + FinancialRecord::addFinancialRecord($adminUserId, 2, $money, 102, '市场经理提现', '市场经理提现'); } else { + //如果提现失败,返回提现金额 + MpBalance::returnBalance($mm->admin_user_id, 0, $form->model()->money); + //记录失败日志 $res['data'] = $data; Log::error('提现失败.', $res); @@ -194,7 +203,7 @@ class LanzuMmWithdrawController extends AdminController if ($form->isCreating()) { if ($result) { $mm = LanzuMmInfo::find($mmId); - MpBalance::reduceBalance($mm->user_id, 0, $form->money); + MpBalance::reduceBalance($mm->admin_user_id, 2, $form->money); } } }); @@ -217,7 +226,7 @@ class LanzuMmWithdrawController extends AdminController { $row = $this->getMmInfoByAduId($aduId); if ($row) { - $res = MpBalance::where(['user_id' => $row->user_id])->first(); + $res = MpBalance::where(['source_id' => $row->admin_user_id])->first(); if ($res) { return $res->balance; } diff --git a/app/Admin/Controllers/LanzuMpInfoController.php b/app/Admin/Controllers/LanzuMpInfoController.php index 8e3cab2..e29e3fc 100644 --- a/app/Admin/Controllers/LanzuMpInfoController.php +++ b/app/Admin/Controllers/LanzuMpInfoController.php @@ -2,6 +2,7 @@ namespace App\Admin\Controllers; +use App\Admin\Common\Auth; use App\Admin\Extensions\CheckRow; use App\Admin\Metrics\Examples\TotalUsers; use App\Admin\Repositories\LanzuMpInfo; @@ -43,7 +44,7 @@ class LanzuMpInfoController extends AdminController $actions->row->id; }); $grid->column('可提现金额')->display(function () { - return MpBalance::getBalance($this->id, 1); + return MpBalance::getBalance($this->admin_user_id, 1); }); $grid->id_frond->image('', 50, 50); $grid->id_back->image('', 50, 50); @@ -107,6 +108,7 @@ class LanzuMpInfoController extends AdminController { return Form::make(new LanzuMpInfo(), function (Form $form) { $form->display('id')->hideInDialog(); + $form->text('user_id','懒ID')->placeholder('对应懒族小程序个人中心的懒ID')->required(); $form->text('name', '姓名')->required(); $form->mobile('phone')->required(); $form->text('bank_name')->required(); @@ -116,45 +118,19 @@ class LanzuMpInfoController extends AdminController $form->image('id_back')->uniqueName()->required(); $form->text('id_number')->required(); $form->radio('status', '状态')->options(['禁用', '启用'])->default(1); - $form->saved(function (Form $form, $result) { - $adu = new AdminUsers(); + $form->saved(function (Form $form, $mpid) { + $model = new mpInfo(); if ($form->isCreating()) { - $newId = $result; - if (!$newId) { - return $form->error('服务商添加失败'); - } - $mp = mpInfo::find($newId); - //>>1.添加服务商,前去查询是否已存在相同的帐号 - $count = $adu->where(['username' => $form->phone])->count(); - if ($count) { - $mp->delete(); + $res = Auth::addAdminUser($form, $model, $mpid, 'lanzu_mp',1); + if ($res == -1) { return $form->error('该手机号作为登陆帐号已存在!'); + } elseif ($res == -2) { + return $form->error('添加失败!'); } - //>>2.添加服务商登陆帐号 - $adu->username = $form->phone; - $adu->password = Hash::make(substr($form->phone, -5)); - $adu->name = $form->name; - $adu->status = $form->status; - $res = $adu->save(); - if (!$res) { - //删除刚添加的服务商 - $mp->delete(); - return $form->error('服务商添加失败'); - } - //>>3.将帐号id关联到服务商 - $mp->admin_user_id = $adu->id; - $mp->save(); - - //添加服务商角色 - $lanzu_mp = AdminRoles::where('slug', 'lanzu_mp')->first(); - $aru = new AdminRoleUsers; - $aru->role_id = $lanzu_mp->id; - $aru->user_id = $adu->id; - $aru->save(); - } else { //>>4.编辑时同步登陆帐号状态 + $adu = new AdminUsers(); $id = $form->getKey(); $mp = mpInfo::find($id); $ad = $adu->find($mp->admin_user_id); diff --git a/app/Admin/Controllers/LanzuMpWithdrawController.php b/app/Admin/Controllers/LanzuMpWithdrawController.php index 202186f..01938bc 100755 --- a/app/Admin/Controllers/LanzuMpWithdrawController.php +++ b/app/Admin/Controllers/LanzuMpWithdrawController.php @@ -2,6 +2,7 @@ namespace App\Admin\Controllers; +use App\Admin\Common\FinancialRecord; use App\Admin\Repositories\LanzuMpWithdraw; use App\Models\ImsCjdcMarket; use App\Models\LanzuMpWithdraw as modelMpInfo; @@ -101,6 +102,7 @@ class LanzuMpWithdrawController extends AdminController { //管理员或者lanzu_bis操作 return Form::make(new LanzuMpWithdraw(['mpInfo']), function (Form $form) { + $form->footer(function ($footer) { // 去掉`查看`checkbox $footer->disableViewCheck(); @@ -128,7 +130,6 @@ class LanzuMpWithdrawController extends AdminController $form->saving(function (Form $form) { $form->is_operated = 1; }); - if ($form->model()->is_operated) { $status = ''; if ($form->model()->status == 1) { @@ -154,6 +155,11 @@ class LanzuMpWithdrawController extends AdminController if ($form->model()->status == -1) { //如果服务商提现审核被拒绝,退回服务商的提现金额 MpBalance::returnBalance($form->model()->mp_id, 1, $form->model()->money); + }elseif ($form->status==1){ + $adminUserId = $form->model()->mp_info['admin_user_id']; + $money = $form->model()->money; + //如果审核通过,则记录流水 + FinancialRecord::addFinancialRecord($adminUserId,1,$money,101,'服务商提现','服务商提现'); } } }); @@ -170,7 +176,7 @@ class LanzuMpWithdrawController extends AdminController //如果是服务商角色,获取服务商信息 $mp = LanzuMpInfo::where('admin_user_id', $current_user->id)->first(); //获取服务商可提现金额 - $mpb = MpBalance::where('user_id', $mp->id) + $mpb = MpBalance::where('source_id', $mp->admin_user_id) ->where('user_type', 1)->first(); $balance = 0; if ($mpb) { @@ -197,6 +203,7 @@ class LanzuMpWithdrawController extends AdminController $form->ignore(['balance']); //添加成功之后,扣减掉可提现金额 $form->saved(function (Form $form, $result) use ($mpb) { + if ($form->isCreating()) { if ($result) { $mpb->balance = $mpb->balance - $form->money; diff --git a/app/Models/MpBalance.php b/app/Models/MpBalance.php index 784d1e1..75acafe 100644 --- a/app/Models/MpBalance.php +++ b/app/Models/MpBalance.php @@ -18,7 +18,7 @@ class MpBalance extends Model */ public static function getBalance($uid,$uType=0) { - $row = self::where(['user_id'=>$uid,'user_type'=>$uType])->first(); + $row = self::where(['source_id'=>$uid,'user_type'=>$uType])->first(); if ($row){ return $row->balance; }else{ @@ -31,7 +31,7 @@ class MpBalance extends Model */ public static function reduceBalance($uid,$uType,$reduceMoney) { - $row = self::where(['user_id'=>$uid,'user_type'=>$uType])->first(); + $row = self::where(['source_id'=>$uid,'user_type'=>$uType])->first(); if ($row){ $row->balance = $row->balance-$reduceMoney; return $row->save(); @@ -45,7 +45,7 @@ class MpBalance extends Model */ public static function returnBalance($uid,$uType,$returnMoney) { - $row = self::where(['user_id'=>$uid,'user_type'=>$uType])->first(); + $row = self::where(['source_id'=>$uid,'user_type'=>$uType])->first(); if ($row){ $row->balance = $row->balance+$returnMoney; return $row->save();