Comjobs.php 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670
  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 = 1;
  227. if ($access_worker['status'] == 1) {
  228. $is_released = is_released($access_worker['id']);
  229. }
  230. return view('comjobs/comjobslist', [
  231. 'param' => $param,
  232. 'wtype' => $access_worker['wtype'],
  233. 'catelist' => $catelist,
  234. 'is_released' => $is_released ? $is_released['code'] : 0,
  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', ""),
  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 (empty($id)) {
  336. if ($this->access_worker['status'] == 1) {
  337. $is_released = is_released($workerid);
  338. if ($is_released['code'] == 1001) {
  339. return $is_released;
  340. }
  341. } else {
  342. if ($user->integral < $param->addcomjobs) {
  343. page_result1(1, "每次发布招聘信息需要扣除" . $param->addcomjobs . "积分,你当前积分不足。");
  344. }
  345. }
  346. $data['priority'] = 0;
  347. $data['video'] = input('new_video/s', "");
  348. $data['updatetime'] = time();
  349. $data['createtime'] = time();
  350. $data['status'] = (int)2;
  351. $data['volume'] = 0;
  352. $comjobs = ComjobsModel::create($data);
  353. $intdata = [
  354. 'userid' => $user->id,
  355. 'title' => "发布招聘信息扣除",
  356. 'intvalue' => 0 - $param->addcomjobs,
  357. 'intmoney' => 0.00,
  358. 'onlycontent' => "",
  359. 'remark' => input('title/s', ""),
  360. 'itype' => 4,
  361. 'createtime' => date("Y-m-d H:i:s"),
  362. 'yeartime' => date("Y"),
  363. 'monthtime' => date("Ym"),
  364. ];
  365. UserIntegralModel::create($intdata);
  366. $integral = intval($user->integral) - intval($param->addcomjobs);
  367. $user->save([
  368. 'integral' => $integral,
  369. ]);
  370. } else {
  371. $data['updatetime'] = time();
  372. $data['status'] = 2;
  373. $old_video = input('old_video/s', '');
  374. $new_video = input('new_video/s', '');
  375. if (!empty($new_video)) {
  376. $data['video'] = $new_video;
  377. } else {
  378. if (!empty($old_video)) {
  379. $data['video'] = $old_video;
  380. }
  381. }
  382. $comjobs = ComjobsModel::find($id);
  383. ComjobsLogModel::update(['workerid' => input('workerid/d', 0)], ['comjobsid' => $comjobs->id]);
  384. $comjobs->save($data);
  385. }
  386. //审核通知短信
  387. if ($data['status'] == 2) {
  388. $sms = new SmsService();
  389. $sms->examineSend('comjobs_examine', [$comjobs['id']]);
  390. }
  391. exit(json_encode([
  392. 'code' => 0,
  393. ]));
  394. }
  395. public function comjobsFormWyp()
  396. {
  397. $worker = $this->access_worker;
  398. $id = input('id/d, 0');
  399. $comjobs = ComjobsModel::findOrEmpty($id);
  400. $catelist = ComjobsCateModel::order(['priority' => 'desc', 'id' => 'desc'])->select();
  401. return view('comjobs/comjobsformWyp', [
  402. 'catelist' => $catelist,
  403. 'worker' => $worker,
  404. 'id' => $id,
  405. 'comjobs' => $comjobs,
  406. ]);
  407. }
  408. public function editComjobsWyp()
  409. {
  410. $workerid = $this->access_worker['id'];
  411. $user = UserModel::findOrEmpty($this->access_worker['userid']);
  412. if ($user->isEmpty()) {
  413. exit(json_encode([
  414. 'code' => 1,
  415. 'msg' => "用户信息不存在",
  416. ]));
  417. }
  418. $param = ParamModel::where(1)->findOrEmpty();
  419. $id = input('id/d', 0);
  420. $wtype = input('wtype/d', 1);
  421. $zwagall = $wtype == 1 ? input('zwagall/s', "") : '';
  422. $data = [
  423. 'workerid' => $workerid,
  424. 'title' => input('title/s', ""),
  425. 'cateid' => input('cateid/d', 0),
  426. 'province' => input('province/s', ""),
  427. 'city' => input('city/s', ""),
  428. 'district' => input('district/s', ""),
  429. 'agegroup' => input('agegroup/s', ""),
  430. 'tags' => input('tags/a', []),
  431. 'enddate' => input('enddate/s', ""),
  432. 'requirement' => input('requirement/s', ""),
  433. 'comdetails' => input('comdetails/s', ""),
  434. 'retmoney' => input('retmoney/d', ""),
  435. 'picall' => input('picall/a', []),
  436. 'companydetails' => input('companydetails/s', ""),
  437. 'wtype' => $wtype,
  438. 'bwagall' => input('bwagall/s', ""),
  439. 'zwagall' => $zwagall,
  440. 'fwagall' => input('fwagall/s', ""),
  441. 'telephone' => input('telephone/s', ""),
  442. 'remark' => input('remark/s', ""),
  443. 'recruitment_cate' => (int)2,
  444. ];
  445. if (empty($id)) {
  446. if ($this->access_worker['status'] == 1) {
  447. $is_released = is_released($workerid);
  448. if ($is_released['code'] == 1001) {
  449. return $is_released;
  450. }
  451. } else {
  452. if ($user->integral < $param->addcomjobswyp) {
  453. page_result1(1, "每次发布招聘信息需要扣除" . $param->addcomjobswyp . "积分,你当前积分不足。");
  454. }
  455. }
  456. $data['priority'] = 0;
  457. $data['video'] = input('new_video/s', "");
  458. $data['updatetime'] = time();
  459. $data['createtime'] = time();
  460. $data['status'] = (int)2;
  461. $data['volume'] = 0;
  462. $comjobs = ComjobsModel::create($data);
  463. $intdata = [
  464. 'userid' => $user->id,
  465. 'title' => "发布招聘信息扣除",
  466. 'intvalue' => 0 - $param->addcomjobs,
  467. 'intmoney' => 0.00,
  468. 'onlycontent' => "",
  469. 'remark' => input('title/s', ""),
  470. 'itype' => 4,
  471. 'createtime' => date("Y-m-d H:i:s"),
  472. 'yeartime' => date("Y"),
  473. 'monthtime' => date("Ym"),
  474. ];
  475. UserIntegralModel::create($intdata);
  476. $integral = intval($user->integral) - intval($param->addcomjobswyp);
  477. $user->save([
  478. 'integral' => $integral,
  479. ]);
  480. } else {
  481. $old_video = input('old_video/s', '');
  482. $new_video = input('new_video/s', '');
  483. if (!empty($new_video)) {
  484. $data['video'] = $new_video;
  485. } else {
  486. if (!empty($old_video)) {
  487. $data['video'] = $old_video;
  488. }
  489. }
  490. $data['createtime'] = time();
  491. $data['status'] = input('status/d', 0);
  492. $comjobs = ComjobsModel::find($id);
  493. ComjobsLogModel::update(['workerid' => input('workerid/d', 0)], ['comjobsid' => $comjobs->id]);
  494. $comjobs->save($data);
  495. }
  496. exit(json_encode([
  497. 'code' => 0,
  498. ]));
  499. }
  500. public function fieldComjobs()
  501. {
  502. $workerid = $this->access_worker['id'];
  503. $id = input('id/d', 0);
  504. $comjobs = ComjobsModel::where(['workerid' => $workerid])->findOrEmpty($id);
  505. if ($comjobs->isEmpty()) {
  506. exit(json_encode([
  507. 'code' => 1,
  508. 'msg' => "信息不存在",
  509. ]));
  510. } else {
  511. $comjobs->save([
  512. 'telephone' => input('value'),
  513. ]);
  514. }
  515. exit(json_encode([
  516. 'code' => 0,
  517. ]));
  518. }
  519. public function delComjobs()
  520. {
  521. $workerid = $this->access_worker['id'];
  522. $idarr = input('idarr/a');
  523. $comjobs_data = Db::name('comjobs')
  524. ->where(['workerid' => $workerid])
  525. ->whereIn('id', $idarr)
  526. ->update(['del_status' => 1]);
  527. if ($comjobs_data) {
  528. exit(json_encode([
  529. 'code' => 0,
  530. 'msg' => "",
  531. ]));
  532. }
  533. exit(json_encode([
  534. 'code' => 1,
  535. 'msg' => "删除失败,请稍后重试",
  536. ]));
  537. }
  538. public function listComjobs()
  539. {
  540. $workerid = $this->access_worker['id'];
  541. $limit = input('limit/d', 20);
  542. $page = input('page/d', 1);
  543. $map = [];
  544. $map[] = ['workerid', '=', $workerid];
  545. $keywords = input('keywords/s', "");
  546. if (!empty($keywords)) {
  547. $map[] = ['title', 'like', '%' . $keywords . '%'];
  548. }
  549. $status = input('status/d');
  550. if (!empty($status)) {
  551. $map[] = ['status', '=', $status];
  552. }
  553. $cateid = input('cateid/d', 0);
  554. if (!empty($cateid)) {
  555. $map[] = ['cateid', '=', $cateid];
  556. }
  557. $wtype = input('wtype/d');
  558. if (!empty($wtype)) {
  559. $map[] = ['wtype', '=', $wtype];
  560. }
  561. $recruitment_cate = input('recruitment_cate/d');
  562. if (!empty($recruitment_cate)) {
  563. $map[] = ['recruitment_cate', '=', $recruitment_cate];
  564. }
  565. $list = ComjobsModel::with(['worker', 'comjobsCate'])
  566. ->withCount(['comjobsLog'])
  567. ->where('del_status', 0)
  568. ->where($map)
  569. ->order('id desc')
  570. ->limit($limit)
  571. ->page($page)
  572. ->append(['wtype_text', 'status_text', 'recruitmentcate_text'])
  573. ->select();
  574. $count = ComjobsModel::where($map)->count();
  575. if ($count == 0) {
  576. exit(json_encode([
  577. 'code' => 1,
  578. 'msg' => "未查询到数据",
  579. ]));
  580. }
  581. exit(json_encode([
  582. 'code' => 0,
  583. 'msg' => "",
  584. 'count' => $count,
  585. 'data' => $list,
  586. ]));
  587. }
  588. public function importView()
  589. {
  590. return view('comjobs/importview');
  591. }
  592. public function import()
  593. {
  594. $workerid = $this->access_worker['id'];
  595. $file_url = input('file_url/s', "");
  596. if (!file_exists($file_url)) {
  597. exit(json_encode([
  598. 'code' => 1,
  599. 'msg' => "文件不存在",
  600. ]));
  601. }
  602. $service = new ComjobsService();
  603. $res = $service->importComjobs($file_url, $workerid);
  604. if (empty($res['code'])) {
  605. exit(json_encode([
  606. 'code' => 1,
  607. 'msg' => $res['msg'],
  608. ]));
  609. }
  610. exit(json_encode(['code' => 0]));
  611. }
  612. }