Enterprise.php 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268
  1. <?php
  2. namespace app\admin\controller;
  3. use app\admin\common\AdminController;
  4. use app\common\api\ChuanglanSmsApi;
  5. use app\common\api\DictApi;
  6. use app\common\api\EnterpriseApi;
  7. use app\common\model\MessageRecord;
  8. use app\common\model\TalentChecklog;
  9. use app\common\api\TalentState;
  10. use app\common\api\CompanyApi;
  11. class Enterprise extends AdminController {
  12. public function gotoEnterprisePage(){
  13. return view("", []);
  14. }
  15. public function findEnterpriseByPage(){
  16. $res = EnterpriseApi::getList($this->request);
  17. return json($res);
  18. }
  19. public function gotoEnterpriseDetailPage(){
  20. $id = trim($this->request['id']);
  21. $ep = EnterpriseApi::getOne($id);
  22. if(!$ep){
  23. return "无此企业";
  24. }
  25. //--------设置 审核状态---------------------------------------------------
  26. switch ($ep['checkState']){
  27. case 1:
  28. $ep['checkStateName'] = "待审核";
  29. break;
  30. case 2:
  31. $ep['checkStateName'] = "审核驳回";
  32. break;
  33. case 3:
  34. $ep['checkStateName'] = "审核通过";
  35. break;
  36. case 4:
  37. $ep['checkStateName'] = "重新提交";
  38. break;
  39. }
  40. //-------设置账号状态----------------------------------------------------
  41. switch ($ep['active']){
  42. case 1:
  43. $ep['activeName'] = "账号有效";
  44. break;
  45. case 2:
  46. $ep['activeName'] = "冻结/拉黑";
  47. break;
  48. }
  49. //---------设置 街道-----------------------------------------------------
  50. if (\StrUtil::isNotEmpAndNull($ep['street'])) {
  51. $street_info = DictApi::findByParentCodeAndCode('street',$ep['street']);
  52. if ($street_info != null) {
  53. $ep['streetName'] = $street_info['name'];
  54. }
  55. }
  56. //---------设置产业领域 --------------------------------------------------
  57. if(\StrUtil::isNotEmpAndNull($ep['industryFieldNew'])){
  58. $industryFieldNew = DictApi::findByParentCodeAndCode('industry_field',$ep['industryFieldNew']);
  59. if($industryFieldNew != null){
  60. $ep['industryFieldNewName'] = $industryFieldNew['name'];
  61. }
  62. }
  63. return view("", ['ep' => $ep]);
  64. }
  65. public function gotoExaminePage(){
  66. $id = trim($this->request['id']);
  67. $ep = EnterpriseApi::getOne($id);
  68. if(!$ep){
  69. return "无此企业";
  70. }
  71. //---------设置产业领域 --------------------------------------------------
  72. if(\StrUtil::isNotEmpAndNull($ep['industryFieldNew'])){
  73. $industryFieldNew = DictApi::findByParentCodeAndCode('industry_field',$ep['industryFieldNew']);
  74. if($industryFieldNew != null){
  75. $ep['industryFieldNewName'] = $industryFieldNew['name'];
  76. }
  77. }
  78. return view("", ['ep' => $ep, 'checkUser' => session('user')['name']]);
  79. }
  80. public function doExamine(){
  81. $id = trim($this->request['id']);
  82. if(!$id){
  83. return json(["msg" => 'ID不能为空!']);
  84. }
  85. $ep = EnterpriseApi::getOne($id);
  86. if(!$ep){
  87. return json(["msg" => '无此企业!']);
  88. }
  89. $checkState = $this->request['checkState'];
  90. if($checkState == null || ($checkState != 2 && $checkState != 3)){
  91. return json(["msg" => '请选择审核状态!']);
  92. }
  93. if($checkState == 2){
  94. $checkMsg = \StrUtil::isEmpOrNull($this->request['checkMsg']);
  95. if ($checkMsg) {
  96. return json(["msg" => '请填写审核意见!']);
  97. }
  98. if (strlen($checkMsg) > 200) {
  99. return json(["msg" => '审核意见最多200个字符!']);
  100. }
  101. }
  102. try {
  103. $checkData = [
  104. 'id' => $id,
  105. 'checkState' => $checkState,
  106. 'checkMsg' => $checkMsg,
  107. 'checkUser' => session('user')['name'],
  108. 'updateUser' => session('user')['uid'],
  109. 'updateTime' => date("y-m-d H:i:s")
  110. ];
  111. $res = EnterpriseApi::updateById($checkData);
  112. //短信入库数据
  113. $record_data = [
  114. 'id' => getStringId(),
  115. 'bizId' => getStringId(),
  116. 'userId' => $id,
  117. 'type' => 2,
  118. 'smsType' => 2,
  119. 'name' => $ep['name'],
  120. 'phone' => $ep['agentPhone'],
  121. 'params' => '机构注册信息',
  122. 'state' => 1,
  123. 'sendingDate' => date("Y-m-d H:i:s",time()),
  124. 'createTime' => date("Y-m-d H:i:s",time())
  125. ];
  126. if($checkState == 2){
  127. $record_data['templateCode'] = "【晋江市人才服务平台】您好!您提交申请的优秀人才机构注册信息因信息填写错误或上传不完整已被退回,请及时登录申报系统查看审核意见并重新提交。";
  128. }
  129. if($checkState == 3){
  130. $record_data['templateCode'] = "【晋江市人才服务平台】您好!您提交申请的优秀人才机构注册信息已审核通过,可登录申报系统做相关事宜申报。";
  131. }
  132. $smsapi = new ChuanglanSmsApi();
  133. $result = $smsapi->sendSMS($ep['agentPhone'],$record_data['templateCode']);
  134. MessageRecord::create($record_data);
  135. $company = CompanyApi::getOne(session('user')['companyId']);
  136. TalentChecklog::create([
  137. 'id' => getStringId(),
  138. 'mainId' => $id,
  139. 'type' => 10,
  140. 'typeField' => null,
  141. 'active' => 1,
  142. 'state' => $checkState,
  143. 'step' => 101,
  144. 'stateChange' => TalentState::stateEnum($checkState),
  145. 'description' => $checkMsg,
  146. 'createTime' => date("Y-m-d H:i:s",time()),
  147. 'createUser' => session('user')['name']."({$company['name']})"
  148. ]);
  149. return json(["msg" => '操作成功!',"code" => 200]);
  150. } catch (\Exception $e){
  151. return json(["msg" => $e->getMessage()]);
  152. }
  153. }
  154. public function GotoActivePage(){
  155. $id = trim($this->request['id']);
  156. $ep = EnterpriseApi::getOne($id);
  157. return view("", ['ep' => $ep]);
  158. }
  159. public function setActive(){
  160. if(!$id = trim($this->request['id'])){
  161. return json(["msg" => 'ID不能为空!',"code" => 500]);
  162. }
  163. $ep = EnterpriseApi::getOne($id);
  164. $active = $this->request['active'];
  165. if($ep['active'] == null || ($ep['active'] != 1 && $ep['active'] != 2)){
  166. return json(["msg" => '状态有误!',"code" => 500]);
  167. }
  168. if($ep['active'] == 2){
  169. $msg = trim($this->request['activeMsg']);
  170. if(empty($msg)){
  171. return json(["msg" => '请填写拉黑/冻结原因!',"code" => 500]);
  172. }
  173. if(strlen($msg) > 100){
  174. return json(["msg" => '拉黑/冻结原因 最多100个字符!',"code" => 500]);
  175. }
  176. }
  177. $company = CompanyApi::getOne(session('user')['companyId']);
  178. $ep->active = $active;
  179. $ep->activeMsg = $msg;
  180. $ep->updateUser = session('user')['uid'] . "";
  181. $ep->updateTime = date('y-m-d H:i:s');
  182. try {
  183. $ep->save();
  184. //添加日志
  185. TalentChecklog::create([
  186. 'id' => getStringId(),
  187. 'mainId' => $ep['id'],
  188. 'type' => 10,
  189. 'typeField' => null,
  190. 'active' => 1,
  191. 'state' => TalentState::RCRD_BASEIC_FROZEN,
  192. 'step' => 102,
  193. 'stateChange' => TalentState::stateEnum(10),
  194. 'description' => $msg,
  195. 'createTime' => date("Y-m-d H:i:s",time()),
  196. 'createUser' => session('user')['name']."({$company['name']})"
  197. ]);
  198. return json(["msg" => '操作成功!',"code" => 200]);
  199. } catch (\Exception $e) {
  200. return json(["msg" => $e->getMessage()]);
  201. }
  202. }
  203. public function resetPassword(){
  204. if(!$id = trim($this->request['id'])){
  205. return json(["msg" => 'ID不能为空!',"code" => 500]);
  206. }
  207. $ep = EnterpriseApi::getOne($id);
  208. if(!$ep){
  209. return json(["msg" => '找不到该用户!',"code" => 500]);
  210. }
  211. $ep->password = hash("md5", 'JJrc@123');//默认密码
  212. $ep->updateUser = session('user')['uid'] . "";
  213. $ep->updateTime = date("y-m-d H:i:s");
  214. $ep->save();
  215. $company = CompanyApi::getOne(session('user')['companyId']);
  216. TalentChecklog::create([
  217. 'id' => getStringId(),
  218. 'mainId' => $ep['id'],
  219. 'type' => 10,
  220. 'typeField' => null,
  221. 'active' => 1,
  222. 'state' => null,
  223. 'step' => 103,
  224. 'stateChange' => '重置密码',
  225. 'description' => '重置密码',
  226. 'createTime' => date("Y-m-d H:i:s",time()),
  227. 'createUser' => session('user')['name']."({$company['name']})"
  228. ]);
  229. return json(["msg" => '重置密码成功!',"code" => 200]);
  230. }
  231. }