| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370 | 
							- <?php
 
- namespace app\common\api;
 
- use app\common\model\Dict;
 
- use think\Facade\Db;
 
- /**
 
-  * Description of DictApi
 
-  *
 
-  * @author sgq
 
-  */
 
- class DictApi {
 
-     public static function create($params) {
 
-         $data["code"] = $params["dictCode"];
 
-         $data["name"] = $params["dictName"];
 
-         $data["tips"] = $params["dictTips"];
 
-         $data["pid"] = 0;
 
-         $values = $params["dictValues"];
 
-         if (self::isExistByCode($data["code"]))
 
-             return ["msg" => sprintf("编码[%s]已经存在", $data["code"])];
 
-         $items = array_filter(explode(";", $values));
 
-         $id = Dict::insertGetId($data);
 
-         $childs = [];
 
-         for ($i = 0; $i < count($items); $i++) {
 
-             $fields = array_filter(explode(":", $items[$i]));
 
-             $childs[] = ["pid" => $id, "code" => $fields[0], "name" => $fields[1], "num" => $fields[2]];
 
-         }
 
-         Dict::insertAll($childs);
 
-         return ["code" => 200, "msg" => "成功"];
 
-     }
 
-     public static function update($params) {
 
-         $data["id"] = $params["dictId"];
 
-         $data["code"] = $params["dictCode"];
 
-         $data["name"] = $params["dictName"];
 
-         $data["tips"] = $params["dictTips"];
 
-         $data["pid"] = 0;
 
-         $values = $params["dictValues"];
 
-         if (self::isExistByCode($data["code"], $params["dictId"]))
 
-             return ["msg" => sprintf("编码[%s]已经存在", $data["code"])];
 
-         $items = array_filter(explode(";", $values));
 
-         $id = Dict::table('sys_dict')->save($data);
 
-         //删除原来的子项
 
-         Dict::where(["pid" => $params["dictId"]])->delete();
 
-         $childs = [];
 
-         for ($i = 0; $i < count($items); $i++) {
 
-             $fields = array_filter(explode(":", $items[$i]));
 
-             $childs[] = ["pid" => $params["dictId"], "code" => $fields[0], "name" => $fields[1], "num" => $fields[2]];
 
-         }
 
-         Dict::insertAll($childs);
 
-         return ["code" => 200, "msg" => "成功"];
 
-     }
 
-     public static function delete($id) {
 
-         Dict::where(["id" => $id])->delete();
 
-         Dict::where(["pid" => $id])->delete();
 
-         return ["code" => 200, "msg" => "成功"];
 
-     }
 
-     public static function isExistByCode($code, $id = 0) {
 
-         $where = [];
 
-         if ($id > 0) {
 
-             $where[] = ["id", "<>", $id];
 
-         }
 
-         $where[] = ["code", "=", $code];
 
-         $dict = Dict::where($where)->findOrEmpty()->toArray();
 
-         return $dict;
 
-     }
 
-     /**
 
-      * 获取一条
 
-      * @param type $id
 
-      * @return type
 
-      */
 
-     public static function getOne($id) {
 
-         $info = Dict::where("id", $id)->findOrEmpty()->toArray();
 
-         if ($info) {
 
-             $items = Dict::where("pid", "=", $id)->select()->toArray();
 
-             $info["children"] = $items;
 
-         }
 
-         return $info;
 
-     }
 
-     /**
 
-      * 获取列表
 
-      * @param type $request
 
-      * @return type
 
-      */
 
-     public static function getList($request) {
 
-         $order = trim($request->param("order")) ?: "desc";
 
-         $offset = trim($request->param("offset")) ?: 0;
 
-         $limit = trim($request->param("limit")) ?: 10;
 
-         $name = trim($request->param("condition"));
 
-         $where = [];
 
-         $where[] = ["pid", "=", "0"];
 
-         if ($name) {
 
-             $where[] = ["name", "like", "%" . $name . "%"];
 
-         }
 
-         $count = Dict::where($where)->count();
 
-         $list = Dict::where($where)->limit($offset, $limit)->order("id " . $order)->select()->toArray();
 
-         foreach ($list as &$item) {
 
-             $items = Dict::where("pid", "=", $item["id"])->column("name");
 
-             $item["detail"] = implode(",", $items);
 
-         }
 
-         return ["total" => $count, "rows" => $list];
 
-     }
 
-     /**
 
-      * 
 
-      * @param type $code
 
-      * @return type
 
-      */
 
-     public static function selectByParentCode($code) {
 
-         $parent = Dict::where("code", $code)->findOrEmpty()->toArray();
 
-         $dictList = Dict::where("pid", $parent["id"])->select()->toArray();
 
-         $tmp = [];
 
-         foreach ($dictList as $dict) {
 
-             $tmp[$dict["code"]] = $dict["name"];
 
-         }
 
-         return $tmp;
 
-     }
 
-     /**
 
-      * 
 
-      * @param type $code
 
-      * @return type
 
-      */
 
-     public static function findChildDictByCode($code) {
 
-         $parent = Dict::where("code", $code)->findOrEmpty()->toArray();
 
-         $dictList = Dict::where("pid", $parent["id"])->select()->toArray();
 
-         return $dictList;
 
-     }
 
-     public static function findDictByCode($code) {
 
-         $dict = Dict::where("code", $code)->findOrEmpty();
 
-         return $dict;
 
-     }
 
-     public static function getTalentFields($step) {
 
-         $dict1 = [
 
-             "talent_type" => "人才类型",
 
-             "tax_insurance_month" => "在我市缴交社会保险或个人所得税月份",
 
-             "labor_contract_rangetime" => "劳动合同起止时间",
 
-             "pre_import_type" => "预引进类型",
 
-             "name" => "姓名",
 
-             "card_type" => "证件类型",
 
-             "card_number" => "证件号码",
 
-             "sex" => "性别",
 
-             "birthday" => "出生日期",
 
-             "nationality" => "国籍/地区",
 
-             "province" => "籍贯省",
 
-             "city" => "籍贯市",
 
-             "county" => "籍贯县",
 
-             "nation" => "民族",
 
-             "politics" => "政治面貌"
 
-         ];
 
-         $dict2 = [
 
-             "talent_arrange" => "人才层次",
 
-             "talent_condition" => "认定条件",
 
-             "highest_degree" => "最高学历",
 
-             "graduate_school" => "毕业院校",
 
-             "major" => "专业",
 
-             "professional" => "专业技术职称",
 
-             "bank" => "开户银行",
 
-             "bank_number" => "银行行号",
 
-             "bank_branch_name" => "开户银行网点",
 
-             "bank_account" => "银行账号",
 
-             "study_abroad" => "是否有留学经历",
 
-             "abroad_school" => "留学毕业院校",
 
-             "abroad_major" => "留学专业",
 
-             "phone" => "手机号码",
 
-             "email" => "电子邮箱",
 
-             "apply_year" => "申报年度",
 
-             "import_way" => "引进方式",
 
-             "fst_work_time" => "首次来晋工作时间",
 
-             "cur_entry_time" => "本单位入职时间",
 
-             "position" => "本单位现任职务",
 
-             "source" => "申报来源",
 
-             "source_city" => "入选来源地级市",
 
-             "source_county" => "入选来源县市区",
 
-             "source_batch" => "入选名单批次",
 
-             "fujian_highcert_pubtime" => "福建省高层次人才证书发证日期",
 
-             "fujian_highcert_exptime" => "福建省高层次人才证书有效期",
 
-             "quanzhou_highcert_pubtime" => "泉州高层次人才证书发证日期",
 
-             "quanzhou_highcert_exptime" => "泉州高层次人才证书有效期"
 
-         ];
 
-         if ($step == 1) {
 
-             return $dict1;
 
-         }
 
-         if ($step == 2) {
 
-             return $dict2;
 
-         }
 
-         return array_merge($dict1, $dict2);
 
-     }
 
-     // 1保存未提交 2已提交未审核 3已审核 4驳回 5保存补充材料未提交 6提交补充材料进入初审 7初审通过 8初审驳回 9部门审核通过 10部门审核驳回 11复核通过 12复核驳回 13复核失败
 
-     public static function getCheckLogStepName($state, $step) {
 
-         $stepName = "";
 
-         switch ($state) {
 
-             case -1:
 
-             case 3:
 
-             case 4:
 
-                 $stepName = '<span class="label label-primary">基础条件审核</span>';
 
-                 break;
 
-             case -2:
 
-             case 7:
 
-             case 8:
 
-                 if ($step == 3) {
 
-                     $stepName = '<span class="label label-primary">部门审核</span>';
 
-                 } else {
 
-                     $stepName = '<span class="label label-primary">初级审核</span>';
 
-                 }
 
-                 break;
 
-             case 9:
 
-             case 10:
 
-                 $stepName = '<span class="label label-primary">部门审核</span>';
 
-                 break;
 
-             case 11:
 
-             case 12:
 
-                 $stepName = '<span class="label label-info">复核</span>';
 
-                 break;
 
-             case 13:
 
-                 $stepName = '<span class="label label-danger">审核不通过</span>';
 
-                 break;
 
-             case 21:
 
-             case 22:
 
-                 $stepName = '<span class="label label-info">核查征信</span>';
 
-                 break;
 
-             case 23:
 
-             case 24:
 
-             case 25:
 
-                 $stepName = '<span class="label label-info">公示</span>';
 
-                 break;
 
-             case 26:
 
-             case 27:
 
-                 $stepName = '<span class="label label-info">公布</span>';
 
-                 break;
 
-             case 28:
 
-                 $stepName = '<span class="label label-inverse">发证</span>';
 
-                 break;
 
-             default:
 
-                 $stepName = '<span class="label">用户操作</span>';
 
-                 break;
 
-         }
 
-         return $stepName;
 
-     }
 
-     public static function getTalentInfoStateName($state, $step = 0, $last_state = 0) {
 
-         $str = "";
 
-         switch ($state) {
 
-             case -2:
 
-                 $str = '<span class="label label-danger">初审失败</span>';
 
-                 break;
 
-             case -1:
 
-                 $str = '<span class="label label-danger">基础信息审核失败</span>';
 
-                 break;
 
-             case 1:
 
-                 if ($last_state > $state) {
 
-                     $str = '<span class="label label-danger">基审驳回</span>';
 
-                 } else {
 
-                     $str = '<span class="label">待提交基础信息</span>';
 
-                 }
 
-                 break;
 
-             case 2:
 
-                 if ($last_state > $state) {
 
-                     $str = '<span class="label label-success">待重审</span>';
 
-                 } else {
 
-                     $str = '<span class="label label-success">待审核</span>';
 
-                 }
 
-                 break;
 
-             case 3:
 
-                 $str = '<span class="label">待提交认定材料</span>';
 
-                 break;
 
-             case 4:
 
-                 $str = '<span class="label">再提交基础信息</span>';
 
-                 break;
 
-             case 5:
 
-                 if ($last_state > $state) {
 
-                     $str = '<span class="label label-danger">初审驳回</span>';
 
-                 } else {
 
-                     $str = '<span class="label">待提交认定材料</span>';
 
-                 }
 
-                 break;
 
-             case 6:
 
-                 if ($step == 3) {
 
-                     $str = '<span class="label label-danger">部门驳回</span>';
 
-                 } else {
 
-                     if ($last_state == 8) {
 
-                         $str = '<span class="label label-success">待重审</span>';
 
-                     } else if ($last_state == 7) {
 
-                         $str = '<span class="label label-danger">部门驳回</span>';
 
-                     } else if ($last_state == 9) {
 
-                         $str = '<span class="label label-danger">复核驳回</span>';
 
-                     } else {
 
-                         $str = '<span class="label label-success">待初审</span>';
 
-                     }
 
-                 }
 
-                 break;
 
-             case 7:
 
-                 if ($step == 3) {
 
-                     $str = '<span class="label label-success">待部门审核</span>';
 
-                 } else {
 
-                     $str = '<span class="label label-success">待复核</span>';
 
-                 }
 
-                 break;
 
-             case 8:
 
-                 $str = '<span class="label">再提交认定材料</span>';
 
-                 break;
 
-             case 9:
 
-                 if ($step == 3) {
 
-                     $str = '<span class="label label-primary">部门通过</span>';
 
-                 } else {
 
-                     $str = '<span class="label label-success">待复核</span>';
 
-                 }
 
-                 break;
 
-             case 10:
 
-                 if ($step == 3) {
 
-                     $str = '<span class="label label-danger">部门驳回</span>';
 
-                 } else {
 
-                     $str = '<span class="label label-success">待初审</span>';
 
-                 }
 
-                 break;
 
-             case 11:
 
-                 $str = '<span class="label label-success">待核查征信</span>';
 
-                 break;
 
-             case 12:
 
-                 $str = '<span class="label label-danger">待重新审核</span>';
 
-                 break;
 
-             case 13:
 
-                 $str = '<span class="label label-danger">复核不通过</span>';
 
-                 break;
 
-             case 22:
 
-                 $str = '<span class="label label-danger">征信不通过</span>';
 
-                 break;
 
-             case 25:
 
-                 $str = '<span class="label label-danger">公示审核不通过</span>';
 
-                 break;
 
-             case 27:
 
-                 $str = '<span class="label label-danger">公布不通过</span>';
 
-                 break;
 
-             case 21:
 
-                 $str = '<span class="label label-success">待公示</span>';
 
-                 break;
 
-             case 23:
 
-                 $str = '<span class="label label-success">待公示审核</span>';
 
-                 break;
 
-             case 24:
 
-                 $str = '<span class="label label-success">待公布</span>';
 
-                 break;
 
-             case 26:
 
-                 $str = '<span class="label label-success">待发证</span>';
 
-                 break;
 
-             case 28:
 
-                 $str = '<span class="label label-primary">已发证</span>';
 
-                 break;
 
-         }
 
-         return $str;
 
-     }
 
-     public static function findByParentCodeAndCode($parentCode, $code) {
 
-         $parent_info = Dict::where('code', $parentCode)->findOrEmpty();
 
-         if ($parent_info) {
 
-             return Dict::where('pid', $parent_info['id'])->where('code', $code)->findOrEmpty();
 
-         }
 
-         return false;
 
-     }
 
- }
 
 
  |