first commit

This commit is contained in:
annnj-company
2026-04-17 18:29:53 +08:00
parent e49fa5a215
commit 130c1026c4
5615 changed files with 1639145 additions and 0 deletions

View File

@@ -0,0 +1,203 @@
<?php
namespace app\admin\controller;
use app\model\Valuer;
use app\model\Attachment;
use think\Db;
class ValuerSetUp extends Base
{
public $status_arr = ["1"=>"全职", "2"=>"兼职", "3"=>"离职"];
public $default_arr = ["1"=>"", "2"=>""];
/**
* 估价师列表
* @author cavan
*/
public function ValuerList()
{
$keyword = $this->request->post('keyword', '','trim'); //姓名搜索
$page = $this->request->post('page', '','trim'); //页码
$size = $this->request->post('limit', '','trim'); //单页数量
$where = array();
if(!empty($keyword)){
$where[]=['name','like',"%".$keyword."%"];
}
if(empty($order)){
$order=json_encode(array('create_time'=>'desc'));
}
if(empty($page)){
$page=1;
}
if(empty($size)){
$size=10;
}
$config = array(
"list_rows" => $size,
"page" => $page
);
$Valuer = new Valuer();
$Attachment = new Attachment();
$resultData=$Valuer->where($where)
->order(json_decode($order,true))
->field('id,name,mobile,certificate_number,status,mark,certificate,autograph,create_time,update_time,updated_by,default')
->paginate($size,false,$config);
if(!empty($resultData)){
foreach ($resultData as $k => $v){
$resultData[$k]['certificate_file'] = !empty($v['certificate'])?$Attachment->getUrl($v['certificate']):"";
$resultData[$k]['autograph_file'] = !empty($v['autograph'])?$Attachment->getUrl($v['autograph']):"";
$resultData[$k]['status_name'] = $this->status_arr[$v['status']];
$resultData[$k]['default_name'] = $this->default_arr[$v['default']];
$resultData[$k]['time'] = !empty($v['update_time'])?date("Y-m-d H:i:s",$v['update_time']):date("Y-m-d H:i:s",$v['create_time']);
}
}
return $this->buildSuccess($resultData);
}
/**
* 估价师详情--修改调用接口
* @author cavan
*
*/
public function ValuerDetails(){
$id = $this->request->post('id', '', 'trim');
if(!$id){
return $this->buildFailed("缺少参数id");
}
$Valuer = new Valuer();
$Attachment = new Attachment();
//主表信息
$list = $Valuer->where("id",$id)
->field("id,name,mobile,certificate_number,status,mark,certificate,autograph,default")
->find();
if(!empty($list)){
$list['status_name'] = $this->status_arr[$list['status']];
$list['default_name'] = $this->default_arr[$list['default']];
$list['certificate_file'] = !empty($list['certificate'])?$Attachment->getUrl($list['certificate']):"";
$list['autograph_file'] = !empty($list['autograph'])?$Attachment->getUrl($list['autograph']):"";
}
return $this->buildSuccess($list);
}
/**
* 新增/修改估价师
* @author cavan
*
* @parameter name 姓名
* @parameter mobile 手机号
* @parameter certificate_number 证书编号
* @parameter status 状态 1、全职 2、兼职 3、离职
* @parameter mark 备注
* @parameter certificate 上传证书附件表id
* @parameter autograph 上传签名附件表id
* @parameter default 默认选中
*/
public function save()
{
$id = $this->request->post('id', '', 'trim');
$name = $this->request->post('name', '', 'trim');
$mobile = $this->request->post('mobile', '', 'trim');
$certificate_number = $this->request->post('certificate_number', '', 'trim');
$status = $this->request->post('status', '', 'trim');
$mark = $this->request->post('mark', '', 'trim');
$certificate = $this->request->post('certificate', '', 'trim');
$autograph = $this->request->post('autograph', '', 'trim');
$default = $this->request->post('default', '', 'trim');
if (!$name) {
return $this->buildFailed("姓名不能为空");
}else{
if( strlen($name) > 50 ) return $this->buildFailed('输入姓名太长了');
}
if (!$mobile) {
return $this->buildFailed("手机号不能为空");
}else{
if( strlen($mobile) > 11 ) return $this->buildFailed('手机号码太长了,只能输入11位');
//验证手机格式
$mobile_pattern = "/^1[34578]\d{9}$/";
if(!empty($mobile) && !preg_match($mobile_pattern,$mobile)) return $this->buildFailed('手机号格式不正确!');
}
if (!$certificate_number) {
return $this->buildFailed("证书编号不能为空");
}else{
if( strlen($certificate_number) > 50 ) return $this->buildFailed('输入姓名太长了');
}
if (!$status) {
return $this->buildFailed("在职状态为必选项");
}
if (!$certificate) {
return $this->buildFailed("上传证书不能为空");
}
if (!$autograph) {
return $this->buildFailed("上传签名不能为空");
}
if (!$default) {
$default = 2;
}
$Valuer = new Valuer();
// 2020年7月28日14:20:24 cavan
if(intval($default) == 1){
if($id){
$num = $Valuer->where("id","<>",$id)->where("default",1)->count();
if($num >= 2){
return $this->buildFailed("不可配置超过两个估价师默认选中,请先取消其他估价师的默认选中");
}
}else{
$num = $Valuer->where("default",1)->count();
if($num >= 2){
return $this->buildFailed("不可配置超过两个估价师默认选中,请先取消其他估价师的默认选中");
}
}
}
$insert_data['name'] = $name;
$insert_data['mobile'] = $mobile;
$insert_data['certificate_number'] = $certificate_number;
$insert_data['status'] = $status;
$insert_data['mark'] = $mark;
$insert_data['certificate'] = $certificate;
$insert_data['autograph'] = $autograph;
$insert_data['default'] = $default;
$insert_data['updated_by'] = $this->userInfo['user_name'];
if($id){
Db::startTrans();
try {
$insert_data['update_time'] = time();
$Valuer->where("id",$id)->update($insert_data);
$msg = "编辑成功";
// 提交事务
Db::commit();
} catch (\Exception $e) {
// 回滚事务
Db::rollback();
return $e->getMessage();
}
}else{
Db::startTrans();
try {
$insert_data['create_time'] = time();
$id = $Valuer->insertGetId($insert_data);
$msg = "保存成功";
// 提交事务
Db::commit();
} catch (\Exception $e) {
// 回滚事务
Db::rollback();
return $e->getMessage();
}
}
return $this->buildSuccess([],"保存成功");
}
}