Files
pgserver3.0/pgserver/application/admin/controller/Manage.php
annnj-company 130c1026c4 first commit
2026-04-17 18:29:53 +08:00

150 lines
6.7 KiB
PHP

<?php
//客户经理控制器
namespace app\admin\controller;
use think\db\Where;
use think\Request;
use think\Response;
use think\route\Resource;
class Manage extends Base{
//获取客户经理列表信息
public function managerList(){
$postData= $this->request->post();
$page = !empty($postData['page'])?$postData['page']:1;
$limit = !empty($postData['limit'])?$postData['limit']:10;
$where = new Where();
if(!empty($postData['keyword'])) $where['name'] = ['like',['%'.trim($postData['keyword']).'%']];
if(!empty($postData['bank_id'])) $where['bank_id'] = ['=',trim($postData['bank_id'])];
if(!empty($postData['bank_branch_id'])) $where['bank_branch_id'] = ['=',trim($postData['bank_branch_id'])];
if(!empty($postData['bank_sub_id'])) $where['bank_sub_id'] = ['=',trim($postData['bank_sub_id'])];
$list = \Db::name('account_manager')
->field('*,if(update_time,update_time,addtime) as time')
->order("time","desc")
->where($where)
->where(['is_delete'=>1])
->page($page)
->limit($limit)
->select();
$count = \Db::name('account_manager')->alias('am')->where($where)->count();
$lastList = [];
foreach ($list as $item){
$lastList['list'][] = $item;
}
$lastList['count'] = $count;
if($lastList) return $this->buildSuccess($lastList);
return $this->buildFailed('未获取到数据');
}
//新增客户经理
public function addManager(){
$postData = $this->request->post();
if(empty($postData['name'])) return $this->buildFailed('客户经理姓名必填!');
if(empty($postData['mobile'])) return $this->buildFailed('客户经理手机号必填!');
if(empty($postData['bank_id'])) return $this->buildFailed('银行名称必填!');
if(empty($postData['bank_branch_id'])) return $this->buildFailed('分行名称必填!');
if(empty($postData['bank_sub_id'])) return $this->buildFailed('支行名称必填!');
//验证长度
if(strlen($postData['name']) > 30) return $this->buildFailed('姓名字段过长!');
if(strlen($postData['mobile']) > 11) return $this->buildFailed('手机号字段过长!');
if(strlen($postData['job']) > 100) return $this->buildFailed('职务字段过长!');
if(strlen($postData['email']) > 50) return $this->buildFailed('邮箱字段过长!');
if(strlen($postData['address']) > 100) return $this->buildFailed('地址字段过长!');
//验证格式
$mobile_pattern = "/^1[34578]\d{9}$/";
$email_pattern = "/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,})$/";
if(!preg_match($mobile_pattern,$postData['mobile'])) return $this->buildFailed('手机号格式不正确!');
if(!empty($postData['email']) && !preg_match($email_pattern,$postData['email'])) return $this->buildFailed('邮箱格式不正确!');
$postData['addtime'] = date('Y-m-d H:i:s');
if(isset($postData['id']) && !empty($postData['id'])) unset($postData['id']);
$res = \Db::name('account_manager')->insert($postData);
if($res){
$result = [
'code' => 1,
'msg' => '新增成功',
];
$response = Response::create($result, 'json');
return $response;
}
return $this->buildFailed('新增失败!');
}
//编辑客户经理
public function editManager(){
$postData = $this->request->post();
if(empty($postData['bank_id'])) return $this->buildFailed('银行名称必填!');
if(empty($postData['bank_branch_id'])) return $this->buildFailed('分行名称必填!');
if(empty($postData['bank_sub_id'])) return $this->buildFailed('支行名称必填!');
if(!empty($postData['name']) && strlen($postData['name']) > 30) return $this->buildFailed('姓名字段过长!');
if(!empty($postData['mobile']) && strlen($postData['mobile']) > 11) return $this->buildFailed('手机号字段过长!');
if(!empty($postData['job']) && strlen($postData['job']) > 100) return $this->buildFailed('职务字段过长!');
if(!empty($postData['email']) && strlen($postData['email']) > 50) return $this->buildFailed('邮箱字段过长!');
if(!empty($postData['address']) && strlen($postData['address']) > 100) return $this->buildFailed('地址字段过长!');
//验证格式
$mobile_pattern = "/^1[34578]\d{9}$/";
$email_pattern = "/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,})$/";
if(!empty($postData['mobile']) && !preg_match($mobile_pattern,$postData['mobile'])) return $this->buildFailed('手机号格式不正确!');
if(!empty($postData['email']) && !preg_match($email_pattern,$postData['email'])) return $this->buildFailed('邮箱格式不正确!');
$id = $postData['id'];
unset($postData['id']);
$postData['update_time'] = date('Y-m-d H:i:s');
$res = \Db::name('account_manager')->where('id',$id)->update($postData);
if($res){
$result = [
'code' => 1,
'msg' => '编辑成功',
];
$response = Response::create($result, 'json');
return $response;
}
return $this->buildFailed('修改失败!');
}
//获取所有支行信息
public function getAllBranchBank(){
$branchInfo = \Db::name('bank')->where(['type'=>3])->field('id,name')->select();
if($branchInfo){
if($branchInfo) return $this->buildSuccess($branchInfo);
}
return $this->buildFailed('未获取到支行信息!');
}
//根据支行id获取支行信息
public function getBankInfoByBranchId(){
$postData = $this->request->post();
$bankid = $postData['bank_id'];
$bankinfo = \Db::name('bank')->alias('b')->join('bank bb','b.pid=bb.id')->join('bank bbb','bb.pid=bbb.id')
->where(['b.id'=>$bankid])->field('bbb.name as bank_name,bb.name as bank_branch_name,b.name as branch_name')->find();
if($bankinfo){
$info = $bankinfo['bank_name'].'-'.$bankinfo['bank_branch_name'].'-'.$bankinfo['branch_name'];
return $this->buildSuccess($info);
}
return $this->buildFailed('未获取到银行信息');
}
//根据支行id获取信息
public function ManagerDetails(){
$postData = $this->request->post();
$id = $postData['id'];
$bankinfo = \Db::name('account_manager')->where(['id'=>$id])->field('*')->find();
if($bankinfo){
return $this->buildSuccess($bankinfo);
}
return $this->buildFailed('未获取到银行信息');
}
}