Browse Source

市场经理提现和编辑

master
lanzu_qsy 5 years ago
parent
commit
fff8faa11e
  1. 42
      app/Admin/Controllers/ImsCjdcMarketController.php
  2. 97
      app/Admin/Controllers/LanzuMmInfoController.php
  3. 103
      app/Admin/Controllers/LanzuMmWithdrawController.php
  4. 1
      app/Models/LanzuMmWithdraw.php

42
app/Admin/Controllers/ImsCjdcMarketController.php

@ -20,33 +20,33 @@ class ImsCjdcMarketController extends AdminController
{ {
return Grid::make(new ImsCjdcMarket(), function (Grid $grid) { return Grid::make(new ImsCjdcMarket(), function (Grid $grid) {
$grid->id->sortable(); $grid->id->sortable();
$grid->logo->image('',50,50);
$grid->logo->image('', 50, 50);
$grid->name; $grid->name;
$grid->column('mp_id','服务商')->display(function ($mid){
if($mid == 0) return '懒族自营';
$grid->column('mp_id', '服务商')->display(function ($mid) {
if ($mid == 0) return '懒族自营';
$mp = LanzuMpInfo::find($mid); $mp = LanzuMpInfo::find($mid);
if (!$mp){
return '<span style="color: red">数据错误</span>';
if (!$mp) {
return '<span style="color: red">数据错误</span>';
} }
return $mp->name; return $mp->name;
}); });
$grid->column('status','状态')->display(function ($status){
if ($status==0){
$grid->column('status', '状态')->display(function ($status) {
if ($status == 0) {
return '禁用'; return '禁用';
}else{
} else {
return '正常'; return '正常';
} }
}); });
$grid->address; $grid->address;
$grid->column('addtime','创建时间');
$grid->column('addtime', '创建时间');
$grid->filter(function (Grid\Filter $filter) { $grid->filter(function (Grid\Filter $filter) {
$filter->equal('id'); $filter->equal('id');
}); });
$grid->actions(function (Grid\Displayers\Actions $actions){
$grid->actions(function (Grid\Displayers\Actions $actions) {
if(!\Admin::user()->isAdministrator()&&$actions->row->mp_id==0){
if (!\Admin::user()->isAdministrator() && $actions->row->mp_id == 0) {
$actions->disableDelete(); $actions->disableDelete();
$actions->disableEdit(); $actions->disableEdit();
} }
@ -67,7 +67,7 @@ class ImsCjdcMarketController extends AdminController
{ {
return Show::make($id, new ImsCjdcMarket(), function (Show $show) { return Show::make($id, new ImsCjdcMarket(), function (Show $show) {
if(!\Admin::user()->isAdministrator()&&$show->model()->mp_id==0){
if (!\Admin::user()->isAdministrator() && $show->model()->mp_id == 0) {
$show->panel() $show->panel()
->tools(function ($tools) { ->tools(function ($tools) {
$tools->disableEdit(); $tools->disableEdit();
@ -75,7 +75,7 @@ class ImsCjdcMarketController extends AdminController
$tools->disableDelete(); $tools->disableDelete();
// 显示快捷编辑按钮 // 显示快捷编辑按钮
$tools->showQuickEdit(); $tools->showQuickEdit();
});
});
} }
$show->id; $show->id;
@ -113,7 +113,7 @@ class ImsCjdcMarketController extends AdminController
return Form::make(new ImsCjdcMarket(), function (Form $form) { return Form::make(new ImsCjdcMarket(), function (Form $form) {
$form->display('id'); $form->display('id');
$form->text('name')->required(); $form->text('name')->required();
$form->select('mp_id','服务商')->options('/api/getMpInfo')->required();
$form->select('mp_id', '服务商')->options('/api/getMpInfo')->required();
$form->text('address')->required(); $form->text('address')->required();
$form->text('coordinates') $form->text('coordinates')
->required() ->required()
@ -125,10 +125,10 @@ class ImsCjdcMarketController extends AdminController
$form->text('dm_poundage'); $form->text('dm_poundage');
$form->text('yd_poundage'); $form->text('yd_poundage');
$form->text('loudspeaker_imei')->value(0); $form->text('loudspeaker_imei')->value(0);
$form->number('sort','排序');
$form->switch('status','状态');
$form->number('sort', '排序');
$form->switch('status', '状态');
$form->image('logo'); $form->image('logo');
$form->multipleImage('imgs','市场图片');
$form->multipleImage('imgs', '市场图片');
$form->textarea('introduce'); $form->textarea('introduce');
$form->textarea('remark'); $form->textarea('remark');
$form->textarea('dishes_menu_intro')->value('菜谱简介'); $form->textarea('dishes_menu_intro')->value('菜谱简介');
@ -143,11 +143,11 @@ class ImsCjdcMarketController extends AdminController
{ {
$mps = LanzuMpInfo::all(); $mps = LanzuMpInfo::all();
$ret = []; $ret = [];
foreach ($mps as $key => $value){
$item = [];
$item['id'] = $value->id;
foreach ($mps as $key => $value) {
$item = [];
$item['id'] = $value->id;
$item['text'] = $value->name; $item['text'] = $value->name;
$ret[] = $item;
$ret[] = $item;
} }
return response()->json($ret); return response()->json($ret);
} }

97
app/Admin/Controllers/LanzuMmInfoController.php

@ -18,7 +18,6 @@ use App\Models\LanzuMmInfo as mmInfo;
use Dcat\Admin\Admin; use Dcat\Admin\Admin;
class LanzuMmInfoController extends AdminController class LanzuMmInfoController extends AdminController
{ {
/** /**
@ -31,33 +30,35 @@ class LanzuMmInfoController extends AdminController
return Grid::make(new LanzuMmInfo(), function (Grid $grid) { return Grid::make(new LanzuMmInfo(), function (Grid $grid) {
$user = Admin::user(); $user = Admin::user();
$mp_info = mpInfo::where('admin_user_id',$user->id)->first();
$mk = ImsCjdcMarket::where('mp_id',$mp_info->id)->get()->pluck('id');
$mk_ids = [-1];
if(count($mk)>0){
$mk_ids = $mk;
//根据登陆帐户获取服务商信息
$mp_info = mpInfo::where('admin_user_id', $user->id)->first();
if ($mp_info) {//如果没有获取到对应的服务商信息,说明该帐号没有绑定服务商
$mk = ImsCjdcMarket::where('mp_id', $mp_info->id)->get()->pluck('id');
$mk_ids = [-1];
if (count($mk) > 0) {
$mk_ids = $mk;
}
$grid->model()->whereIn('market_id', $mk_ids);
} }
$grid->model()->whereIn('market_id',$mk_ids);
$grid->id->sortable(); $grid->id->sortable();
$grid->name; $grid->name;
$grid->phone; $grid->phone;
$grid->column('market_id','所属市场')->display(function ($id){
$grid->column('market_id', '所属市场')->display(function ($id) {
$market = ImsCjdcMarket::find($id); $market = ImsCjdcMarket::find($id);
return $market->name; return $market->name;
}); });
$grid->id_frond->image('',50,50);
$grid->id_back->image('',50,50);
$grid->id_frond->image('', 50, 50);
$grid->id_back->image('', 50, 50);
$grid->id_number; $grid->id_number;
$grid->column('status','状态')->display(function ($status){
if ($status==1){
$grid->column('status', '状态')->display(function ($status) {
if ($status == 1) {
return '正常'; return '正常';
}else{
} else {
return '禁用'; return '禁用';
} }
}); });
$grid->created_at->display(function ($time){
return date('Y-m-d H:i:s',$time);
$grid->created_at->display(function ($time) {
return date('Y-m-d H:i:s', $time);
}); });
$grid->filter(function (Grid\Filter $filter) { $grid->filter(function (Grid\Filter $filter) {
$filter->equal('id'); $filter->equal('id');
@ -102,33 +103,33 @@ class LanzuMmInfoController extends AdminController
$form->display('id'); $form->display('id');
$form->text('name')->required(); $form->text('name')->required();
$form->text('phone')->required(); $form->text('phone')->required();
$form->select('market_id','所属市场')->options('/api/getMarket')->required();
$form->text('user_id','小程序用户ID')->required();
$form->select('market_id', '所属市场')->options('/api/getMarket')->required();
$form->text('user_id', '小程序用户ID')->required();
$form->image('id_frond')->uniqueName(); $form->image('id_frond')->uniqueName();
$form->image('id_back')->uniqueName(); $form->image('id_back')->uniqueName();
$form->text('id_number'); $form->text('id_number');
$form->radio('status','状态')->options(['禁用','启用'])->default(1);
$form->saved(function (Form $form,$result){
$form->radio('status', '状态')->options(['禁用', '启用'])->default(1);
$form->saved(function (Form $form, $result) {
$adu = new AdminUsers(); $adu = new AdminUsers();
if ($form->isCreating()){
if ($form->isCreating()) {
$newId = $result; $newId = $result;
if (!$newId){
if (!$newId) {
return $form->error('市场经理添加失败'); return $form->error('市场经理添加失败');
} }
$mm = mmInfo::find($newId); $mm = mmInfo::find($newId);
//>>1.添加市场经理前,去查询是否已存在相同的帐号 //>>1.添加市场经理前,去查询是否已存在相同的帐号
$count = $adu->where(['username'=>$form->phone])->count();
if ($count){
$count = $adu->where(['username' => $form->phone])->count();
if ($count) {
$mm->delete(); $mm->delete();
return $form->error('该手机号作为登陆帐号已存在!');
return $form->error('该手机号作为登陆帐号已存在!');
} }
//>>2.添加市场经理登陆帐号 //>>2.添加市场经理登陆帐号
$adu->username = $form->phone; $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){
$adu->password = Hash::make(substr($form->phone, -5));
$adu->name = $form->name;
$adu->status = $form->status;
$res = $adu->save();
if (!$res) {
//删除刚添加的服务商 //删除刚添加的服务商
$mm->delete(); $mm->delete();
return $form->error('市场经理添加失败'); return $form->error('市场经理添加失败');
@ -138,18 +139,18 @@ class LanzuMmInfoController extends AdminController
$mm->save(); $mm->save();
//添加到admin roles中 //添加到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();
//添加服务商角色
$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{
} else {
//>>4.编辑时同步登陆帐号状态 //>>4.编辑时同步登陆帐号状态
$id = $form->getKey();
$mm = mmInfo::find($id);
$ad = $adu->find($mm->admin_user_id);
$id = $form->getKey();
$mm = mmInfo::find($id);
$ad = $adu->find($mm->admin_user_id);
$ad->status = $form->status; $ad->status = $form->status;
$ad->save(); $ad->save();
} }
@ -163,15 +164,15 @@ class LanzuMmInfoController extends AdminController
*/ */
protected function getMarket() protected function getMarket()
{ {
$user = Admin::user();
$mp = LanzuMpInfo::where('admin_user_id',$user->id)->first();
$markets = ImsCjdcMarket::where('mp_id',$mp->id)->get();
$data = [];
foreach ($markets as $market){
$item = [];
$item['id'] = $market->id;
$user = Admin::user();
$mp = LanzuMpInfo::where('admin_user_id', $user->id)->first();
$markets = ImsCjdcMarket::where('mp_id', $mp->id)->get();
$data = [];
foreach ($markets as $market) {
$item = [];
$item['id'] = $market->id;
$item['text'] = $market->name; $item['text'] = $market->name;
$data[] = $item;
$data[] = $item;
} }
return response()->json($data); return response()->json($data);
} }

103
app/Admin/Controllers/LanzuMmWithdrawController.php

@ -8,12 +8,12 @@ use App\Models\LanzuMmInfo;
use App\Models\ImsCjdcMarket; use App\Models\ImsCjdcMarket;
use App\Models\LanzuMpInfo as mpInfo; use App\Models\LanzuMpInfo as mpInfo;
use App\Models\MpBalance;
use Dcat\Admin\Form; use Dcat\Admin\Form;
use Dcat\Admin\Grid; use Dcat\Admin\Grid;
use Dcat\Admin\Show; use Dcat\Admin\Show;
use Dcat\Admin\Controllers\AdminController; use Dcat\Admin\Controllers\AdminController;
use Dcat\Admin\Admin; use Dcat\Admin\Admin;
use Illuminate\Support\Facades\Auth;
class LanzuMmWithdrawController extends AdminController class LanzuMmWithdrawController extends AdminController
{ {
@ -23,30 +23,27 @@ class LanzuMmWithdrawController extends AdminController
*/ */
protected function grid() protected function grid()
{ {
$user = Admin::user();
$mp_info = mpInfo::where('admin_user_id',$user->id)->first();
$mk = ImsCjdcMarket::where('mp_id',$mp_info->id)->get()->pluck('id');
$mk_ids = [-1];
if(count($mk)>0){
$mk_ids = $mk;
$user = Admin::user();
$buider = new LanzuMmWithdraw();
$mp_info = mpInfo::where('admin_user_id', $user->id)->first();
if ($mp_info) {
$mk = ImsCjdcMarket::where('mp_id', $mp_info->id)->get()->pluck('id');
$mk_ids = [-1];
if (count($mk) > 0) {
$mk_ids = $mk;
}
$ids = LanzuMmInfo::whereIn('market_id', $mk_ids)->pluck('id');
$buider = MmWithdraw::with('mmInfo')->whereIn('mm_id', $ids);
} }
$ids = LanzuMmInfo::whereIn('market_id',$mk_ids)->pluck('id');
$buider = MmWithdraw::with('mmInfo')->whereIn('mm_id',$ids);
return Grid::make($buider, function (Grid $grid) { return Grid::make($buider, function (Grid $grid) {
//$grid->model()->mmInfo()->where('market_id',1);
$grid->id->sortable(); $grid->id->sortable();
//$grid->mm_id('提现');
$grid->column('mmInfo.name','经理名');
$grid->column('mmInfo.name', '经理名');
$grid->money; $grid->money;
$grid->status('提现状态')->using([-1=>'拒绝',0=>'审核中',1=>'通过'])
->label([-1=>'danger',0=>'default',1=>'success']);
$grid->created_at('提现时间')->display(function ($time){
return date('Y-m-d H:i',$time);
$grid->status('提现状态')->using([-1 => '拒绝', 0 => '审核中', 1 => '通过'])
->label([-1 => 'danger', 0 => 'default', 1 => 'success']);
$grid->created_at('提现时间')->display(function ($time) {
return date('Y-m-d H:i', $time);
}); });
$grid->filter(function (Grid\Filter $filter) { $grid->filter(function (Grid\Filter $filter) {
$filter->equal('id'); $filter->equal('id');
@ -82,10 +79,68 @@ class LanzuMmWithdrawController extends AdminController
{ {
return Form::make(new LanzuMmWithdraw(), function (Form $form) { return Form::make(new LanzuMmWithdraw(), function (Form $form) {
$form->display('id'); $form->display('id');
$form->text('mm_id');
$form->text('money');
$form->display('created_at');
$form->display('updated_at');
$form->hidden('mm_id')->value($this->getMmId(Admin::user()->id));
$form->display('可提现金额')->value($this->getBalance(Admin::user()->id));
$form->display('提现人')->value(Admin::user()->name);
if ($form->isEditing()){//判断是否是编辑请求,如果是编辑请求,判断状态是否被编辑过.
$form->display('money');
if ($form->model()->status!=0){//如果提现状态已变更过,则不允许再编辑状态
$form->hidden('status', '状态');
}else{
$form->radio('status', '状态')
->options([0 => '待审核', 1 => '已同意', -1 => '已拒绝'])
->default(0);
}
}else{
$form->text('money');
$form->radio('status', '状态')
->options([0 => '待审核', 1 => '已同意', -1 => '已拒绝'])
->default(0);
}
}); });
} }
/**
* 获取可提现金额
* @param $aduId
* @return float
*/
protected function getBalance($aduId)
{
$row = $this->getMmInfoByAduId($aduId);
if ($row) {
$res = MpBalance::where(['user_id' => $row->user_id])->first();
if ($res) {
return $res->balance;
}
}
return '0.00';
}
/**
* 根据登陆帐号获取市场经理信息
* @param $aduId
* @return mixed
*/
protected function getMmInfoByAduId($aduId)
{
$row = LanzuMmInfo::where(['admin_user_id' => $aduId])->first();
return $row;
}
/**
* 获取市场经理ID
* @param $aduId
* @return int
*/
protected function getMmId($aduId)
{
$row = $this->getMmInfoByAduId($aduId);
if ($row) {
return $row->id;
} else {
return 0;
}
}
} }

1
app/Models/LanzuMmWithdraw.php

@ -18,4 +18,5 @@ class LanzuMmWithdraw extends Model
return $this->belongsTo('\App\Models\LanzuMmInfo','mm_id','id'); return $this->belongsTo('\App\Models\LanzuMmInfo','mm_id','id');
} }
} }
Loading…
Cancel
Save