| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456 | 
							- <?php
 
- namespace app\admin\controller;
 
- use app\admin\common\AdminController;
 
- use app\common\api\ChuanglanSmsApi;
 
- use app\common\api\DictApi;
 
- use app\common\api\EnterpriseApi;
 
- use app\common\model\MessageRecord;
 
- use app\common\model\TalentChecklog;
 
- use app\common\api\TalentState;
 
- use app\common\api\CompanyApi;
 
- use think\facade\Db;
 
- class Enterprise extends AdminController {
 
-     public function gotoEnterprisePage() {
 
-         return view("", []);
 
-     }
 
-     public function findEnterpriseByPage() {
 
-         $res = EnterpriseApi::getList($this->request);
 
-         return json($res);
 
-     }
 
-     public function gotoEnterpriseDetailPage() {
 
-         $id = trim($this->request['id']);
 
-         $ep = EnterpriseApi::getOne($id);
 
-         if (!$ep) {
 
-             return "无此企业";
 
-         }
 
-         //--------设置 审核状态---------------------------------------------------
 
-         switch ($ep['checkState']) {
 
-             case 1:
 
-                 $ep['checkStateName'] = "待审核";
 
-                 break;
 
-             case 2:
 
-                 $ep['checkStateName'] = "审核驳回";
 
-                 break;
 
-             case 3:
 
-                 $ep['checkStateName'] = "审核通过";
 
-                 break;
 
-             case 4:
 
-                 $ep['checkStateName'] = "重新提交";
 
-                 break;
 
-         }
 
-         //-------设置账号状态----------------------------------------------------
 
-         switch ($ep['active']) {
 
-             case 1:
 
-                 $ep['activeName'] = "账号有效";
 
-                 break;
 
-             case 2:
 
-                 $ep['activeName'] = "冻结/拉黑";
 
-                 break;
 
-         }
 
-         //---------设置 街道-----------------------------------------------------
 
-         if (\StrUtil::isNotEmpAndNull($ep['street'])) {
 
-             $street_info = DictApi::findByParentCodeAndCode('street', $ep['street']);
 
-             if ($street_info != null) {
 
-                 $ep['streetName'] = $street_info['name'];
 
-             }
 
-         }
 
-         if (\StrUtil::isNotEmpAndNull($ep['agencyType'])) {
 
-             $agencyType = DictApi::findByParentCodeAndCode('agency_type', $ep['agencyType']);
 
-             $ep["agencyTypeName"] = $agencyType["name"];
 
-         }
 
-         //---------设置产业领域 --------------------------------------------------
 
-         if (\StrUtil::isNotEmpAndNull($ep['industryFieldNew'])) {
 
-             $industryFieldNew = DictApi::findByParentCodeAndCode('industry_field', $ep['industryFieldNew']);
 
-             if ($industryFieldNew != null) {
 
-                 $ep['industryFieldNewName'] = $industryFieldNew['name'];
 
-             }
 
-         }
 
-         //---------设置行业领域 --------------------------------------------------
 
-         if (\StrUtil::isNotEmpAndNull($ep['industryFieldOld'])) {
 
-             $industryFieldOld = DictApi::findByParentCodeAndCode($ep['industryFieldNew'] . "_field", $ep['industryFieldOld']);
 
-             if ($industryFieldOld != null) {
 
-                 $ep['industryFieldOldName'] = $industryFieldOld['name'];
 
-             }
 
-         }
 
-         //---------设置单位标签 --------------------------------------------------
 
-         if (\StrUtil::isNotEmpAndNull($ep['enterpriseTag'])) {
 
-             $enterpriseTag = DictApi::findByParentCodeAndCode("enterprise_tag", $ep['enterpriseTag']);
 
-             if ($enterpriseTag != null) {
 
-                 $ep['enterpriseTagName'] = $enterpriseTag['name'];
 
-             }
 
-         }
 
-         //---------设置单位类型 --------------------------------------------------
 
-         if (\StrUtil::isNotEmpAndNull($ep['enterpriseType'])) {
 
-             $enterpriseType = DictApi::findByParentCodeAndCode("enterprise_type", $ep['enterpriseType']);
 
-             if ($enterpriseType != null) {
 
-                 $ep['enterpriseTypeName'] = $enterpriseType['name'];
 
-             }
 
-         }
 
-         $imgurl_info = pathinfo($ep['imgurl']);
 
-         if (in_array($imgurl_info['extension'], ["jpeg", "jpg", "png", "gif"])) {
 
-             $ep['imgurl_is_img'] = 1;
 
-         } else {
 
-             $ep['imgurl_is_img'] = 0;
 
-         }
 
-         $bankImg_info = pathinfo($ep['bankImg']);
 
-         if (in_array($bankImg_info['extension'], ["jpeg", "jpg", "png", "gif"])) {
 
-             $ep['bankImg_is_img'] = 1;
 
-         } else {
 
-             $ep['bankImg_is_img'] = 0;
 
-         }
 
-         $domainImg_info = pathinfo($ep['domainImg']);
 
-         if (in_array($domainImg_info['extension'], ["jpeg", "jpg", "png", "gif"])) {
 
-             $ep['domainImg_is_img'] = 1;
 
-         } else {
 
-             $ep['domainImg_is_img'] = 0;
 
-         }
 
-         $typeImg_info = pathinfo($ep['typeImg']);
 
-         if (in_array($typeImg_info['extension'], ["jpeg", "jpg", "png", "gif"])) {
 
-             $ep['typeImg_is_img'] = 1;
 
-         } else {
 
-             $ep['typeImg_is_img'] = 0;
 
-         }
 
-         $beian_info = pathinfo($ep['beian']);
 
-         if (in_array($beian_info['extension'], ["jpeg", "jpg", "png", "gif"])) {
 
-             $ep['beian_is_img'] = 1;
 
-         } else {
 
-             $ep['beian_is_img'] = 0;
 
-         }
 
-         return view("", ['ep' => $ep]);
 
-     }
 
-     public function gotoExaminePage() {
 
-         $id = trim($this->request['id']);
 
-         $ep = EnterpriseApi::getOne($id);
 
-         if (!$ep) {
 
-             return "无此企业";
 
-         }
 
-         //---------设置产业领域 --------------------------------------------------
 
-         if (\StrUtil::isNotEmpAndNull($ep['industryFieldNew'])) {
 
-             $industryFieldNew = DictApi::findByParentCodeAndCode('industry_field', $ep['industryFieldNew']);
 
-             if ($industryFieldNew != null) {
 
-                 $ep['industryFieldNewName'] = $industryFieldNew['name'];
 
-             }
 
-         }
 
-         return view("", ['ep' => $ep, 'checkUser' => session('user')['name']]);
 
-     }
 
-     public function doExamine() {
 
-         $id = trim($this->request['id']);
 
-         if (!$id) {
 
-             return json(["msg" => 'ID不能为空!']);
 
-         }
 
-         $ep = EnterpriseApi::getOne($id);
 
-         if (!$ep) {
 
-             return json(["msg" => '无此企业!']);
 
-         }
 
-         $checkState = $this->request['checkState'];
 
-         if ($checkState == null || ($checkState != 2 && $checkState != 3)) {
 
-             return json(["msg" => '请选择审核状态!']);
 
-         }
 
-         $checkMsg = $this->request['checkMsg'];
 
-         if ($checkState == 2) {
 
-             if (\StrUtil::isEmpOrNull($checkMsg)) {
 
-                 return json(["msg" => '请填写审核意见!']);
 
-             }
 
-             if (strlen($checkMsg) > 200) {
 
-                 return json(["msg" => '审核意见最多200个字符!']);
 
-             }
 
-         }
 
-         try {
 
-             $checkData = [
 
-                 'id' => $id,
 
-                 'checkState' => $checkState,
 
-                 'checkMsg' => $checkMsg,
 
-                 'checkUser' => session('user')['name'],
 
-                 'updateUser' => session('user')['uid'],
 
-                 'updateTime' => date("Y-m-d H:i:s")
 
-             ];
 
-             $res = EnterpriseApi::updateById($checkData);
 
-             //短信入库数据
 
-             $record_data = [
 
-                 'id' => getStringId(),
 
-                 'bizId' => getStringId(),
 
-                 'userId' => $id,
 
-                 'type' => 2,
 
-                 'smsType' => 2,
 
-                 'name' => $ep['name'],
 
-                 'phone' => $ep['agentPhone'],
 
-                 'params' => '机构注册信息',
 
-                 'state' => 1,
 
-                 'sendingDate' => date("Y-m-d H:i:s", time()),
 
-                 'createTime' => date("Y-m-d H:i:s", time())
 
-             ];
 
-             if ($checkState == 2) {
 
-                 $record_data['templateCode'] = "【晋江市人才服务平台】您好!您提交的晋江市现代产业体系人才机构注册信息因信息填写错误或上传不完整已被退回,请及时登录“晋江市人才综合服务申报平台”根据审核意见修改并重新提交。退订回复TD。";
 
-             }
 
-             if ($checkState == 3) {
 
-                 $record_data['templateCode'] = "【晋江市人才服务平台】您好!您提交的晋江市现代产业体系人才机构注册信息已审核通过,可登录“晋江市人才综合服务申报平台”做相关事宜申报。退订回复TD。";
 
-             }
 
-             $smsapi = new ChuanglanSmsApi();
 
-             $result = $smsapi->sendSMS($ep['agentPhone'], $record_data['templateCode']);
 
-             MessageRecord::create($record_data);
 
-             $company = CompanyApi::getOne(session('user')['companyId']);
 
-             TalentChecklog::create([
 
-                 'id' => getStringId(),
 
-                 'mainId' => $id,
 
-                 'type' => 10,
 
-                 'typeField' => null,
 
-                 'active' => 1,
 
-                 'state' => $checkState,
 
-                 'step' => 101,
 
-                 'stateChange' => TalentState::stateEnum($checkState),
 
-                 'description' => $checkMsg,
 
-                 'createTime' => date("Y-m-d H:i:s", time()),
 
-                 'createUser' => session('user')['name'] . "({$company['name']})"
 
-             ]);
 
-             return json(["msg" => '操作成功!', "code" => 200]);
 
-         } catch (\Exception $e) {
 
-             return json(["msg" => $e->getMessage()]);
 
-         }
 
-     }
 
-     public function GotoActivePage() {
 
-         $id = trim($this->request['id']);
 
-         $ep = EnterpriseApi::getOne($id);
 
-         return view("", ['ep' => $ep]);
 
-     }
 
-     public function setActive() {
 
-         if (!$id = trim($this->request['id'])) {
 
-             return json(["msg" => 'ID不能为空!', "code" => 500]);
 
-         }
 
-         $ep = EnterpriseApi::getOne($id);
 
-         $active = $this->request['active'];
 
-         if ($ep['active'] == null || ($ep['active'] != 1 && $ep['active'] != 2)) {
 
-             return json(["msg" => '状态有误!', "code" => 500]);
 
-         }
 
-         if ($ep['active'] == 2) {
 
-             $msg = trim($this->request['activeMsg']);
 
-             if (empty($msg)) {
 
-                 return json(["msg" => '请填写拉黑/冻结原因!', "code" => 500]);
 
-             }
 
-             if (strlen($msg) > 100) {
 
-                 return json(["msg" => '拉黑/冻结原因 最多100个字符!', "code" => 500]);
 
-             }
 
-         }
 
-         $company = CompanyApi::getOne(session('user')['companyId']);
 
-         $ep->active = $active;
 
-         $ep->activeMsg = $msg;
 
-         $ep->updateUser = session('user')['uid'] . "";
 
-         $ep->updateTime = date('y-m-d H:i:s');
 
-         try {
 
-             $ep->save();
 
-             //添加日志
 
-             TalentChecklog::create([
 
-                 'id' => getStringId(),
 
-                 'mainId' => $ep['id'],
 
-                 'type' => 10,
 
-                 'typeField' => null,
 
-                 'active' => 1,
 
-                 'state' => TalentState::RCRD_BASEIC_FROZEN,
 
-                 'step' => 102,
 
-                 'stateChange' => TalentState::stateEnum(10),
 
-                 'description' => $msg,
 
-                 'createTime' => date("Y-m-d H:i:s", time()),
 
-                 'createUser' => session('user')['name'] . "({$company['name']})"
 
-             ]);
 
-             return json(["msg" => '操作成功!', "code" => 200]);
 
-         } catch (\Exception $e) {
 
-             return json(["msg" => $e->getMessage()]);
 
-         }
 
-     }
 
-     public function resetPassword() {
 
-         if (!$id = trim($this->request['id'])) {
 
-             return json(["msg" => 'ID不能为空!', "code" => 500]);
 
-         }
 
-         $ep = EnterpriseApi::getOne($id);
 
-         if (!$ep) {
 
-             return json(["msg" => '找不到该用户!', "code" => 500]);
 
-         }
 
-         $ep->password = hash("md5", 'JJrc@123'); //默认密码
 
-         $ep->updateUser = session('user')['uid'] . "";
 
-         $ep->updateTime = date("Y-m-d H:i:s");
 
-         $ep->save();
 
-         $company = CompanyApi::getOne(session('user')['companyId']);
 
-         TalentChecklog::create([
 
-             'id' => getStringId(),
 
-             'mainId' => $ep['id'],
 
-             'type' => 10,
 
-             'typeField' => null,
 
-             'active' => 1,
 
-             'state' => null,
 
-             'step' => 103,
 
-             'stateChange' => '重置密码',
 
-             'description' => '重置密码',
 
-             'createTime' => date("Y-m-d H:i:s", time()),
 
-             'createUser' => session('user')['name'] . "({$company['name']})"
 
-         ]);
 
-         return json(["msg" => '重置密码成功!', "code" => 200]);
 
-     }
 
-     public function export() {
 
-         $res = EnterpriseApi::getList($this->request);
 
-         $objPHPExcel = new \PhpOffice\PhpSpreadsheet\Spreadsheet();
 
-         //创建人
 
-         $objPHPExcel->getProperties()->setCreator("System");
 
-         //最后修改人
 
-         $objPHPExcel->getProperties()->setLastModifiedBy("System");
 
-         //标题
 
-         $objPHPExcel->getProperties()->settitle("企业用户信息" . date("ymdHis"));
 
-         $objPHPExcel->getDefaultStyle()->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
 
-         $objPHPExcel->getDefaultStyle()->getAlignment()->setVertical(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
 
-         //设置当前的sheet
 
-         $sheet = $objPHPExcel->getActiveSheet();
 
-         //设置sheet的name
 
-         $sheet->settitle('企业用户信息');
 
-         // 所有单元格默认高度
 
-         $sheet->getDefaultRowDimension()->setRowHeight(30);
 
-         $sheet->getDefaultColumnDimension()->setWidth(30);
 
-         $sheet->getstyle('A1:O1')->getFill()->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)->getStartColor()->setRGB("87CEEB");
 
-         $header = ["单位名称", " 统一社会信用代码", "产业领域", "单位标签", " 所属街道", "单位地址", " 法人代表", " 单位电话", "人才联络员", "人才联络员电话", "人才联络员邮箱", "审核状态", "账号状态", "注册时间", "备注"];
 
-         foreach ($header as $key => $value) {
 
-             $sheet->setCellValueByColumnAndRow($key + 1, 1, $value);
 
-         }
 
-         if ($res['total'] > 0) {
 
-             $row = 2;
 
-             foreach ($res['rows'] as $k => $v) {
 
-                 for ($i = 0; $i < count($header); $i++) {
 
-                     switch ($i) {
 
-                         case 0:
 
-                             $sheet->setCellValueByColumnAndRow($i + 1, $row, $v['name']);
 
-                             break;
 
-                         case 1:
 
-                             $sheet->setCellValueByColumnAndRow($i + 1, $row, $v['idCard']);
 
-                             break;
 
-                         case 2:
 
-                             $sheet->setCellValueByColumnAndRow($i + 1, $row, $v['industryFieldNewName']);
 
-                             break;
 
-                         case 3:
 
-                             $sheet->setCellValueByColumnAndRow($i + 1, $row, $v['enterpriseTagName']);
 
-                             break;
 
-                         case 4:
 
-                             $sheet->setCellValueByColumnAndRow($i + 1, $row, $v['streetName']);
 
-                             break;
 
-                         case 5:
 
-                             $sheet->setCellValueByColumnAndRow($i + 1, $row, $v['address']);
 
-                             break;
 
-                         case 6:
 
-                             $sheet->setCellValueByColumnAndRow($i + 1, $row, $v['legal']);
 
-                             break;
 
-                         case 7:
 
-                             $sheet->setCellValueExplicitByColumnAndRow($i + 1, $row, $v['ephone'], \PhpOffice\PhpSpreadsheet\Cell\DataType::TYPE_STRING);
 
-                             break;
 
-                         case 8:
 
-                             $sheet->setCellValueByColumnAndRow($i + 1, $row, $v['agentName']);
 
-                             break;
 
-                         case 9:
 
-                             $sheet->setCellValueExplicitByColumnAndRow($i + 1, $row, $v['agentPhone'], \PhpOffice\PhpSpreadsheet\Cell\DataType::TYPE_STRING);
 
-                             break;
 
-                         case 10:
 
-                             $sheet->setCellValueByColumnAndRow($i + 1, $row, $v['agentEmail']);
 
-                             break;
 
-                         case 11:
 
-                             switch ($v['checkState']) {
 
-                                 case 1:
 
-                                     $sheet->setCellValueByColumnAndRow($i + 1, $row, "未审核");
 
-                                     break;
 
-                                 case 2:
 
-                                     $sheet->setCellValueByColumnAndRow($i + 1, $row, "审核驳回");
 
-                                     break;
 
-                                 case 3:
 
-                                     $sheet->setCellValueByColumnAndRow($i + 1, $row, "审核通过");
 
-                                     break;
 
-                                 case 4:
 
-                                     $sheet->setCellValueByColumnAndRow($i + 1, $row, "重新提交");
 
-                                     break;
 
-                                 default:
 
-                                     $sheet->setCellValueByColumnAndRow($i + 1, $row, "");
 
-                                     break;
 
-                             }
 
-                             break;
 
-                         case 12:
 
-                             switch ($v['active']) {
 
-                                 case 1:
 
-                                     $sheet->setCellValueByColumnAndRow($i + 1, $row, "账号有效");
 
-                                     break;
 
-                                 case 2:
 
-                                     $sheet->setCellValueByColumnAndRow($i + 1, $row, "拉黑/冻结");
 
-                                     break;
 
-                                 default:
 
-                                     $sheet->setCellValueByColumnAndRow($i + 1, $row, "");
 
-                                     break;
 
-                             }
 
-                             break;
 
-                         case 13:
 
-                             $sheet->setCellValueByColumnAndRow($i + 1, $row, $v['createTime']);
 
-                             break;
 
-                         case 14:
 
-                             $sheet->setCellValueByColumnAndRow($i + 1, $row, $v['description']);
 
-                             break;
 
-                     }
 
-                 }
 
-                 $row++;
 
-             }
 
-         }
 
-         header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
 
-         header('Content-Disposition: attachment;filename="' . "企业用户信息" . date("ymdHis") . '.xlsx"');
 
-         header('Cache-Control: max-age=0');
 
-         // If you're serving to IE 9, then the following may be needed
 
-         header('Cache-Control: max-age=1');
 
-         // If you're serving to IE over SSL, then the following may be needed
 
-         header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
 
-         header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); // always modified
 
-         header('Cache-Control: cache, must-revalidate'); // HTTP/1.1
 
-         header('Pragma: public'); // HTTP/1.0
 
-         $writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($objPHPExcel, 'Xlsx');
 
-         $writer->save('php://output');
 
-     }
 
- }
 
 
  |