CompanyController.class.php.bak.20200601 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266
  1. <?php
  2. namespace Home\Controller;
  3. use Think\Controller;
  4. class CompanyController extends ComController {
  5. public function index(){
  6. $Data=I();
  7. if(isset($Data['list'])){
  8. $Company=M("owner_company");
  9. $GetPage=$Data['pageCurrent'];//第几页
  10. $GetSize=$Data['pageSize'];//每页条数
  11. $Page=($GetPage-1)*$GetSize;
  12. if($_SESSION['zt_username']!='admin'&&$_SESSION['zt_username']!='zj'){
  13. $por=$this->getowner();
  14. //file_put_contents("/var/www/html/log/log.txt",print_r($por,true), FILE_APPEND);
  15. if(count($por)>0){
  16. //$por=array('10000001','10000000')
  17. if(!empty($Data['owner_id'])){
  18. $p="";
  19. foreach ($por as $val) {
  20. $p.="'".$val."',";
  21. }
  22. $p.="'www'";
  23. $Map['_string']=" (owner_id in(".$p.")) AND (owner_id LIKE '%".$Data['owner_id']."%') ";
  24. }else{
  25. $Map['owner_id']=array('in',$por);
  26. }
  27. }else{
  28. $Map['owner_id']='xxx';
  29. }
  30. }else{
  31. if(!empty($Data['owner_id'])){
  32. $Map['owner_id']=array('like','%'.$Data['owner_id'].'%');
  33. }
  34. }
  35. if(!empty($Data['owner_name'])){
  36. $Map['owner_name']=array('like','%'.$Data['owner_name'].'%');
  37. }
  38. if(!empty($Data['owner_address'])){
  39. $Map['owner_address']=array('like','%'.$Data['owner_address'].'%');
  40. }
  41. $Count= $Company->where($Map)->count();// 查询满足要求的总记录数
  42. $List = $Company->where($Map)->limit($Page,$GetSize)->order('id desc')->select();
  43. $Info = array(
  44. 'totalRow' => $Count,
  45. //'pageSize' => $count,//分页时不传
  46. 'list' => $List,
  47. );
  48. echo json_encode($Info);
  49. }else{
  50. $this->display();
  51. }
  52. }
  53. public function getowner(){
  54. //sp_user表 username=agentid
  55. //$por=M('owner_weibao')->field('owner_code')->where(array('agentid'=>$_SESSION['zt_username']))->select();
  56. $por=M('owner_weibao')->query("SELECT owner_code FROM sp_owner_weibao WHERE agentid='".$_SESSION['zt_username']."'
  57. UNION
  58. (SELECT owner_id FROM sp_owner_company WHERE create_man='".$_SESSION['zt_username']."')");
  59. $arr=array();
  60. foreach ($por as $value) {
  61. $arr[]=$value['owner_code'];
  62. }
  63. return $arr;
  64. }
  65. public function add(){
  66. $Data=I();
  67. if(!empty($Data['owner_name'])){
  68. $id=M()->query("SELECT id+10000 as id FROM sp_owner_company order by id desc limit 1");
  69. if(count($id)>0){
  70. $Data['owner_id']=$id[0]['id'];
  71. }else{
  72. $Data['owner_id']=10001;
  73. }
  74. $Data['create_man']=$_SESSION['zt_username'];
  75. $Company=M("owner_company")->where("owner_name != '".$Data['owner_name']."'")->add($Data);
  76. if($Company>0){
  77. echo json_encode(array('statusCode'=> 200,'message'=>'添加成功'));
  78. }else{
  79. echo json_encode(array('statusCode'=> 300,'message'=>'未添加成功,请确认名称是否已经添加'));
  80. }
  81. }else{
  82. $build=M('building')->field('id,build_name')->select();
  83. $this->assign('build',$build);
  84. $this->display();
  85. }
  86. }
  87. public function edit(){
  88. $Data=I();
  89. switch ($Data['type']) {
  90. case 'edit':
  91. //company
  92. $build=M('building')->field('id,build_name')->select();
  93. $this->assign('build',$build);
  94. $Company=M("owner_company")->where(array('id'=>$Data['id']))->select();
  95. $this->assign('list',$Company[0]);
  96. //$this->display();
  97. //lian xi ren
  98. $wx=M()->query("SELECT phone,idphone,openid, username FROM sp_wx_customuser WHERE type='wx' ORDER BY idphone asc");
  99. $this->assign('weixin',$wx);
  100. $lian=M('owner_phone')->where(array('owner_code'=>$Company[0]['owner_id']))->order('time asc')->select();//
  101. $this->assign('lianlist',$lian);
  102. //weibao
  103. $User=M('user')->select();
  104. $this->assign('weibao',$User);
  105. $weibao=M('owner_weibao')->query("SELECT w.id as id,w.owner_code as owner_code ,truename,w.datetime FROM sp_owner_weibao w left JOIN sp_user u on w.agentid=u.agentid where w.owner_code='".$Company[0]['owner_id']."'");//
  106. $this->assign('weibaolist',$weibao);
  107. //fujin 单位
  108. $fujin=M("owner_company")->select();
  109. $this->assign('fujinselect',$fujin);
  110. $fujinlist=M("owner_company")->query("SELECT f.id, f.owner_code,f.other_code,owner_name,unitinfo,address FROM sp_owner_fujin f LEFT JOIN sp_owner o ON f.other_code=o.owner_code where f.owner_code='".$Company[0]['owner_id']."'");
  111. $this->assign('fujinlist',$fujinlist);
  112. $this->assign('action','/home/Company/edit');
  113. $this->assign('company_code_uid',$Company[0]['owner_id']);
  114. $this->display();
  115. break;
  116. case 'savacompany':
  117. $Company=M("owner_company")->where(array('id'=>$Data['saveid']))->save($Data);
  118. if($Company>0){
  119. echo json_encode(array('statusCode'=> 200,'message'=>'编辑成功'));
  120. }else{
  121. echo json_encode(array('statusCode'=> 300,'message'=>'编辑失败,请确认是否有内容更新'));
  122. }
  123. break;
  124. case 'addlian':
  125. $perm=M()->query(" select data2 FROM sp_owner_phone where phone='".$Data['idphone']."' limit 1 ");
  126. $data2='1,2,3,4';
  127. if(!empty($perm[0]['data2'])){
  128. $data2=$perm[0]['data2'];
  129. }
  130. $wx=M()->query("SELECT phone,idphone,openid, username FROM sp_wx_customuser WHERE type='wx' AND idphone='".$Data['idphone']."'");
  131. $lian=M('owner_phone');
  132. if(count($wx)>0){
  133. if ($wx[0]['username']==null) {
  134. $wx[0]['username']='';
  135. }
  136. $res=$lian->add(array('owner_code'=>$Data['owner_code'],'username'=>$wx[0]['username'],'phone'=>$Data['idphone'],'time'=>date('Y-m-d H:i:s'),'data1'=>$wx[0]['openid'],'data2'=>$data2));
  137. }else{
  138. $res=$lian->add(array('owner_code'=>$Data['owner_code'],'username'=>'','phone'=>'','time'=>date('Y-m-d H:i:s'),'data1'=>'','data2'=>$data2));
  139. }
  140. $ress=$lian->where(array('id'=>$res))->select();
  141. echo json_encode($ress[0]);
  142. break;
  143. case 'sevalian':
  144. $res=M('owner_phone')->where(array('id'=>$Data['lianid']))->save($Data);
  145. echo $res;
  146. break;
  147. case 'addweibao':
  148. $weibao=M('owner_weibao');
  149. $res=$weibao->add(array('agentid'=>$Data['username'],'owner_code'=>$Data['owner_code']));
  150. $list=$weibao->query("SELECT w.id as id, w.owner_code as owner_code ,truename,w.datetime FROM sp_owner_weibao w left JOIN sp_user u on w.agentid=u.agentid where w.id='".$res."'");
  151. // if ($res) {
  152. // $this->mtReturn(200,'添加成功');
  153. // }else{
  154. // $this->mtReturn(200,'添加失败');
  155. // }
  156. echo json_encode($list[0]);
  157. break;
  158. case 'addfujin':
  159. $fujin=M('owner_fujin');
  160. $res=$fujin->add(array('other_code'=>$Data['myownercode'],'owner_code'=>$Data['owner_code']));
  161. $fujinlist=$fujin->query("SELECT f.id,f.owner_code,f.other_code,o.owner_name,o.owner_address,o.owner_man FROM sp_owner_fujin f LEFT JOIN sp_owner_company o ON f.other_code=o.owner_id where f.id='".$res."'");
  162. // if ($res) {
  163. // $this->mtReturn(200,'添加成功');
  164. // }else{
  165. // $this->mtReturn(200,'添加失败');
  166. // }
  167. echo json_encode($fujinlist[0]);
  168. break;
  169. default:
  170. # code...
  171. break;
  172. }
  173. }
  174. public function del(){
  175. $Data=I();
  176. if(!empty($Data['id'])){
  177. $Company=M("owner_company")->where(array('id'=>$Data['id']))->delete();
  178. if($Company>0){
  179. echo json_encode(array('statusCode'=> 200,'message'=>'删除成功'));
  180. }else{
  181. echo json_encode(array('statusCode'=> 300,'message'=>'删除失败'));
  182. }
  183. }else{
  184. echo json_encode(array('statusCode'=> 300,'message'=>'删除失败'));
  185. }
  186. }
  187. //
  188. public function Dellian(){
  189. $data=I();
  190. if(!empty($data['id'])){
  191. $device=M('owner_phone');
  192. $res = $device->delete($data['id']);
  193. if($res){
  194. echo json_encode($this->mtReturn(200,'删除成功'));
  195. }else{
  196. echo json_encode(array('statusCode'=> 300,'message'=>'删除失败'));
  197. }
  198. }
  199. }
  200. //
  201. public function Delwei(){
  202. $data=I();
  203. if(!empty($data['id'])){
  204. $device=M('owner_weibao');
  205. $res = $device->delete($data['id']);
  206. if($res){
  207. echo json_encode($this->mtReturn(200,'删除成功'));
  208. }else{
  209. echo json_encode(array('statusCode'=> 300,'message'=>'删除失败'));
  210. }
  211. }
  212. }
  213. //
  214. public function Delfujin(){
  215. $data=I();
  216. if(!empty($data['id'])){
  217. $device=M('owner_fujin');
  218. $res = $device->delete($data['id']);
  219. if($res){
  220. echo json_encode($this->mtReturn(200,'删除成功'));
  221. }else{
  222. echo json_encode(array('statusCode'=> 300,'message'=>'删除失败'));
  223. }
  224. }
  225. }
  226. public function downdata(){//导出Excel
  227. $Data=I();
  228. $Company=M("v_user");
  229. $Map['status']=1;
  230. if(!empty($Data['username'])){
  231. $Map['username']=$Data['username'];
  232. }
  233. if(!empty($Data['truename'])){
  234. $Map['truename']=$Data['truename'];
  235. }
  236. if(!empty($Data['depname'])){
  237. $Map['depname']=$Data['depname'];
  238. }
  239. if(!empty($Data['posname'])){
  240. $Map['posname']=$Data['posname'];
  241. }
  242. $expTableData =$Company->field("username,truename,extension,agentid,depname,posname,phone,email,address")->where($Map)->select();
  243. $expCellName=array('登录名','姓名','分机号','座席号','所在部门','担任角色','联系电话','电子邮箱','地址');
  244. $expTitle='用户信息';
  245. $this->exportExcel($expTitle,$expCellName,$expTableData);
  246. // echo json_encode($expTableData);
  247. }
  248. }