sugangqiang 2 жил өмнө
parent
commit
fef05ea4cb

+ 14 - 20
app/admin/controller/IntegralVerify.php

@@ -22,7 +22,20 @@ use app\common\api\IntegralRecordApi;
  */
 class IntegralVerify extends AdminController {
 
-    public function common_check() {
+    public function fst_verify() {
+        return view();
+    }
+
+    public function re_verify() {
+        return view();
+    }
+
+    public function list() {
+        $res = IntegralRecordApi::getListByProcess($this->request->param());
+        return json($res);
+    }
+
+    public function detail() {
         $request = $this->request;
         $params = $request->param();
         $id = $params["id"];
@@ -59,24 +72,6 @@ class IntegralVerify extends AdminController {
         return json(["code" => 200, sprintf("%d个申请已审核失败", $counts)]);
     }
 
-    /**
-     * 初审
-     * @auth {{/talentInfo/gotoIndex/1}}
-     */
-    public function fst_verify() {
-        $enterprises = EnterpriseApi::getSimpleList();
-        return view("", ["enterprises" => $enterprises]);
-    }
-
-    /**
-     * 复审
-     * @auth {{/talentInfo/gotoIndex/3}}
-     */
-    public function re_verify() {
-        $enterprises = EnterpriseApi::getSimpleList();
-        return view("", ["enterprises" => $enterprises]);
-    }
-
     /**
      * 预备人才库
      * @auth {{/talentInfo/gotoIndex/4}}
@@ -597,7 +592,6 @@ class IntegralVerify extends AdminController {
         
     }
 
-
     /**
      * 初审-提交未保存
      * @param \think\Request $request

+ 290 - 0
app/admin/view/integral_verify/detail.html

@@ -0,0 +1,290 @@
+{extend name="layout/content"}
+{block name="content"}
+<style type="text/css" xmlns="http://www.w3.org/1999/html">
+    .panel-heading{
+        color:#333;
+        background-color:#f5f5f5;
+        border-color:#ddd
+    }
+    .spacing {
+        margin-bottom: 10px;
+        padding-right:4px;
+        padding-left: 4px;
+    }
+    #integralInfoForm label {
+        font-size: xx-small;
+    }
+    .has-feedback .form-control {
+        padding-right: 5px;
+    }
+    .control-label{
+        color: #337ab7;
+    }
+    .rowGroup{
+        padding-bottom: 5px;
+    }
+    .imgs>li{
+        list-style: none;
+        float: left;
+        border: 1px solid #d8d1d1;
+        text-align: center;
+        height: 35px;
+        width:100%;
+        padding:5px 0;
+    }
+    .imgs li>div{float:left;}
+    .info td{background:#f5f5f5 !important;}
+    .table .td-label{
+        display: block;
+        text-align: left;
+        border-bottom: 1px solid #ccc;
+        margin-bottom: 10px;
+    }
+    .word-wrap{
+        width:100%;
+        white-space:normal;
+        word-wrap:break-word;
+        word-break:break-all;
+    }
+    ul{
+        padding: 0;
+    }
+    .control-symbol{
+        display: inline-block;
+        position:absolute;
+        right:0;
+        top:50%;
+        font-style:normal;
+        margin-top: -16px;
+        height:32px;
+        width:32px;
+        line-height:32px;
+        text-align:center;
+        border-left:1px solid #ddd;
+    }
+    .has-feedback label~.form-control-feedback{
+        top: 31px;
+    }
+</style>
+<div class="ibox float-e-margins">
+    <div class="ibox-content">
+        <div class="form-horizontal">
+            <div class="row">
+                <div class="col-sm-12" >
+                    <div class="tab-content">
+                        <div id="tab-1" class="tab-pane active">
+                            <form id="integralInfoForm" action="/enterprise/integral/apply" method="post" enctype="multipart/form-data" target="hiddenIframe">
+                                <input type="hidden" name="id" id="id" value="{$row.id}"/>
+                                <input type="hidden" name="year" id="year" value="{$year}"/>
+                                <input type="hidden" name="enterprise_id" id="enterpriseId" value="{$row.enterprise.id}"/>
+                                <input type="hidden" name="enterprise_type" id="type" value="{$row.enterprise.type}"/>
+                                <input type="hidden" name="checkState" id="checkState" value="{$row.checkState}"/>
+                                <input type="hidden" name="realState" id="realState" value="{$row.real_state}"/>
+                                <input type="hidden" name="files" id="files" value="{$row.modify_files}"/>
+                                <input type="hidden" name="fields" id="fields" value="{$row.modify_fields}"/>
+                                <div class="panel panel-default">
+                                    <div class="panel-heading" onclick="$(this).next().toggle()">基础信息</div>
+                                    <div class="panel-body">
+                                        <table style="width: 100%;border-collapse: collapse;" class="table table-bordered">
+                                            <tr>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class="control-label spacing td-label"><span style="color: red">*</span>姓名</label>
+                                                        <input type="text" class="form-control" id="name" name="name" value="{$row.name}"/>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label"><span style="color: red">*</span>证件类型</label>
+                                                        <select class="form-control" id="card_type" name="card_type" value="{$row.card_type}">
+                                                            <option value="">请选择</option>
+                                                            <option value="1">身份证</option>
+                                                            <option value="2">通行证</option>
+                                                            <option value="3">护照</option>
+                                                        </select>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label"><span style="color: red">*</span>证件号码</span></label>
+                                                        <input class="form-control" id="card_number" name="card_number" value="{$row.card_number}">
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class="control-label spacing td-label"><span style="color: red">*</span>手机号码</label>
+                                                        <input type="text" class="form-control" id="phone" name="phone" maxlength="11" value="{$row.phone}"/>
+                                                    </div>
+                                                </td>
+                                            </tr>
+                                            <tr>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class="control-label spacing td-label"><span style="color: red">*</span>电子邮箱</label>
+                                                        <input type="text" class="form-control" id="email" name="email"  value="{$row.email}"/>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class="control-label spacing td-label"><span style="color: red">*</span>单位标签</label>
+                                                        <div class="form-control" style="border: none">{$row.enterprise.enterpristTagName}</div>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label"><span style="color: red">*</span>单位名称</label>
+                                                        <div class="form-control" style="border: none">{$row.enterprise.name}</div>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label"><span style="color: red">*</span>所属街道</label>
+                                                        <div class="form-control" style="border: none">{$row.enterprise.streetName}</div>
+                                                    </div>
+                                                </td>
+                                            </tr>
+                                        </table>
+                                    </div>
+                                </div>
+                                <div class="panel panel-default">
+                                    <div class="panel-heading" onclick="$(this).next().toggle()">申报项目</div>
+                                    <div class="panel-body" id="itemList">
+                                        {if condition="$row['detail']"}                                        
+                                        {volist name="row.items" id="item"}                                 
+                                        <table style="width:100%;border-collapse: collapse;" class="table table-bordered">
+                                            <tr>
+                                                <td style="width:40px;">
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label">选择</label>
+                                                        <input type="checkbox" name="chk[]" class="form-control"/>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label"><span style="color: red">*</span>项目类别</label>
+                                                        <select class="form-control" name="projectType[]" value="{$item.item_id|getCacheById='IntegralItem',###,'projectId'|getCacheById='IntegralProject',###,'projectType'}" onchange="IntegralInfoDlg.onProjectTypeChange(this);">
+                                                            <option value="">请选择</option>
+                                                            <option value="1">基础分</option>
+                                                            <option value="2">贡献分</option>
+                                                            <option value="3">资历分</option>
+                                                        </select>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label"><span style="color: red">*</span>积分项目</label>
+                                                        <select class="form-control" name="projectId[]" value="{$item.item_id|getCacheById='IntegralItem',###,'projectId'}" onchange="IntegralInfoDlg.onProjectChange(this);">
+                                                            <option value="">请选择</option>
+                                                        </select>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label"><span style="color: red">*</span>积分标准</label>
+                                                        <select class="form-control" name="item_id[]" value="{$item.item_id}" onchange="IntegralInfoDlg.onItemChange(this);">
+                                                            <option value="">请选择</option>
+                                                        </select>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class="control-label spacing td-label"><span style="color: red">*</span>数额<span class="unit"></span></label>
+                                                        <input type="text" class="form-control" name="amount[]" value="{$item.amount}"/>
+                                                    </div>
+                                                </td>
+                                            </tr>
+                                            <tr>
+                                                <td colspan="5">
+                                                    <table class="fileTable"></table>
+                                                </td>
+                                            </tr>
+                                        </table>
+                                        {/volist}
+                                        {else/}                                        
+                                        <table style="width:100%;border-collapse: collapse;" class="table table-bordered">
+                                            <tr>
+                                                <td style="width:40px;">
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label">选择</label>
+                                                        <input type="checkbox" name="chk[]" class="form-control"/>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label"><span style="color: red">*</span>项目类别</label>
+                                                        <select class="form-control" name="projectType[]" value="{$row.projectType}" onchange="IntegralInfoDlg.onProjectTypeChange(this);">
+                                                            <option value="">请选择</option>
+                                                            <option value="1">基础分</option>
+                                                            <option value="2">贡献分</option>
+                                                            <option value="3">资历分</option>
+                                                        </select>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label"><span style="color: red">*</span>积分项目</label>
+                                                        <select class="form-control" name="projectId[]" value="{$row.projectId}" onchange="IntegralInfoDlg.onProjectChange(this);">
+                                                            <option value="">请选择</option>
+                                                        </select>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class=" control-label spacing td-label"><span style="color: red">*</span>积分标准</label>
+                                                        <select class="form-control" name="item_id[]" value="{$row.item_id}" onchange="IntegralInfoDlg.onItemChange(this);">
+                                                            <option value="">请选择</option>
+                                                        </select>
+                                                    </div>
+                                                </td>
+                                                <td>
+                                                    <div class="rowGroup">
+                                                        <label class="control-label spacing td-label"><span style="color: red">*</span>数额<span class="unit"></span></label>
+                                                        <input type="text" class="form-control" name="amount[]" value="{$row.amount}"/>
+                                                    </div>
+                                                </td>
+                                            </tr>
+                                            <tr>
+                                                <td colspan="5">
+                                                    <table class="fileTable"></table>
+                                                </td>
+                                            </tr>
+                                        </table>
+                                        {/if}
+                                        <div id="toolbar" style="text-align:center;">
+                                            <button type="button" class="btn btn-sm btn-info " onclick="IntegralInfoDlg.addItem()" id="">
+                                                <i class="fa fa-plus"></i>&nbsp;增加项目
+                                            </button>
+                                            <button type="button" class="btn btn-sm btn-warning " onclick="IntegralInfoDlg.deleteItem()" id="">
+                                                <i class="fa fa-remove"></i>&nbsp;移除项目
+                                            </button>
+                                        </div>
+                                    </div>
+                                </div>
+                            </form>
+                            <form id="uploadForm" action="/common/api/addTalentFile" method="post" class="form-horizontal" enctype="multipart/form-data" target="hiddenIframe" style="display: none">
+                                <input type='hidden' id="fileId" name="fileId" />
+                                <input type='file' id="upload_file" name="fileUrl" style='display: none'/>
+                                <input type='hidden' id="mainId" name="mainId" />
+                                <input type='hidden' id="fileTypeId" name="fileTypeId" />
+                                <input type='hidden' id="index" name="index" />
+                                <input type='hidden' id="tableIndex" name="tableIndex" />
+                                <input type='hidden' id="trIndex" name="trIndex" />
+                                <input type="hidden" name="backName" value="IntegralInfoDlg.callBack"/>
+                                <input type="type" name="type" value="20"/>
+                            </form>
+                            <div class="panel-heading" onclick="$(this).next().toggle()">日志</div>
+                            <table id="logTable">
+                            </table>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+<iframe id="hiddenIframe" name="hiddenIframe" style="display: none;"></iframe>
+<script type="text/javascript">
+    document.write('<script src="/static/modular/gate/integral/integralInfo.js?v=' + (new Date()).getTime() + '"><\/script>');
+    document.write('<script src="/static/modular/common/config.js?v=' + (new Date()).getTime() + '"><\/script>');
+</script>
+{/block}

+ 154 - 0
app/admin/view/integral_verify/fst_verify.html

@@ -0,0 +1,154 @@
+{extend name="layout/content"}
+{block name="content"}
+<style type="text/css">
+    .layui-layer-btn .layui-layer-btn1 {
+        border-color: #009688;
+        background-color: #009688;
+        color: #fff;
+    }
+</style>
+<div class="row">
+    <div class="col-sm-12">
+        <div class="ibox float-e-margins">
+            <div class="ibox-title">
+                <h5>人才积分申报-初审</h5>
+            </div>
+            <div class="ibox-content">
+                <div class="row row-lg">
+                    <div class="col-sm-12">
+                        <div class="row">
+                            <input type="hidden" id="type" value="{$type}">
+                            <input type="hidden" id="process" value="1">
+                            <div class="col-sm-3">
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">姓名
+                                        </button>
+                                    </div>
+                                    <input type="text" class="form-control" id="name" placeholder="">
+                                </div>
+                            </div>
+                            <div class="col-sm-3">
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">证件号码
+                                        </button>
+                                    </div>
+                                    <input type="text" class="form-control" id="card_number" placeholder="">
+                                </div>
+                            </div>
+                            <div class="col-sm-3">
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">
+                                            性别
+                                        </button>
+                                    </div>
+                                    <select class="form-control" id="sex">
+                                        <option value=""></option>
+                                        <option value="1">男</option>
+                                        <option value="2">女</option>
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="col-sm-3">                                
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">
+                                            民族
+                                        </button>
+                                    </div>
+                                    <select class="form-control" id="nation">
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="col-sm-3">                         
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">
+                                            国籍/地区
+                                        </button>
+                                    </div>
+                                    <select class="form-control" id="nationality">
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="col-sm-3">                        
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">
+                                            人才层次
+                                        </button>
+                                    </div>
+                                    <select class="form-control" id="talent_arrange">
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="col-sm-3">
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">
+                                            审核状态
+                                        </button>
+                                    </div>
+                                    <select class="form-control" id="checkState">
+                                        <option value="">---请选择---</option>
+                                        <option value="1">待审核</option>
+                                        <option value="2">审核驳回</option>
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="col-sm-3">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.search()" id="">
+                                    <i class="fa fa-search"></i>&nbsp;搜索
+                                </button>
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.reset()" id="">
+                                    <i class="fa fa-trash"></i>&nbsp;重置
+                                </button>
+                            </div>
+                        </div>
+                        <div class="hidden-xs" id="IntegralVerifyTableToolbar" role="group">
+                            <if condition="chkCommission('/admin/talent/base_verify','')">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.openCheckIntegralVerify()" id="">
+                                    <i class="fa fa-check"></i>&nbsp;审核
+                                </button>
+                            </if>
+                            <if condition="chkCommission('/admin/talent/base_export','')">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.showExportModal(1)" id="">
+                                    <i class="fa fa-file-excel-o"></i>&nbsp;导出
+                                </button>
+                            </if>
+                            <if condition="chkCommission('/admin/talent/base_download','')">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.download()" id="">
+                                    <i class="fa fa-download"></i>&nbsp;下载
+                                </button>
+                            </if>
+                            <!--<if condition="chkCommission('/admin/talent/modify_reject_fields','')">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.updateFieldsAndFiles()" id="">
+                                    <i class="fa fa-edit"></i>&nbsp;修改驳回字段
+                                </button>
+                            </if>-->
+                            <if condition="chkCommission('/admin/talent/setNotPass','')">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.setNotPass()" id="">
+                                    <i class="fa fa-mobile"></i>&nbsp;审核不通过
+                                </button>
+                            </if>
+                        </div>
+                        <table id="IntegralVerifyTable" class="table-condensed" style="font-size: 10px;table-layout: fixed!important;" data-mobile-responsive="true" data-click-to-select="true">
+                            <thead>
+                                <tr>
+                                    <th data-field="selectItem" data-checkbox="true"></th>
+                                </tr>
+                            </thead>
+                        </table>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+<script type="text/javascript">
+    document.write('<script src="/static/modular/talentIdentify/integralMgr/IntegralVerify.js?v=' + (new Date()).getTime() + '"><\/script>');
+    document.write('<script src="/static/modular/common/config.js?v=' + (new Date()).getTime() + '"><\/script>');
+</script>
+{/block}

+ 154 - 0
app/admin/view/integral_verify/re_verify.html

@@ -0,0 +1,154 @@
+{extend name="layout/content"}
+{block name="content"}
+<style type="text/css">
+    .layui-layer-btn .layui-layer-btn1 {
+        border-color: #009688;
+        background-color: #009688;
+        color: #fff;
+    }
+</style>
+<div class="row">
+    <div class="col-sm-12">
+        <div class="ibox float-e-margins">
+            <div class="ibox-title">
+                <h5>人才积分申报-复审</h5>
+            </div>
+            <div class="ibox-content">
+                <div class="row row-lg">
+                    <div class="col-sm-12">
+                        <div class="row">
+                            <input type="hidden" id="type" value="{$type}">
+                            <input type="hidden" id="process" value="2">
+                            <div class="col-sm-3">
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">姓名
+                                        </button>
+                                    </div>
+                                    <input type="text" class="form-control" id="name" placeholder="">
+                                </div>
+                            </div>
+                            <div class="col-sm-3">
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">证件号码
+                                        </button>
+                                    </div>
+                                    <input type="text" class="form-control" id="card_number" placeholder="">
+                                </div>
+                            </div>
+                            <div class="col-sm-3">
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">
+                                            性别
+                                        </button>
+                                    </div>
+                                    <select class="form-control" id="sex">
+                                        <option value=""></option>
+                                        <option value="1">男</option>
+                                        <option value="2">女</option>
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="col-sm-3">                                
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">
+                                            民族
+                                        </button>
+                                    </div>
+                                    <select class="form-control" id="nation">
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="col-sm-3">                         
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">
+                                            国籍/地区
+                                        </button>
+                                    </div>
+                                    <select class="form-control" id="nationality">
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="col-sm-3">                        
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">
+                                            人才层次
+                                        </button>
+                                    </div>
+                                    <select class="form-control" id="talent_arrange">
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="col-sm-3">
+                                <div class="input-group input-group-sm">
+                                    <div class="input-group-btn">
+                                        <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button">
+                                            审核状态
+                                        </button>
+                                    </div>
+                                    <select class="form-control" id="checkState">
+                                        <option value="">---请选择---</option>
+                                        <option value="1">待审核</option>
+                                        <option value="2">审核驳回</option>
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="col-sm-3">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.search()" id="">
+                                    <i class="fa fa-search"></i>&nbsp;搜索
+                                </button>
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.reset()" id="">
+                                    <i class="fa fa-trash"></i>&nbsp;重置
+                                </button>
+                            </div>
+                        </div>
+                        <div class="hidden-xs" id="IntegralVerifyTableToolbar" role="group">
+                            <if condition="chkCommission('/admin/talent/base_verify','')">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.openCheckIntegralVerify()" id="">
+                                    <i class="fa fa-check"></i>&nbsp;审核
+                                </button>
+                            </if>
+                            <if condition="chkCommission('/admin/talent/base_export','')">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.showExportModal(1)" id="">
+                                    <i class="fa fa-file-excel-o"></i>&nbsp;导出
+                                </button>
+                            </if>
+                            <if condition="chkCommission('/admin/talent/base_download','')">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.download()" id="">
+                                    <i class="fa fa-download"></i>&nbsp;下载
+                                </button>
+                            </if>
+                            <!--<if condition="chkCommission('/admin/talent/modify_reject_fields','')">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.updateFieldsAndFiles()" id="">
+                                    <i class="fa fa-edit"></i>&nbsp;修改驳回字段
+                                </button>
+                            </if>-->
+                            <if condition="chkCommission('/admin/talent/setNotPass','')">
+                                <button type="button" class="btn btn-sm btn-primary " onclick="IntegralVerify.setNotPass()" id="">
+                                    <i class="fa fa-mobile"></i>&nbsp;审核不通过
+                                </button>
+                            </if>
+                        </div>
+                        <table id="IntegralVerifyTable" class="table-condensed" style="font-size: 10px;table-layout: fixed!important;" data-mobile-responsive="true" data-click-to-select="true">
+                            <thead>
+                                <tr>
+                                    <th data-field="selectItem" data-checkbox="true"></th>
+                                </tr>
+                            </thead>
+                        </table>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+<script type="text/javascript">
+    document.write('<script src="/static/modular/talentIdentify/integralMgr/IntegralVerify.js?v=' + (new Date()).getTime() + '"><\/script>');
+    document.write('<script src="/static/modular/common/config.js?v=' + (new Date()).getTime() + '"><\/script>');
+</script>
+{/block}

+ 36 - 0
app/common/api/IntegralRecordApi.php

@@ -50,6 +50,42 @@ class IntegralRecordApi {
         return ["total" => $count, "rows" => $list];
     }
 
+    public static function getListByProcess($params) {
+        $process = $params["process"] ?: 1;
+        $where = [];
+        switch ($process) {
+            case 1://初审阶段
+                $where[] = ["checkState", "in", [IntegralState::SUBMIT]];
+                break;
+            case 2://复审阶段
+                $where[] = ["checkState", "in", [IntegralState::VERIFY_PASS]];
+                break;
+            case 3://复审后征信公示等状态
+                $where[] = ["checkState", "in", [IntegralState::REVERIFY_PASS, IntegralState::ZX_PASS, IntegralState::ZX_FAIL, IntegralState::ANNOUNCED, IntegralState::ANNOUNCED_REVERIFY_PASS, IntegralState::ANNOUNCED_REVERIFY_FAIL, IntegralState::PUBLISH_PASS, IntegralState::PUBLISH_FAIL, IntegralState::SUCCESS]];
+                break;
+        }
+        $order = $params["order"] ?: "desc";
+        $offset = $params["offset"] ?: 0;
+        $limit = $params["limit"] ?: 10;
+        $where[] = ["delete", "=", 0];
+        $count = IntegralRecord::where($where)->count();
+        $list = IntegralRecord::where($where)->field("*,if(updateTime is not null,updateTime,createTime) as orderTime")->limit($offset, $limit)->order("orderTime " . $order)->select();
+        foreach ($list as $key => $item) {
+            $list[$key]["apply_year"] = BatchApi::getOne($item["batch_id"])["batch"];
+            $tmp_items = [];
+            foreach ($item["detail"] as $_item) {
+                $integral_item_info = getCacheById("IntegralItem", $_item["item_id"]);
+                $tmp_items[] = sprintf("%s(%s%s)", $integral_item_info["name"], $_item["amount"], $integral_item_info["unit"]);
+            }
+            $list[$key]["details"] = implode(",", $tmp_items);
+            $list[$key]["type"] = session("user")["type"];
+            $last_log = TalentLogApi::getLastLog($item["id"], \app\common\state\ProjectState::INTEGRAL);
+            $list[$key]["real_state"] = $last_log["state"];
+            $list[$key]["last_state"] = $last_log["last_state"];
+        }
+        return ["total" => $count, "rows" => $list];
+    }
+
     public static function checkIsEditable($id) {
         $info = self::getOne($id);
         if (!$info || !in_array($info["checkState"], [0, IntegralState::SAVE]))

+ 447 - 0
public/static/modular/talentIdentify/integralMgr/IntegralVerify.js

@@ -0,0 +1,447 @@
+/**
+ * 积分申报审核
+ */
+var IntegralVerify = {
+    id: "IntegralVerifyTable", //表格id
+    seItem: null, //选中的条目
+    table: null,
+    layerIndex: -1
+};
+
+/**
+ * 初始化表格的列
+ */
+IntegralVerify.initColumn = function () {
+    var type = $("#type").val();
+    return [
+        {field: 'selectItem', radio: true},
+        {title: '申报年度', field: 'apply_year', visible: true, align: 'center', valign: 'middle', width: '80px'},
+        {title: '姓名', field: 'name', visible: true, align: 'center', valign: 'middle', width: "100px",
+            formatter: function (value, row, index) {
+                if (row.sex == 1) {
+                    return value + '<span style="color:#6495ED">【男】</span>';
+                } else if (row.sex == 2) {
+                    return value + '<span style="color:#FF82AB">【女】</span>';
+                } else {
+                    return value;
+                }
+            }
+        },
+        {title: '人才类别', field: 'type', visible: true, align: 'center', valign: 'middle', width: "100px",
+            formatter: function (value, row, index) {
+                if (value == 1) {
+                    return '晋江市现代产业体系人才';
+                }
+                if (value == 2) {
+                    return '集成电路优秀人才';
+                }
+            }
+        },
+        {title: '证件号码', field: 'card_number', visible: true, align: 'center', valign: 'middle', 'class': 'uitd_showTip', width: "120px"},
+        {title: '申报标准', field: 'details', visible: true, align: 'center', valign: 'middle', 'class': 'uitd_showTip', width: "120px"},
+        {title: '首次提交时间', field: 'first_submit_time', visible: true, align: 'center', valign: 'middle', 'class': 'uitd_showTip', width: "100px"},
+        {title: '最新提交时间', field: 'new_submit_time', visible: true, align: 'center', valign: 'middle', 'class': 'uitd_showTip', width: "100px"},
+        {title: '审核状态', field: 'checkState', visible: true, align: 'center', valign: 'middle', width: "100px",
+            formatter: function (value, row, index) {
+                if (typeof row.deptCheckState != "undefined") {
+                    if (row.deptCheckState == 12) {
+                        return "<span class='label label-primary'>部门已通过</span>"
+                    } else if (row.deptCheckState == 9) {
+                        if (row.lastState == 13) {
+                            return "<span class='label label-success'>待重新审核</span>"
+                        } else {
+                            return "<span class='label label-danger'>部门已驳回</span>"
+                        }
+                    } else {
+                        return "<span class='label label-success'>待审核</span>"
+                    }
+                } else {
+                    if (value == 2) {
+                        if (row.lastState == 4) {
+                            return "<span class='label label-success'>待审核(重新提交)</span>"
+                        }
+                        if (row.realState == 6) {
+                            return "<span class='label label-danger'>复审驳回</span>"
+                        }
+                        return "<span class='label label-success'>待审核</span>"
+                    }
+                    if (value == 3) {
+                        return "<span class='label label-success'>待复审</span>"
+                    }
+                    if (value == 5) {
+                        return "<span class='label label-success'>复审通过</span>"
+                    }
+                    if (value == 10) {
+                        return "<span class='label label-success'>待审核</span>"
+                    }
+                    if (value == 8) {
+                        if (row.realState == 11) {
+                            return "<span class='label label-danger'>初审驳回</span>"
+                        }
+                    }
+                    if (value == 9) {
+                        if (row.realState == 13) {
+                            return "<span class='label label-danger'>部门驳回</span>"
+                        } else if (row.realState == 15) {
+                            return "<span class='label label-danger'>复审驳回</span>"
+                        } else {
+                            if (row.lastState == 11) {
+                                return "<span class='label label-success'>待审核(重新提交)</span>"
+                            }
+                            return "<span class='label label-success'>待审核</span>"
+                        }
+                    }
+                    if (value == 16 || value == -1 || value == -2 || value == 7) {
+                        return "<span class='label label-danger'>审核不通过</span>"
+                    }
+                    if (value == 4) {
+                        if (row.highProcess != null && row.highProcess != '' && row.highProcess >= 1) {
+                            return "<span class='label label-success'>上级驳回</span>"
+                        } else {
+                            return "<span class='label label-success'>待审核</span>"
+                        }
+                    }
+                    if (value == 11) {
+                        if (row.highProcess != null && row.highProcess != '' && row.highProcess >= 3) {
+                            return "<span class='label label-success'>上级驳回</span>"
+                        } else {
+                            return "<span class='label label-success'>待审核</span>"
+                        }
+                    }
+                    if (value == 12) {
+                        return "<span class='label label-success'>待复审</span>"
+                    }
+                    if (value == 13) {
+                        if (row.highProcess != null && row.highProcess != '' && row.highProcess >= 4) {
+                            return "<span class='label label-danger'>上级驳回</span>"
+                        } else {
+                            return "<span class='label label-success'>待审核</span>"
+                        }
+                    }
+                    if (value == 14) {
+                        return "<span class='label label-primary'>已通过</span>"
+                    }
+                    if (value == 15) {
+                        if (row.highProcess != null && row.highProcess != '' && row.highProcess >= 5) {
+                            return "<span class='label label-success'>上级驳回</span>"
+                        } else {
+                            return "<span class='label label-success'>待审核</span>"
+                        }
+                    }
+                }
+            }
+        },
+        {title: '操作', field: 'id', visible: true, align: 'center', valign: 'middle', width: "80px",
+            formatter: function (value, row, index) {
+                return "<span class='label label-success' onclick=\"IntegralVerify.showLog('" + value + "')\" >" +
+                        "<i class=\"fa fa-book\"></i>日志" +
+                        "</span>";
+            }
+        }
+    ];
+};
+/**
+ * 检查是否选中
+ */
+IntegralVerify.check = function () {
+    var selected = $('#' + this.id).bootstrapTable('getSelections');
+    if (selected.length != 1) {
+        Feng.info("请先选中表格中的某一记录!");
+        return false;
+    } else {
+        IntegralVerify.seItem = selected[0];
+        return true;
+    }
+};
+
+
+IntegralVerify.openCheckIntegralVerify = function () {
+    var title = $("#title").val();
+    if (this.check()) {
+        var index = layer.open({
+            type: 2,
+            title: '积分申报' + " - " + title,
+            area: ['800px', '420px'], //宽高
+            fix: false, //不固定
+            maxmin: true,
+            content: '/admin/integralVerify/detail/id/' + IntegralVerify.seItem.id + '/1',
+            btn: ['<i class="fa fa-eye"></i>&nbsp;&nbsp;保存未提交', '<i class="fa fa-save"></i>&nbsp;&nbsp;提交审核', '<i class="fa fa-eraser"></i>&nbsp;&nbsp;关闭'],
+            btnAlign: 'c',
+            btn1: function (index, layero) {
+                var obj = layero.find("iframe")[0].contentWindow;
+                obj.IntegralVerifyInfoDlg.showFirstCheckModal();
+            }, btn2: function (index, layero) {
+                var obj = layero.find("iframe")[0].contentWindow;
+                obj.IntegralVerifyInfoDlg.submitCheck();
+                return false;
+            }
+        });
+        layer.full(index);
+        IntegralVerify.layerIndex = index;
+    }
+}
+
+/**
+ * 显示审核日志
+ */
+IntegralVerify.showLog = function (id) {
+    layer.open({
+        type: 1,
+        title: "日志",
+        fixed: false,
+        content: '<table id="' + id + '"></table>',
+        area: ['80%', '80%'],
+        maxmin: true,
+        success: function (layero, index) {
+            Feng.getCheckLog(id, {"type": CONFIG.project_integral_apply, "mainId": id, "typeFileId": "", "active": 1})
+        }
+    });
+}
+
+/**
+ * 修改驳回的字段及附件
+ */
+IntegralVerify.updateFieldsAndFiles = function () {
+    if (this.check()) {
+        var ajax = new $ax("/admin/integralVerify/findFieldsAndFiles?id=" + IntegralVerify.seItem.id, function (data) {
+            var obj = data.obj.obj;
+            if (data.code == 200) {
+                layer.open({
+                    type: 1,
+                    id: "neewFieldFormModel",
+                    title: '修改',
+                    area: ['800px', '450px'], //宽高
+                    fix: false, //不固定
+                    shade: 0,
+                    maxmin: true,
+                    content: IntegralVerify.creatFieldCheckModal(),
+                    btn: ['<i class="fa fa-save"></i>&nbsp;&nbsp;提交', '<i class="fa fa-eraser"></i>&nbsp;&nbsp;关闭'],
+                    btnAlign: 'c',
+                    zIndex: layer.zIndex,
+                    success: function (layero, index) {
+                        var fileList = data.obj.fileList;
+                        var html = '';
+                        for (var key in fileList) {
+                            html = html + '<ul><li style="width: 100%"><input type="checkbox" value="' + fileList[key].id + '"><span>' + fileList[key].name + '</span></li></ul>';
+                        }
+                        $("#field_file").empty().append(html);
+                        if (obj.fields != null && obj.fields != '') {
+                            $("#field_info input").each(function () {
+                                var arr = obj.fields.split(",");
+                                for (var key in arr) {
+                                    if ($(this).val() == arr[key]) {
+                                        this.checked = true;
+                                    }
+                                }
+                            });
+                        }
+                        if (obj.files != null && obj.files != '') {
+                            $("#field_file input").each(function () {
+                                if (obj.files.indexOf($(this).val()) != -1) {
+                                    this.checked = true;
+                                }
+                            });
+                        }
+                    },
+                    yes: function (index, layero) {
+                        IntegralVerify.submitFieldsAndFiles(index, obj.id);
+                    }
+                });
+            } else {
+                Feng.error(data.msg);
+            }
+        }, function (data) {
+            Feng.error("查询失败!" + data.responseJSON.message + "!");
+        });
+        ajax.start();
+    }
+}
+
+/**
+ * 修改提交
+ * @param index
+ * @param id
+ */
+IntegralVerify.submitFieldsAndFiles = function (index, id) {
+    var fields = '';
+    var files = '';
+    $("#field_info li input").each(function (index) {
+        if ($(this).is(":checked")) {
+            fields = fields + $(this).val() + ",";
+        }
+    });
+    $("#field_file li input").each(function (index) {
+        if ($(this).is(":checked")) {
+            files = files + $(this).val() + ",";
+        }
+    });
+    if (fields == '' && files == '') {
+        Feng.info("请选择可修改的字段或附件!");
+        return;
+    }
+    var ajax = new $ax("/admin/integralVerify/updateFieldsAndFiles", function (data) {
+        if (data.code == 200) {
+            layer.close(index);
+            Feng.success(data.msg);
+        } else {
+            Feng.error(data.msg);
+        }
+    }, function (data) {
+        Feng.error("修改失败!" + data.responseJSON.message + "!");
+    });
+    ajax.setData({"id": id, "fields": fields, "files": files})
+    ajax.start();
+}
+
+/**
+ * 审核不通过
+ */
+IntegralVerify.setNotPass = function () {
+    var selecteds = $('#' + this.id).bootstrapTable('getSelections');
+    if (selecteds.length == 0) {
+        Feng.info("请选择需要设置审核不通过的行");
+        return;
+    }
+    var ids = "";
+    for (var key in selecteds) {
+        ids = ids + selecteds[key].id + ",";
+    }
+    ids = ids.substring(0, ids.length - 1);
+    layer.open({
+        type: 1,
+        id: "notPassModal",
+        title: '修改',
+        area: ['800px', '450px'], //宽高
+        fix: false, //不固定
+        shade: 0,
+        maxmin: true,
+        content: '<form id="checkNotPass">\n' +
+                '                    <div class="form-group" style="margin: 10px;">\n' +
+                '                        <label for="checkMsgNotPass" class="control-label" >审核不通过原因</label>\n' +
+                '                        <textarea class="form-control" id="checkMsgNotPass" placeholder="此功能适用于未在申报提交截止时间内提交的数据"  rows="6"></textarea>\n' +
+                '                    </div>\n' +
+                '                </form>',
+
+        btn: ['<i class="fa fa-save"></i>&nbsp;&nbsp;提交', '<i class="fa fa-eraser"></i>&nbsp;&nbsp;关闭'],
+        btnAlign: 'c',
+        zIndex: layer.zIndex,
+        yes: function (index, layero) {
+            var checkMsg = $("#checkMsgNotPass").val();
+            if (Feng.isEmptyStr(checkMsg)) {
+                Feng.info("请填写审核不通过原因");
+                return;
+            }
+            var operation = function () {
+                var ajax = new $ax("/admin/integralVerify/cancel_verify", function (data) {
+                    if (data.code == 200) {
+                        Feng.success(data.msg);
+                        IntegralVerify.table.refresh();
+                        layer.close(index);
+                    } else {
+                        Feng.error(data.msg);
+                    }
+                }, function (data) {
+                    Feng.error("设置审核不通过失败!" + data.responseJSON.message + "!");
+                });
+                ajax.set("ids", ids);
+                ajax.set("msg", checkMsg);
+                ajax.start();
+            }
+            Feng.confirm("一旦提交无法修改,确定设置所选数据为审核不通过?", operation);
+        }
+    });
+
+}
+
+
+IntegralVerify.creatFieldCheckModal = function () {
+    return '<form id="firstCheckForm">\n' +
+            '                    <div class="form-group" style="margin: 10px;">\n' +
+            '                        <div >\n' +
+            '                            <label for="checkMsg" class="control-label">可修改字段</label>\n' +
+            '                            <div id="field_info">\n' +
+            '                                <ul>\n' +
+            '                                </ul>\n' +
+            '                            </div>\n' +
+            '                            <label for="checkMsg" class="control-label">可修改附件</label>\n' +
+            '                            <div id="field_file">\n' +
+            '                            </div>\n' +
+            '                            <div class="form-group" style="text-align: center">\n' +
+            '                                <button type="button" class="btn btn-primary" onclick="IntegralVerify.checkAll()">全选</button>\n' +
+            '                                <button type="button" class="btn btn-success" onclick="IntegralVerify.unCheckAll()">反选</button>\n' +
+            '                            </div>\n' +
+            '                        </div>\n' +
+            '                    </div>\n' +
+            '                </form>';
+}
+
+IntegralVerify.fieldCheckd = function (context) {
+    if ($(context).get(0).checked) {
+        $(context).parent().next().children()[0].checked = true;
+        $(context).parent().next().children().eq(0).trigger("change");
+    }
+}
+
+IntegralVerify.sourceCheckd = function (context) {
+    if ($(context).get(0).checked) {
+        $("#talentArrangeCheckBox").attr("checked", true);
+        $("#talentArrangeCheckBox").trigger("change");
+    }
+}
+
+IntegralVerify.getPhones = function () {
+    var process = $("#process").val();
+    var ajax = new $ax("/admin/integralVerify/getPhones/process/" + process, function (data) {
+        if (data.code == 200) {
+            layer.open({
+                type: 1,
+                title: "手机号码",
+                area: ['830px', '300px'], //宽高
+                fix: false, //不固定
+                maxmin: true,
+                content: "<span style='word-break:break-all'>" + data.obj + "</span>"
+            });
+        } else {
+            Feng.info(data.msg);
+        }
+    }, function (data) {
+        Feng.error("操作失败!");
+    });
+    ajax.setData(IntegralVerify.formParams());
+    ajax.start();
+}
+
+
+IntegralVerify.getEnterprisePhones = function () {
+    var process = $("#process").val();
+    var ajax = new $ax("/admin/integralVerify/getEnterprisePhones/process/" + process, function (data) {
+        if (data.code == 200) {
+            layer.open({
+                type: 1,
+                title: "手机号码",
+                area: ['830px', '300px'], //宽高
+                fix: false, //不固定
+                maxmin: true,
+                content: "<span style='word-break:break-all'>" + data.obj + "</span>"
+            });
+        } else {
+            Feng.info(data.msg);
+        }
+    }, function (data) {
+        Feng.error("操作失败!");
+    });
+    ajax.setData(IntegralVerify.formParams());
+    ajax.start();
+}
+
+$(function () {
+    var defaultColunms = IntegralVerify.initColumn();
+    var process = $("#process").val();
+    var table = new BSTable(IntegralVerify.id, "/admin/integralVerify/list/process/" + process, defaultColunms);
+    table.setPaginationType("server");
+    table.setSingleSelect(false);
+    table.setOnDblClickRow(function () {
+        IntegralVerify.openCheckIntegralVerify();
+    });
+    IntegralVerify.table = table.init();
+});

+ 644 - 0
public/static/modular/talentIdentify/integralMgr/IntegralVerify_info.js

@@ -0,0 +1,644 @@
+/**
+ * 初始化人才认定申报详情对话框
+ */
+var locked = false;
+var IntegralVerifyInfoDlg = {
+    integralVerifyInfoData: {},
+
+};
+
+/**
+ * 初始化表格的列
+ */
+IntegralVerifyInfoDlg.initFileTypeColumn = function () {
+    return [
+        {field: 'selectItem', checkbox: false, visible: false},
+        {title: '名称', field: 'name', visible: true, align: 'left', valign: 'middle', width: "82%", 'class': 'uitd_showTip',
+            formatter: function (value, row, index) {
+                let str = '<div class="word-wrap">';
+                if (row.must == 1) {
+                    str = str + '<i class="fa fa-paste"></i><span style="font-weight:bold;color:red;font-size:14px;font-family:宋体"> * </span> ' + value;
+                }
+                if (row.must == 2) {
+                    str = str + '<i class="fa fa-paste"></i>' + value;
+                }
+                str = str + '<br /><span id="desc_' + row.rel + '">' + row.description + '</span></div>'
+                return str;
+            }
+        },
+        {title: '模板', field: 'templateUrl', visible: true, align: 'center', valign: 'middle', width: "8%",
+            formatter: function (value, row, index) {
+                if (value == null || value == '' || value == 'null') {
+                    return '';
+                }
+                return "<button type='button' onclick=\"IntegralVerifyInfoDlg.downloadFile('" + row.id + "',3)\" style='margin-right: 10px' class=\"btn btn-xs btn-primary\">" +
+                        "<i class=\"fa fa-download\"></i>下载" +
+                        "</button>";
+            }
+        },
+        {title: '操作', field: 'id', visible: true, align: 'center', valign: 'middle', width: "10%",
+            formatter: function (value, row, index) {
+                return "";
+            }
+        }
+    ]
+};
+
+IntegralVerifyInfoDlg.initFileTable = function () {
+    var ajax = new $ax("/common/api/findCommonFileType", function (data) {
+        if (data == null || data.length == 0) {
+            return;
+        }
+        var datas = new Array();
+        for (var i = 0; i < $(".fileTable").length; i++) {
+            datas.push([]);//创建空的多维数组,等下用来存每个附件表的各自的列
+        }
+        var enterpriseTag = $("#enterprise_tag").val();
+        for (var k in data["rows"]) {
+            if (data["rows"][k].enterprise_tag != "" && data["rows"][k].enterprise_tag != null && data["rows"][k].enterprise_tag.indexOf(enterpriseTag) == -1) {
+                continue;
+            }
+            var rel = data["rows"][k].rel;
+            if ($("#" + rel).length > 0) {
+                if ($("#" + rel).parents(".table").length > 0) {
+                    var tableIndex = $("#" + rel).parents(".table").find("table.fileTable").index(".fileTable");
+                } else {
+                    var tableIndex = $("#" + rel).parents(".row").next(".row").find("table.fileTable").index(".fileTable");
+                }
+                data["rows"][k].tableIndex = tableIndex;
+                data["rows"][k].trIndex = datas[tableIndex].length;
+                datas[tableIndex].push(data["rows"][k]);
+                if (data["rows"][k].option) {
+                    //指定了选项
+                    if (rel == "birthday") {
+                        let birthday = parseInt($("#" + rel).val().substring(0, 4));
+                        let currentYear = parseInt(new Date().getFullYear());
+                        let age = currentYear - (isNaN(birthday) ? 0 : birthday);
+                        if (isNaN(birthday) || (!isNaN(birthday) && age < data["rows"][k].option))
+                            data["rows"][k].hidden = true;
+                    } else {
+                        let selectVal = $("#" + rel).data("value").toString();
+                        let options = data["rows"][k].option.split(",");
+                        if (options.indexOf(selectVal) == -1) {
+                            data["rows"][k].hidden = true;
+                        }
+                    }
+                }
+            } else {
+                if (data["rows"][k].isConditionFile) {
+                    var isMatchZhiren = $("input[name=isMatchZhiren]").length > 0 ? parseInt($("input[name=isMatchZhiren]:checked").val()) : false;
+                    var isImport = parseInt($("#import").val());
+                    if (isImport == 1 && isMatchZhiren)
+                        continue;
+                    var tableIndex = 0;
+                    if ($("#talent_condition").parents(".table").length > 0) {
+                        tableIndex = $("#talent_condition").parents(".table").find("table.fileTable").index(".fileTable");
+                    } else {
+                        tableIndex = $("#talent_condition").parents(".row").next(".row").find("table.fileTable").index(".fileTable");
+                    }
+                    data["rows"][k].tableIndex = tableIndex;
+                    data["rows"][k].trIndex = datas[tableIndex].length;
+                    datas[tableIndex].push(data["rows"][k]);//放入人才条件后面的附件表
+                } else {
+                    var tableIndex = $(".fileTable").length - 1;
+                    data["rows"][k].tableIndex = tableIndex;
+                    data["rows"][k].trIndex = datas[tableIndex].length;
+                    datas[$(".fileTable").length - 1].push(data["rows"][k]);//没有归属,放入最后一个附件表
+                }
+            }
+        }
+        for (var i = 0; i < $(".fileTable").length; i++) {
+            var that = $(".fileTable").eq(i);
+            that.bootstrapTable({
+                columns: IntegralVerifyInfoDlg.initFileTypeColumn(),
+                data: datas[i],
+                showHeader: false,
+                rowStyle: function (row, index) {
+                    return {classes: ""};
+                },
+                onPostBody: function (data) {
+                    for (var k in data) {
+                        var files = data[k].files;
+                        var html = '<ul class="imgs"><li style="width: 60%;font-weight: bold;padding-top: 5px;">附件原名</li><li style="width: 15%;font-weight: bold;padding-top: 5px;">预览</li><li style="width: 25%;font-weight: bold;padding-top: 5px;">操作</li>';
+                        for (var key in files) {
+                            var sn = files[key].url.lastIndexOf(".");
+                            var suffix = files[key].ext;//files[key].url.substring(sn + 1, files[key].url.length);
+                            var imgStr = "";
+                            if (suffix == "pdf" || suffix == "PDF") {
+                                imgStr = "<button type='button'  onclick=\"Feng.showPdf('" + files[key].url + "','" + files[key].id + "','" + files[key].orignName + "')\" class=\"btn btn-xs btn-danger\"><i class=\"fa fa-file-pdf-o\" aria-hidden=\"true\"></i></button>";
+                            } else if (suffix == "xlsx" || suffix == "XLSX" || suffix == 'xls' || suffix == 'XLS') {
+                                imgStr = "<button type='button'  onclick=\"Feng.showExcel('" + files[key].url + "','" + files[key].id + "','" + files[key].orignName + "')\" class=\"btn btn-xs btn-danger\"><i class=\"fa fa-file-excel-o\" aria-hidden=\"true\"></i></button>";
+                            } else {
+                                imgStr = '<img class="imgUrl" onclick="Feng.showImg(this)" src="' + files[key].url + '" style="width:25px;height:25px;">';
+                            }
+
+                            html += '<li data-id="' + files[key].id + '">\n\
+                                    <div><input type="hidden" name="uploadFiles[]" value="' + files[key].id + '"></div>\n' +
+                                    '<div style="width: 60%;">' + files[key].orignName + '</div>\n' +
+                                    '<div style="width: 15%;">' + imgStr + '</div>\n' +
+                                    '<div style="width: 25%;"></div>\n\
+                                    </li>';
+                        }
+                        html = html + '</ul>';
+                        that.find("tr[data-index='" + k + "']").attr("data-rel", data[k]["rel"]);
+                        that.find("tr[data-index='" + k + "']").attr("data-option", data[k]["option"]);
+                        that.find("tr[data-index='" + k + "']").after('<tr class="detail-view"><td colspan="5">' + html + '</td></tr>');
+                        if (typeof data[k].hidden != "undefined") {
+                            that.find("tr[data-index='" + k + "']").css("display", "none");
+                            that.find("tr[data-index='" + k + "']").next("tr.detail-view").css("display", "none");
+                        }
+                    }
+                    $("td.uitd_showTip").bind("mouseover", function () {
+                        var htm = $(this).html();
+                        $(this).webuiPopover({title: '详情', content: htm, trigger: 'hover'}).webuiPopover('show');
+                    });
+                },
+            });
+        }
+    }, function (data) {
+        Feng.error("查询失败!" + data.responseJSON.message + "!");
+    });
+    var queryData = {};
+    queryData["mainId"] = $("#id").val();
+    queryData['project'] = CONFIG.project_rcrd;
+    queryData['type'] = $("#type").val();
+    queryData["source"] = $("#source").val();
+    queryData["talent_condition"] = $("#talent_condition option:selected").val();
+    queryData['checkState'] = $("#checkState").val();
+    ajax.set(queryData);
+    ajax.start();
+}
+
+/**
+ * 关闭此对话框
+ */
+IntegralVerifyInfoDlg.close = function () {
+    parent.layer.close(window.parent.TalentInfo.layerIndex);
+}
+
+IntegralVerifyInfoDlg.callback = function (data) {
+    Feng.info(data.msg);
+}
+
+/**
+ * 下载附件
+ * @param value
+ */
+IntegralVerifyInfoDlg.downloadFile = function (id, type) {
+    window.location.href = "/common/api/downloadFile?id=" + id + "&type=" + type;
+}
+
+IntegralVerifyInfoDlg.expandRows = function () {
+    $(".fileTable").bootstrapTable('expandAllRows')
+}
+
+/**
+ * 显示审核模态框
+ */
+IntegralVerifyInfoDlg.showCommonCheckModal = function () {
+    var ajax = new $ax("/admin/integralVerify/validateIsCheck", function (data) {
+        if (data.code == 200) {
+            layer.open({
+                type: 1,
+                id: "neewFieldFormModel",
+                title: '审核',
+                area: ['800px', '350px'], //宽高
+                fix: false, //不固定
+                shade: 0,
+                maxmin: true,
+                content: IntegralVerifyInfoDlg.createNoFieldCheckModal(),
+                btn: ['<i class="fa fa-save"></i>&nbsp;&nbsp;提交', '<i class="fa fa-eraser"></i>&nbsp;&nbsp;关闭'],
+                btnAlign: 'c',
+                zIndex: layer.zIndex,
+                success: function (layero, index) {
+                    layer.setTop(layero);
+                    $("#commonCheckForm")[0].reset();
+                    var process = $("#process").val();
+                    if (process == 3) {
+                        var html = '<option value=""></option>\n' +
+                                '                            <option value="3">审核通过</option>\n' +
+                                '                            <option value="2">审核驳回</option>';
+                        $("#checkStateModal").empty().append(html);
+                    }
+                    $("#checkStateModal").val(data.obj.checkState);
+                    $("#checkMsg").val(data.obj.checkMsg);
+                },
+                yes: function (index, layero) {
+                    IntegralVerifyInfoDlg.commonCheck(index);
+                }
+            });
+        } else {
+            Feng.error(data.msg);
+        }
+    }, function (data) {
+        Feng.error("校验失败!" + data.responseJSON.message + "!");
+    });
+    ajax.setData({"id": $("#id").val(), "process": $("#process").val(), "companyId": $("#companyId").val()})
+    ajax.start();
+}
+
+/**
+ * 显示初审审核模态框
+ */
+IntegralVerifyInfoDlg.showFirstCheckModal = function () {
+    var ajax = new $ax("/admin/integralVerify/validateIsCheck", function (data) {
+        if (data.code == 200) {
+            layer.open({
+                type: 1,
+                id: "neewFieldFormModel",
+                title: '审核',
+                area: ['800px', '450px'], //宽高
+                fix: false, //不固定
+                shade: 0,
+                maxmin: true,
+                content: IntegralVerifyInfoDlg.creatFieldCheckModal(),
+                btn: ['<i class="fa fa-save"></i>&nbsp;&nbsp;提交', '<i class="fa fa-eraser"></i>&nbsp;&nbsp;关闭'],
+                btnAlign: 'c',
+                zIndex: layer.zIndex,
+                success: function (layero, index) {
+                    layer.setTop(layero);
+                    var obj = data.obj.talentInfo;
+                    var companyList = data.obj.companys;
+                    var fileList = data.obj.fileList;
+                    var process = data.obj.process;
+                    if (typeof data.obj.fieldList != "undefined" && data.obj.fieldList.length > 0) {
+                        var fieldList = data.obj.fieldList;
+                        var html1 = '';
+                        for (var key in fieldList) {
+                            html1 = html1 + '<li style="float:left;margin:0 10px 10px 0;"><input type="checkbox" value="' + fieldList[key]["key"] + '"><span>' + fieldList[key]["value"] + '</span></li>';
+                        }
+                    }
+                    var html2 = '';
+                    for (var key in fileList) {
+                        html2 = html2 + '<ul><li style="width: 100%"><input type="checkbox" value="' + fileList[key].id + '"><span>' + fileList[key].name + '</span></li></ul>';
+                    }
+                    var html3 = '';
+                    for (var key in companyList) {
+                        html3 += '<li style="width: 100%"><input type="checkbox" value="' + companyList[key].id + '"><span>' + companyList[key].name + '</span></li>';
+                    }
+                    $("#field_info ul").css("overflow", "hidden").empty().append(html1);
+                    $("#field_file").css("overflow", "hidden").empty().append(html2);
+                    $("#company_list ul").css("overflow", "hidden").empty().append(html3);
+                    var optionHtml = "";
+                    if (process <= 4 && process != 2) {
+                        optionHtml = '<option value="">请选择</option>\n' +
+                                (obj.highProcess == 4 && process == 3 ? '<option value="5">审核通过(需要再次部门并审)</option>\n' : '<option value="3">审核通过</option>') +
+                                (obj.highProcess == 4 && process == 3 ? '<option value="4">审核通过(跳过部门并审)</option>\n' : "") +
+                                '                            <option value="2">审核驳回</option>\n';
+                    }
+                    if (process == 5 || process == 2) {
+                        optionHtml = '<option value="">请选择</option>\n' +
+                                '                            <option value="3">审核通过</option>\n' +
+                                '                            <option value="2">审核驳回</option>\n' +
+                                '                            <option value="-1">审核不通过</option>';
+                    }
+                    $("#checkStateFirstModal").empty().append(optionHtml);
+                    $("#firstCheckForm")[0].reset();
+                    //$("#checkStateFirstModal").val(obj.checkState);
+                    $("#checkStateFirstModal").trigger("change");
+                    $("#checkMsgFirst").val(obj.checkMsg);
+                    if (obj.fields != null && obj.fields != '') {
+                        $("#field_info input").each(function () {
+                            for (var key in obj.fields) {
+                                if ($(this).val() == obj.fields[key]) {
+                                    this.checked = true;
+                                }
+                            }
+                        });
+                    }
+                    if (obj.files != null && obj.files != '') {
+                        $("#field_file input").each(function () {
+                            for (var key in obj.files) {
+                                if ($(this).val() == obj.files[key]) {
+                                    this.checked = true;
+                                }
+                            }
+                            //if (obj.files.indexOf($(this).val()) != -1) {
+                            //this.checked = true;
+                            //}
+                        });
+                    }
+                },
+                yes: function (index, layero) {
+                    IntegralVerifyInfoDlg.firstCheck(index);
+                }
+            });
+        } else {
+            Feng.error(data.msg);
+        }
+    }, function (data) {
+        Feng.error("校验失败!" + data.responseJSON.message + "!");
+    });
+    ajax.setData({"id": $("#id").val(), "companyId": $("#companyId").val()})
+    ajax.start();
+}
+
+IntegralVerifyInfoDlg.toggledepField = function () {
+    var checkState = $("#checkStateModal").val();
+    var checkMsg = $("#checkMsg").val();
+    if (checkState == 3) {
+        if (checkMsg == null || checkMsg == '') {
+            $("#checkMsg").val("部门审核通过,待复核");
+        }
+    } else {
+        $("#checkMsg").val("");
+    }
+}
+
+
+/**
+ * 显示字段或者隐藏字段选择
+ */
+IntegralVerifyInfoDlg.toggleField = function () {
+    var checkState = $("#checkStateFirstModal").val();
+    var checkMsgFirst = $("#checkMsgFirst").val();
+    $("#company_list").hide();
+    if (checkState == 2) {
+        $("#field").show();
+        $("#checkMsgFirst").val("");
+    } else if (checkState == 3 || checkState == 4 || checkState == 5) {
+        $("#field").hide();
+        $("#field").find("input[type=checkbox]").removeAttr("checked");
+        if (checkMsgFirst == null || checkMsgFirst == '') {
+            $("#checkMsgFirst").val("审核通过");
+        }
+        if (checkState == 5) {
+            $("#company_list").show();
+        }
+    } else if (checkState == -1) {
+        $("#field").hide();
+        $("#checkMsgFirst").val("审核不通过");
+    }
+}
+
+
+/**
+ * 全选
+ */
+IntegralVerifyInfoDlg.checkAll = function () {
+    $("#field input").each(function () {
+        this.checked = true;
+    })
+}
+/**
+ * 反选
+ */
+IntegralVerifyInfoDlg.unCheckAll = function () {
+    $("#field input").each(function () {
+        if (this.checked) {
+            this.checked = false;
+        } else {
+            this.checked = true;
+        }
+    })
+}
+
+/**
+ * 审核提交
+ */
+IntegralVerifyInfoDlg.commonCheck = function (i) {
+    var checkState = $("#checkStateModal").val();
+    var checkMsg = $("#checkMsg").val();
+    if (checkState == null || checkState == '') {
+        Feng.info("请选择审核状态");
+        return;
+    }
+    if (checkMsg == null || checkMsg == '') {
+        Feng.info("请填写审核意见");
+        return;
+    }
+    if (locked)
+        return;
+    locked = true;
+    var ajax = new $ax(Feng.ctxPath + "/admin/integralVerify/check", function (data) {
+        if (data.code == 200) {
+            Feng.success(data.msg);
+            // $("#commonModal").modal("hide");
+            layer.close(i);
+        } else {
+            Feng.error(data.msg);
+        }
+        locked = false;
+    }, function (data) {
+        Feng.error("提交审核失败!" + data.responseJSON.message + "!");
+        locked = false;
+    });
+    ajax.setData({"id": $("#id").val(), "checkState": checkState, "checkMsg": checkMsg, "process": $("#process").val(), "companyId": $("#companyId").val()})
+    ajax.start();
+}
+
+/**
+ * 初审提交
+ */
+IntegralVerifyInfoDlg.firstCheck = function (i) {
+    var checkState = $("#checkStateFirstModal").val();
+    var checkMsg = $("#checkMsgFirst").val();
+    if (checkState == null || checkState == '') {
+        Feng.info("请选择审核状态");
+        return;
+    }
+    if (checkMsg == null || checkMsg == '') {
+        Feng.info("请填写审核意见");
+        return;
+    }
+    var fields = '';
+    var files = '';
+    var companys = '';
+    $("#field_info li input").each(function (index) {
+        if ($(this).is(":checked")) {
+            fields = fields + $(this).val() + ",";
+        }
+    });
+    $("#field_file li input").each(function (index) {
+        if ($(this).is(":checked")) {
+            files = files + $(this).val() + ",";
+        }
+    });
+    $("#company_list li input").each(function (index) {
+        if ($(this).is(":checked")) {
+            companys += $(this).val() + ",";
+        }
+    });
+    if (checkState == 2 && fields == '' && files == '') {
+        Feng.info("请选择可修改的字段或附件!");
+        return;
+    }
+    if (checkState == 5 && companys == "") {
+        Feng.info("请选择需要再次审核的部门!");
+        return;
+    }
+    if (locked)
+        return;
+    locked = true;
+    var ajax = new $ax("/admin/integralVerify/check", function (data) {
+        if (data.code == 200) {
+            // $("#firstModal").modal("hide");
+            layer.close(i);
+            Feng.success(data.msg);
+        } else {
+            Feng.error(data.msg);
+        }
+        locked = false;
+    }, function (data) {
+        Feng.error("提交审核失败!" + data.responseJSON.message + "!");
+        locked = false;
+    });
+    ajax.setData({"id": $("#id").val(), "checkState": checkState, "checkMsg": checkMsg,
+        "process": $("#process").val(), "fields": fields, "files": files, "companys": companys})
+    ajax.start();
+}
+
+
+IntegralVerifyInfoDlg.submitCheck = function () {
+    var operation = function () {
+        var ajax = new $ax(Feng.ctxPath + "/admin/integralVerify/submitCheck", function (data) {
+            if (data.code == 200) {
+                Feng.success(data.msg);
+                window.parent.TalentInfo.table.refresh();
+                IntegralVerifyInfoDlg.close();
+            } else {
+                Feng.error(data.msg);
+            }
+        }, function (data) {
+            Feng.error("提交审核失败!" + data.responseJSON.message + "!");
+        });
+        ajax.setData({"id": $("#id").val(), "process": $("#process").val(), "companyId": $("#companyId").val()});
+        ajax.start();
+    }
+    Feng.confirm("一旦提交无法修改,是否审核完毕且无误?", operation);
+}
+
+IntegralVerifyInfoDlg.fieldCheckd = function (context) {
+    if ($(context).get(0).checked) {
+        $(context).parent().next().children()[0].checked = true;
+        $(context).parent().next().children().eq(0).trigger("change");
+    }
+}
+
+IntegralVerifyInfoDlg.sourceCheckd = function (context) {
+    if ($(context).get(0).checked) {
+        $("#talentArrangeCheckBox").attr("checked", true);
+        $("#talentArrangeCheckBox").trigger("change");
+    }
+}
+
+IntegralVerifyInfoDlg.download = function () {
+    window.location.href = encodeURI(encodeURI("/common/api/downloadZip?type=1&id=" + $("#id").val()));
+}
+
+
+IntegralVerifyInfoDlg.creatFieldCheckModal = function () {
+    var type = $("#type").val();
+    if (type == 1) {
+        return '<form id="firstCheckForm">\n' +
+                '                    <div class="form-group" style="margin: 10px;">\n' +
+                '                        <label for="checkState" class="control-label">审核状态</label>\n' +
+                '                        <select class="form-control" id="checkStateFirstModal" onchange="IntegralVerifyInfoDlg.toggleField()">\n' +
+                '                            <option value="">请选择</option>\n' +
+                '                            <option value="3">审核通过</option>\n' +
+                '                            <option value="2">审核驳回</option>\n' +
+                '                            <option value="-1">审核不通过</option>\n' +
+                '                        </select>\n' +
+                '                    </div>\n' +
+                '                    <div class="form-group" style="margin: 10px;">\n' +
+                '                        <label for="checkMsg" class="control-label" >审核意见</label>\n' +
+                '                        <textarea class="form-control" id="checkMsgFirst" placeholder="审核状态属“审核通过”的,仅代表此步骤已操作完成,不代表用户提交的信息符合认定条件。若不符合认定条件的,请写明不符合原因。" rows="6"></textarea>\n' +
+                '                        <div id="company_list" style="padding-top:5px;display:none;">\n' +
+                '                            <label for="checkMsg" class="control-label">选择需要再次审核的部门</label>\n' +
+                '                            <div id="companys">' +
+                '                               <ul style="overflow:hidden;list-style:none;"></ul>' +
+                '                            </div>' +
+                '                        </div>\n' +
+                '                        <div id="field" style="padding-top: 5px;display: none">\n' +
+                '                            <label for="checkMsg" class="control-label">可修改字段</label>\n' +
+                '                            <div id="field_info">\n' +
+                '                                <ul style="overflow:hidden;list-style:none;">\n' +
+                '                                </ul>\n' +
+                '                            </div>\n' +
+                '                            <label for="checkMsg" class="control-label">可修改附件</label>\n' +
+                '                            <div id="field_file">\n' +
+                '                            </div>\n' +
+                '                            <div class="form-group" style="text-align: center">\n' +
+                '                                <button type="button" class="btn btn-primary" onclick="IntegralVerifyInfoDlg.checkAll()">全选</button>\n' +
+                '                                <button type="button" class="btn btn-success" onclick="IntegralVerifyInfoDlg.unCheckAll()">反选</button>\n' +
+                '                            </div>\n' +
+                '                        </div>\n' +
+                '                    </div>\n' +
+                '                </form>';
+    } else if (type == 2) {
+
+        return  '<form id="firstCheckForm">\n' +
+                '                    <div class="form-group" style="margin: 10px;">\n' +
+                '                        <label for="checkState" class="control-label">审核状态</label>\n' +
+                '                        <select class="form-control" id="checkStateFirstModal" onchange="IntegralVerifyInfoDlg.toggleField()">\n' +
+                '                            <option value="">请选择</option>\n' +
+                '                            <option value="3">审核通过</option>\n' +
+                '                            <option value="2">审核驳回</option>\n' +
+                '                            <option value="-1">审核不通过</option>\n' +
+                '                        </select>\n' +
+                '                    </div>\n' +
+                '                    <div class="form-group" style="margin: 10px;">\n' +
+                '                        <label for="checkMsg" class="control-label" >审核意见</label>\n' +
+                '                        <textarea class="form-control" id="checkMsgFirst" placeholder="审核状态属“审核通过”的,仅代表此步骤已操作完成,不代表用户提交的信息符合认定条件。若不符合认定条件的,请写明不符合原因。" rows="6"></textarea>\n' +
+                '                        <div id="company_list" style="padding-top:5px;display:none;">\n' +
+                '                            <label for="checkMsg" class="control-label">选择需要再次审核的部门</label>\n' +
+                '                            <div id="companys">' +
+                '                               <ul style="overflow:hidden;list-style:none;"></ul>' +
+                '                            </div>' +
+                '                        </div>\n' +
+                '                        <div id="field" style="padding-top: 5px;display: none">\n' +
+                '                            <label for="checkMsg" class="control-label">可修改字段</label>\n' +
+                '                            <div id="field_info">\n' +
+                '                                <ul style="overflow:hidden;list-style:none;">\n' +
+                '                            </ul>\n' +
+                '                            </div>\n' +
+                '                            <label for="checkMsg" class="control-label">可修改附件</label>\n' +
+                '                            <div id="field_file">\n' +
+                '                            </div>\n' +
+                '                            <div class="form-group" style="text-align: center">\n' +
+                '                                <button type="button" class="btn btn-primary" onclick="IntegralVerifyInfoDlg.checkAll()">全选</button>\n' +
+                '                                <button type="button" class="btn btn-success" onclick="IntegralVerifyInfoDlg.unCheckAll()">反选</button>\n' +
+                '                            </div>\n' +
+                '                        </div>\n' +
+                '                    </div>\n' +
+                '                </form>';
+    }
+}
+
+IntegralVerifyInfoDlg.createNoFieldCheckModal = function () {
+    return '<form id="commonCheckForm" >\n' +
+            '                    <div class="form-group" style="margin: 10px;">\n' +
+            '                        <label for="checkState" class="control-label">审核状态</label>\n' +
+            '                        <select class="form-control" id="checkStateModal" >\n' +
+            '                            <option value=""></option>\n' +
+            '                            <option value="3">审核通过</option>\n' +
+            '                            <option value="2">审核驳回</option>\n' +
+            '                        </select>\n' +
+            '                    </div>\n' +
+            '                    <div class="form-group" style="margin: 10px;">\n' +
+            '                        <label for="checkMsg" class="control-label">审核意见</label>\n' +
+            '                        <textarea class="form-control" id="checkMsg" placeholder="审核状态属“审核通过”的,仅代表此步骤已操作完成,不代表用户提交的信息符合认定条件。若不符合认定条件的,请写明不符合原因。" rows="6"></textarea>\n' +
+            '                    </div>\n' +
+            '                </form>';
+}
+
+
+$(function () {
+    $("select:not(#checkStateModal,#checkStateFirstModal)").each(function () {
+        //$(this).attr("disabled", "disabled");
+    });
+    $("input,textarea").not("#checkMsg,#checkMsgFirst").each(function () {
+        $(this).attr("readonly", "readonly");
+    });
+    IntegralVerifyInfoDlg.typeChange();
+    IntegralVerifyInfoDlg.sourceChange();
+    $('[data-toggle="tooltip"]').tooltip();
+    var type = $("#type").val();
+    if (type == 1) {
+        IntegralVerifyInfoDlg.initFileTable();
+    }
+
+    Feng.getCheckLog("logTable", {"type": CONFIG.project_integral_apply, "mainId": $("#id").val(), "typeFileId": "", "active": 1})
+});
+
+