Title.php 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244
  1. <?php
  2. namespace app\admin\controller;
  3. use app\admin\model\ChangeLog;
  4. use app\BaseController;
  5. use think\App;
  6. use think\facade\Db;
  7. class Title extends BaseController
  8. {
  9. public $post = "";
  10. public function __construct(App $app)
  11. {
  12. parent::__construct($app);
  13. $this->post= $this->request->post();
  14. }
  15. public function create(){
  16. $companyNo = isset($this->post['companyNo']) && $this->post['companyNo'] !==""? trim($this->post['companyNo']):"";
  17. if($companyNo==""){
  18. return error_show(1002,"参数companyNo不能为空");
  19. }
  20. $companyinfo =Db::name('customer_title')->where(['is_del' => 0, 'companyNo'=>$companyNo])->find();
  21. if (!empty($companyinfo)) {
  22. return error_show(1002, "统一社会信用代码名称已存在");
  23. }
  24. $invoice_title = isset($this->post['invoice_title']) && $this->post['invoice_title'] !=="" ? trim($this->post['invoice_title']):"";
  25. if($invoice_title==""){
  26. return error_show(1002,"参数invoice_title不能为空");
  27. }
  28. // $invoice_people = isset($this->post['invoice_people']) && $this->post['invoice_people'] !== ""? trim($this->post['invoice_people']):"";
  29. // if($invoice_people==""){
  30. // return error_show(1002,"参数invoice_people不能为空");
  31. // }
  32. $invoice_code = isset($this->post['invoice_code']) && $this->post['invoice_code'] !==""? trim($this->post['invoice_code']):"";
  33. if($invoice_code==""){
  34. return error_show(1002,"参数invoice_code不能为空");
  35. }
  36. $invoice_bank = isset($this->post['invoice_bank']) && $this->post['invoice_bank'] !==""? trim($this->post['invoice_bank']):"";
  37. if($invoice_bank==""){
  38. return error_show(1002,"参数invoice_bank不能为空");
  39. }
  40. $invoice_bankNo = isset($this->post['invoice_bankNo']) && $this->post['invoice_bankNo'] !==""? trim($this->post['invoice_bankNo']):"";
  41. if($invoice_bankNo==""){
  42. return error_show(1002,"参数invoice_bankNo不能为空");
  43. }
  44. $invoice_addr = isset($this->post['invoice_addr']) && $this->post['invoice_addr'] !==""? trim($this->post['invoice_addr']):"";
  45. if($invoice_addr==""){
  46. return error_show(1002,"参数invoice_addr不能为空");
  47. }
  48. $invoice_mobile = isset($this->post['invoice_mobile']) && $this->post['invoice_mobile'] !==""? trim($this->post['invoice_mobile']):"";
  49. if($invoice_mobile==""){
  50. return error_show(1002,"参数invoice_mobile不能为空");
  51. }
  52. $status = isset($this->post['status']) && $this->post['status'] !==""? trim($this->post['status']):"1";
  53. $data =[
  54. "companyNo"=>$companyNo,
  55. "invoice_title"=>$invoice_title,
  56. // "invoice_people"=>$invoice_people,
  57. "invoice_code"=>$invoice_code,
  58. "invoice_bank"=>$invoice_bank,
  59. "invoice_bankNo"=>$invoice_bankNo,
  60. "invoice_addr"=>$invoice_addr,
  61. "invoice_mobile"=>$invoice_mobile,
  62. "status"=>$status,
  63. "is_del"=>0,
  64. "addtime"=>date("Y-m-d H:i:s"),
  65. "updatetime"=>date("Y-m-d H:i:s")
  66. ];
  67. $info = Db::name('customer_title')->insert($data);
  68. if($info){
  69. return error_show(0,"新建成功");
  70. }else{
  71. return error_show(1002,"新建失败");
  72. }
  73. }
  74. public function list(){
  75. $page = isset($this->post['page']) && $this->post['page'] !=="" ? intval($this->post['page']) :"1";
  76. $size = isset($this->post['size']) && $this->post['size'] !=="" ? intval($this->post['size']) :"10";
  77. $where =[["a.is_del","=",0]];
  78. $invoice_title = isset($this->post['invoice_title']) && $this->post['invoice_title'] !=="" ? trim($this->post['invoice_title']):"";
  79. if($invoice_title!=""){
  80. $where[]=['a.invoice_title',"like","%$invoice_title%"];
  81. }
  82. $invoice_code = isset($this->post['invoice_code']) && $this->post['invoice_code'] !=="" ? trim($this->post['invoice_code']):"";
  83. if($invoice_code!=""){
  84. $where[]=['a.invoice_code',"like","%$invoice_code%"];
  85. }
  86. $invoice_mobile = isset($this->post['invoice_mobile']) && $this->post['invoice_mobile'] !=="" ? trim($this->post['invoice_mobile']):"";
  87. if($invoice_mobile !=""){
  88. $where[] =['a.invoice_code',"like","%$invoice_mobile%"];
  89. }
  90. $status = isset($this->post['status']) && $this->post['status'] !=="" ? intval($this->post['status'])
  91. :"";
  92. if($status!==""){
  93. $where[]=['a.status',"=",$status];
  94. }
  95. $companyName = isset($this->post['companyName']) && $this->post['companyName'] !=="" ? trim($this->post['companyName']):"";
  96. if($companyName!=""){
  97. $where[]=['b.companyName',"like","%$companyName%"];
  98. }
  99. $creater = isset($this->post['creater']) && $this->post['creater'] !=="" ? trim($this->post['creater']):"";
  100. if($creater!=""){
  101. $where[]=['b.creater',"like","%$creater%"];
  102. }
  103. $start = isset($this->post['start']) && $this->post['start']!=="" ? $this->post['start']:"";
  104. if($start!==""){
  105. $where[]=['a.addtime',">=",date('Y-m-d H:i:s',strtotime($start))];
  106. }
  107. $end = isset($this->post['end']) && $this->post['end']!=="" ? $this->post['end']:"";
  108. if($end!==""){
  109. $where[]=['a.addtime',"<",date('Y-m-d H:i:s',strtotime($end)+24*3600)];
  110. }
  111. $count = Db::name('customer_title')->alias("a")
  112. ->join("customer_info b","b.companyNo=a.companyNo","left")->where($where)->count();
  113. $total = ceil($count / $size);
  114. $page = $page >= $total ? $total : $page;
  115. $list = Db::name('customer_title')->alias("a")
  116. ->join("customer_info b","b.companyNo=a.companyNo","left")
  117. ->where($where)->page($page,$size)->order("a.addtime desc")->field("a.*,b.companyName,b.creater")->select();
  118. return app_show(0,"获取成功",['list'=>$list,'count'=>$count]);
  119. }
  120. public function edit(){
  121. $id = isset($this->post['id']) && $this->post['id'] !=="" ? intval($this->post['id']):"";
  122. if($id ==""){
  123. return error_show(1002,"参数id不能为空");
  124. }
  125. $token = isset($this->post['token']) ? trim($this->post['token']) : "";
  126. if($token==""){
  127. return error_show(101,'token不能为空');
  128. }
  129. $info= Db::name('customer_title')->where(['id'=>$id,'is_del'=>0])->find();
  130. if($info==""){
  131. return error_show(1002,"未找到数据");
  132. }
  133. // $companyNo = isset($this->post['companyNo']) && $this->post['companyNo'] !==""? trim($this->post['companyNo']):"";
  134. // if($companyNo==""){
  135. // return error_show(1002,"参数companyNo不能为空");
  136. // }
  137. $invoice_title = isset($this->post['invoice_title']) && $this->post['invoice_title'] !=="" ? trim($this->post['invoice_title']):"";
  138. if($invoice_title==""){
  139. return error_show(1002,"参数invoice_title不能为空");
  140. }
  141. // $invoice_people = isset($this->post['invoice_people']) && $this->post['invoice_people'] !== ""? trim($this->post['invoice_people']):"";
  142. // if($invoice_people==""){
  143. // return error_show(1002,"参数invoice_people不能为空");
  144. // }
  145. $invoice_code = isset($this->post['invoice_code']) && $this->post['invoice_code'] !==""? trim($this->post['invoice_code']):"";
  146. if($invoice_code==""){
  147. return error_show(1002,"参数invoice_code不能为空");
  148. }
  149. $invoice_bank = isset($this->post['invoice_bank']) && $this->post['invoice_bank'] !==""? trim($this->post['invoice_bank']):"";
  150. if($invoice_bank==""){
  151. return error_show(1002,"参数invoice_bank不能为空");
  152. }
  153. $invoice_bankNo = isset($this->post['invoice_bankNo']) && $this->post['invoice_bankNo'] !==""? trim($this->post['invoice_bankNo']):"";
  154. if($invoice_bankNo==""){
  155. return error_show(1002,"参数invoice_bankNo不能为空");
  156. }
  157. $invoice_addr = isset($this->post['invoice_addr']) && $this->post['invoice_addr'] !==""? trim($this->post['invoice_addr']):"";
  158. if($invoice_addr==""){
  159. return error_show(1002,"参数invoice_addr不能为空");
  160. }
  161. $invoice_mobile = isset($this->post['invoice_mobile']) && $this->post['invoice_mobile'] !==""? trim($this->post['invoice_mobile']):"";
  162. if($invoice_mobile==""){
  163. return error_show(1002,"参数invoice_mobile不能为空");
  164. }
  165. $status = isset($this->post['status']) && $this->post['status'] !==""? trim($this->post['status']):"1";
  166. $data =[
  167. "id"=>$id,
  168. "invoice_title"=>$invoice_title,
  169. // "invoice_people"=>$invoice_people,
  170. "invoice_code"=>$invoice_code,
  171. "invoice_bank"=>$invoice_bank,
  172. "invoice_bankNo"=>$invoice_bankNo,
  173. "invoice_addr"=>$invoice_addr,
  174. "invoice_mobile"=>$invoice_mobile,
  175. "status"=>$status,
  176. "is_del"=>0,
  177. "updatetime"=>date("Y-m-d H:i:s")
  178. ];
  179. $temp = Db::name('customer_title')->save($data);
  180. $titn = array_diff($data,$info);
  181. $json = json_encode($titn,JSON_UNESCAPED_UNICODE);
  182. $jsp = json_encode($info,JSON_UNESCAPED_UNICODE);
  183. if($temp){
  184. ChangeLog::logAdd(2,$info['companyNo'],$jsp,$json,$this->post['token'],$this->post);
  185. return error_show(0,"更新成功");
  186. }else{
  187. return error_show(1002,"更新失败");
  188. }
  189. }
  190. public function info(){
  191. $id = isset($this->post['id']) && $this->post['id'] !=="" ? intval($this->post['id']):"";
  192. if($id ==""){
  193. return error_show(1002,"参数id不能为空");
  194. }
  195. $info= Db::name('customer_title')->where(['id'=>$id,'is_del'=>0])->find();
  196. if($info==""){
  197. return error_show(1002,"未找到数据");
  198. }
  199. $temp = Db::name("customer_info")->where(['companyNo'=>$info['companyNo'],'is_del'=>0])->find();
  200. $info['companyName']=$temp['companyName'];
  201. return app_show(0,"获取成功",$info);
  202. }
  203. public function del(){
  204. $id = isset($this->post['id']) && $this->post['id'] !=="" ? intval($this->post['id']):"";
  205. if($id ==""){
  206. return error_show(1002,"参数id不能为空");
  207. }
  208. $info= Db::name('customer_title')->where(['id'=>$id,'is_del'=>0])->find();
  209. if($info==""){
  210. return error_show(1002,"未找到数据");
  211. }
  212. $end = Db::name('customer_title')->update(['id'=>$id,'is_del'=>1,'updatetime'=>date("Y-m-d H:i:s")]);
  213. if($end){
  214. return error_show(0,"删除成功");
  215. }else{
  216. return error_show(1002,"删除失败");
  217. }
  218. }
  219. public function status(){
  220. $id = isset($this->post['id']) && $this->post['id'] !=="" ? intval($this->post['id']):"";
  221. if($id==""){
  222. return error_show(1002,"参数id不能为空");
  223. }
  224. $info= Db::name('customer_title')->where(['id'=>$id,'is_del'=>0])->find();
  225. if($info==""){
  226. return error_show(1002,"未找到数据");
  227. }
  228. $status = isset($this->post['status']) && $this->post['status'] !=="" ? intval($this->post['status']):"";
  229. if($status===""){
  230. return error_show(1002,"参数status不能为空");
  231. }
  232. if(!in_array($status,[0,1])){
  233. return error_show(1002,"参数status无效");
  234. }
  235. $info['status']=$status;
  236. $info['updatetime']=date("Y-m-d H:i:s");
  237. $msg = $status==1?"启用":"禁用";
  238. $temp = Db::name("customer_title")->save($info);
  239. return $temp ? error_show(0,"{$msg}成功"):error_show(1002,"{$msg}失败");
  240. }
  241. }