Explorar el Código

1.特审复开更新

liuhy hace 2 años
padre
commit
091a0b0b36

+ 165 - 4
src/views/specialApply/TaskUploadData.vue

@@ -33,12 +33,19 @@
               </a-form-model-item>
             </a-col>
 
+            <a-col :span="6">
+              <a-form-model-item label="客户经理手机号" v-bind="labelCol4">
+                <span>{{ infoModel.accountManagerPhone }}</span>
+              </a-form-model-item>
+            </a-col>
+
             <a-col :span="6" v-if="infoModel.userLable == '1'">
               <a-form-model-item label="单位名称" prop="unitName" v-bind="labelCol4">
                 <span>{{ infoModel.unitName }}</span>
               </a-form-model-item>
             </a-col>
 
+
             <a-col :span="6">
               <a-form-model-item label="最后一次关停时间" prop="shutdownTime" v-bind="labelCol4">
                 <span>{{ infoModel.shutdownTime }}</span>
@@ -105,6 +112,12 @@
               </a-form-model-item>
             </a-col>
 
+            <a-col :span="6">
+              <a-form-model-item label="客户经理手机号" v-bind="labelCol4">
+                <a-input :disabled="true" v-model="infoModel.accountManagerPhone" placeholder="客户经理手机号"></a-input>
+              </a-form-model-item>
+            </a-col>
+
             <a-col :span="6">
               <a-form-model-item label="最后一次关停时间" prop="shutdownTime" v-bind="labelCol4">
                 <a-date-picker :style="{width:'100%'}" v-model="infoModel.shutdownTime"
@@ -1364,6 +1377,134 @@
 
     </a-card>
 
+    <!--    个人户-手持号卡照片-->
+    <a-card v-if="steps.currentId == 'handNumberCard'"
+            style="margin-bottom:10px;
+              float: left;width: 83%;left: 2%">
+      <div slot="title">
+        <span style="float: left;position: relative;top: 4px"> 手持号卡照片</span>
+      </div>
+      <!--      附件-->
+      <div>
+        <div v-if="rectification">
+          <a-form-model-item style="left: 0%;width: 90%;" label="稽核状态" prop="basicCheckState" v-bind="labelCol1Note">
+            <span
+              :style="{'color':specialResult.handNumberCardState == 0 ? 'red' : 'blue'}">{{
+                specialResult.handNumberCardState == '0' ? '未通过' : '通过'
+              }}</span>
+          </a-form-model-item>
+
+          <a-form-model-item style="left: 0%;width: 90%;" label="稽核结果" prop="basicCheckNote" v-bind="labelCol1Note">
+            <span>{{ specialResult.handNumberCardNote }}</span>
+          </a-form-model-item>
+        </div>
+        <a-form-model-item style="width: 90%;" label="手持号卡备注:" v-bind="labelCol1Note">
+          <span v-if="specialResult.handNumberCardState == 1">{{ infoModel.handNumberCardRemark }}</span>
+          <a-textarea v-else style="height: 77px"
+                      @change="textareaChange('handNumberCard','handNumberCardRemark')"
+                      v-model="infoModel.handNumberCardRemark"
+                      placeholder="介绍信"
+          />
+          <!--            :auto-size="{ minRows: 3, maxRows: 5 }"-->
+        </a-form-model-item>
+      </div>
+      <!--      文件上传-->
+      <div class="file-div-minio-upload">
+        <div class="thumb-example" style="position: relative">
+          <!-- swiper1 -->
+          <swiper
+            class="swiper gallery-top"
+            :options="swiperOptionTop"
+            ref="swiperTop"
+          >
+            <swiper-slide class="slide-1" v-for="(item, index) in infoModel.handNumberCard" :key="item.id">
+              <iframe
+                v-if="item.urlBase"
+                frameborder="1"
+                :src="item.urlBase"
+                ref="ifr"
+                width="100%"
+                height="500px"
+                scrolling="auto">
+              </iframe>
+              <img style="width: 100%;height: 500px;border: 1px solid;"
+                   v-if="!item.urlBase" :src="noDataPng" border="1">
+              <a-button v-if="infoModel.handNumberCard.length && item.urlBase && specialResult.handNumberCardState != 1"
+                        style="display: block;margin-top: 10px;border-color: red;color: red;float: left"
+                        danger @click="removeFile(item,'handNumberCard')">移除
+              </a-button>
+              <a-button
+                style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
+                v-if="infoModel.handNumberCard.length && item.urlBase"
+                @click="jumpUrl(item.urlBase)">预览
+              </a-button>
+            </swiper-slide>
+            <!--            <div
+                          class="swiper-button-next swiper-button-white"
+                          slot="button-next"
+                        ></div>
+                        <div
+                          class="swiper-button-prev swiper-button-white"
+                          slot="button-prev"
+                        ></div>-->
+          </swiper>
+          <!-- swiper2 Thumbs -->
+          <swiper
+            class="swiper gallery-thumbs"
+            :options="swiperOptionThumbs"
+            ref="swiperThumbs"
+          >
+            <swiper-slide
+              class="slide"
+              style="width:100px;height:100px;"
+              v-for="(item, index) in infoModel.handNumberCard"
+              :key="item.id"
+            >
+              <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
+                <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
+              </div>
+
+              <img style="width: 100%;height: 96px"
+                   v-if="!item.urlBase" :src="noDataPng" border="1">
+
+            </swiper-slide>
+            <!--              点我上传文件按钮-->
+            <div class="clearfix">
+              <a-upload
+                listType="picture-card"
+                name="file"
+                :multiple="false"
+                :action="importMinioUploadAction"
+                :customRequest="e => selfUploadContract(e, 'handNumberCard')"
+                :headers="tokenHeader"
+                :showUploadList="false"
+                :beforeUpload="importBeforeUpload"
+                @change="importHandleChange"
+              >
+                <div v-if="infoModel.handNumberCard.length < 20 &&  specialResult.handNumberCardState != 1">
+                  <a-icon type="plus"/>
+                  <div class="ant-upload-text">点我上传手持号卡</div>
+                </div>
+              </a-upload>
+
+            </div>
+
+            <div class="swiper-button-next swiper-button-white" slot="button-next">
+              <div>
+                <!--                  <img src="../../../../assets/images/nextImg.png" alt=""/>-->
+              </div>
+            </div>
+            <div class="swiper-button-prev swiper-button-white" slot="button-prev">
+              <div>
+                <!--                  <img src="../../../../assets/images/prevImg.png" alt=""/>-->
+              </div>
+            </div>
+          </swiper>
+        </div>
+      </div>
+
+    </a-card>
+
     <!--    消费凭证-->
     <a-card v-if="steps.currentId == 'consumptionVoucher'"
             style="margin-bottom:10px;
@@ -1722,6 +1863,9 @@ export default {
         //号卡照片
         numberCardState: null,
         numberCardNote: "",
+        //手持号卡照片
+        handNumberCardState:null,
+        handNumberCardNote: "",
         //使用人证件
         userCertificateState: null,
         userCertificateNote: "",
@@ -1762,10 +1906,12 @@ export default {
         reasonReopening: "",
         // 客户名称
         customerName: "",
+        // 客户经理手机号
+        accountManagerPhone:"",
         // 最后一次关停时间
         shutdownTime: "",
         // 关停标签
-        shutdownLabel: "0",
+        shutdownLabel: ['0'],
         // 关停标签-其他
         shutdownLabelOther: "",
         // 系统实名制截图
@@ -1796,6 +1942,9 @@ export default {
         // 个人户-号卡照片
         numberCard: [{}],
         numberCardRemark: "",
+        // 个人户-手持号卡照片
+        handNumberCard: [{}],
+        handNumberCardRemark: "",
         // 消费凭证
         consumptionVoucher: [{}],
         consumptionVoucherRemark: "",
@@ -1915,6 +2064,12 @@ export default {
             id: "numberCard",
             status: "wait"
           },
+          {
+            title: '手持号卡照片',
+            content: 'First-content',
+            id: "handNumberCard",
+            status: "wait"
+          },
         ],
         // 材料标签
         shutdownLabel0: [
@@ -2239,6 +2394,9 @@ export default {
         // 号卡照片
         numberCard: this.urlBaseJoin(infoModel.numberCard, "url"),
         numberCardRemark: infoModel.numberCardRemark,
+        // 手持号卡照片
+        handNumberCard: this.urlBaseJoin(infoModel.handNumberCard, "url"),
+        handNumberCardRemark: infoModel.handNumberCardRemark,
         // 防诈骗承诺函
         fraudPrevention: this.urlBaseJoin(infoModel.fraudPrevention, "url"),
         fraudPreventionRemark: infoModel.fraudPreventionRemark,
@@ -2320,7 +2478,7 @@ export default {
         // 单位户或个人
         if (this.infoModel.userLable == '0') {
           // 个人->号卡照片
-          labels.push('numberCard')
+          labels.push('numberCard','handNumberCard')
         } else {
           // 单位户 -> 使用人证件,营业执照副本,介绍信
           labels.push('userCertificate')
@@ -2427,6 +2585,8 @@ export default {
             that.infoModel.customerName = result.customerName
             // 有无特殊审单
             that.infoModel.materialLabel = result.materialLabel == "无" ? "1" : "0"
+            // 客户经理手机号
+            that.infoModel.accountManagerPhone = result.accountManagerPhone;
             // 特审步骤条
             that.stepLoading();
             // 获取客户文件信息
@@ -2475,6 +2635,9 @@ export default {
           // 个人户-号卡照片
           infoModel.numberCard = that.packageArr(result.numberCard)
           infoModel.numberCardRemark = result.numberCardRemark
+          // 个人户-手持号卡照片
+          infoModel.handNumberCard = that.packageArr(result.handNumberCard)
+          infoModel.handNumberCardRemark = result.handNumberCardRemark
           // 消费凭证
           infoModel.consumptionVoucher = that.packageArr(result.consumptionVoucher)
           infoModel.consumptionVoucherRemark = result.consumptionVoucherRemark
@@ -2495,8 +2658,6 @@ export default {
           // 步骤条
           that.stepLoading();
           that.findCheckState(result.id)
-
-
         }
       })
     }

+ 158 - 2
src/views/specialApply/modules/TaskCheckAudit.vue

@@ -38,6 +38,12 @@
               </a-form-model-item>
             </a-col>
 
+            <a-col :span="6">
+              <a-form-model-item label="客户经理手机号" prop="accountManagerPhone" v-bind="labelCol4">
+                <span class="cornflowerblue">{{ infoModel.accountManagerPhone }}</span>
+              </a-form-model-item>
+            </a-col>
+
             <a-col :span="6">
               <a-form-model-item label="最后一次关停时间" prop="shutdownTime" v-bind="labelCol4">
                 <span class="cornflowerblue">{{ infoModel.shutdownTime }}</span>
@@ -1253,7 +1259,135 @@
       </div>
 
     </a-card>
+    <!--    个人户-手持号卡照片-->
+    <a-card v-if="steps.currentId == 'handNumberCard'"
+            style="margin-bottom:10px;
+              float: left;width: 83%;left: 2%">
+      <div slot="title">
+        <span style="float: left;position: relative;top: 4px"> 手持号卡照片</span>
+      </div>
+      <!--      附件-->
+      <div>
+
+        <a-form-model-item style="left: 0%;width: 90%;" label="稽核状态" prop="basicCheckState" v-bind="labelCol1Note">
+          <a-radio-group v-model="specialResult.handNumberCardState"
+                         @change="basicCheckClick(specialResult.handNumberCardState)">
+            <a-radio :value=0>未通过</a-radio>
+            <a-radio :value=1>通过</a-radio>
+          </a-radio-group>
+        </a-form-model-item>
+
+        <a-form-model-item style="left: 0%;width: 90%;" label="稽核结果" prop="basicCheckNote" v-bind="labelCol1Note">
+          <a-textarea
+            v-model="specialResult.handNumberCardNote"
+            placeholder="请输入稽核结果"
+          />
+          <!--            :auto-size="{ minRows: 3, maxRows: 5 }"-->
+        </a-form-model-item>
+
+        <a-form-model-item style="width: 90%;" label="手持号卡照片备注:" v-bind="labelCol1Note">
+          <span>{{ infoModel.handNumberCardRemark }}</span>
+
+          <!--            :auto-size="{ minRows: 3, maxRows: 5 }"-->
+        </a-form-model-item>
+
+        <!--            :auto-size="{ minRows: 3, maxRows: 5 }"-->
+      </div>
+      <!--      文件上传-->
+      <div class="file-div-minio-upload">
+        <div class="thumb-example" style="position: relative">
+          <!-- swiper1 -->
+          <swiper
+            class="swiper gallery-top"
+            :options="swiperOptionTop"
+            ref="swiperTop"
+          >
+            <swiper-slide class="slide-1" v-for="(item, index) in infoModel.handNumberCard" :key="item.id">
+              <iframe
+                v-if="item.urlBase"
+                frameborder="1"
+                :src="item.urlBase"
+                ref="ifr"
+                width="100%"
+                height="500px"
+                scrolling="auto">
+              </iframe>
+              <img style="width: 100%;height: 500px;border: 1px solid;"
+                   v-if="!item.urlBase" :src="noDataPng" border="1">
+              <a-button
+                style="display: block;position: relative;float:left;margin-top: 10px;border-color: #1890FF;color: #1890FF"
+                v-if="infoModel.handNumberCard.length && item.urlBase"
+                @click="jumpUrl(item.url)">下载
+              </a-button>
+              <a-button
+                style="display: block;position: relative;left:20px;margin-top: 10px;border-color: #1890FF;color: #1890FF"
+                v-if="infoModel.handNumberCard.length && item.urlBase"
+                @click="jumpUrl(item.urlBase)">预览
+              </a-button>
 
+            </swiper-slide>
+            <!--            <div
+                          class="swiper-button-next swiper-button-white"
+                          slot="button-next"
+                        ></div>
+                        <div
+                          class="swiper-button-prev swiper-button-white"
+                          slot="button-prev"
+                        ></div>-->
+          </swiper>
+          <!-- swiper2 Thumbs -->
+          <swiper
+            class="swiper gallery-thumbs"
+            :options="swiperOptionThumbs"
+            ref="swiperThumbs"
+          >
+            <swiper-slide
+              class="slide"
+              style="width:100px;height:100px;"
+              v-for="(item, index) in infoModel.handNumberCard"
+              :key="item.id"
+            >
+              <div v-if="item.urlBase" style="width: 100%;height: 96px;background: rgb(68,142,247);color: white">
+                <span style="white-space:normal; word-break:break-all;overflow:hidden;">{{ item.fileName }}</span>
+              </div>
+
+              <img style="width: 100%;height: 96px"
+                   v-if="!item.urlBase" :src="noDataPng" border="1">
+
+            </swiper-slide>
+            <!--              点我上传文件按钮-->
+            <div class="clearfix">
+              <a-upload
+                listType="picture-card"
+                name="file"
+                :multiple="false"
+                :action="importMinioUploadAction"
+                :customRequest="e => selfUploadContract(e, 'handNumberCard')"
+                :headers="tokenHeader"
+                :showUploadList="false"
+                :beforeUpload="importBeforeUpload"
+                @change="importHandleChange"
+              >
+
+              </a-upload>
+
+            </div>
+
+            <div class="swiper-button-next swiper-button-white" slot="button-next">
+              <div>
+                <!--                  <img src="../../../../assets/images/nextImg.png" alt=""/>-->
+              </div>
+            </div>
+            <div class="swiper-button-prev swiper-button-white" slot="button-prev">
+              <div>
+                <!--                  <img src="../../../../assets/images/prevImg.png" alt=""/>-->
+              </div>
+            </div>
+          </swiper>
+        </div>
+      </div>
+
+    </a-card>
     <!--    消费凭证-->
     <a-card v-if="steps.currentId == 'consumptionVoucher'"
             style="margin-bottom:10px;
@@ -1379,7 +1513,6 @@
       </div>
 
     </a-card>
-
     <!--    承诺视频-->
     <a-card v-if="steps.currentId == 'commitmentVideo'"
             style="margin-bottom:10px;
@@ -1603,6 +1736,9 @@ export default {
         //号卡照片
         numberCardState: null,
         numberCardNote: "",
+        //手持号卡照片
+        handNumberCardState:null,
+        handNumberCardNote: "",
         //使用人证件
         userCertificateState: null,
         userCertificateNote: "",
@@ -1632,6 +1768,8 @@ export default {
       },
       // 客户资料信息
       infoModel: {
+        // 客户经理手机号
+        accountManagerPhone:"",
         // 单位名称
         unitName: "",
         // 材料补不全有特审
@@ -1647,7 +1785,7 @@ export default {
         // 最后一次关停时间
         shutdownTime: "",
         // 关停标签
-        shutdownLabel: "0",
+        shutdownLabel: ['0'],
         // 关停标签-其他
         shutdownLabelOther: "",
         // 系统实名制截图
@@ -1678,6 +1816,9 @@ export default {
         // 个人户-号卡照片
         numberCard: [{}],
         numberCardRemark: "",
+        // 个人户-手持号卡照片
+        handNumberCard: [{}],
+        handNumberCardRemark: "",
         // 消费凭证
         consumptionVoucher: [{}],
         consumptionVoucherRemark: "",
@@ -1800,6 +1941,12 @@ export default {
             id: "numberCard",
             status: "wait"
           },
+          {
+            title: '手持号卡照片',
+            content: 'First-content',
+            id: "handNumberCard",
+            status: "wait"
+          },
         ],
         // 材料标签
         shutdownLabel0: [
@@ -2212,6 +2359,10 @@ export default {
           that.$message.warn("请完成相关稽核");
           return;
         }
+        if (specialResult.handNumberCardState == null) {
+          that.$message.warn("请完成相关稽核");
+          return;
+        }
       }
       //
       if (userLable == '1') {
@@ -2279,6 +2430,8 @@ export default {
             that.infoModel.customerName = result.customerName
             // 有无特殊审单
             that.infoModel.materialLabel = result.materialLabel == "无" ? "1" : "0"
+            // 客户经理手机号
+            that.infoModel.accountManagerPhone = result.accountManagerPhone;
             // 特审步骤条
             that.stepLoading();
             // 获取客户文件信息
@@ -2327,6 +2480,9 @@ export default {
           // 个人户-号卡照片
           infoModel.numberCard = that.packageArr(result.numberCard)
           infoModel.numberCardRemark = result.numberCardRemark
+          // 个人户-手持号卡照片
+          infoModel.handNumberCard = that.packageArr(result.handNumberCard)
+          infoModel.handNumberCardRemark = result.handNumberCardRemark
           // 消费凭证
           infoModel.consumptionVoucher = that.packageArr(result.consumptionVoucher)
           infoModel.consumptionVoucherRemark = result.consumptionVoucherRemark

+ 20 - 12
src/views/specialApply/modules/TaskCheckList.vue

@@ -1,8 +1,15 @@
 <template>
   <div>
-
     <a-card :bordered="false" style="margin-top: -20px;">
-      <a-tabs :active-key="currentTab" default-active-key="all" @change="tabChange">
+
+      <a-tabs v-has="'specialApply:check:state:01'" :active-key="currentTab" default-active-key="all" @change="tabChange">
+        <a-tab-pane key="all" :tab="tableALLPart"></a-tab-pane>
+        <a-tab-pane key="uncheck" :tab="tabUncheck"></a-tab-pane>
+        <a-tab-pane key="checked" :tab="tabChecked"></a-tab-pane>
+        <a-tab-pane key="passed" :tab="tabPassed"></a-tab-pane>
+      </a-tabs>
+
+      <a-tabs v-has="'specialApply:check:state:all'" :active-key="currentTab" default-active-key="all" @change="tabChange">
         <a-tab-pane key="all" :tab="tabAll"></a-tab-pane>
         <a-tab-pane key="handel" :tab="tabHandle"></a-tab-pane>
         <a-tab-pane key="undo" :tab="tabUndo"></a-tab-pane>
@@ -10,6 +17,7 @@
         <a-tab-pane key="checked" :tab="tabChecked"></a-tab-pane>
         <a-tab-pane key="passed" :tab="tabPassed"></a-tab-pane>
       </a-tabs>
+
       <!-- 查询区域 -->
       <div class="table-page-search-wrapper">
         <a-form layout="inline" @keyup.enter.native="searchQuery">
@@ -101,16 +109,19 @@
               <a-divider type="vertical"/>
             </span>
 
-            <span v-has="'special:task:check:list:download:all'">
-              <a @click="getFileUrls(record)">下载资料</a>
-              <a-divider type="vertical"/>
-            </span>
+
 
             <span v-has="'special:task:check:list:audit'" v-if="record.checkState === 2 || record.checkState === 3">
               <a @click="showCheckCheck(record)">稽核</a>
               <a-divider type="vertical"/>
             </span>
 
+            <span v-has="'special:task:check:list:download:all'">
+              <a @click="getFileUrls(record)">下载资料</a>
+              <a-divider type="vertical"/>
+            </span>
+
+
             <span v-has="'lot:task:check:list:audit:resetting'" v-if="record.checkState === 5">
               <a @click="showCheckCheck(record)">重新稽核</a>
               <a-divider type="vertical"/>
@@ -132,22 +143,17 @@
               <a-divider type="vertical"/>
             </span>
 
+
             <a-dropdown>
               <a class="ant-dropdown-link">更多
                 <a-icon type="down"/>
               </a>
               <a-menu slot="overlay">
-
                 <a-menu-item v-has="'task:check:list:delete'">
                   <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
                     <a>删除</a>
                   </a-popconfirm>
                 </a-menu-item>
-                <a-menu-item v-has="'task:check:list:clear'">
-                  <a-popconfirm title="确定清空吗?" @confirm="() => dataDelete(record.id)">
-                    <a>清空</a>
-                  </a-popconfirm>
-                </a-menu-item>
               </a-menu>
             </a-dropdown>
           </template>
@@ -213,6 +219,7 @@ export default {
       tabUncheck: '待稽核(0)',
       tabChecked: '待整改(0)',
       tabPassed: '稽核通过(0)',
+      tableALLPart:'全部(0)',
       count: 0,
       undoCount: 0,
       uncheckCount: 0,
@@ -545,6 +552,7 @@ export default {
           that.tabUncheck = '待稽核(' + result.uncheckCount + ')';
           that.tabChecked = '待整改(' + result.checkedCount + ')';
           that.tabPassed = '稽核通过(' + result.passedCount + ')';
+          that.tableALLPart ='全部(' + (result.count -    result.undoCount -  result.handleCount) + ')';
         }
       }).finally(() => {
 

+ 2 - 1
src/views/specialApply/modules/TaskImport.vue

@@ -142,7 +142,8 @@ export default {
     /**下载模版*/
     downloadTemplat(){
       const a = document.createElement('a')
-      a.href = '/static/specialExamination.xlsx'
+      // a.href = '/static/specialExamination.xlsx'
+      a.href = '/web/tnc/static/specialExamination.xlsx'
       a.setAttribute('download', '特审复开审批模版.xlsx')
       a.click();
       a.remove();