post = $this->request->post(); } public function create() { $token = isset($this->post['token']) && $this->post['token'] != '' ? trim($this->post['token']) : ""; if ($token == '') { return error_show(1005, "参数token不能为空"); } $companyNo = makeNo("KH"); $companyName = isset($this->post['companyName']) && $this->post['companyName'] !== "" ? trim($this->post['companyName']): ""; if ($companyName == "") { return error_show(1002, "参数companyName不能为空"); } $parent = isset($this->post['parent']) && $this->post['parent'] !== "" ? intval($this->post['parent'] ) : ""; $rename = Db::name('customer_org1')->where(['is_del' =>0,'id'=>$parent])->find(); $item = Db::name('customer_info')->where(['itemid'=>$rename['id'],'companyName'=>$companyName,'is_del'=>0])->find(); if ($item!=false) { return error_show(1002, "公司名称已存在"); } // if ($parent === "") { // return error_show(1002, "参数parent不能为空"); // } //$itemid = isset($this->post['itemid']) && $this->post['itemid'] !== "" ? intval($this->post['itemid'] ) : ""; $customer_member = isset($this->post['customer_member']) && $this->post['customer_member'] !== "" ? $this->post['customer_member'] : ""; if ($customer_member == "") { return error_show(1002, "参数customer_member不能为空"); } // $status = isset($this->post['status']) && $this->post['status'] !=="" ? intval($this->post['status']):""; // if($status==""){ // return error_show(1002,"参数status不能为空"); // } $user = GetUserInfo($token); if (empty($user) || $user['code'] != 0) { return error_show(102, "创建人数据不存在"); } $createrid = isset($user["data"]['id']) ? $user["data"]['id'] : ""; $creater = isset($user["data"]['nickname']) ? $user["data"]['nickname'] : ""; Db::startTrans(); try { $data = [ "companyNo" => $companyNo, "companyName" => $companyName, "parent" => $parent, "itemid" => $parent, "area" => "", "comdepart" => "", "commobile" => "", "comtel" => "", "contactor" => "", "depart" => "", "mobile" => "", "invoice_title" => "", "invoice_people" => "", "invoice_addr" => "", "invoice_mobile" => "", "invoice_code" => "", "invoice_bank" => "", "invoice_bankNo" => "", "companyCode" => "", "status" => 0, "sales_name" => "", "sales_depart" => "", "branch" => "", "middle" => "", "country" => "", "is_del" => 0, "creater" => $creater, "modifier" => "", "addtime" => date("Y-m-d H:i:s"), "updatetime" => date("Y-m-d H:i:s"), ]; $datainfo = Db::name('customer_info')->insert($data); if ($datainfo) { // $var = []; // //var_dump($customer_member); foreach ($customer_member as $value) { // if($value['ownerid']!==""){ // $to = GetInfoById($token, ['id' => $value['ownerid']]); // if (empty($to) || $to['code'] != 0) { // return app_show(1002, "数据拥有者信息不存在"); // } // } $item = []; // $info = $to['data']; // $item['owner'] = isset($info['nickname']) ? $info['nickname'] : ""; // $item['ownerid'] = $info['id']; $item['commobile'] = isset($value['commobile']) ? $value['commobile'] : "";; $item['comtel'] = ""; $item['contactor'] = isset($value['contactor']) ? $value['contactor'] : ""; $item['position'] = isset($value['position']) ? $value['position'] : ""; $item['wxaccount'] = isset($value['wxaccount']) ? $value['wxaccount'] : ""; $item['qqaccount'] = isset($value['qqaccount']) ? $value['qqaccount'] : ""; $item['email'] = isset($value['email']) ? $value['email'] : ""; $item['comdepart'] = isset($value['comdepart']) ? $value['comdepart'] : ""; //$item['is_private'] = isset($value['is_private']) ? $value['is_private'] : ""; $item['status'] = $value['status']; $item['createrid'] = $createrid; $item['creater'] = $creater; $item['companyNo'] = $companyNo; $item['is_del'] = 0; $item['addtime'] = date("Y-m-d H:i:s"); $item['updatetime'] = date("Y-m-d H:i:s"); $var[] = $item; } $vp = Db::name('customer_member')->insertAll($var); if ($vp == "") { Db::rollback(); return error_show(1002, "新建失败"); } Db::commit(); return error_show(0, "新建成功"); } else { Db::rollback(); return error_show(1002, "新建失败"); } } catch (\Exception $e) { Db::rollback(); return error_show(1005, $e->getMessage()); } } 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 = [["a.is_del", "=", 0]]; $companyName = isset($this->post['companyName']) && $this->post['companyName'] !== "" ? trim($this->post['companyName']) : ""; if ($companyName != "") { $where[] = ['b.companyName', "like", "%$companyName%"]; } $status = isset($this->post['status']) && $this->post['status'] !=="" ? intval($this->post['status']) :""; if($status!==""){ $where[]=['status',"=",$status]; } $creater = isset($this->post['creater']) && $this->post['creater'] !== "" ? intval($this->post['creater']) : ""; if ($creater != "") { $where[] = ['a.creater', "like", "%$creater%"]; } $start = isset($this->post['start']) && $this->post['start'] !== "" ? $this->post['start'] : ""; if ($start !== "") { $where[] = ['a.addtime', ">=", date('Y-m-d H:i:s', strtotime($start))]; } $end = isset($this->post['end']) && $this->post['end'] !== "" ? $this->post['end'] : ""; if ($end !== "") { $where[] = ['a.addtime', "<", date('Y-m-d H:i:s', strtotime($end) + 24 * 3600)]; } $count = Db::name('customer_member')->alias('a')->join('customer_info b', "b.companyNo=a.companyNo", "left") ->where($where)->count(); $total = ceil($count / $size); $page = $page >= $total ? $total : $page; $list = Db::name('customer_member')->alias('a')->join('customer_info b', "b.companyNo=a.companyNo", "left") ->where($where)->page($page, $size)->order("addtime desc")->field("a.*,b.companyName,b.parent")->select(); return app_show(0, "获取成功", ['list' => $list, 'count' => $count]); } public function edit() { $token = isset($this->post['token']) && $this->post['token'] != '' ? trim($this->post['token']) : ""; if ($token == '') { return error_show(1005, "参数token不能为空"); } $id = isset($this->post['id']) && $this->post['id'] !== "" ? intval($this->post['id']) : ""; if ($id == "") { return error_show(1002, "参数id不能为空"); } $idinfo = Db::name('customer_info')->where(['id' => $id, 'is_del' => 0])->find(); if (empty($idinfo)) { return error_show(1004, "未找到数据"); } if($idinfo['status']==1){ return error_show(1002,"状态是启用状态,无法编辑"); } // $companyNo = isset($this->post['companyNo']) && $this->post['companyNo'] !== "" ? $this->post['companyNo'] : ""; // if ($companyNo == "") { // return error_show(1002, "参数companyNo不能为空"); // } // $company = Db::name('customer_info')->where(['companyNo'=>$companyNo,'is_del'=>0])->find(); // if(empty($company)){ // return error_show(1004,"未找到数据"); // } $companyName = isset($this->post['companyName']) && $this->post['companyName'] !== "" ? $this->post['companyName'] : ""; if ($companyName == "") { return error_show(1002, "参数companyName不能为空"); } $parent = isset($this->post['parent']) && $this->post['parent'] !== "" ? $this->post['parent'] : ""; if ($parent == "") { return error_show(1002, "参数parent不能为空"); } $rename = Db::name('customer_org1')->where(['is_del' =>0,'id'=>$parent])->find(); $item = Db::name('customer_info')->where(['itemid'=>$rename['id'],'companyName'=>$companyName,'is_del'=>0])->where([['id','<>',$id]])->find(); if ($item!=false) { return error_show(1002, "公司名称已存在"); } $customer_member = isset($this->post['customer_member']) && $this->post['customer_member'] !== "" ? $this->post['customer_member'] : ""; if ($customer_member == "") { return error_show(1002, "参数customer_member不能为空"); } $user = GetUserInfo($token); if (empty($user) || $user['code'] != 0) { return error_show(102, "创建人数据不存在"); } $createrid = isset($user["data"]['id']) ? $user["data"]['id'] : ""; $creater = isset($user["data"]['nickname']) ? $user["data"]['nickname'] : ""; Db::startTrans(); try { $data = [ "id" => $id, "companyName" => $companyName, //"companyNo" => $companyNo, "parent" => $parent, "updatetime" => date("Y-m-d H:i:s"), ]; $datainfo = Db::name('customer_info')->save($data); // var_dump(Db::name('customer_info')->getLastSql()); $stn = array_diff($data,$idinfo); $json = json_encode($stn,JSON_UNESCAPED_UNICODE); $jsp = json_encode($idinfo,JSON_UNESCAPED_UNICODE); if ($datainfo) { ChangeLog::logAdd("2",$idinfo['companyNo'],$jsp,$json,$this->post['token'],$this->post); // $var=[]; // var_dump($customer_member); foreach ($customer_member as $value) { // $to = GetInfoById($token, ['id' => $value['ownerid']]); // // if (empty($to) || $to['code'] != 0) { // return app_show(1002, "数据拥有者信息不存在"); // } $item = []; // $info = $to['data']; // $item['owner'] = $info['nickname']; // $item['ownerid'] = $info['id']; $item['commobile'] =isset($value['commobile']) ? $value['commobile'] : ""; $item['comtel'] = ""; // $item['id'] =isset($value['id']) ? $value['id'] : ""; isset($value['id'])&&$value['id']!=="" ? $item['id'] = $value['id']:''; $item['contactor'] = isset($value['contactor']) ? $value['contactor'] : ""; $item['position'] = isset($value['position']) ? $value['position'] : ""; $item['wxaccount'] = isset($value['wxaccount']) ? $value['wxaccount'] : ""; $item['qqaccount'] = isset($value['qqaccount']) ? $value['qqaccount'] : ""; $item['email'] = isset($value['email']) ? $value['email'] : ""; $item['comdepart'] = isset($value['comdepart']) ? $value['comdepart'] : ""; // $item['is_private'] = isset($value['is_private']) ? $value['is_private'] : ""; $item['status'] = $value['status']; $item['createrid'] = $createrid; $item['creater'] = $creater; $item['companyNo'] = isset( $idinfo['companyNo']) ? $idinfo['companyNo'] : ""; $item['is_del'] = 0; $item['addtime']=date("Y-m-d H:i:s"); $item['updatetime'] = date("Y-m-d H:i:s"); // $var[]=$item; $vp = Db::name('customer_member')->save($item); // var_dump(Db::name('customer_member')->getLastSql()); // $var = array_diff($customer_member,$item); // $jsn = json_encode($var); if ($vp == false) { // ChangeLog::logAdd("2",$item['companyNo'],$item,$jsn,$this->post['token'],$this->post); Db::rollback(); return error_show(1003, "更新失败"); } } Db::commit(); return error_show(0, "更新成功"); } else { Db::rollback(); return error_show(1002, "更新失败"); } } catch (\Exception $e) { Db::rollback(); return error_show(1005, $e->getMessage()); } } public function info() { $companyNo = isset($this->post['companyNo']) && $this->post['companyNo'] !== "" ? trim($this->post['companyNo']) : ""; if ($companyNo == "") { return error_show(1002, "参数companyNo不能为空"); } //>field("companyNo,companyName,itemid as parent,id")- $idinfo = Db::name('customer_info')->where(['companyNo' => $companyNo, 'is_del' => 0])->find(); if ($idinfo == "") { return error_show(1002, "未找到数据"); } $info = Db::name("customer_member")->where(['companyNo' => $idinfo['companyNo'], "is_del" => 0])->select(); if ($info == "") { return error_show(1002, "未找到customer_member数据"); } // $in = Db::name("customer_attr")->where(['id' => $idinfo['parent'], "is_del" => 0])->find(); // if ($in == "") { // return error_show(1002, "未找到customer_attr数据"); // } // $idinfo['attr_name'] = $in['name']; $idinfo['member'] = $info; if ($idinfo == "") { return error_show(1002, "未找到数据"); } return app_show(0, "获取成功", $idinfo); } public function del(){ $id = $this->post['id'] && $this->post['id'] !=="" ? intval($this->post['id']) :""; if($id===""){ return error_show(1004,"参数id不能为空"); } $str= Db::name('customer_info')->where(['id'=>$id,'is_del'=>0])->find(); if(empty($str)){ return error_show(1002,"未找到数据"); } if($str['status']==1){ return error_show(1005,"启用状态,不允许删除"); } $end = Db::name('customer_info')->update(['id'=>$id,'is_del'=>1]); 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("customer_info")->where([["id","=",$id],["is_del","=",0]])->find(); if(!$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; $msg = $status==1?"启用":"禁用"; $update = Db::name("customer_info")->save($info); return $update? error_show(0,"{$msg}成功"):error_show(1004,"{$msg}失败"); } }