Supply.php 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. <?php
  2. namespace app\admin\controller;
  3. use app\admin\BaseController;
  4. use app\common\model\Worker as WorkerModel;
  5. use app\common\model\Supply as SupplyModel;
  6. use app\common\validate\Supply as SupplyValidate;
  7. use think\exception\ValidateException;
  8. use think\facade\Db;
  9. class Supply extends BaseController
  10. {
  11. // 企业招聘
  12. public function supplyList()
  13. {
  14. $workerlist = WorkerModel::order(['id'=>'desc'])->select();
  15. return view('supply/supplylist',[
  16. 'workerlist' => $workerlist
  17. ]);
  18. }
  19. public function supplyForm()
  20. {
  21. $id = input('id/d, 0');
  22. $supply = SupplyModel::findOrEmpty($id);
  23. $workerlist = WorkerModel::order(['id'=>'desc'])->select();
  24. $provincelist = array(
  25. ['value'=>"全国", 'title'=>"全国"],
  26. ['value'=>"北京市", 'title'=>"北京市"],
  27. ['value'=>"天津市", 'title'=>"天津市"],
  28. ['value'=>"河北省", 'title'=>"河北省"],
  29. ['value'=>"山西省", 'title'=>"山西省"],
  30. ['value'=>"内蒙古自治区", 'title'=>"内蒙古自治区"],
  31. ['value'=>"辽宁省", 'title'=>"辽宁省"],
  32. ['value'=>"吉林省", 'title'=>"吉林省"],
  33. ['value'=>"黑龙江省", 'title'=>"黑龙江省"],
  34. ['value'=>"上海市", 'title'=>"上海市"],
  35. ['value'=>"江苏省", 'title'=>"江苏省"],
  36. ['value'=>"浙江省", 'title'=>"浙江省"],
  37. ['value'=>"安徽省", 'title'=>"安徽省"],
  38. ['value'=>"福建省", 'title'=>"福建省"],
  39. ['value'=>"江西省", 'title'=>"江西省"],
  40. ['value'=>"山东省", 'title'=>"山东省"],
  41. ['value'=>"河南省", 'title'=>"河南省"],
  42. ['value'=>"湖北省", 'title'=>"湖北省"],
  43. ['value'=>"湖南省", 'title'=>"湖南省"],
  44. ['value'=>"广东省", 'title'=>"广东省"],
  45. ['value'=>"广西壮族自治区", 'title'=>"广西壮族自治区"],
  46. ['value'=>"海南省", 'title'=>"海南省"],
  47. ['value'=>"重庆市", 'title'=>"重庆市"],
  48. ['value'=>"四川省", 'title'=>"四川省"],
  49. ['value'=>"贵州省", 'title'=>"贵州省"],
  50. ['value'=>"云南省", 'title'=>"云南省"],
  51. ['value'=>"西藏自治区", 'title'=>"西藏自治区"],
  52. ['value'=>"陕西省", 'title'=>"陕西省"],
  53. ['value'=>"甘肃省", 'title'=>"甘肃省"],
  54. ['value'=>"青海省", 'title'=>"青海省"],
  55. ['value'=>"宁夏回族自治区", 'title'=>"宁夏回族自治区"],
  56. ['value'=>"新疆维吾尔自治区", 'title'=>"新疆维吾尔自治区"],
  57. ['value'=>"台湾省", 'title'=>"台湾省"],
  58. ['value'=>"香港特别行政区", 'title'=>"香港特别行政区"],
  59. ['value'=>"澳门特别行政区", 'title'=>"澳门特别行政区"]
  60. );
  61. return view('supply/supplyform',[
  62. 'provincelist' => $provincelist,
  63. 'workerlist' => $workerlist,
  64. 'supply' => $supply
  65. ]);
  66. }
  67. public function editSupply()
  68. {
  69. $id = input('id/d', 0);
  70. $descity = input('descity/a', []);
  71. if (in_array('全国', $descity)){
  72. $descity = ['全国'];
  73. }
  74. $data = [
  75. 'workerid' => input('workerid/d', 0),
  76. 'mnumber' => input('mnumber/d', 0),
  77. 'wnumber' => input('wnumber/d', 0),
  78. 'agegroup' => input('agegroup/s', ""),
  79. 'province' => input('province/s', ""),
  80. 'city' => input('city/s', ""),
  81. 'district' => input('district/s', ""),
  82. 'descity' => implode(",", $descity),
  83. 'candate' => input('candate/s', ""),
  84. 'telephone' => input('telephone/s', ""),
  85. 'remark' => input('remark/s', ""),
  86. 'status' => input('status/d', 1),
  87. 'priority' => input('priority/d', 0),
  88. 'updatetime' => input('updatetime/s', ""),
  89. 'createtime' => input('createtime/s', ""),
  90. 'volume' => input('volume/d', 0)
  91. ];
  92. try {
  93. validate(SupplyValidate::class)->check($data);
  94. } catch (ValidateException $e) {
  95. exit(json_encode(array(
  96. 'code' => 1,
  97. 'msg' => $e->getError()
  98. )));
  99. }
  100. if (empty($id)){
  101. $data['telearr'] = array();
  102. $supply = SupplyModel::create($data);
  103. }else{
  104. $supply = SupplyModel::find($id);
  105. $supply->save($data);
  106. }
  107. exit(json_encode(array(
  108. 'code' => 0
  109. )));
  110. }
  111. public function fieldSupply()
  112. {
  113. $id = input('id/d',0);
  114. $supply = SupplyModel::findOrEmpty($id);
  115. $supply->save([
  116. input('field/s') => input('value/s', "")
  117. ]);
  118. exit(json_encode(array(
  119. 'code' => 0
  120. )));
  121. }
  122. public function delSupply()
  123. {
  124. $idarr = input('idarr/a');
  125. $result = Db::name('supply')->whereIn('id',$idarr)->update(['deletetime'=>time()]);
  126. if ($result){
  127. exit(json_encode(array(
  128. 'code' => 0,
  129. 'msg' => ""
  130. )));
  131. }
  132. exit(json_encode(array(
  133. 'code' => 1,
  134. 'msg' => "删除失败,请稍后重试"
  135. )));
  136. }
  137. public function listSupply()
  138. {
  139. $limit = input('limit/d',20);
  140. $page = input('page/d',1);
  141. $map = array();
  142. $keywords = input('keywords/s', "");
  143. if (!empty($keywords)){
  144. $map[] =['province|city|district|descity', 'like', '%'.$keywords.'%'];
  145. }
  146. $workerid = input('workerid/d', 0);
  147. if (!empty($workerid)){
  148. $map[] = ['workerid', '=', $workerid];
  149. }
  150. $status = input('status/d');
  151. if (!empty($status)){
  152. $map[] = ['status', '=', $status];
  153. }
  154. $daterange = input('daterange/s', "");
  155. if (!empty($daterange)){
  156. $daterangearr = explode("~", $daterange);
  157. $map[] = ['createtime', '>= time', trim($daterangearr[0])];
  158. $map[] = ['createtime', '<= time', trim($daterangearr[1])];
  159. }
  160. $list = SupplyModel::with(['worker'])->where($map)->order(['priority'=>'desc','id'=>'desc',])->limit($limit)->page($page)->append(['status_text'])->select();
  161. $count = SupplyModel::where($map)->count();
  162. if ($count==0){
  163. exit(json_encode(array(
  164. 'code' => 1,
  165. 'msg' => "未查询到数据"
  166. )));
  167. }
  168. exit(json_encode(array(
  169. 'code' => 0,
  170. 'msg' => "",
  171. 'count' => $count,
  172. 'data' => $list
  173. )));
  174. }
  175. }