Comjobs.php 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677
  1. <?php
  2. namespace app\worker\controller;
  3. use app\common\model\RensheCode;
  4. use app\common\service\ComjobsService;
  5. use app\common\service\SmsService;
  6. use app\worker\BaseController;
  7. use app\common\model\Param as ParamModel;
  8. use app\common\model\User as UserModel;
  9. use app\common\model\Worker as WorkerModel;
  10. use app\common\model\Comjobs as ComjobsModel;
  11. use app\common\model\ComjobsPcate as ComjobsPcateModel;
  12. use app\common\model\ComjobsCate as ComjobsCateModel;
  13. use app\common\model\ComjobsLog as ComjobsLogModel;
  14. use app\common\model\ComjobsStar as ComjobsStarModel;
  15. use app\common\model\UserIntegral as UserIntegralModel;
  16. use think\facade\Session;
  17. use think\facade\Db;
  18. use app\common\model\ComjobsSearchCate as ComjobsSearchCateModel;
  19. use app\common\model\ComjobsSearch as ComjobsSearchModel;
  20. class Comjobs extends BaseController
  21. {
  22. // 报名记录
  23. public function logList()
  24. {
  25. $workerid = $this->access_worker['id'];
  26. $comjobslist = ComjobsModel::where(['workerid' => $workerid])
  27. ->order(['id' => 'desc'])
  28. ->where('del_status', 0)
  29. ->select();
  30. $comjobs_cate_data = Db::name('comjobs')
  31. ->alias('a')
  32. ->field('any_value(a.id) id,a.cateid,any_value(a.workerid) workerid,any_value(b.title) title')
  33. ->where('a.workerid', $workerid)
  34. ->join('comjobs_cate b', 'a.cateid = b.id', 'LEFT')
  35. ->group('a.cateid')
  36. ->select();
  37. return view('comjobs/loglist', [
  38. 'comjobslist' => $comjobslist,
  39. 'comjobs_cate_data' => $comjobs_cate_data,
  40. ]);
  41. }
  42. public function delLog()
  43. {
  44. $workerid = $this->access_worker['id'];
  45. $idarr = input('idarr/a');
  46. // $log = ComjobsLogModel::where(['workerid'=>$workerid])->whereIn('id',$idarr)->select();
  47. // $result = $log->delete();
  48. $comjobsLog_data = Db::name('comjobs_log')
  49. ->where(['workerid' => $workerid])
  50. ->whereIn('id', $idarr)
  51. ->update(['del_status' => 1]);
  52. if ($comjobsLog_data) {
  53. exit(json_encode([
  54. 'code' => 0,
  55. 'msg' => "",
  56. ]));
  57. }
  58. exit(json_encode([
  59. 'code' => 1,
  60. 'msg' => "删除失败,请稍后重试",
  61. ]));
  62. }
  63. public function fieldLog()
  64. {
  65. $workerid = $this->access_worker['id'];
  66. $id = input('id/d', 0);
  67. $log = ComjobsLogModel::where(['workerid' => $workerid])->findOrEmpty($id);
  68. if ($log->isEmpty()) {
  69. exit(json_encode([
  70. 'code' => 1,
  71. 'msg' => "信息不存在",
  72. ]));
  73. } else {
  74. $log->save([
  75. input('field/s') => input('value'),
  76. ]);
  77. }
  78. exit(json_encode([
  79. 'code' => 0,
  80. ]));
  81. }
  82. public function listLog()
  83. {
  84. $workerid = $this->access_worker['id'];
  85. $limit = input('limit/d', 20);
  86. $page = input('page/d', 1);
  87. $where = [];
  88. $where[] = ['a.workerid', '=', $workerid];
  89. $where[] = ['a.del_status', '=', 0];
  90. $cateid = input('cateid/d', 0);
  91. if (!empty($cateid)) {
  92. $where[] = ['b.cateid', '=', $cateid];
  93. }
  94. $comjobsid = input('comjobsid/d', 0);
  95. if (!empty($comjobsid)) {
  96. $where[] = ['a.comjobsid', '=', $comjobsid];
  97. }
  98. $status = input('status/d', 0);
  99. if (!empty($status)) {
  100. $where[] = ['a.status', '=', $status];
  101. }
  102. $list = Db::name("comjobs_log")
  103. ->alias('a')
  104. ->field('a.id,a.status,a.remark,from_unixtime(a.createtime) createtime,a.del_status,d.avatar,d.realname,d.nickname,d.mobile,c.title cate,b.title,b.recruitment_cate')
  105. ->where($where)
  106. ->join('comjobs b', 'a.comjobsid = b.id', 'LEFT')
  107. ->join('comjobs_cate c', 'b.cateid = c.id', 'LEFT')
  108. ->join('user d', 'a.userid = d.id', 'LEFT')
  109. ->order('a.id desc')
  110. ->limit($limit)
  111. ->page($page)
  112. ->select()
  113. ->toArray();
  114. foreach ($list as $k => $v) {
  115. if ($v['recruitment_cate'] == 1) {
  116. $list[$k]['recruitment_text'] = '普通招聘';
  117. } elseif ($v['recruitment_cate'] == 2) {
  118. $list[$k]['recruitment_text'] = '悬赏聘';
  119. }
  120. if ($v['status'] == 1) {
  121. $list[$k]['status_text'] = '未跟进';
  122. } elseif ($v['status'] == 2) {
  123. $list[$k]['status_text'] = '未面试';
  124. } elseif ($v['status'] == 3) {
  125. $list[$k]['status_text'] = '面试通过';
  126. } elseif ($v['status'] == 4) {
  127. $list[$k]['status_text'] = '面试未通过';
  128. } elseif ($v['status'] == 5) {
  129. $list[$k]['status_text'] = '用户放弃';
  130. } elseif ($v['status'] == 6) {
  131. $list[$k]['status_text'] = '已入职';
  132. } elseif ($v['status'] == 7) {
  133. $list[$k]['status_text'] = '已离职';
  134. }
  135. }
  136. $count = Db::name("comjobs_log")
  137. ->alias('a')
  138. ->where($where)
  139. ->join('comjobs b', 'a.comjobsid = b.id', 'LEFT')
  140. ->join('comjobs_cate c', 'b.cateid = c.id', 'LEFT')
  141. ->join('user d', 'a.userid = d.id', 'LEFT')
  142. ->count();
  143. if ($count == 0) {
  144. exit(json_encode([
  145. 'code' => 1,
  146. 'msg' => "未查询到数据",
  147. ]));
  148. }
  149. exit(json_encode([
  150. 'code' => 0,
  151. 'msg' => "",
  152. 'count' => $count,
  153. 'data' => $list,
  154. ]));
  155. }
  156. public function exportLog()
  157. {
  158. $workerid = $this->access_worker['id'];
  159. $where = [];
  160. $where[] = ['a.workerid', '=', $workerid];
  161. $where[] = ['a.del_status', '=', 0];
  162. $cateid = input('cateid/d', 0);
  163. if (!empty($cateid)) {
  164. $where[] = ['b.cateid', '=', $cateid];
  165. }
  166. $comjobsid = input('comjobsid/d', 0);
  167. if (!empty($comjobsid)) {
  168. $where[] = ['a.comjobsid', '=', $comjobsid];
  169. }
  170. $status = input('status/d', 0);
  171. if (!empty($status)) {
  172. $where[] = ['a.status', '=', $status];
  173. }
  174. $xlsData = Db::name("comjobs_log")
  175. ->alias('a')
  176. ->field('a.id,a.status,a.remark,from_unixtime(a.createtime) createtime,d.realname,d.nickname,d.mobile,c.title cate,b.title,b.recruitment_cate')
  177. ->where($where)
  178. ->join('comjobs b', 'a.comjobsid = b.id', 'LEFT')
  179. ->join('comjobs_cate c', 'b.cateid = c.id', 'LEFT')
  180. ->join('user d', 'a.userid = d.id', 'LEFT')
  181. ->order('a.id desc')
  182. ->select()
  183. ->toArray();
  184. foreach ($xlsData as $k => $v) {
  185. if ($v['recruitment_cate'] == 1) {
  186. $xlsData[$k]['recruitment_text'] = '普通招聘';
  187. } elseif ($v['recruitment_cate'] == 2) {
  188. $xlsData[$k]['recruitment_text'] = '悬赏聘';
  189. }
  190. if ($v['status'] == 1) {
  191. $xlsData[$k]['status_text'] = '未跟进';
  192. } elseif ($v['status'] == 2) {
  193. $xlsData[$k]['status_text'] = '未面试';
  194. } elseif ($v['status'] == 3) {
  195. $xlsData[$k]['status_text'] = '面试通过';
  196. } elseif ($v['status'] == 4) {
  197. $xlsData[$k]['status_text'] = '面试未通过';
  198. } elseif ($v['status'] == 5) {
  199. $xlsData[$k]['status_text'] = '用户放弃';
  200. } elseif ($v['status'] == 6) {
  201. $xlsData[$k]['status_text'] = '已入职';
  202. } elseif ($v['status'] == 7) {
  203. $xlsData[$k]['status_text'] = '已离职';
  204. }
  205. }
  206. $xlsCell = [
  207. ['id', '表ID'],
  208. ['realname', '姓名'],
  209. ['nickname', '昵称'],
  210. ['mobile', '手机号'],
  211. ['title', '招聘标题'],
  212. ['cate', '岗位类别'],
  213. ['recruitment_text', '招聘类别'],
  214. ['status_text', '公司反馈'],
  215. ['remark', '反馈备注'],
  216. ['createtime', '报名时间'],
  217. ];
  218. export_excel("招聘报名记录", $xlsCell, $xlsData);
  219. }
  220. // 企业招聘
  221. public function comjobsList()
  222. {
  223. $param = ParamModel::where(1)->findOrEmpty();
  224. $access_worker = Session::get('access_worker');
  225. $catelist = ComjobsCateModel::order(['priority' => 'desc', 'id' => 'desc'])->select();
  226. $is_released = 0;
  227. if ($access_worker['status'] == 1) {
  228. $is_released = is_released($access_worker['id'])['code'];
  229. }
  230. return view('comjobs/comjobslist', [
  231. 'param' => $param,
  232. 'wtype' => $access_worker['wtype'],
  233. 'catelist' => $catelist,
  234. 'is_released' => $is_released,
  235. ]);
  236. }
  237. // 上传视频
  238. public function upload_video()
  239. {
  240. $file = request()->file("file");
  241. $savename = \think\facade\Filesystem::disk('public')->putFile('video', $file);
  242. if ($file) {
  243. $filename = str_replace(strrchr($_FILES['file']['name'], "."), "", $_FILES['file']['name']);
  244. exit(json_encode([
  245. 'code' => 0,
  246. 'msg' => "",
  247. 'data' => [
  248. 'src' => request()->domain() . "/attachment/" . str_replace("\\", "/", $savename),
  249. 'title' => $filename,
  250. ],
  251. ]));
  252. } else {
  253. exit(json_encode([
  254. 'code' => 1,
  255. 'msg' => "上传失败,请稍后重试",
  256. ]));
  257. }
  258. }
  259. public function comjobsForm()
  260. {
  261. $worker = $this->access_worker;
  262. $id = input('id/d, 0');
  263. $comjobs = ComjobsModel::findOrEmpty($id);
  264. $workerlist = WorkerModel::order(['id' => 'desc'])->select();
  265. $catelist = ComjobsCateModel::order(['priority' => 'desc', 'id' => 'desc'])->select();
  266. $communitylist = RensheCode::getList('community');
  267. $agelist = RensheCode::getList('age');
  268. $educationlist = RensheCode::getList('education');
  269. $emptimelist = RensheCode::getList('emp_time');
  270. $welfarelist = RensheCode::getList('welfare');
  271. return view('comjobs/comjobsform', [
  272. 'worker' => $worker,
  273. 'catelist' => $catelist,
  274. 'workerlist' => $workerlist,
  275. 'communitylist' => $communitylist,
  276. 'agelist' => $agelist,
  277. 'educationlist' => $educationlist,
  278. 'emptimelist' => $emptimelist,
  279. 'welfarelist' => $welfarelist,
  280. 'comjobs' => $comjobs,
  281. ]);
  282. }
  283. public function editComjobs()
  284. {
  285. $workerid = $this->access_worker['id'];
  286. $user = UserModel::findOrEmpty($this->access_worker['userid']);
  287. if ($user->isEmpty()) {
  288. exit(json_encode([
  289. 'code' => 1,
  290. 'msg' => "用户信息不存在",
  291. ]));
  292. }
  293. $param = ParamModel::where(1)->findOrEmpty();
  294. $id = input('id/d', 0);
  295. $wtype = input('wtype/d', 1);
  296. $zwagall = $wtype == 1 ? input('zwagall/s', "") : '';
  297. $data = [
  298. 'workerid' => $workerid,
  299. 'title' => input('title/s', ""),
  300. 'cateid' => input('cateid/d', 0),
  301. 'province' => input('province/s', ""),
  302. 'city' => input('city/s', ""),
  303. 'district' => input('district/s', ""),
  304. 'agegroup' => input('agegroup/s', ""),
  305. 'tags' => array_values(input('tags/a', [])),
  306. 'enddate' => input('enddate/s', ""),
  307. 'requirement' => input('requirement/s', ""),
  308. 'comdetails' => input('comdetails/s', ""),
  309. 'companydetails' => input('companydetails/s', ""),
  310. 'retmoney' => input('retmoney/d', 0),
  311. 'picall' => input('picall/a', []),
  312. 'recruit_num' => input('recruit_num/d', 1),
  313. 'wtype' => $wtype,
  314. 'sex' => input('sex/d', 0),
  315. 'bwagall' => input('bwagall/s', ""),
  316. 'zwagall' => $zwagall,
  317. 'fwagall' => input('fwagall/s', ""),
  318. 'telephone' => input('telephone/s', ""),
  319. 'remark' => input('remark/s', ""),
  320. 'status' => input('status/d', 1),
  321. 'num' => input('num/d', 1),
  322. 'priority' => input('priority/d', 0),
  323. 'updatetime' => input('updatetime/s', ""),
  324. 'createtime' => input('createtime/s', ""),
  325. 'volume' => input('volume/d', 0),
  326. 'recruitment_cate' => input('recruitment_cate/d', 1),
  327. 'latitude' => input('latitude/f', 0),
  328. 'longitude' => input('longitude/f', 0),
  329. 'address' => input('address/s', ''),
  330. 'community' => input('community/s', ''),
  331. 'is_worry' => input('is_worry/d', 0),
  332. 'education' => input('education/s', ''),
  333. 'emp_time' => array_values(input('emp_time/a', [])),
  334. ];
  335. if ($data['recruitment_cate'] == 2 && $data['retmoney'] <= 0) {
  336. exit(json_encode([
  337. 'code' => 1,
  338. 'msg' => "悬赏金额必须大于0",
  339. ]));
  340. }
  341. if (empty($id)) {
  342. if ($this->access_worker['status'] == 1) {
  343. $is_released = is_released($workerid);
  344. if ($is_released['code'] == 1001) {
  345. return $is_released;
  346. }
  347. }/* else {
  348. if ($user->integral < $param->addcomjobs) {
  349. page_result1(1, "每次发布招聘信息需要扣除" . $param->addcomjobs . "积分,你当前积分不足。");
  350. }
  351. }*/
  352. $data['priority'] = 0;
  353. $data['video'] = input('new_video/s', "");
  354. $data['updatetime'] = time();
  355. $data['createtime'] = time();
  356. $data['status'] = (int)2;
  357. $data['volume'] = 0;
  358. $comjobs = ComjobsModel::create($data);
  359. /*$intdata = [
  360. 'userid' => $user->id,
  361. 'title' => "发布招聘信息扣除",
  362. 'intvalue' => 0 - $param->addcomjobs,
  363. 'intmoney' => 0.00,
  364. 'onlycontent' => "",
  365. 'remark' => input('title/s', ""),
  366. 'itype' => 4,
  367. 'createtime' => date("Y-m-d H:i:s"),
  368. 'yeartime' => date("Y"),
  369. 'monthtime' => date("Ym"),
  370. ];
  371. UserIntegralModel::create($intdata);
  372. $integral = intval($user->integral) - intval($param->addcomjobs);
  373. $user->save([
  374. 'integral' => $integral,
  375. ]);*/
  376. } else {
  377. $data['updatetime'] = time();
  378. $data['status'] = 2;
  379. $old_video = input('old_video/s', '');
  380. $new_video = input('new_video/s', '');
  381. if (!empty($new_video)) {
  382. $data['video'] = $new_video;
  383. } else {
  384. if (!empty($old_video)) {
  385. $data['video'] = $old_video;
  386. }
  387. }
  388. $comjobs = ComjobsModel::find($id);
  389. ComjobsLogModel::update(['workerid' => input('workerid/d', 0)], ['comjobsid' => $comjobs->id]);
  390. $comjobs->save($data);
  391. }
  392. //审核通知短信
  393. if ($data['status'] == 2) {
  394. $sms = new SmsService();
  395. $sms->examineSend('comjobs_examine', [$comjobs['id']]);
  396. }
  397. exit(json_encode([
  398. 'code' => 0,
  399. ]));
  400. }
  401. public function comjobsFormWyp()
  402. {
  403. $worker = $this->access_worker;
  404. $id = input('id/d, 0');
  405. $comjobs = ComjobsModel::findOrEmpty($id);
  406. $catelist = ComjobsCateModel::order(['priority' => 'desc', 'id' => 'desc'])->select();
  407. return view('comjobs/comjobsformWyp', [
  408. 'catelist' => $catelist,
  409. 'worker' => $worker,
  410. 'id' => $id,
  411. 'comjobs' => $comjobs,
  412. ]);
  413. }
  414. public function editComjobsWyp()
  415. {
  416. $workerid = $this->access_worker['id'];
  417. $user = UserModel::findOrEmpty($this->access_worker['userid']);
  418. if ($user->isEmpty()) {
  419. exit(json_encode([
  420. 'code' => 1,
  421. 'msg' => "用户信息不存在",
  422. ]));
  423. }
  424. $param = ParamModel::where(1)->findOrEmpty();
  425. $id = input('id/d', 0);
  426. $wtype = input('wtype/d', 1);
  427. $zwagall = $wtype == 1 ? input('zwagall/s', "") : '';
  428. $data = [
  429. 'workerid' => $workerid,
  430. 'title' => input('title/s', ""),
  431. 'cateid' => input('cateid/d', 0),
  432. 'province' => input('province/s', ""),
  433. 'city' => input('city/s', ""),
  434. 'district' => input('district/s', ""),
  435. 'agegroup' => input('agegroup/s', ""),
  436. 'tags' => input('tags/a', []),
  437. 'enddate' => input('enddate/s', ""),
  438. 'requirement' => input('requirement/s', ""),
  439. 'comdetails' => input('comdetails/s', ""),
  440. 'retmoney' => input('retmoney/d', ""),
  441. 'picall' => input('picall/a', []),
  442. 'companydetails' => input('companydetails/s', ""),
  443. 'wtype' => $wtype,
  444. 'bwagall' => input('bwagall/s', ""),
  445. 'zwagall' => $zwagall,
  446. 'fwagall' => input('fwagall/s', ""),
  447. 'telephone' => input('telephone/s', ""),
  448. 'remark' => input('remark/s', ""),
  449. 'recruitment_cate' => (int)2,
  450. ];
  451. if (empty($id)) {
  452. if ($this->access_worker['status'] == 1) {
  453. $is_released = is_released($workerid);
  454. if ($is_released['code'] == 1001) {
  455. return $is_released;
  456. }
  457. } else {
  458. if ($user->integral < $param->addcomjobswyp) {
  459. page_result1(1, "每次发布招聘信息需要扣除" . $param->addcomjobswyp . "积分,你当前积分不足。");
  460. }
  461. }
  462. $data['priority'] = 0;
  463. $data['video'] = input('new_video/s', "");
  464. $data['updatetime'] = time();
  465. $data['createtime'] = time();
  466. $data['status'] = (int)2;
  467. $data['volume'] = 0;
  468. $comjobs = ComjobsModel::create($data);
  469. $intdata = [
  470. 'userid' => $user->id,
  471. 'title' => "发布招聘信息扣除",
  472. 'intvalue' => 0 - $param->addcomjobs,
  473. 'intmoney' => 0.00,
  474. 'onlycontent' => "",
  475. 'remark' => input('title/s', ""),
  476. 'itype' => 4,
  477. 'createtime' => date("Y-m-d H:i:s"),
  478. 'yeartime' => date("Y"),
  479. 'monthtime' => date("Ym"),
  480. ];
  481. UserIntegralModel::create($intdata);
  482. $integral = intval($user->integral) - intval($param->addcomjobswyp);
  483. $user->save([
  484. 'integral' => $integral,
  485. ]);
  486. } else {
  487. $old_video = input('old_video/s', '');
  488. $new_video = input('new_video/s', '');
  489. if (!empty($new_video)) {
  490. $data['video'] = $new_video;
  491. } else {
  492. if (!empty($old_video)) {
  493. $data['video'] = $old_video;
  494. }
  495. }
  496. $data['createtime'] = time();
  497. $data['status'] = input('status/d', 0);
  498. $comjobs = ComjobsModel::find($id);
  499. ComjobsLogModel::update(['workerid' => input('workerid/d', 0)], ['comjobsid' => $comjobs->id]);
  500. $comjobs->save($data);
  501. }
  502. exit(json_encode([
  503. 'code' => 0,
  504. ]));
  505. }
  506. public function fieldComjobs()
  507. {
  508. $workerid = $this->access_worker['id'];
  509. $id = input('id/d', 0);
  510. $comjobs = ComjobsModel::where(['workerid' => $workerid])->findOrEmpty($id);
  511. if ($comjobs->isEmpty()) {
  512. exit(json_encode([
  513. 'code' => 1,
  514. 'msg' => "信息不存在",
  515. ]));
  516. } else {
  517. $comjobs->save([
  518. 'telephone' => input('value'),
  519. ]);
  520. }
  521. exit(json_encode([
  522. 'code' => 0,
  523. ]));
  524. }
  525. public function delComjobs()
  526. {
  527. $workerid = $this->access_worker['id'];
  528. $idarr = input('idarr/a');
  529. $comjobs_data = Db::name('comjobs')
  530. ->where(['workerid' => $workerid])
  531. ->whereIn('id', $idarr)
  532. ->update(['del_status' => 1]);
  533. if ($comjobs_data) {
  534. exit(json_encode([
  535. 'code' => 0,
  536. 'msg' => "",
  537. ]));
  538. }
  539. exit(json_encode([
  540. 'code' => 1,
  541. 'msg' => "删除失败,请稍后重试",
  542. ]));
  543. }
  544. public function listComjobs()
  545. {
  546. $workerid = $this->access_worker['id'];
  547. $limit = input('limit/d', 20);
  548. $page = input('page/d', 1);
  549. $map = [];
  550. $map[] = ['workerid', '=', $workerid];
  551. $keywords = input('keywords/s', "");
  552. if (!empty($keywords)) {
  553. $map[] = ['title', 'like', '%' . $keywords . '%'];
  554. }
  555. $status = input('status/d');
  556. if (!empty($status)) {
  557. $map[] = ['status', '=', $status];
  558. }
  559. $cateid = input('cateid/d', 0);
  560. if (!empty($cateid)) {
  561. $map[] = ['cateid', '=', $cateid];
  562. }
  563. $wtype = input('wtype/d');
  564. if (!empty($wtype)) {
  565. $map[] = ['wtype', '=', $wtype];
  566. }
  567. $recruitment_cate = input('recruitment_cate/d');
  568. if (!empty($recruitment_cate)) {
  569. $map[] = ['recruitment_cate', '=', $recruitment_cate];
  570. }
  571. $list = ComjobsModel::with(['worker', 'comjobsCate'])
  572. ->withCount(['comjobsLog'])
  573. ->where('del_status', 0)
  574. ->where($map)
  575. ->order('id desc')
  576. ->limit($limit)
  577. ->page($page)
  578. ->append(['wtype_text', 'status_text', 'recruitmentcate_text'])
  579. ->select();
  580. $count = ComjobsModel::where($map)->count();
  581. if ($count == 0) {
  582. exit(json_encode([
  583. 'code' => 1,
  584. 'msg' => "未查询到数据",
  585. ]));
  586. }
  587. exit(json_encode([
  588. 'code' => 0,
  589. 'msg' => "",
  590. 'count' => $count,
  591. 'data' => $list,
  592. ]));
  593. }
  594. public function importView()
  595. {
  596. return view('comjobs/importview');
  597. }
  598. public function import()
  599. {
  600. $workerid = $this->access_worker['id'];
  601. $file_url = input('file_url/s', "");
  602. if (!file_exists($file_url)) {
  603. exit(json_encode([
  604. 'code' => 1,
  605. 'msg' => "文件不存在",
  606. ]));
  607. }
  608. $service = new ComjobsService();
  609. $res = $service->importComjobs($file_url, $workerid);
  610. if (empty($res['code'])) {
  611. exit(json_encode([
  612. 'code' => 1,
  613. 'msg' => $res['msg'],
  614. ]));
  615. }
  616. exit(json_encode(['code' => 0]));
  617. }
  618. }