Comjobs.php 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209
  1. <?php
  2. namespace app\web\controller;
  3. use think\facade\Session;
  4. use app\web\BaseController;
  5. use app\common\model\Worker as WorkerModel;
  6. use app\common\model\User as UserModel;
  7. use app\common\model\UserFollow as UserFollowModel;
  8. use app\common\model\UserGroups as UserGroupsModel;
  9. use app\common\model\UserAuths as UserAuthsModel;
  10. use app\common\model\Comjobs as ComjobsModel;
  11. use app\common\model\ComjobsCate as ComjobsCateModel;
  12. use app\common\model\ComjobsLog as ComjobsLogModel;
  13. class Comjobs extends BaseController
  14. {
  15. public function setLog()
  16. {
  17. $ret = ['status' => "error", 'msg' => "error", 'mobile' => ""];
  18. $comjobsid = input('comjobsid/d', 0);
  19. $comjobs = ComjobsModel::where('status', 'in', '3,4')->where('id', '=', $comjobsid)->findOrEmpty();
  20. if ($comjobs->isEmpty()) {
  21. $ret['msg'] = "招聘信息不存在。";
  22. exit(json_encode($ret));
  23. }
  24. $mobile = input('mobile/s', "");
  25. if (empty($mobile)) {
  26. $ret['msg'] = "报名手机号不能为空。";
  27. exit(json_encode($ret));
  28. }
  29. $user = UserModel::where(['mobile' => $mobile])->findOrEmpty();
  30. if ($user->isEmpty()) {
  31. $groups = UserGroupsModel::order(['isdefault' => 'desc', 'id' => 'asc'])->findOrEmpty();
  32. $user = new UserModel;
  33. $user->save([
  34. 'groupsid' => $groups->isEmpty() ? 0 : $groups->id,
  35. 'brokerid' => 0,
  36. 'nickname' => "昵称",
  37. 'avatar' => "",
  38. 'realname' => "姓名",
  39. 'mobile' => $mobile,
  40. 'integral' => 0,
  41. 'inttotal' => 0,
  42. 'status' => 2,
  43. 'isvip' => 1,
  44. 'authstatus' => 1,
  45. 'authremark' => "",
  46. 'idcardzpic' => "",
  47. 'idcardfpic' => "",
  48. 'idcard' => "",
  49. 'gender' => 1,
  50. 'birthday' => "",
  51. 'address' => "",
  52. 'education' => "",
  53. 'createtime' => time(),
  54. 'jobintention' => "",
  55. 'workexperience' => "",
  56. 'eduexperience' => "",
  57. 'followstatus' => 1,
  58. 'wxampcode' => "",
  59. 'bankcard' => ['openbank' => "", 'account' => "", 'number' => ""],
  60. ]);
  61. $userauths = new UserAuthsModel();
  62. $userauths->save([
  63. 'userid' => $user->id,
  64. 'identitytype' => "mobile",
  65. 'identifier' => $mobile,
  66. 'password' => md5(time() . mt_rand(100000, 999999)),
  67. 'logintime' => time(),
  68. 'loginip' => $_SERVER['SERVER_ADDR'],
  69. ]);
  70. }
  71. session('usermobile', $mobile);
  72. $log = ComjobsLogModel::where(['comjobsid' => $comjobsid, 'userid' => $user->id])->findOrEmpty();
  73. if ($log->isEmpty()) {
  74. $log->save([
  75. 'workerid' => $comjobs->workerid,
  76. 'comjobsid' => $comjobsid,
  77. 'userid' => $user->id,
  78. 'status' => 1,
  79. 'remark' => "",
  80. 'createtime' => time(),
  81. ]);
  82. UserFollowModel::create([
  83. 'userid' => $user->id,
  84. 'ftype' => "招聘报名",
  85. 'fstatus' => 1,
  86. 'remark' => $comjobs->title,
  87. 'createtime' => time(),
  88. ]);
  89. $ret['status'] = "success";
  90. $ret['msg'] = "报名成功,我们会尽快为你安排面试。";
  91. $ret['mobile'] = $mobile;
  92. echo json_encode($ret);
  93. } else {
  94. $ret['status'] = "success";
  95. $ret['msg'] = "你已报名过了,无需重复报名。";
  96. $ret['mobile'] = $mobile;
  97. echo json_encode($ret);
  98. }
  99. }
  100. public function detail()
  101. {
  102. $comjobsid = input('comjobsid/d', 0);
  103. $comjobs = ComjobsModel::with(['worker', 'comjobsCate'])->where('status', 'in', '3,4')->where('id', '=', $comjobsid)->findOrEmpty();
  104. if (!$comjobs->isEmpty()) {
  105. $comjobs->volume += 1;
  106. $comjobs->save();
  107. }
  108. $comjobslist = ComjobsModel::with(['worker', 'comjobsCate'])->where(['status' => 3, 'workerid' => $comjobs->workerid])->where('createtime', '<=', time())->order(['updatetime' => 'desc', 'createtime' => 'desc', 'id' => 'desc'])->limit(5)->select();
  109. return view('comjobs/detail', [
  110. 'comjobs' => $comjobs,
  111. 'comjobslist' => $comjobslist,
  112. 'usermobile' => session('?usermobile') ? session('usermobile') : "",
  113. ]);
  114. }
  115. public function comjobs()
  116. {
  117. $addressarr = ['不限' => ['不限']];
  118. $addressarr['北京市'] = ['不限', '朝阳区', '海淀区', '通州区', '房山区', '丰台区', '昌平区', '大兴区', '顺义区', '西城区', '延庆县', '石景山区', '宣武区', '怀柔区', '崇文区', '密云县', '东城区', '平谷区', '门头沟区'];
  119. $addressarr['广东省'] = ['不限', '东莞市', '广州市', '中山市', '深圳市', '惠州市', '江门市', '珠海市', '汕头市', '佛山市', '湛江市', '河源市', '肇庆市', '清远市', '潮州市', '韶关市', '揭阳市', '阳江市', '梅州市', '云浮市', '茂名市', '汕尾市'];
  120. $addressarr['山东省'] = ['不限', '济南市', '青岛市', '临沂市', '济宁市', '菏泽市', '烟台市', '淄博市', '泰安市', '潍坊市', '日照市', '威海市', '滨州市', '东营市', '聊城市', '德州市', '莱芜市', '枣庄市'];
  121. $addressarr['江苏省'] = ['不限', '苏州市', '徐州市', '盐城市', '无锡市', '南京市', '南通市', '连云港市', '常州市', '镇江市', '扬州市', '淮安市', '泰州市', '宿迁市'];
  122. $addressarr['河南省'] = ['不限', '郑州市', '南阳市', '新乡市', '安阳市', '洛阳市', '信阳市', '平顶山市', '周口市', '商丘市', '开封市', '焦作市', '驻马店市', '濮阳市', '三门峡市', '漯河市', '许昌市', '鹤壁市', '济源市'];
  123. $addressarr['上海市'] = ['不限', '松江区', '宝山区', '金山区', '嘉定区', '南汇区', '青浦区', '浦东新区', '奉贤区', '徐汇区', '静安区', '闵行区', '黄浦区', '杨浦区', '虹口区', '普陀区', '闸北区', '长宁区', '崇明区', '卢湾区'];
  124. $addressarr['河北省'] = ['不限', '石家庄市', '唐山市', '保定市', '邯郸市', '邢台市', '河北区', '沧州市', '秦皇岛市', '张家口市', '衡水市', '廊坊市', '承德市'];
  125. $addressarr['浙江'] = ['不限', '温州市', '宁波市', '杭州市', '台州市', '嘉兴市', '金华市', '湖州市', '绍兴市', '舟山市', '丽水市', '衢州市'];
  126. $addressarr['香港特别行政区'] = ['不限', '香港岛', '九龙', '新界'];
  127. $addressarr['陕西省'] = ['不限', '西安市', '咸阳市', '宝鸡市', '汉中市', '渭南市', '安康市', '榆林市', '商洛市', '延安市', '铜川市'];
  128. $addressarr['湖南省'] = ['不限', '长沙市', '邵阳市', '常德市', '衡阳市', '株洲市', '湘潭市', '永州市', '岳阳市', '怀安市', '郴州市', '娄底市', '益阳市', '张家界市', '湘西州'];
  129. $addressarr['重庆市'] = ['不限', '江北区', '渝北区', '沙坪坝区', '九龙坡区', '万州区', '永川区', '南岸区', '酉阳县', '北碚区', '涪陵区', '秀山县', '巴南区', '渝中区', '石柱县', '忠县', '合川市', '大渡口区', '开县', '长寿区', '荣昌县', '云阳县', '梁平县', '潼南县', '江津市', '彭水县', '綦江县', '璧山县', '黔江区', '大足县', '巫山县', '巫溪县', '垫江县', '丰都县', '武隆县', '万盛区', '铜梁县', '南川市', '奉节县', '双桥区', '城口县'];
  130. $addressarr['福建省'] = ['不限', '漳州市', '厦门市', '泉州市', '福州市', '莆田市', '宁德市', '三明市', '南平市', '龙岩市'];
  131. $addressarr['天津市'] = ['不限', '和平区', '北辰区', '河北区', '河西区', '西青区', '津南区', '东丽区', '武清区', '宝坻区', '红桥区', '大港区', '汉沽区', '静海县', '塘沽区', '宁河县', '蓟县', '南开区', '河东区'];
  132. $addressarr['云南省'] = ['不限', '昆明市', '红河州', '大理州', '文山州', '德宏州', '曲靖市', '昭通市', '楚雄州', '保山市', '玉溪市', '丽江地区', '临沧地区', '思茅地区', '西双版纳州', '怒江州', '迪庆州'];
  133. $addressarr['四川省'] = ['不限', '成都市', '绵阳市', '广元市', '达州市', '南充市', '德阳市', '广安市', '阿坝州', '巴中市', '遂宁市', '内江市', '凉山州', '攀枝花市', '乐山市', '自贡市', '泸州市', '雅安市', '宜宾市', '资阳市', '眉山市', '甘孜州'];
  134. $addressarr['广西壮族自治区'] = ['不限', '贵港市', '玉林市', '北海市', '南宁市', '柳州市', '桂林市', '梧州市', '钦州市', '来宾市', '河池市', '百色市', '贺州市', '防城港市'];
  135. $addressarr['安徽省'] = ['不限', '芜湖市', '合肥市', '六安市', '宿州市', '阜阳市', '安庆市', '马鞍山市', '蚌埠市', '淮北市', '淮南市', '宣城市', '黄山市', '铜陵市', '亳州市', '池州市', '巢湖市', '滁州市'];
  136. $addressarr['海南省'] = ['不限', '三亚市', '海口市', '琼海市', '文昌市', '东方市', '昌江县', '陵水县', '乐东县', '保亭县', '五指山市', '澄迈县', '万宁市', '儋州市', '临高县', '白沙县', '定安县', '琼中县', '屯昌县'];
  137. $addressarr['江西省'] = ['不限', '南昌市', '赣州市', '上饶市', '吉安市', '九江市', '新余市', '抚州市', '宜春市', '景德镇市', '萍乡市', '鹰潭市'];
  138. $addressarr['湖北省'] = ['不限', '武汉市', '宜昌市', '襄樊市', '荆州市', '恩施州', '黄冈市', '孝感市', '十堰市', '咸宁市', '黄石市', '仙桃市', '天门市', '随州市', '荆门市', '潜江市', '鄂州市', '神农架林区'];
  139. $addressarr['山西省'] = ['不限', '太原市', '大同市', '运城市', '长治市', '晋城市', '忻州市', '临汾市', '吕梁市', '晋中市', '阳泉市', '宿州市'];
  140. $addressarr['辽宁省'] = ['不限', '大连市', '沈阳市', '丹东市', '辽阳市', '葫芦岛市', '锦州市', '朝阳市', '营口市', '鞍山市', '抚顺市', '阜新市', '盘锦市', '本溪市', '铁岭市'];
  141. $addressarr['台湾省'] = ['不限', '台北市', '高雄市', '台中市', '新竹市', '基隆市', '台南市', '嘉义市'];
  142. $addressarr['黑龙江'] = ['不限', '齐齐哈尔市', '哈尔滨市', '大庆市', '佳木斯市', '双鸭山市', '牡丹江市', '鸡西市', '黑河市', '绥化市', '鹤岗市', '伊春市', '大兴安岭地区', '七台河市'];
  143. $addressarr['内蒙古自治区'] = ['不限', '赤峰市', '包头市', '通辽市', '呼和浩特市', '鄂尔多斯市', '乌海市', '呼伦贝尔市', '兴安盟', '巴彦淖尔盟', '锡林郭勒盟', '阿拉善盟', '大兴安岭地区', '七台河市'];
  144. $addressarr['澳门特别行政区'] = ['不限', '澳门半岛', '离岛'];
  145. $addressarr['贵州省'] = ['不限', '贵阳市', '黔东南州', '黔南州', '遵义市', '黔西南州', '毕节地区', '铜仁地区', '安顺市', '六盘水市'];
  146. $addressarr['甘肃省'] = ['不限', '兰州市', '天水市', '庆阳市', '武威市', '酒泉市', '张掖市', '陇南地区', '白银市', '定西地区', '平凉市', '嘉峪关市', '临夏回族自治州', '金昌市', '甘南州'];
  147. $addressarr['青海省'] = ['不限', '西宁市', '海西州', '海东地区', '海北州', '果洛州', '玉树州', '黄南藏族自治州'];
  148. $addressarr['新疆维吾尔自治区'] = ['不限', '乌鲁木齐市', '伊犁州', '昌吉州', '石河子市', '哈密地区', '阿克苏地区', '巴音郭楞州', '喀什地区', '塔城地区', '克拉玛依市', '和田地区', '阿勒泰州', '吐鲁番地区', '阿拉尔市', '博尔塔拉州', '五家渠市', '克孜勒苏州', ' 图木舒克市'];
  149. $addressarr['西藏区'] = ['不限', '拉萨市', '山南地区', '林芝地区', '日喀则地区', '阿里地区', '昌都地区', '那曲地区'];
  150. $addressarr['吉林省'] = ['不限', '吉林市', '长春市', '白山市', '延边州', '白城市', '松原市', '辽源市', '通化市', '四平市'];
  151. $addressarr['宁夏回族自治区'] = ['不限', '银川市', '吴忠市', '中卫市', '石嘴山市', '固原市'];
  152. $catelist = ComjobsCateModel::field('id as value, title, priority')->order(['priority' => 'desc', 'id' => 'desc'])->select()->toArray();
  153. array_unshift($catelist, ['value' => 0, 'title' => '不限']);
  154. $wtypelist = [['value' => 0, 'title' => '全部'], ['value' => 1, 'title' => '按月'], ['value' => 2, 'title' => '按时'], ['value' => 3, 'title' => '按件'], ['value' => 4, 'title' => '按项目'], ['value' => 5, 'title' => '其他']];
  155. $page = input('page/d', 1);
  156. $map = [];
  157. $map[] = ['status', 'in', '3,4'];
  158. $keywords = input('keywords/s', "");
  159. if (!empty($keywords)) {
  160. $map[] = ['title', 'like', '%' . $keywords . '%'];
  161. }
  162. $cateid = input('cateid/d', 0);
  163. if (!empty($cateid)) {
  164. $map[] = ['cateid', '=', $cateid];
  165. }
  166. $wtype = input('wtype/d', 0);
  167. if (!empty($wtype)) {
  168. $map[] = ['wtype', '=', $wtype];
  169. }
  170. $province = input('province/s', "");
  171. $province = empty($province) ? "不限" : $province;
  172. if ($province != "不限") {
  173. $map[] = ['province', '=', $province];
  174. }
  175. $city = input('city/s', "");
  176. $city = empty($city) ? "不限" : $city;
  177. if ($city != "不限") {
  178. $map[] = ['city', '=', $city];
  179. }
  180. $list = ComjobsModel::with(['worker', 'comjobsCate'])->where($map)->order(['priority' => 'desc', 'id' => 'desc',])->append(['wtype_text'])->page($page)->paginate(['list_rows' => 10, 'query' => request()->param()]);
  181. $pageview = $list->render();
  182. return view('comjobs/comjobs', [
  183. 'keywords' => $keywords,
  184. 'cateid' => $cateid,
  185. 'wtype' => $wtype,
  186. 'province' => $province,
  187. 'city' => $city,
  188. 'catelist' => $catelist,
  189. 'wtypelist' => $wtypelist,
  190. 'addressarr' => $addressarr,
  191. 'list' => $list,
  192. 'pageview' => $pageview,
  193. ]);
  194. }
  195. }