Browse Source

部门导出显示审核部门信息(当角色属于人社或者超级管理员时生效)

sugangqiang 2 years ago
parent
commit
010fb0d05a
3 changed files with 46 additions and 1 deletions
  1. 12 1
      app/admin/controller/Talent.php
  2. 13 0
      app/common.php
  3. 21 0
      app/common/api/VerifyApi.php

+ 12 - 1
app/admin/controller/Talent.php

@@ -1756,6 +1756,10 @@ class Talent extends AdminController {
     }
 
     private function commonExport($process) {
+        $companyId = $this->user['companyId'];
+        $company = getCacheById("Company", $companyId);
+        $setting = [];
+
         $params = $this->request->param();
         $fields = $params["export"];
         if (!$fields)
@@ -1767,7 +1771,14 @@ class Talent extends AdminController {
         $names["street"] = "所属镇街";
         $names["checkState"] = "审核状态";
         $names["checkMsg"] = "审核意见";
+        $names["verifyDepts"] = "审核部门";
         $list = VerifyApi::getExportDatas($process, $params);
+        if ($process == 4 && in_array($company["code"], ["super", "rsj"])) {
+            $fields[] = "verifyDepts";
+            $verifyDeptsColumn = getExcelColumnByIndex(count($fields) - 1);
+            $setting["font"][] = [sprintf("%s%d:%s%d", $verifyDeptsColumn, 2, $verifyDeptsColumn, count($list) + 1), 8, "宋体"];
+            $setting["width"][] = [$verifyDeptsColumn, 30];
+        }
         foreach ($fields as $field) {
             $columns[] = $names[$field];
         }
@@ -1780,7 +1791,7 @@ class Talent extends AdminController {
             $datas[] = $data;
         }
         if ($datas) {
-            export($columns, $datas, "人才审核列表导出");
+            export($columns, $datas, "人才审核列表导出", $setting);
             exit();
         }
         echo "<script>parent.layer.alert('没有可以导出的数据');window.history.go(-1);</script>";

+ 13 - 0
app/common.php

@@ -195,6 +195,19 @@ function export($columns, $rows, $filename = "jjrcw", $settings = [], $sheetname
                     ]);
                 }
                 break;
+            case "font":
+                for ($i = 0; $i < count($cfg); $i++) {
+                    $ft = $cfg[$i][1];
+                    $fm = $cfg[$i][2] ?: "宋体";
+                    $fb = $cfg[$i][3] ?: false;
+                    $fc = $cfg[$i][4] ?: "000000";
+                    switch ($cfg[$i][0]) {
+                        default:
+                            $objPHPExcel->getStyle($cfg[$i][0])->getFont()->setName($fm)->setSize($ft)->setBold($fb)->getColor()->setRGB($fc);
+                            break;
+                    }
+                }
+                break;
             case "color":
                 for ($i = 0; $i < count($cfg); $i++) {
                     $objPHPExcel->getStyle($cfg[$i][0])->getFont()->getColor()->setARGB($cfg[$i][1]);

+ 21 - 0
app/common/api/VerifyApi.php

@@ -759,6 +759,7 @@ class VerifyApi {
             $whereRaw = "tl.state is not null";
             $where[] = ["ti.delete", "=", 0];
         }
+        $fields[] = "ti.id";
         $fields[] = "ti.pass_dept_check";
         $fields[] = "tl.state";
         $fields[] = "tl.new_state";
@@ -877,6 +878,26 @@ class VerifyApi {
             } else {
                 $item["checkState"] = TalentState::getStateName($item["state"]);
             }
+            if ($process == 4 && in_array($company_info["code"], ["super", "rsj"])) {
+                $companys = array_filter(explode(",", $item["companyIds"]));
+                $verifyDepts = [];
+                foreach ($companys as $k => $companyId) {
+                    $company = getCacheById("Company", $companyId);
+                    $log = TalentLogApi::getCompanyNewestCheckedLog($item["id"], $companyId);
+                    $verifyDepts[$k] = $company["name"];
+                    if ($log["active"] == 1) {
+                        if ($log["new_state"] == 9) {
+                            $verifyDepts[$k] .= "(审核驳回)";
+                        }
+                        if ($log["new_state"] == 12) {
+                            $verifyDepts[$k] .= "(审核通过)";
+                        }
+                    } else {
+                        $verifyDepts[$k] .= "(待审核)";
+                    }
+                }
+                $item["verifyDepts"] = implode(chr(10), $verifyDepts);
+            }
         }unset($item);
         return $list;
     }