request->param("step"); if ($step) { $cache_kvs = [ ["func" => "\app\common\model\Company::cache", "stepName" => "部门"], ["func" => "\app\common\model\IntegralProject::cache", "stepName" => "积分项目"], ["func" => "\app\common\model\IntegralItem::cache", "stepName" => "积分标准"] ]; $cache = $cache_kvs[$step - 1]; if ($cache) { $time1 = microtime(true); $cache["func"](); $time2 = microtime(true); $runtime = round($time2 - $time1, 2); $step++; echo ''; echo ''; } else { echo ''; } } else { return view(); } } public function add_talent_type_change_in_queue($id) { queue("app\job\Talent", ["type" => 5, "id" => $id]); } public function work_unit_change_recovery() { $id = $this->request["id"]; if ($id) { queue("app\job\Recovery", ["id" => $id, "type" => 1]); echo "【撤销工作变更审核通过】任务已加入处理队列"; exit(); } echo "请传/admin/system/work_unit_change_recovery/id/new_talent_info.id"; } /** * 恢复自动审核失败 */ public function recovery() { $batch = 2022; //得更改批次 $type = 1; //人才类型 1:晋江人才 2:电路人才 $where = []; $where[] = ["ti.apply_year", "=", $batch]; $where[] = ["ti.checkState", "=", \app\common\api\TalentState::FST_VERIFY_FAIL]; $where[] = ["e.type", "=", $type]; $where[] = ["tl.createUser", "=", "系统"]; $where[] = ["tl.state", "=", \app\common\api\TalentState::FST_VERIFY_FAIL]; $where[] = ["ti.delete", "=", 0]; $list = \app\enterprise\model\Talent::alias("ti") ->leftJoin("un_enterprise e", "e.id=ti.enterprise_id") ->leftJoin("(select mainId,last_state,new_state,state,createUser,createTime from new_talent_checklog where md5(concat(createTime,mainId,`type`)) in (select md5(concat(max(createTime),mainId,`type`)) from `new_talent_checklog` where `type`=1 and `step` is null and active=1 and typeFileId is null group by mainId,`type`)) tl", "`tl`.`mainId`=ti.id") ->where($where) ->field("ti.*,e.type as enterpriseType") ->select()->toArray(); if ($list) { foreach ($list as $ti) { queue("app\job\Talent", ["type" => 3, "talentInfo" => $ti]); } } } /** * 导入旧的电路人才到新库 * -1 复核不通过 173 1 待提交 4 7 待初审 22 10 初审驳回 44 20 复审驳回 1 25 初审通过 71 35 复核通过,待核查征信 1281 * isPublic 5:待发证 6:已发证 * active 1:在职 2:离职 * isEffect 1:有效 4:失效 其它:已过期 * 需要增加字段 * cur_quit_time离职时间 * active在职状态 * identifyMonth认证月份 * identifyExpireTime * oldId 旧id */ public function import_old_jcdl() { $where = []; $where[] = ["type", "=", 2]; $where[] = ["name", "=", "杨忠宪"]; $list = Db::table("un_talent_info")->where($where)->select(); $count = session("oldJcjlTalentInfoToNewTable"); $count += count($list); session("oldJcjlTalentInfoToNewTable", $count); foreach ($list as $item) { queue("app\job\Worker", ["type" => 99, "talent_info" => $item]); } echo "加入队列成功"; } /** * 生成人才积分基础分日志 */ public function generate_integral_base_log() { $where = []; $where[] = ["e.type", "=", 2]; $where[] = ["ti.checkState", "=", \app\common\api\TalentState::CERTIFICATED]; $list = Db::table("new_talent_info")->alias("ti")->leftJoin("un_enterprise e", "e.id=ti.enterprise_id")->field("ti.*")->where($where)->order("ti.talent_arrange asc")->select(); $already_in = []; foreach ($list as $item) { $unique_md5 = md5($item["card_type"] . "_" . $item["card_number"]); if (!in_array($unique_md5, $already_in)) { queue("app\job\Talent", ["type" => 4, "id" => $item["id"]]); $already_in[] = $unique_md5; } } echo "加入队列成功"; } /** * 导入电路人才条款 */ public function import_old_ic_conditions() { $where = []; $where[] = ["type", "=", 2]; $oldConditions = Db::table("un_identify_condition")->where($where)->select()->toArray(); foreach ($oldConditions as $oldCondition) { queue("app\job\Worker", ["type" => 98, "id" => $oldCondition["id"]]); } } /** * 设置电路条款与旧版一致启用状态 */ public function set_ic_condition_active() { $where = []; $where[] = ["type", "=", 2]; $upd["active"] = 2; Db::table("new_talent_condition")->where($where)->update($upd); $where = []; $where[] = ["type", "=", 2]; $where[] = ["active", "=", 1]; $oldActiveConditions = Db::table("un_identify_condition")->where($where)->select()->toArray(); $oldActiveConditioinNames = array_column($oldActiveConditions, "name"); $where = []; $where[] = ["type", "=", 2]; $where[] = ["name", "in", $oldActiveConditioinNames]; $upd["active"] = 1; Db::table("new_talent_condition")->where($where)->update($upd); } }