|
@@ -0,0 +1,275 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+namespace app\admin\controller;
|
|
|
+
|
|
|
+use app\BaseController;
|
|
|
+use think\App;
|
|
|
+use think\facade\Db;
|
|
|
+
|
|
|
+class Customar extends BaseController
|
|
|
+{
|
|
|
+ public $post="";
|
|
|
+ public function __construct(App $app)
|
|
|
+ {
|
|
|
+ parent::__construct($app);
|
|
|
+ $this->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'] !== "" ? $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不能为空");
|
|
|
+ }
|
|
|
+ $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(1002,"创建人数据不存在");
|
|
|
+ }
|
|
|
+ $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"=>"",
|
|
|
+ "itemid"=>"",
|
|
|
+ "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"=>"",
|
|
|
+ "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){
|
|
|
+ $to= GetInfoById($token,['id'=>$value['id']]);
|
|
|
+
|
|
|
+ if(empty($to)||$to['code']!=0) {
|
|
|
+ return app_show(1002, "数据拥有者信息不存在");
|
|
|
+ }
|
|
|
+ $item=[];
|
|
|
+ $info =$to['data'];
|
|
|
+ $item['owner']=$info['nickname'];
|
|
|
+ $item['ownerid']=$info['id'];
|
|
|
+ $item['commobile']=$info['mobile'];
|
|
|
+ $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'] !=="" ? trim($this->post['status']):"";
|
|
|
+ if($status!=""){
|
|
|
+ $where[]=['a.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,"未找到数据");
|
|
|
+ }
|
|
|
+ $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不能为空");
|
|
|
+ }
|
|
|
+ $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(1002,"创建人数据不存在");
|
|
|
+ }
|
|
|
+ $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());
|
|
|
+ if($datainfo){
|
|
|
+ //$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']=$info['mobile'];
|
|
|
+ $item['comtel']="";
|
|
|
+ $item['id']=isset($value['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']=$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());
|
|
|
+ if ($vp == false) {
|
|
|
+ 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(){
|
|
|
+ $id = isset($this->post['id']) && $this->post['id'] !=="" ? intval($this->post['id']):"";
|
|
|
+ if($id==""){
|
|
|
+ return error_show(1002,"参数id不能为空");
|
|
|
+ }
|
|
|
+ $idinfo = Db::name('customer_member')->alias('a')->join("customer_info b","b.companyNo=a.companyNo","left")
|
|
|
+ ->field("a.*,b.companyName,b.parent")
|
|
|
+ ->where(['a.id'=>$id,'a.is_del'=>0])->find();
|
|
|
+ if($idinfo==""){
|
|
|
+ return error_show(1002,"未找到数据");
|
|
|
+ }
|
|
|
+ return app_show(0,"获取成功",$idinfo);
|
|
|
+ }
|
|
|
+
|
|
|
+}
|