浏览代码

更新人才直认人才数据导入

sandm 2 年之前
父节点
当前提交
8a5e423570

+ 28 - 10
app/admin/controller/DirectlyIdentify.php

@@ -12,7 +12,8 @@ class DirectlyIdentify extends AdminController{
     }
     }
 
 
     public function list(){
     public function list(){
-
+        $list = Db::table("new_talent_zhiren")->order('createTime','desc')->select();
+        return ["total" => count($list), "rows" => $list];
     }
     }
 
 
     public function enterprise_import(){
     public function enterprise_import(){
@@ -22,20 +23,37 @@ class DirectlyIdentify extends AdminController{
 
 
         if (!isExcelFile($excel->getMime()))
         if (!isExcelFile($excel->getMime()))
             return json(["msg" => "不是正确的Excel文件"]);
             return json(["msg" => "不是正确的Excel文件"]);
-        $mapping = [
-            0 => "type",
-            1 => "talentLevel",
-            2 => "name",
-            3 => "activeYear",
-            4 => "description"
+
+        $savename = \think\facade\Filesystem::disk("public")->putFile("uploadexcel", $excel);
+
+        $zhiren_data = [
+            'task_name' => date("Y-m-d",time()) . "-导入机构数据",
+            'task_file' => $savename,
+            'task_status' => -1,
+            'createTime' => date("Y-m-d H:i:s",time()),
+            'updateTime' => date("Y-m-d H:i:s",time())
         ];
         ];
 
 
-        $path = $excel->getRealPath();
+        $id = Db::table("new_talent_zhiren")->insertGetId($zhiren_data);
+
+        queue("app\job\Import", ["id" => $id,"type" => 1]);
+
+        $data = ["code" => 200, "msg" => "导入成功"];
+        echo sprintf('<script>parent.DirectlyIdentify.callBack(%s);</script>', json_encode($data));
+    }
+
+    public function talent_import(){
+        if (!$this->request->file())
+            return json(["msg" => "没有选择文件"]);
+        $excel = $this->request->file("file");
+
+        if (!isExcelFile($excel->getMime()))
+            return json(["msg" => "不是正确的Excel文件"]);
 
 
         $savename = \think\facade\Filesystem::disk("public")->putFile("uploadexcel", $excel);
         $savename = \think\facade\Filesystem::disk("public")->putFile("uploadexcel", $excel);
 
 
         $zhiren_data = [
         $zhiren_data = [
-            'task_name' => date("Y-m-d",time()) . "-导入机构数据",
+            'task_name' => date("Y-m-d",time()) . "-导入人才数据",
             'task_file' => $savename,
             'task_file' => $savename,
             'task_status' => -1,
             'task_status' => -1,
             'createTime' => date("Y-m-d H:i:s",time()),
             'createTime' => date("Y-m-d H:i:s",time()),
@@ -44,7 +62,7 @@ class DirectlyIdentify extends AdminController{
 
 
         $id = Db::table("new_talent_zhiren")->insertGetId($zhiren_data);
         $id = Db::table("new_talent_zhiren")->insertGetId($zhiren_data);
 
 
-        queue("app\job\Import", ["id" => $id]);
+        queue("app\job\Import", ["id" => $id,"type" => 2]);
 
 
         $data = ["code" => 200, "msg" => "导入成功"];
         $data = ["code" => 200, "msg" => "导入成功"];
         echo sprintf('<script>parent.DirectlyIdentify.callBack(%s);</script>', json_encode($data));
         echo sprintf('<script>parent.DirectlyIdentify.callBack(%s);</script>', json_encode($data));

+ 32 - 2
app/admin/view/directly_identify/index.html

@@ -24,12 +24,12 @@
                             </button>
                             </button>
                             {/if}
                             {/if}
                             {if condition="chkCommission('/admin/directly_identify/talent_template','/directly_identify/talent_template')"}
                             {if condition="chkCommission('/admin/directly_identify/talent_template','/directly_identify/talent_template')"}
-                            <button type="button" class="btn btn-sm btn-primary " onclick="Dict.delete()" id="">
+                            <button type="button" class="btn btn-sm btn-primary " onclick="DirectlyIdentify.download_talent_template()">
                                 <i class="fa fa-plus"></i>&nbsp;人才导入模板下载
                                 <i class="fa fa-plus"></i>&nbsp;人才导入模板下载
                             </button>
                             </button>
                             {/if}
                             {/if}
                             {if condition="chkCommission('/admin/directly_identify/import_talent','/directly_identify/import_talent')"}
                             {if condition="chkCommission('/admin/directly_identify/import_talent','/directly_identify/import_talent')"}
-                            <button type="button" class="btn btn-sm btn-primary " onclick="Dict.delete()" id="">
+                            <button type="button" class="btn btn-sm btn-primary " onclick="DirectlyIdentify.talent_import()">
                                 <i class="fa fa-plus"></i>&nbsp;导入人才数据
                                 <i class="fa fa-plus"></i>&nbsp;导入人才数据
                             </button>
                             </button>
                             {/if}
                             {/if}
@@ -78,5 +78,35 @@
         </div>
         </div>
     </div>
     </div>
 </div>
 </div>
+<div class="modal fade " id="talentImportModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel">
+    <div class="modal-dialog" role="document">
+        <div class="modal-content animated flipInY">
+            <div class="modal-header">
+                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
+                <h4 class="modal-title" >人才数据导入</h4>
+            </div>
+            <div class="modal-body">
+                <form id="talent-import-form" action="/admin/directly_identify/talent_import" method="post" enctype="multipart/form-data">
+                    <input type="file" id="file1" name="file" onchange="$('#fileName1').val($('#file1').val());" class="hidden">
+                    <div class="form-group row">
+                        <div class="col-sm-1"></div>
+                        <div class="col-sm-11">
+                            <div class="input-group">
+                                <input type="text" class="form-control" id="fileName1" name="fileName" placeholder="请选择需要上传的附件" readonly="readonly" >
+                                <span class="input-group-btn">
+                                    <button class="btn btn-secondary" type="button" onclick="$('#file1').click()"><i class="fa fa-search"></i>选择文件</button>
+                                </span>
+                            </div>
+                        </div>
+                    </div>
+                </form>
+            </div>
+            <div class="modal-footer">
+                <button type="button" class="btn btn-primary" onclick="DirectlyIdentify.talentImportSubmit()">提交</button>
+                <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
+            </div>
+        </div>
+    </div>
+</div>
 <script src="/static/modular/directlyIdentify/index.js"></script>
 <script src="/static/modular/directlyIdentify/index.js"></script>
 {/block}
 {/block}

+ 36 - 0
app/common.php

@@ -357,4 +357,40 @@ function generate_password( $length = 8 ) {
         $password .= $chars[ mt_rand(0, strlen($chars) - 1) ];
         $password .= $chars[ mt_rand(0, strlen($chars) - 1) ];
     }
     }
     return $password;
     return $password;
+}
+
+/**
+ * 判断是否为合法的身份证号码
+ * @param $mobile
+ * @return int
+ */
+
+function isCreditNo($vStr)
+{
+    $vCity = array(
+        '11', '12', '13', '14', '15', '21', '22',
+        '23', '31', '32', '33', '34', '35', '36',
+        '37', '41', '42', '43', '44', '45', '46',
+        '50', '51', '52', '53', '54', '61', '62',
+        '63', '64', '65', '71', '81', '82', '91'
+    );
+    if (!preg_match('/^([\d]{17}[xX\d]|[\d]{15})$/', $vStr)) return false;
+    if (!in_array(substr($vStr, 0, 2), $vCity)) return false;
+    $vStr = preg_replace('/[xX]$/i', 'a', $vStr);
+    $vLength = strlen($vStr);
+    if ($vLength == 18) {
+        $vBirthday = substr($vStr, 6, 4) . '-' . substr($vStr, 10, 2) . '-' . substr($vStr, 12, 2);
+    } else {
+        $vBirthday = '19' . substr($vStr, 6, 2) . '-' . substr($vStr, 8, 2) . '-' . substr($vStr, 10, 2);
+    }
+    if (date('Y-m-d', strtotime($vBirthday)) != $vBirthday) return false;
+    if ($vLength == 18) {
+        $vSum = 0;
+        for ($i = 17; $i >= 0; $i--) {
+            $vSubStr = substr($vStr, 17 - $i, 1);
+            $vSum += (pow(2, $i) % 11) * (($vSubStr == 'a') ? 10 : intval($vSubStr, 11));
+        }
+        if ($vSum % 11 != 1) return false;
+    }
+    return true;
 }
 }

+ 242 - 101
app/job/Import.php

@@ -33,125 +33,266 @@ class Import{
      * @return bool
      * @return bool
      */
      */
     public function deal($data): bool {
     public function deal($data): bool {
-        $id = $data['id'];
-        $res = Db::table("new_talent_zhiren")->where('id',$id)->findOrEmpty();
-        if($res){
-            if($res['task_status'] != -1){
-                return false;
-            }
-            try{
-                $spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load("/www/wwwroot/report/public/storage/".$res['task_file']);
-                $sheet = $spreadsheet->getSheet(0);
-                $datas = $sheet->toArray();
-                $datas = array_slice($datas, 1); //去标题
-                $street = Db::table("sys_dict")->where("pid",1655)->column("code","name");
-                $index = 2;
+        if($data['type'] == 1){
+            $id = $data['id'];
+            $res = Db::table("new_talent_zhiren")->where('id',$id)->findOrEmpty();
+            if($res){
+                if($res['task_status'] != -1){
+                    return false;
+                }
+                try{
+                    $spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load("/www/wwwroot/report/public/storage/".$res['task_file']);
+                    $sheet = $spreadsheet->getSheet(0);
+                    $datas = $sheet->toArray();
+                    $datas = array_slice($datas, 1); //去标题
+                    $street = Db::table("sys_dict")->where("pid",1655)->column("code","name");
 
 
-                for ($index = 0;$index < count($datas);$index++){
-                    $row = $datas[$index];
-                    $msg = [];
-                    $item = [];
-                    for ($i = 0; $i < 11; $i++) {
-                        switch ($i){
-                            case 0:
-                                if(in_array($row[$i],['企业用户','民办非企业','事业单位'])){
-                                    if($row[$i] == '事业单位'){
-                                        $item['special'] = 1;
+                    for ($index = 0;$index < count($datas);$index++){
+                        $row = $datas[$index];
+                        $msg = [];
+                        $item = [];
+                        for ($i = 0; $i < 11; $i++) {
+                            switch ($i){
+                                case 0:
+                                    if(in_array($row[$i],['企业用户','民办非企业','事业单位'])){
+                                        if($row[$i] == '事业单位'){
+                                            $item['special'] = 1;
+                                        }else{
+                                            $item['special'] = 0;
+                                        }
                                     }else{
                                     }else{
-                                        $item['special'] = 0;
+                                        array_push($msg,"导入的机构类型不正确");
                                     }
                                     }
-                                }else{
-                                    array_push($msg,"导入的机构类型不正确");
-                                }
-                                break;
-                            case 1:
-                                if(empty($row[$i])){
-                                    array_push($msg,"机构名称不能为空");
-                                }else{
-                                    $info = Db::table("un_enterprise")->where('name',$row[$i])->findOrEmpty();
-                                    if($info){
-                                        array_push($msg,"机构名称已存在,请检查");
+                                    break;
+                                case 1:
+                                    if(empty($row[$i])){
+                                        array_push($msg,"机构名称不能为空");
                                     }else{
                                     }else{
+                                        $info = Db::table("un_enterprise")->where('name',$row[$i])->findOrEmpty();
+                                        if($info){
+                                            array_push($msg,"机构名称已存在,请检查");
+                                        }else{
 
 
-                                        $isMatched = preg_match('/^[\x{4e00}-\x{9fa5}\(\)()\da-zA-Z&]{2,50}$/u', $row[$i], $matches);
+                                            $isMatched = preg_match('/^[\x{4e00}-\x{9fa5}\(\)()\da-zA-Z&]{2,50}$/u', $row[$i], $matches);
+                                            if($isMatched){
+                                                $item['name'] = $row[$i];
+                                            }else{
+                                                array_push($msg,"机构名称只能是中文或数字");
+                                            }
+                                        }
+                                    }
+                                    break;
+                                case 2:
+                                    $info = Db::table("un_enterprise")->where('idCard',$row[$i])->findOrEmpty();
+                                    if($info){
+                                        array_push($msg,"机构代码已存在,请检查");
+                                    }else{
+                                        $isMatched = preg_match('/^([0-9A-HJ-NPQRTUWXY]{2}\d{6}[0-9A-HJ-NPQRTUWXY]{10}|[1-9]\d{14})$/', $row[$i], $matches);
                                         if($isMatched){
                                         if($isMatched){
-                                            $item['name'] = $row[$i];
+                                            $item['idCard'] = $row[$i];
                                         }else{
                                         }else{
-                                            array_push($msg,"机构名称只能是中文或数字");
+                                            array_push($msg,"组织机构代码证不正确");
                                         }
                                         }
                                     }
                                     }
-                                }
-                                break;
-                            case 2:
-                                $info = Db::table("un_enterprise")->where('idCard',$row[$i])->findOrEmpty();
-                                if($info){
-                                    array_push($msg,"机构代码已存在,请检查");
-                                }else{
-                                    $isMatched = preg_match('/^([0-9A-HJ-NPQRTUWXY]{2}\d{6}[0-9A-HJ-NPQRTUWXY]{10}|[1-9]\d{14})$/', $row[$i], $matches);
+                                    break;
+                                case 3:
+                                    $item['agentName'] = $row[$i];
+                                    break;
+                                case 4:
+                                    $isMatched = preg_match('/^1[3456789]\d{9}$/', $row[$i], $matches);
                                     if($isMatched){
                                     if($isMatched){
-                                        $item['idCard'] = $row[$i];
+                                        $item['agentPhone'] = $row[$i];
                                     }else{
                                     }else{
-                                        array_push($msg,"组织机构代码证不正确");
+                                        array_push($msg,"联系电话不正确");
                                     }
                                     }
-                                }
-                                break;
-                            case 3:
-                                $item['agentName'] = $row[$i];
-                                break;
-                            case 4:
-                                $isMatched = preg_match('/^1[3456789]\d{9}$/', $row[$i], $matches);
-                                if($isMatched){
-                                    $item['agentPhone'] = $row[$i];
-                                }else{
-                                    array_push($msg,"联系电话不正确");
-                                }
-                                break;
-                            case 5:
-                                $item['street'] = array_key_exists($row[$i],$street) ? $street[$row[$i]] : '00000';
-                                break;
-                            case 6:
-                                $item['address'] = $row[$i];
-                                break;
-                            case 7:
-                                $item['ephone'] = $row[$i];
-                                break;
-                            case 8:
-                                $item['bankCard'] = $row[$i];
-                                break;
-                            case 9:
-                                $item['bank'] = $row[$i];
-                                break;
-                            case 10:
-                                $item['bankNetwork'] = $row[$i];
-                                break;
+                                    break;
+                                case 5:
+                                    $item['street'] = array_key_exists($row[$i],$street) ? $street[$row[$i]] : '00000';
+                                    break;
+                                case 6:
+                                    $item['address'] = $row[$i];
+                                    break;
+                                case 7:
+                                    $item['ephone'] = $row[$i];
+                                    break;
+                                case 8:
+                                    $item['bankCard'] = $row[$i];
+                                    break;
+                                case 9:
+                                    $item['bank'] = $row[$i];
+                                    break;
+                                case 10:
+                                    $item['bankNetwork'] = $row[$i];
+                                    break;
+                            }
+                        }
+                        if(count($msg) >= 1){
+                            $sheet->setCellValue('L'.($index+2), '导入失败,失败原因:'.implode(";",$msg));
+                        }else{
+                            $item['id'] = getStringId();
+                            $item['type'] = 1;
+                            $item['source'] = 4;
+                            $item['username'] = $item['idCard'];
+                            $password = generate_password(8);
+                            $item['password'] =  hash('md5', $password);
+                            $item['active'] = 1;
+                            $item['checkState'] = 3;
+                            $item['createTime'] = date("Y-m-d H:i:s",time());
+                            Db::table("un_enterprise")->insert($item);
+                            $sheet->setCellValue('L'.($index+2), '导入成功,初始账号为:'.$item['idCard'].',初始密码为:'.$password);
                         }
                         }
                     }
                     }
-                    var_dump($msg,($index+1));
-                    if(count($msg) >= 1){
-                        $sheet->setCellValue('L'.($index+2), '导入失败,失败原因:'.implode(";",$msg));
-                    }else{
-                        $item['id'] = getStringId();
-                        $item['type'] = 1;
-                        $item['source'] = 4;
-                        $item['username'] = $item['idCard'];
-                        $password = generate_password(8);
-                        $item['password'] =  hash('md5', $password);
-                        $item['createTime'] = date("Y-m-d H:i:s",time());
-                        Db::table("un_enterprise")->insert($item);
-                        $sheet->setCellValue('L'.($index+2), '导入成功,初始账号为:'.$item['idCard'].',初始密码为:'.$password);
-                    }
-                }
 
 
-                $writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Xlsx');
-                $writer->save("/www/wwwroot/report/public/storage/".$res['task_file']);
-                Db::table("new_talent_zhiren")->where('id',$id)->update(['task_result' => $res['task_file'],'task_status' => 1,'updateTime' => date("Y-m-d H:i:s",time())]);
-                return true;
-            }catch (\Exception $e){
-                Db::table("new_talent_zhiren")->where('id',$data['id'])->update(['task_result' => $e->getMessage(),'status' => 0,'updateTime' => date("Y-m-d H:i:s",time())]);
+                    $writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Xlsx');
+                    $writer->save("/www/wwwroot/report/public/storage/".$res['task_file']);
+                    Db::table("new_talent_zhiren")->where('id',$id)->update(['task_result' => $res['task_file'],'task_status' => 1,'updateTime' => date("Y-m-d H:i:s",time())]);
+                    return true;
+                }catch (\Exception $e){
+                    Db::table("new_talent_zhiren")->where('id',$data['id'])->update(['task_result' => $e->getMessage(),'status' => 0,'updateTime' => date("Y-m-d H:i:s",time())]);
+                    return false;
+                }
+            }else{
                 return false;
                 return false;
             }
             }
         }else{
         }else{
-            return false;
+            $id = $data['id'];
+            $res = Db::table("new_talent_zhiren")->where('id',$id)->findOrEmpty();
+            if($res){
+                if($res['task_status'] != -1){
+                    return false;
+                }
+                try{
+                    $spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load("/www/wwwroot/report/public/storage/".$res['task_file']);
+                    $sheet = $spreadsheet->getSheet(0);
+                    $datas = $sheet->toArray();
+                    $datas = array_slice($datas, 1); //去标题
+                    $country = Db::table("sys_dict")->where("pid",35)->column("code","name");
+
+                    for ($index = 0;$index < count($datas);$index++){
+                        $row = $datas[$index];
+                        $msg = [];
+                        $item = [];
+                        $enterprise_name = '';
+                        $enterprise_id = '';
+                        $action = 'insert';
+                        for ($i = 0; $i < 9; $i++) {
+                            switch ($i){
+                                case 0:
+                                    if(empty($row[$i])){
+                                        array_push($msg,"机构名称不能为空");
+                                    }else{
+                                        $enterprise_name = $row[$i];
+                                    }
+                                    break;
+                                case 1:
+                                    $info = Db::table("un_enterprise")->where('idCard',$row[$i])->findOrEmpty();
+                                    if(!$info){
+                                        array_push($msg,"机构代码不存在,请检查");
+                                    }else{
+                                        if($info['name'] != $enterprise_name){
+                                            array_push($msg,"机构代码与企业名称无法对应,请检查");
+                                        }else{
+                                            $item['enterprise_id'] = $enterprise_id = $info['id'];
+                                        }
+                                    }
+                                    break;
+                                case 2:
+                                    if(empty($row[$i])){
+                                        array_push($msg,"人才姓名不能为空");
+                                    }else{
+                                        $item['name'] = $row[$i];
+                                    }
+                                    break;
+                                case 3:
+                                    if(in_array($row[$i],['身份证','通行证','护照'])){
+                                        $key = array_search($row[$i],['身份证','通行证','护照']);
+                                        $item['card_type'] = $key +1;
+                                    }else{
+                                        array_push($msg,"人才的证件类型不正确");
+                                    }
+
+                                    break;
+                                case 4:
+                                    if(empty($row[$i])){
+                                        array_push($msg,"证件号码不能为空");
+                                    }else{
+                                        if(!isCreditNo($row[$i]) && $item['card_type'] == 1){
+                                            array_push($msg,"证件号码不正确");
+                                        }
+                                        $talent_info = Db::table("new_talent_info")->where("card_number",$row[$i])->where('enterprise_id',$enterprise_id)->findOrEmpty();
+                                        if($talent_info){
+                                            $action = 'update';
+                                        }
+                                        $item['card_number'] = $row[$i];
+                                    }
+                                    break;
+                                case 5:
+                                    $item['nationality'] = array_key_exists($row[$i],$country) ? $country[$row[$i]] : 'other';
+                                    break;
+                                case 6:
+                                    if(!in_array($row[$i],['第一层次','第二层次','第三层次','第四层次','第五层次'])){
+                                        array_push($msg,"人才层次不正确");
+                                    }else{
+                                        $key = array_search($row[$i],['第一层次','第二层次','第三层次','第四层次','第五层次']);
+                                        $item['talent_arrange'] = $key +1;
+                                    }
+                                    break;
+                                case 7:
+                                    switch ($row[$i]){
+                                        case '福建省人才':
+                                            $item['source'] = 1;
+                                            break;
+                                        case '泉州市人才':
+                                            $item['source'] = 2;
+                                            break;
+                                        default:
+                                            array_push($msg,"人才来源不正确");
+                                            break;
+                                    }
+                                    break;
+                                case 8:
+                                    switch ($item['source']){
+                                        case '1':
+                                            $item['fujian_highcert_exptime'] = $row[$i];
+                                            break;
+                                        case '2':
+                                            $item['quanzhou_highcert_exptime'] = $row[$i];
+                                            break;
+                                        default:
+
+                                            break;
+                                    }
+                                    break;
+                            }
+                        }
+                        var_dump($item);
+                        if(count($msg) >= 1){
+                            $sheet->setCellValue('J'.($index+2), '导入失败,失败原因:'.implode(";",$msg));
+                        }else{
+                            if($action == 'update'){
+                                $item['updateTime'] = date("Y-m-d H:i:s",time());
+                                Db::table("new_talent_info")->where('id',$talent_info['id'])->update($item);
+                                $sheet->setCellValue('J'.($index+2), '更新成功');
+                            }else{
+                                $item['createTime'] = date("Y-m-d H:i:s",time());
+                                Db::table("new_talent_info")->insert($item);
+                                $sheet->setCellValue('J'.($index+2), '导入成功');
+                            }
+                        }
+                    }
+
+                    $writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Xlsx');
+                    $writer->save("/www/wwwroot/report/public/storage/".$res['task_file']);
+                    Db::table("new_talent_zhiren")->where('id',$id)->update(['task_result' => $res['task_file'],'task_status' => 1,'updateTime' => date("Y-m-d H:i:s",time())]);
+                    return true;
+                }catch (\Exception $e){
+                    Db::table("new_talent_zhiren")->where('id',$id)->update(['task_result' => $e->getMessage(),'task_status' => 0,'updateTime' => date("Y-m-d H:i:s",time())]);
+                    return false;
+                }
+            }else{
+                return false;
+            }
         }
         }
+
     }
     }
 }
 }

+ 27 - 16
public/static/modular/directlyIdentify/index.js

@@ -14,31 +14,30 @@ var DirectlyIdentify = {
 DirectlyIdentify.initColumn = function () {
 DirectlyIdentify.initColumn = function () {
     return [
     return [
         {field: 'selectItem', radio: true},
         {field: 'selectItem', radio: true},
-        {title: '人才层次', field: 'talentLevel', visible: true, align: 'center', valign: 'middle'},
-        {title: '人才类别', field: 'type', visible: true, align: 'center', valign: 'middle',
+        {title: 'ID', field: 'id', visible: true, align: 'center', valign: 'middle'},
+        {title: '任务名称', field: 'task_name', visible: true, align: 'center', valign: 'middle'},
+        {title: '创建时间', field: 'createTime', visible: true, align: 'center', valign: 'middle'},
+        {title: '任务结果', field: 'task_status', visible: true, align: 'center', valign: 'middle',
             formatter: function (value, row, index) {
             formatter: function (value, row, index) {
+                if (value == 0) {
+                    return "<button type=\"button\" style=\"line-height: 1.3\" class=\"btn btn-danger btn-xs\">处理失败</button>";
+                }
                 if (value == 1) {
                 if (value == 1) {
-                    return "晋江市现代产业体系人才";
+                    return "<button type=\"button\" style=\"line-height: 1.3\" class=\"btn btn-primary btn-xs\">处理成功</button>";
                 }
                 }
-                if (value == 2) {
-                    return "集成电路优秀人才";
+                if (value == -1) {
+                    return "<button type=\"button\" style=\"line-height: 1.3\" class=\"btn btn-warning btn-xs\">处理中</button>";
                 }
                 }
             }
             }
         },
         },
-        {title: '名称', field: 'name', visible: true, align: 'center', valign: 'middle', 'class': 'uitd_showTip'},
-        {title: '有效期', field: 'activeYear', visible: true, align: 'center', valign: 'middle'},
-        {title: '是否启用', field: 'active', visible: true, align: 'center', valign: 'middle',
-            formatter: function (value, row, index) {
-                if (value == 1) {
-                    return "<button type=\"button\" style=\"line-height: 1.3\" class=\"btn btn-primary btn-xs\">启用</button>";
-                }
-                if (value == 2) {
-                    return "<button type=\"button\" style=\"line-height: 1.3\" class=\"btn btn-warning btn-xs\">停用</button>";
+        {title: '结果文件', field: 'task_result', visible: true, align: 'center', valign: 'middle',
+            formatter: function (value, row, index){
+                if(value != ''){
+                    return "<a href='/storage/" + value+"' style=\"line-height: 1.3\">下载导入结果</a>";
                 }
                 }
             }
             }
         },
         },
-        {title: '审核单位', field: 'companyNames', visible: true, align: 'center', valign: 'middle', 'class': 'uitd_showTip'},
-        {title: '备注', field: 'description', visible: true, align: 'center', valign: 'middle'},
+        {title: '完成时间', field: 'updateTime', visible: true, align: 'center', valign: 'middle'},
     ];
     ];
 };
 };
 
 
@@ -47,6 +46,10 @@ DirectlyIdentify.download_enterprise_template = function () {
     window.location.href = Feng.ctxPath + "/static/downloadFile/directly_identify_enterprise_template.xlsx";
     window.location.href = Feng.ctxPath + "/static/downloadFile/directly_identify_enterprise_template.xlsx";
 }
 }
 
 
+DirectlyIdentify.download_talent_template = function () {
+    window.location.href = Feng.ctxPath + "/static/downloadFile/directly_identify_talent_template.xlsx";
+}
+
 DirectlyIdentify.enterprise_import = function () {
 DirectlyIdentify.enterprise_import = function () {
     $("#enterprise-import-form")[0].reset();
     $("#enterprise-import-form")[0].reset();
     $("#enterpriseImportModal").modal("show");
     $("#enterpriseImportModal").modal("show");
@@ -56,6 +59,14 @@ DirectlyIdentify.enterpriseImportSubmit = function () {
     $("#enterprise-import-form")[0].submit();
     $("#enterprise-import-form")[0].submit();
 }
 }
 
 
+DirectlyIdentify.talent_import = function () {
+    $("#talent-import-form")[0].reset();
+    $("#talentImportModal").modal("show");
+}
+
+DirectlyIdentify.talentImportSubmit = function () {
+    $("#talent-import-form")[0].submit();
+}
 
 
 $(function () {
 $(function () {