Outjob.php 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. <?php
  2. namespace app\admin\controller;
  3. use app\worker\BaseController;
  4. use app\common\model\OutRecruit as OutRecruitModel;
  5. use app\common\model\OutRecruitReport as OutRecruitReportModel;
  6. use think\facade\Request;
  7. class Outjob extends BaseController
  8. {
  9. /**
  10. * 招聘信息
  11. */
  12. public function index()
  13. {
  14. if (Request::isAjax()) {
  15. $limit = input('limit/d', 20);
  16. $page = input('page/d', 1);
  17. $map = [];
  18. $keywords = input('keywords/s', "");
  19. if (!empty($keywords)) {
  20. $map[] = ['title', 'like', '%' . $keywords . '%'];
  21. }
  22. $status = input('status/d');
  23. if (!empty($status)) {
  24. $map[] = ['status', '=', $status];
  25. }
  26. $list = OutRecruitModel::where($map)
  27. ->order(['priority' => 'desc', 'id' => 'desc'])
  28. ->limit($limit)
  29. ->page($page)
  30. ->append(['status_text'])
  31. ->select();
  32. $count = OutRecruitModel::where($map)->count();
  33. if ($count == 0) {
  34. exit(json_encode([
  35. 'code' => 1,
  36. 'msg' => "未查询到数据",
  37. ]));
  38. }
  39. exit(json_encode([
  40. 'code' => 0,
  41. 'msg' => "",
  42. 'count' => $count,
  43. 'data' => $list,
  44. ]));
  45. } else {
  46. return view('outjob/index');
  47. }
  48. }
  49. public function recruitform()
  50. {
  51. $id = input('id/d, 0');
  52. $recruit = OutRecruitModel::findOrEmpty($id);
  53. return view('outjob/recruitform', [
  54. 'recruit' => $recruit,
  55. ]);
  56. }
  57. public function editrecruit()
  58. {
  59. $id = input('id/d', 0);
  60. $data = [
  61. 'title' => input('title/s', ""),
  62. 'company_name' => input('company_name/s', ""),
  63. 'num' => input('num/d', 1),
  64. 'province' => input('province/s', ""),
  65. 'city' => input('city/s', ""),
  66. 'district' => input('district/s', ""),
  67. 'address' => input('address/s', ""),
  68. 'agegroup' => input('agegroup/s', ""),
  69. 'tags' => input('tags/a', []),
  70. 'requirement' => input('requirement/s', ""),
  71. 'comdetails' => input('comdetails/s', ""),
  72. 'picall' => input('picall/a', []),
  73. 'salary' => input('salary/s', ""),
  74. 'telephone' => input('telephone/s', ""),
  75. 'remark' => input('remark/s', ""),
  76. 'status' => input('status/d', 1),
  77. 'priority' => input('priority/d', 255),
  78. 'volume' => input('volume/d', 0),
  79. 'updatetime' => time(),
  80. ];
  81. if (empty($id)) {
  82. $data['createtime'] = time();
  83. OutRecruitModel::create($data);
  84. } else {
  85. OutRecruitModel::update($data, ['id' => $id]);
  86. }
  87. exit(json_encode([
  88. 'code' => 0,
  89. ]));
  90. }
  91. public function delrecruit()
  92. {
  93. $id = input('id/d');
  94. $res = OutRecruitReportModel::where('recruit_id', $id)->find();
  95. if (!empty($res)) {
  96. exit(json_encode([
  97. 'code' => 1,
  98. 'msg' => "已有报备记录,无法删除",
  99. ]));
  100. }
  101. OutRecruitModel::destroy($id);
  102. exit(json_encode([
  103. 'code' => 0,
  104. ]));
  105. }
  106. public function report()
  107. {
  108. $id = input('id/d', 0);
  109. if (Request::isAjax()) {
  110. $limit = input('limit/d', 20);
  111. $page = input('page/d', 1);
  112. $map = [
  113. ['recruit_id', '=', $id],
  114. ];
  115. $status = input('status/d');
  116. if (!empty($status)) {
  117. $map[] = ['status', '=', $status];
  118. }
  119. $list = OutRecruitReportModel::with(['broker'])
  120. ->where($map)
  121. ->order(['createtime' => 'desc'])
  122. ->limit($limit)
  123. ->page($page)
  124. ->append(['status_text'])
  125. ->select();
  126. $count = OutRecruitReportModel::where($map)->count();
  127. if ($count == 0) {
  128. exit(json_encode([
  129. 'code' => 1,
  130. 'msg' => "未查询到数据",
  131. ]));
  132. }
  133. exit(json_encode([
  134. 'code' => 0,
  135. 'msg' => "",
  136. 'count' => $count,
  137. 'data' => $list,
  138. ]));
  139. } else {
  140. return view('outjob/report', ['id' => $id]);
  141. }
  142. }
  143. public function dealreport()
  144. {
  145. $id = input('id/d', 0);
  146. if (Request::isAjax()) {
  147. $data = [
  148. 'status' => input('status/d', 1),
  149. 'retremark' => input('retremark/s', ''),
  150. ];
  151. OutRecruitReportModel::update($data, ['id' => $id]);
  152. exit(json_encode([
  153. 'code' => 0,
  154. ]));
  155. } else {
  156. $report = OutRecruitReportModel::find($id);
  157. return view('outjob/dealreport', ['report' => $report]);
  158. }
  159. }
  160. }