OddJob.php 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. <?php
  2. namespace app\admin\controller;
  3. use app\admin\AdminBaseController;
  4. use app\common\model\odd_job\JobModel;
  5. use app\common\model\odd_job\UserModel;
  6. use app\common\model\odd_job\WorkerModel;
  7. use app\common\model\SettingModel;
  8. class OddJob extends AdminBaseController
  9. {
  10. /**
  11. * 公司
  12. */
  13. public function company()
  14. {
  15. return view();
  16. }
  17. public function listCompany()
  18. {
  19. $map = $this->dealEqualInput(['status','wtype'],$this->dealLikeInput(['title']));
  20. $list = WorkerModel::where($map)
  21. ->order(['priority'=>'desc','id' => 'desc'])
  22. ->append(['wtype_text', 'status_text'])
  23. ->limit(input('limit'))
  24. ->page(input('page'))
  25. ->select();
  26. $count = WorkerModel::where($map)->count();
  27. if ($count == 0) {
  28. ajax_return(1, '未查询到数据');
  29. }
  30. list_return($list, $count);
  31. }
  32. /**
  33. * 岗位
  34. */
  35. public function job()
  36. {
  37. return view();
  38. }
  39. public function listJob()
  40. {
  41. $map = $this->dealEqualInput(['status','wtype'],$this->dealLikeInput(['title']));
  42. $list = JobModel::with(['worker'])
  43. ->where($map)
  44. ->order(['updatetime'=>'desc'])
  45. ->append(['wtype_text', 'status_text'])
  46. ->limit(input('limit'))
  47. ->page(input('page'))
  48. ->select();
  49. $count = JobModel::where($map)->count();
  50. $list = $list->toArray();
  51. foreach ($list as $k => $v) {
  52. if (!empty($v['company_name'])) {
  53. $list[$k]['worker']['title'] = $v['company_name'];
  54. }
  55. }
  56. if ($count == 0) {
  57. ajax_return(1, '未查询到数据');
  58. }
  59. list_return($list, $count);
  60. }
  61. /**
  62. * 求职者
  63. */
  64. public function user()
  65. {
  66. return view();
  67. }
  68. public function listUser()
  69. {
  70. $map = $this->dealEqualInput(['status','authstatus','followstatus'],$this->dealLikeInput(['keywords'=>'nickname|realname|mobile']));
  71. $list = UserModel::where($map)
  72. ->order(['id'=>'desc'])
  73. ->append(['status_text', 'authstatus_text','followstatus_text','education_text','worker_text'])
  74. ->limit(input('limit'))
  75. ->page(input('page'))
  76. ->select();
  77. $count = UserModel::where($map)->count();
  78. if ($count == 0) {
  79. ajax_return(1, '未查询到数据');
  80. }
  81. list_return($list, $count);
  82. }
  83. /**
  84. * 列表
  85. */
  86. public function setting()
  87. {
  88. $system = SettingModel::getConfigValue(SettingModel::ODD_JOB);
  89. return view('', [
  90. 'system' => $system,
  91. ]);
  92. }
  93. public function editSetting()
  94. {
  95. $data = $this->_post(SettingModel::ODD_JOB);
  96. SettingModel::setConfigValue($data);
  97. ajax_return();
  98. }
  99. /**
  100. * 获取数据
  101. * @param array $param 要获取的数据
  102. * @return array
  103. */
  104. public function _post(array $param)
  105. {
  106. $res = [];
  107. foreach ($param as $v) {
  108. if (input($v) === '0' || !empty(input($v))) {
  109. $res[$v] = input($v);
  110. }
  111. }
  112. return $res;
  113. }
  114. }