post['platform_name']) && $this->post['platform_name'] !=="" ? trim($this->post['platform_name']):""; if($platform_name==""){ return error_show(1003,"参数platform_name不能为空"); } $is_exit= Db::name("platform")->where(["platform_name"=>$platform_name])->find(); if($is_exit){ return error_show(1003,"平台名称已存在"); } $platform_type = isset($this->post['platform_type']) && $this->post['platform_type'] !=="" ? intval($this->post['platform_type']):""; if($platform_type===""){ return error_show(1002,"参数platform_type不能为空"); } $use_type = isset($this->post['use_type']) && $this->post['use_type'] !=="" ? intval($this->post['use_type']):""; if($use_type===""){ return error_show(1002,"参数use_type不能为空"); } $token = isset($this->post['token'])&& $this->post['token']!='' ? trim($this->post['token']):""; if($token==''){ return error_show(105,"参数token不能为空"); } $user =GetUserInfo($token); if(empty($user)||$user['code']!=0){ return error_show(1002,"创建人数据不存在"); } $action_id= isset($user["data"]['id']) ? $user["data"]['id'] : ""; $action_name= isset($user["data"]['nickname']) ? $user["data"]['nickname'] : ""; $desc=isset($this->post['desc']) && $this->post['desc'] !=="" ? trim($this->post['desc']):""; $status= isset($this->post['status']) && $this->post['status'] !==""? intval($this->post['status']):"0"; $data=[ "platform_code"=>$platform_code, "platform_name"=>$platform_name, "platform_type"=>$platform_type, "use_type"=>$use_type, "createrid"=>$action_id, "creater"=>$action_name, "desc"=>$desc, "status"=>$status, "is_del"=>0, "addtime"=>date("Y-m-d H:i:s"), "updatetime"=>date("Y-m-d H:i:s") ]; $info = Db::name("platform")->insert($data,true); if($info>0){ $this->addPlat($info); return error_show(0,"新建成功"); }else{ return error_show(1003,"新建失败"); } } public function list(){ $page = isset($this->post['page']) && $this->post['page']!=="" ? intval($this->post['page']):"1"; $size = isset($this->post['size']) && $this->post['size'] !=="" ? intval($this->post['size']):"10"; $where=[["p.is_del","=",0]]; $platform_name = isset($this->post['platform_name']) && $this->post['platform_name'] !=="" ? trim($this->post['platform_name']):""; if($platform_name!=""){ $where[]=['p.platform_name',"like","%$platform_name%"]; } $platform_type = isset($this->post['platform_type']) && $this->post['platform_type'] !=="" ? intval($this->post['platform_type']):""; if($platform_type !=""){ $where[]=['p.platform_type',"=",$platform_type]; } $use_type = isset($this->post['use_type']) && $this->post['use_type'] !=="" ? intval($this->post['use_type']):""; if($use_type !=""){ $where[]=['p.use_type',"=",$use_type]; } $status = isset($this->post['status']) && $this->post['status'] !=="" ? intval($this->post['status']) :""; if($status!==""){ $where[]=['p.status',"=",$status]; } $start = isset($this->post['start']) && $this->post['start']!=="" ? $this->post['start']:""; if($start!==""){ $where[]=['p.addtime',">=",date('Y-m-d H:i:s',strtotime($start))]; } $end = isset($this->post['end']) && $this->post['end']!=="" ? $this->post['end']:""; if($end!==""){ $where[]=['p.addtime',"<",date('Y-m-d H:i:s',strtotime($end)+24*3600)]; } $is_show=isset($this->post['is_show']) && $this->post['is_show']!=="" ? intval($this->post['is_show']):"1"; if($is_show==1){ $role=$this->checkRole(); if(!empty($role['platform'])){ $where[]=["p.id","in",$role['platform']]; } } $company_name = isset($this->post['company_name']) && $this->post['company_name'] !== "" ? trim($this->post['company_name']) : ""; if ($company_name !== "") $where[] = ["p.createrid", 'in', get_company_item_user_by_name($company_name)]; $count = Db::name('platform')->alias('p')->where($where)->count(); $total = ceil($count / $size); $page = $page >= $total ? $total : $page; $list = Db::name('platform') ->alias('p') ->field('p.*,u.itemid') ->leftJoin("depart_user u", "u.uid=p.createrid AND u.is_del=0") ->where($where) ->page($page,$size) ->order("addtime desc") ->append(['company_name']) ->withAttr('company_name',function ($val,$data){ return implode('/', array_column(GetPart($data['itemid']), 'name')); }) ->select() ->toArray(); return app_show(0,"获取成功",['list'=>$list,'count'=>$count]); } public function edit() { $id = isset($this->post['id']) && $this->post['id'] !== "" ? intval($this->post['id']) : ""; if ($id == "") { return error_show(1002, "参数id不能为空"); } $info = Db::name("platform")->where(['id' => $id, "is_del" => 0])->find(); if ($info == "") { return error_show(1002, "未找到数据"); } $platform_code = makeNo("PT"); $platform_name = isset($this->post['platform_name']) && $this->post['platform_name'] !== "" ? trim($this->post['platform_name']) : ""; if ($platform_name == "") { return error_show(1002, "参数platform_name不能为空"); } $platform_type = isset($this->post['platform_type']) && $this->post['platform_type'] !== "" ? intval($this->post['platform_type']) :""; if($platform_type===""){ return error_show(1002,"参数platform_type不能为空"); } $use_type = isset($this->post['use_type']) && $this->post['use_type'] !=="" ? intval($this->post['use_type']):""; if($use_type===""){ return error_show(1002,"参数use_type不能为空"); } $token = isset($this->post['token']) && $this->post['token'] != '' ? trim($this->post['token']) : ""; if ($token == '') { return error_show(1005, "参数token不能为空"); } $is_exit= Db::name("platform")->where([["platform_name","=",$platform_name],["id","<>",$id]])->find(); if($is_exit){ return error_show(1003,"平台名称已存在"); } // $user = GetUserInfo($token); // if (empty($user) || $user['code'] != 0) { // return error_show(102, "创建人数据不存在"); // } // $action_id = isset($user["data"]['id']) ? $user["data"]['id'] : ""; // $action_name = isset($user["data"]['nickname']) ? $user["data"]['nickname'] : ""; $status = isset($this->post['status']) && $this->post['status'] !== "" ? intval($this->post['status']) : ""; $desc = isset($this->post['desc']) && $this->post['desc'] !== "" ? trim($this->post['desc']) : ""; $data = [ "id" => $id, "platform_code" => $platform_code, "platform_name" => $platform_name, "platform_type" => $platform_type, "use_type"=>$use_type, // "createrid" => $action_id, // "creater" => $action_name, "desc" => $desc, "status" => $status, "is_del" => 0, "updatetime" => date("Y-m-d H:i:s") ]; $datainfo = Db::name('platform')->save($data); $temp = array_diff($data,$info); $json = json_encode($temp,JSON_UNESCAPED_UNICODE); $jsp = json_encode($info,JSON_UNESCAPED_UNICODE); if ($datainfo) { ChangeLog::logAdd(8,$info['platform_code'],$jsp,$json,$this->post['token'],$this->post); return error_show(0, "更新成功"); } else { return error_show(1002, "更新失败"); } } public function info(){ $id = isset($this->post['id']) && $this->post['id'] !=="" ? trim($this->post['id']) :""; if($id==""){ return error_show(1002,"参数id不能为空"); } $info = Db::name('platform')->where(['id'=>$id,'is_del'=>0])->find(); if(empty($info)){ return error_show(1004,'未找到数据'); } // $info['use_type'] = $info['use_type'] !=0 ? $info['use_type'] :""; return app_show(0,"获取成功",$info); } public function del(){ $id = isset($this->post['id']) && $this->post['id'] !==""? intval($this->post['id']):""; if($id==""){ return error_show(1002,"参数id不能为空"); } $info = Db::name("platform")->where(['id'=>$id,'is_del'=>0])->find(); if(empty($info)){ return error_show(1002,"未找到数据"); } $end = Db::name('platform')->update(['id'=>$id,'is_del'=>1,'updatetime'=>date("Y-m-d H:i:s")]); if($end){ return error_show(0,"删除成功"); }else{ return error_show(1002,"删除失败"); } } public function status(){ $id = isset($this->post['id']) && $this->post['id'] !=="" ? intval($this->post['id']):""; if($id==""){ return error_show(1002,"参数id不能为空"); } $info = Db::name("platform")->where(['id'=>$id,'is_del'=>0])->find(); if(empty($info)){ return error_show(1002,"未找到数据"); } $status = isset($this->post['status']) && $this->post['status'] !==""? intval($this->post['status']):""; if($status===""){ return error_show(1002,"参数status不能为空"); } if(!in_array($status,[0,1])){ return error_show(1002,"参数status无效"); } $info['status']=$status; $info['updatetime']=date("Y-m-d H:i:s"); $msg = $status==1?"启用":"禁用"; $update = Db::name("platform")->save($info); return $update? error_show(0,"{$msg}成功"):error_show(1004,"{$msg}失败"); } /** 平台添加分类 **/ private function addPlat($plat_id){ $cat =Db::name("cat")->where(["status"=>1,"is_del"=>0])->select()->toArray(); if (empty($cat)){ return ''; } foreach ($cat as $value){ $temp=[]; $temp['cat_id']=$value['id']; $temp['platform_id']=$plat_id; $temp['fund_code']=$value['fund_code']; $temp['status']=$value['status']; $temp['apply_id']=$value['createrid']; $temp['apply_name']=$value['creater']; $temp['addtime']=date("Y-m-d H:i:s"); $temp['updatetime']=date("Y-m-d H:i:s"); $isT = Db::name("cat_plat")->where(["cat_id"=>$value['id'],"platform_id"=>$plat_id,"is_del"=>0])->find(); if($isT){ $data= $temp; unset($data['cat_id']); unset($data['addtime']); Db::name("cat_plat")->where(["cat_id"=>$value['id'],"platform_id"=>$plat_id,"is_del"=>0])->update($data); }else{ Db::name("cat_plat")->save($temp); } } } }