model = new \app\bug\model\Manange(); } public function create() { $param= $this->request->param(["id"=>[],"company_id"=>""],"post","trim"); $valid =Validate::rule(["id|工单处理人主键id"=>"require|array","company_id|公司平台id"=>"require|number|gt:0"]); if($valid->check($param)==false)return error($valid->getError()); $manager =$this->model->where(['company_id' => $param['company_id'],'is_del' => 0])->column("manange_id"); $managerNew = array_diff($param['id'], $manager); $datain=[]; if (!empty($managerNew)) { $managerInfo = Account::with(['userInfo'])->whereIn('id',$managerNew)->select(); foreach ($managerInfo as $value){ $temp=[]; $temp['manange_name'] = $value['nickname']; $temp['manange_id'] = $value['id']; $temp['phone'] = $value['mobile']; $temp['company_id'] = $param['company_id']; $datain[]=$temp; } } $st = array_diff($manager,$param['id']); $itep = \app\bug\model\Deal::where(['deal_id'=>$st,'is_del'=>0])->select(); if(!$itep->isEmpty()){ $uin = array_unique(array_column($itep->toArray(),'deal_id')); $infe=$this->model->where(['manange_id'=>$uin,"is_del"=>0,'company_id'=>$param['company_id']])->column('manange_id,manange_name'); if(!empty($infe)) return error("处理人已绑定任务无法删除",10002,$infe); } $this->model->startTrans(); try{ if(!empty($st)){ $inf=$this->model->where(['manange_id'=>$st,"is_del"=>0,'company_id'=>$param['company_id']])->save(["is_del"=>1]); if( $inf==false) throw new \Exception("更新失败"); } if(!empty($datain)){ $datainfo = $this->model->insertAll($datain); if ($datainfo<=0)throw new \Exception('更新失败'); } $this->model->commit(); return success("新建成功"); }catch (\Exception $e){ $this->model->rollback(); return error($e->getMessage()); } } public function del(){ $id = $this->request->post("id/d"); $info=$this->model->where(['id'=>$id,'is_del'=>0])->findOrEmpty(); if($info->isEmpty()){ return error("未找到数据"); } $info->is_del=1; $info->save(); return success("删除成功"); } public function list(){ $param=$this->request->param(["manange_name"=>"","manange_id"=>"","company_id"=>"","phone"=>"","status"=>""],"post","trim"); $where =[['is_del','=',0]]; if ($param['manange_name'] !== "") { $where[]= ['manange_name',"like","%{$param['manange_name']}%"]; } if ($param['manange_id']!== "") { $where[]= ['manange_id',"=",$param['manange_id']]; } if ($param['company_id'] !== "") { $where[]= ['company_id',"=",$param['company_id']]; } if ($param['phone'] !== "") { $where[]= ['phone',"like","%{$param['phone']}%"]; } if ($param['status'] !== "") { $where[]= ['status',"=",$param['status']]; } $list=$this->model->where($where)->order("id desc")->select(); return success("获取成功",$list); } public function loglist(){ $param=$this->request->param(['page'=>1,'size'=>15,'bugNo'=>''],'post','trim'); $where=[]; if($param['bugNo']!=""){ $where[]=['bugNo',"like","%{$param['bugNo']}%"]; } $conf=Config::get('note'); $list = NoteLog::with(["noteInfo"])->where($where)->order('id desc')->paginate(["list_rows"=>$param['size'], "page"=>$param['page']]); foreach ($list->items() as &$value){ $value['type_cn'] = $value['type']==2?'编辑':'新建'; if(array_key_exists($value['handle_name'],$conf['field_value'])){ $field_value=$conf['field_value'][$value['handle_name']]; $value['action_item'] = isset($field_value[$value['action_item']]) ?$field_value[$value['action_item']]:$value['action_item']; $value['action_after'] = isset($field_value[$value['action_after']]) ?$field_value[$value['action_after']]:$value['action_after']; }else{ if($value['handle_name']=='model_id'){ $model1 =$value['action_item']!==''?Moudel::GetModelByCid($value['action_item'],$value['company_type']):[]; $model2 = Moudel::GetModelByCid($value['action_after'],$value['company_type']); $value['action_item'] = empty($model1)?'': implode("/",array_column($model1,'rename')); $value['action_after'] = empty($model2)?'': implode("/",array_column($model2,'rename')); } } $value['handle_name'] = $conf['field'][$value['handle_name']]; } return success("获取成功",['list'=>$list->items(),'count'=>$list->total()]); } }