Переглянути джерело

投保审批页面完善。

tomatozq 5 роки тому
батько
коміт
0d2c4801f4

+ 10 - 18
src/api/business/approval.js

@@ -69,31 +69,23 @@ function loadInsuranceAgent(formData) {
   return request.post(constant.serverUrl + "/insurancePolicy/loadInsuranceAgent", formData);
 }
 
-function downloadPolicyPDF(applicationId, policyId) {
-  //pdf文档生成与下载
-  // let formData = {
-  //   params: {
-  //     applicationId: applicationId,
-  //     policyId: policyId
-  //   }
-  // }
-  // return request.get(constant.serverUrl + "/pub/attachment/downloadPolicyPDF", formData);
-  window.open(constant.serverUrl + "/pub/attachment/downloadPolicyPDF?applicationId=" + applicationId + "&policyId=" + policyId);
+function downloadPolicyPdf(policyId) {
+  window.open(constant.serverUrl + "/pub/attachment/downloadPolicyPDF?policyId=" + policyId);
+}
+
+function downloadPolicyZip(policyId) {
+  window.open(constant.serverUrl + "/pub/attachment/downloadPolicyZip?policyId=" + policyId);
 }
 
 function downloadIdCardZip(policyId) {
-  //身份证附件打包下载
-  // let formData = {
-  //   params: {
-  //     policyId: policyId
-  //   }
-  // }
-  // return request.get(constant.serverUrl + "/pub/attachment/downloadIdCardZip", formData);
   window.open(constant.serverUrl + "/pub/attachment/downloadIdCardZip?policyId=" + policyId);
 }
 
 
 
 export default {
-  pageList, acceptDetail, firstApproval, secondApproval, transfer, policyRecordPageList, attachmentList, issued, otherPageList, otherDetail, uploadFiles, loadInsuranceAgent, downloadPolicyPDF, downloadIdCardZip
+  pageList, acceptDetail, firstApproval, secondApproval, transfer, 
+  policyRecordPageList, attachmentList, issued, otherPageList, 
+  otherDetail, uploadFiles, loadInsuranceAgent, 
+  downloadPolicyPdf, downloadIdCardZip, downloadPolicyZip
 }

+ 1 - 1
src/views/base/insuranceAgent-detail.vue

@@ -22,7 +22,7 @@
             <el-option
               v-for="dictionary in dictionaryData"
               :key="dictionary.value "
-              :label="dictionary.userName"
+              :label="dictionary.name"
               :value="dictionary.value"
             ></el-option>
           </el-select>

+ 6 - 3
src/views/business/insuranceFirst-firstApproval.vue

@@ -3,10 +3,13 @@
     <el-breadcrumb separator=">">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
       <el-breadcrumb-item>
-        <a href="#">系统管理</a>
+        <a href="#">人才超市审批</a>
       </el-breadcrumb-item>
       <el-breadcrumb-item>
-        <a href="/businessInsuranceApplication">初审</a>
+        <a href="#">新增投保审批</a>
+      </el-breadcrumb-item>
+      <el-breadcrumb-item>
+        <a href="#">初审</a>
       </el-breadcrumb-item>
     </el-breadcrumb>
     <el-divider></el-divider>
@@ -206,7 +209,7 @@ export default {
       });
     },
     downloadFiles() {
-      approvalApi.downloadIdCardZip(this.policyId);
+      approvalApi.downloadPolicyZip(this.policyId);
     }
   },
   async mounted() {

+ 65 - 99
src/views/business/insuranceFirst-issued.vue

@@ -3,7 +3,7 @@
     <el-breadcrumb separator=">">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
       <el-breadcrumb-item>
-        <a href="#/business/insuranceFirst/listPicc">系统管理</a>
+        <a href="#/business/insuranceFirst/listPicc">PICC审批</a>
       </el-breadcrumb-item>
       <el-breadcrumb-item>
         <a href="#">制单</a>
@@ -20,101 +20,51 @@
       <el-container>
         <el-main>
           <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'100px'">
-            <table>
-              <tr>
-                <td>当前步骤</td>
-                <td>{{insureData.statusN}}</td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="处理类型" prop="processStatus">
-                    <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
-                      <el-option label="通过" value="正常"></el-option>
-                      <el-option label="退回" value="回退"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="应收保费">{{insureData.insuranceFee}}</el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="投保人名称">{{insureData.insuredName}}</el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="出账银行">{{insureData.insurancePolicy.issuingBank}}</el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="入账银行">{{insureData.insurancePolicy.accountBank}}</el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="转账单号">{{insureData.insurancePolicy.singlNumber}}</el-form-item>
-                </td>
-              </tr>
-              <!-- <tr>
-                <td colspan="2">
-                  <el-form-item label="推广员账号" prop="issuingBank">
-                    <el-input placeholder="请输入推广员账号" v-model="formModel.issuingBank"></el-input>
-                  </el-form-item>
-                </td>
-              </tr>-->
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="保险代理人">{{agent.name}}</el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="上传保单">
-                    <el-upload
-                      class="upload-demo"
-                      :action="uploadUrl"
-                      :data="uploadData"
-                      :headers="headers"
-                      name="uploadFile"
-                      :on-preview="handlePreview"
-                      :on-remove="handleFileRemove"
-                      :before-remove="beforeRemove"
-                      :multiple="false"
-                      :limit="1"
-                      :on-exceed="handleExceed"
-                      :on-success="handleUploadFileSuccess"
-                      :on-error="handleUploadError"
-                      :file-list="fileList"
-                    >
-                      <el-button size="small" type="primary">点击上传</el-button>
-                      <div slot="tip" class="el-upload__tip"></div>
-                    </el-upload>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td>下一步骤</td>
-                <td>已出单</td>
-              </tr>
-              <tr>
-                <td>
-                  <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
-                </td>
-                <td>
-                  <el-button size="mini" type="success" @click="downloadPDF()">下载电子保单版</el-button>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-button size="mini" type="primary" @click="saveApproval()">提交</el-button>
-                </td>
-              </tr>
-            </table>
+            <el-form-item label="当前步骤" style="text-align:left;">
+            {{insureData.statusN}}
+            </el-form-item>
+            <el-form-item label="处理类型" prop="processStatus">
+              <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
+                <el-option label="通过" value="正常"></el-option>
+                <el-option label="退回" value="回退"></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item label="应收保费" style="text-align:left;">
+              {{insureData.insuranceFee}}
+            </el-form-item>
+            <el-form-item label="投保人名称" style="text-align:left;">{{insureData.insuredName}}</el-form-item>
+            <el-form-item label="出账银行" style="text-align:left;">{{insureData.insurancePolicy.issuingBank}}</el-form-item>
+            <el-form-item label="入账银行" style="text-align:left;">{{insureData.insurancePolicy.accountBank}}</el-form-item>
+            <el-form-item label="转账单号" style="text-align:left;">{{insureData.insurancePolicy.singlNumber}}</el-form-item>
+            <el-form-item label="保险代理人" style="text-align:left;">{{agent.name}}</el-form-item>
+            <el-form-item label="上传保单" style="text-align:left;">
+              <el-upload
+                class="upload-demo"
+                :action="uploadUrl"
+                :data="uploadData"
+                :headers="headers"
+                name="uploadFile"
+                :on-preview="handlePreview"
+                :on-remove="handleFileRemove"
+                :before-remove="beforeRemove"
+                :multiple="false"
+                :limit="1"
+                :on-exceed="handleExceed"
+                :on-success="handleUploadFileSuccess"
+                :on-error="handleUploadError"
+                :file-list="fileList"
+              >
+                <el-button size="small" type="primary">点击上传</el-button>
+                <div slot="tip" class="el-upload__tip"></div>
+              </el-upload>
+            </el-form-item>
+            <el-form-item label="下一步骤" style="text-align:left;">
+              已出单
+            </el-form-item>
+            <el-form-item>
+              <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
+              <el-button size="mini" type="primary" @click="saveApproval()">提交</el-button>
+            </el-form-item>
           </el-form>
         </el-main>
       </el-container>
@@ -139,7 +89,8 @@ export default {
   },
   data() {
     var self = this;
-    var token = getToken;
+    var token = getToken();
+
     return {
       queryModel: {
         id: ""
@@ -169,7 +120,9 @@ export default {
       id: "",
       definitionId: "",
       policyId: "",
-      insureData: "",
+      insureData: {
+        insurancePolicy:{}
+      },
       acceptData: [],
       formModel: {
         processStatus: "",
@@ -193,6 +146,7 @@ export default {
       uploadData: {
         subFolder: "isuued"
       },
+      fileUrl:'',
       headers: {
         Authorization: getToken()
       }
@@ -235,6 +189,12 @@ export default {
         if (valid) {
           var self = this;
           var formModel = this.formModel;
+
+          if(self.fileUrl.length==0){
+            self.$message.error("请先上传保单!");
+            return;
+          }
+
           (function() {
             var formData = new FormData();
 
@@ -278,7 +238,13 @@ export default {
     //上传文件
     handleUploadFileSuccess(response, file, fileList) {
       console.log(response);
-      this.fileUrl = response.data;
+
+      if(!!response.result){
+        this.fileUrl = response.data;
+      }
+      else{
+        this.$message.error(response.message || "上传文件失败!");
+      }
     },
     handleFileRemove(file, fileList) {
       console.log(file, fileList);

+ 21 - 11
src/views/business/insuranceFirst-leftTab.vue

@@ -76,14 +76,16 @@
             <el-table-column prop="companyMember.age" label="年龄" width="100"></el-table-column>
             <el-table-column prop="companyMember.jobName" label="岗位/工种" width="200"></el-table-column>
             <el-table-column prop="companyMember.healthStatus" label="健康状况" width="100"></el-table-column>
-            <el-table-column prop="companyMember.cardFiles" label="身份证正面照" width="120">
-              <template slot-scope="scope">
-                <a :href="scope.row.companyMember.cardFiles" target="_blank">
-                  <el-avatar
-                    size="small"
-                    :src="scope.row.companyMember.cardFiles+'?x-oss-process=image/resize,m_lfit,h_100,w_100'"
-                  ></el-avatar>
-                </a>
+            <el-table-column prop="companyMember.cardFiles" label="身份证" width="120">
+              <template slot-scope="{row}">
+                <template v-for="url in splitSep(row.companyMember.cardFiles,'|')">
+                  <a :href="url" target="_blank" :key="url">
+                    <el-avatar
+                      size="small"
+                      :src="url+'?x-oss-process=image/resize,m_lfit,h_100,w_100'"
+                    ></el-avatar>
+                  </a>
+                </template>
               </template>
             </el-table-column>
           </el-table>
@@ -161,9 +163,9 @@
             <el-table-column prop="index" label="序号" width="80"></el-table-column>
             <!-- <el-table-column prop="insuredNumber" label="附件类型" width="150"></el-table-column> -->
             <el-table-column prop="name" label="附件名称" width="500px"></el-table-column>
-            <el-table-column prop="file" label="操作" width="80">
-              <template slot-scope="scope">
-                <a :href="scope.row.file" target="_blank">下载</a>
+            <el-table-column label="操作" width="80">
+              <template slot-scope="{row}">
+                <a :href="row.url" target="_blank" style="cursor:pointer">下载</a>
               </template>
             </el-table-column>
           </el-table>
@@ -277,6 +279,14 @@ export default {
     };
   },
   methods: {
+    splitSep(arrStr,sep) {
+      if(arrStr==null || arrStr.length==0){
+        return [];
+      }
+      else{
+        return arrStr.split(sep);
+      }
+    },
     changePage(pageIndex) {
       var self = this;
 

+ 33 - 46
src/views/business/insuranceFirst-secondApproval.vue

@@ -3,7 +3,10 @@
     <el-breadcrumb separator=">">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
       <el-breadcrumb-item>
-        <a href="#">系统管理</a>
+        <a href="#">PICC</a>
+      </el-breadcrumb-item>
+      <el-breadcrumb-item>
+        <a href="#">新增投保审批</a>
       </el-breadcrumb-item>
       <el-breadcrumb-item>
         <a href="/businessInsuranceApplication">复审</a>
@@ -20,47 +23,29 @@
 
       <el-container>
         <el-main>
-          <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'100px'">
-            <table>
-              <tr>
-                <td>当前步骤</td>
-                <td>{{insureData.statusN}}</td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="处理类型" prop="processStatus">
-                    <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
-                      <el-option label="通过" value="正常"></el-option>
-                      <el-option label="退回" value="回退"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item prop="opinion">
-                    <el-input
-                      type="textarea"
-                      :rows="20"
-                      placeholder="请输入内容"
-                      v-model="formModel.opinion"
-                    ></el-input>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td>下一步骤</td>
-                <td>缴费</td>
-              </tr>
-              <tr>
-                <td>
-                  <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
-                </td>
-                <td>
-                  <el-button size="mini" type="primary" :loading="submiting" @click="saveApproval()">提交</el-button>
-                </td>
-              </tr>
-            </table>
+          <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'80px'">
+            <el-form-item label="当前步骤" style="text-align:left;">
+              {{policy.statusN}}
+            </el-form-item>
+            <el-form-item label="处理类型" prop="processStatus">
+              <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
+                <el-option label="通过" value="正常"></el-option>
+                <el-option label="退回" value="回退"></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item prop="opinion">
+              <el-input
+                type="textarea"
+                :rows="20"
+                placeholder="请输入内容"
+                v-model="formModel.opinion"
+              ></el-input>
+            </el-form-item>
+            <el-form-item label="下一步骤" style="text-align:left;">缴费</el-form-item>
+            <el-form-item>
+              <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
+              <el-button size="mini" type="primary" :loading="submiting" @click="saveApproval()">提交</el-button>
+            </el-form-item>
           </el-form>
         </el-main>
       </el-container>
@@ -113,7 +98,8 @@ export default {
       id: "",
       definitionId: "",
       policyId: "",
-      insureData: "",
+      insureData: {},
+      policy: {},
       acceptData: [],
       formModel: {
         processStatus: "",
@@ -148,8 +134,9 @@ export default {
 
           if (jsonData.result) {
             self.insureData = jsonData.data;
-            this.definitionId = self.insureData.definitionId;
-            this.policyId = self.insureData.insurancePolicy.id;
+            self.definitionId = self.insureData.definitionId;
+            self.policyId = self.insureData.insurancePolicy.id;
+            self.policy = self.insureData.insurancePolicy;
           } else {
             self.$message.error(jsonData.message + "");
           }
@@ -202,7 +189,7 @@ export default {
       });
     },
     downloadFiles() {
-      approvalApi.downloadIdCardZip(this.policyId);
+      approvalApi.downloadPolicyZip(this.policyId);
     }
   },
   async mounted() {

+ 54 - 95
src/views/business/insuranceFirst-transfer.vue

@@ -3,7 +3,7 @@
     <el-breadcrumb separator=">">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
       <el-breadcrumb-item>
-        <a href="#">系统管理</a>
+        <a href="#">人才超市审批</a>
       </el-breadcrumb-item>
       <el-breadcrumb-item>
         <a href="/businessInsuranceApplication">提交投保申请并转账</a>
@@ -19,99 +19,58 @@
       </el-aside>
       <el-container>
         <el-main>
-          <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'80px'">
-            <table>
-              <tr>
-                <td>当前步骤</td>
-                <td>{{insureData.statusN}}</td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="处理类型" prop="processStatus">
-                    <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
-                      <el-option label="通过" value="正常"></el-option>
-                      <el-option label="退回" value="回退"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td>
-                  <el-form-item label="应收保费">{{insureData.insuranceFee}}</el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="出账银行" prop="issuingBank">
-                    <el-input placeholder="请输入出账银行" v-model="formModel.issuingBank" width="150"></el-input>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="入账银行" prop="accountBank">
-                    <el-input placeholder="请输入入账银行" v-model="formModel.accountBank"></el-input>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="转账单号" prop="singlNumber">
-                    <el-input placeholder="请输入转账单号" v-model="formModel.singlNumber"></el-input>
-                  </el-form-item>
-                </td>
-              </tr>
-              <!-- <tr>
-                <td colspan="2">
-                  <el-form-item label="推广员账号" prop="issuingBank">
-                    <el-input placeholder="请输入推广员账号" v-model="formModel.issuingBank"></el-input>
-                  </el-form-item>
-                </td>
-              </tr>-->
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="保险代理人" prop="agentId">
-                    <el-select
-                      v-model="formModel.agentId"
-                      filterable
-                      placeholder="请选择"
-                      style="width:300px"
-                    >
-                      <el-option
-                        v-for="agent in agentData"
-                        :key="agent.id "
-                        :label="agent.name"
-                        :value="agent.id"
-                      ></el-option>
-                    </el-select>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item prop="opinion">
-                    <el-input
-                      type="textarea"
-                      :rows="8"
-                      placeholder="请输入处理意见"
-                      v-model="formModel.opinion"
-                    ></el-input>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td>下一步骤</td>
-                <td>出单</td>
-              </tr>
-              <tr>
-                <td>
-                  <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
-                </td>
-                <td>
-                  <el-button size="mini" type="primary" :loading="submiting" @click="saveApproval()">提交</el-button>
-                </td>
-              </tr>
-            </table>
+          <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'100px'">
+            <el-form-item label="当前步骤" style="text-align:left;">
+            {{insureData.statusN}}
+            </el-form-item>
+            <el-form-item label="处理类型" prop="processStatus">
+              <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
+                <el-option label="通过" value="正常"></el-option>
+                <el-option label="退回" value="回退"></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item label="应收保费" style="text-align:left;">
+              {{insureData.insuranceFee}}
+            </el-form-item>
+            <el-form-item label="出账银行" prop="issuingBank">
+              <el-input placeholder="请输入出账银行" v-model="formModel.issuingBank"></el-input>
+            </el-form-item>
+            <el-form-item label="入账银行" prop="accountBank">
+              <el-input placeholder="请输入入账银行" v-model="formModel.accountBank"></el-input>
+            </el-form-item>
+            <el-form-item label="转账单号" prop="singlNumber">
+              <el-input placeholder="请输入转账单号" v-model="formModel.singlNumber"></el-input>
+            </el-form-item>
+            <el-form-item label="保险代理人" prop="agentId">
+              <el-select
+                v-model="formModel.agentId"
+                filterable
+                placeholder="请选择"
+                style="width:300px"
+              >
+                <el-option
+                  v-for="agent in agentData"
+                  :key="agent.id "
+                  :label="agent.name"
+                  :value="agent.id"
+                ></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item prop="opinion">
+              <el-input
+                type="textarea"
+                :rows="8"
+                placeholder="请输入处理意见"
+                v-model="formModel.opinion"
+              ></el-input>
+            </el-form-item>
+            <el-form-item label="下一步骤" style="text-align:left;">
+              出单
+            </el-form-item>
+            <el-form-item>
+              <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
+              <el-button size="mini" type="primary" :loading="submiting" @click="saveApproval()">提交</el-button>
+            </el-form-item>
           </el-form>
         </el-main>
       </el-container>
@@ -292,7 +251,7 @@ export default {
       });
     },
     downloadFiles() {
-      approvalApi.downloadIdCardZip(this.policyId);
+      approvalApi.downloadPolicyZip(this.policyId);
     }
   },
   async mounted() {

+ 39 - 44
src/views/business/insurancePolicy-firstApproval.vue

@@ -3,7 +3,10 @@
     <el-breadcrumb separator=">">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
       <el-breadcrumb-item>
-        <a href="#">系统管理</a>
+        <a href="#">人才超市</a>
+      </el-breadcrumb-item>      
+      <el-breadcrumb-item>
+        <a href="#">下月投保审批</a>
       </el-breadcrumb-item>
       <el-breadcrumb-item>
         <a href="/businessInsuranceApplication">初审</a>
@@ -20,46 +23,28 @@
       <el-container>
         <el-main>
           <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'80px'">
-            <table>
-              <tr>
-                <td>当前步骤</td>
-                <td>{{insureData.statusN}}</td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="处理类型" prop="processStatus">
-                    <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
-                      <el-option label="通过" value="正常"></el-option>
-                      <el-option label="退回" value="回退"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item prop="opinion">
-                    <el-input
-                      type="textarea"
-                      :rows="20"
-                      placeholder="请输入内容"
-                      v-model="formModel.opinion"
-                    ></el-input>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td>下一步骤</td>
-                <td>复审</td>
-              </tr>
-              <tr>
-                <td>
-                  <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
-                </td>
-                <td>
-                  <el-button size="mini" type="primary" @click="saveApproval()">提交</el-button>
-                </td>
-              </tr>
-            </table>
+            <el-form-item label="当前步骤" style="text-align:left;">
+              {{policy.statusN}}
+            </el-form-item>
+            <el-form-item label="处理类型" prop="processStatus">
+              <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
+                <el-option label="通过" value="正常"></el-option>
+                <el-option label="退回" value="回退"></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item prop="opinion">
+              <el-input
+                type="textarea"
+                :rows="20"
+                placeholder="请输入内容"
+                v-model="formModel.opinion"
+              ></el-input>
+            </el-form-item>
+            <el-form-item label="下一步骤" style="text-align:left;">复审</el-form-item>
+            <el-form-item>
+              <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
+              <el-button size="mini" type="primary" :loading="submiting" @click="saveApproval()">提交</el-button>
+            </el-form-item>
           </el-form>
         </el-main>
       </el-container>
@@ -110,7 +95,10 @@ export default {
       id: "",
       definitionId: "",
       policyId: "",
-      insureData: "",
+      insureData: {
+        insurancePolicy: {}
+      },
+      policy: {},
       acceptData: [],
       formModel: {
         processStatus: "",
@@ -122,13 +110,15 @@ export default {
       totalPagesRecord: 0,
       totalElementsRecord: 0,
       filesData: [],
-      insuranceAgentlist: ""
+      insuranceAgentlist: "",
+      submiting: false
     };
   },
   methods: {
     insureDetail() {
       var self = this;
       self.definitionId = self.id;
+
       (function() {
         if (self.id.length == 0) {
           self.$message.error("没有传递ID");
@@ -144,6 +134,8 @@ export default {
           self.loading = false;
           if (jsonData.result) {
             self.insureData = jsonData.data;
+            self.policy = self.insureData.insurancePolicy;
+
           } else {
             self.$message.error(jsonData.message + "");
           }
@@ -167,8 +159,11 @@ export default {
             formData.append("processStatus", self.formModel.processStatus);
             formData.append("opinion", self.formModel.opinion);
 
+            self.submiting = true;
+
             return approvalApi.firstApproval(formData);
           })().then(function(response) {
+            self.submiting = false;
             var jsonData = response.data;
 
             if (jsonData.result) {
@@ -193,7 +188,7 @@ export default {
       });
     },
     downloadFiles() {
-      approvalApi.downloadIdCardZip(this.policyId);
+      approvalApi.downloadPolicyZip(this.policyId);
     }
   },
   async mounted() {

+ 66 - 96
src/views/business/insurancePolicy-issued.vue

@@ -3,7 +3,7 @@
     <el-breadcrumb separator=">">
       <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
       <el-breadcrumb-item>
-        <a href="#">系统管理</a>
+        <a href="#">PICC审批</a>
       </el-breadcrumb-item>
       <el-breadcrumb-item>
         <a href="/businessInsuranceApplication">出单</a>
@@ -17,100 +17,53 @@
       <el-aside width="70%">
         <leftTab></leftTab>
       </el-aside>
-
       <el-container>
         <el-main>
           <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'100px'">
-            <table>
-              <tr>
-                <td>当前步骤</td>
-                <td>{{policy.statusN}}</td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="处理类型" prop="processStatus">
-                    <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
-                      <el-option label="通过" value="正常"></el-option>
-                      <el-option label="退回" value="回退"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="应收保费">{{policy.insuranceFee}}</el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="出账银行">{{policy.issuingBank}}</el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="入账银行">{{policy.accountBank}}</el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="转账单号">{{policy.singlNumber}}</el-form-item>
-                </td>
-              </tr>
-              <!-- <tr>
-                <td colspan="2">
-                  <el-form-item label="推广员账号" prop="issuingBank">
-                    <el-input placeholder="请输入推广员账号" v-model="formModel.issuingBank"></el-input>
-                  </el-form-item>
-                </td>
-              </tr>-->
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="保险代理人">{{agent.name}}</el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="上传保单">
-                    <el-upload
-                      class="upload-demo"
-                      :action="uploadUrl"
-                      :data="uploadData"
-                      :headers="headers"
-                      name="uploadFile"
-                      :on-preview="handlePreview"
-                      :on-remove="handleFileRemove"
-                      :before-remove="beforeRemove"
-                      :multiple="false"
-                      :limit="1"
-                      :on-exceed="handleExceed"
-                      :on-success="handleUploadFileSuccess"
-                      :on-error="handleUploadError"
-                      :file-list="fileList"
-                    >
-                      <el-button size="small" type="primary">点击上传</el-button>
-                      <div slot="tip" class="el-upload__tip"></div>
-                    </el-upload>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td>下一步骤</td>
-                <td>已出单</td>
-              </tr>
-              <tr>
-                <td>
-                  <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
-                </td>
-                <td>
-                  <el-button size="mini" type="success" @click="downloadPDF()">下载电子保单版</el-button>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-button size="mini" type="primary" @click="saveApproval()">提交</el-button>
-                </td>
-              </tr>
-            </table>
+            <el-form-item label="当前步骤" style="text-align:left;">
+            {{policy.statusN}}
+            </el-form-item>
+            <el-form-item label="处理类型" prop="processStatus">
+              <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
+                <el-option label="通过" value="正常"></el-option>
+                <el-option label="退回" value="回退"></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item label="应收保费" style="text-align:left;">
+              {{policy.insuranceFee}}
+            </el-form-item>
+            <el-form-item label="出账银行" style="text-align:left;">{{policy.issuingBank}}</el-form-item>
+            <el-form-item label="入账银行" style="text-align:left;">{{policy.accountBank}}</el-form-item>
+            <el-form-item label="转账单号" style="text-align:left;">{{policy.singlNumber}}</el-form-item>
+            <el-form-item label="保险代理人" style="text-align:left;">{{agent.name}}</el-form-item>
+            <el-form-item label="上传保单" style="text-align:left;">
+              <el-upload
+                class="upload-demo"
+                :action="uploadUrl"
+                :data="uploadData"
+                :headers="headers"
+                name="uploadFile"
+                :on-preview="handlePreview"
+                :on-remove="handleFileRemove"
+                :before-remove="beforeRemove"
+                :multiple="false"
+                :limit="1"
+                :on-exceed="handleExceed"
+                :on-success="handleUploadFileSuccess"
+                :on-error="handleUploadError"
+                :file-list="fileList"
+              >
+                <el-button size="small" type="primary">点击上传</el-button>
+                <div slot="tip" class="el-upload__tip"></div>
+              </el-upload>
+            </el-form-item>
+            <el-form-item label="下一步骤" style="text-align:left;">
+              已出单
+            </el-form-item>
+            <el-form-item>
+              <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
+              <el-button size="mini" type="primary" :loading="submiting" @click="saveApproval()">提交</el-button>
+            </el-form-item>
           </el-form>
         </el-main>
       </el-container>
@@ -179,16 +132,18 @@ export default {
       fileList: [],
       filesData: [],
       insuranceAgentlist: "",
-      policy: "",
+      policy: {},
       agent:"",
       //上传地址
       uploadUrl: Constant.serverUrl + "/base/attachment/upload",
+      fileUrl:'',
       uploadData: {
         subFolder: "isuued"
       },
       headers: {
         Authorization: getToken()
-      }
+      },
+      submiting: false
     };
   },
   methods: {
@@ -237,6 +192,12 @@ export default {
         if (valid) {
           var self = this;
           var formModel = this.formModel;
+
+          if(self.fileUrl.length==0){
+            self.$message.error("请先上传保单!");
+            return;
+          }
+
           (function() {
             var formData = new FormData();
 
@@ -247,8 +208,11 @@ export default {
 
             formData.append("insurancePolicyFile", self.fileUrl);
 
+            self.submiting = true;
             return approvalApi.issued(formData);
           })().then(function(response) {
+            self.submiting = false;
+
             var jsonData = response.data;
 
             if (jsonData.result) {
@@ -274,7 +238,7 @@ export default {
     },
     downloadFiles() {
       //window.open(Constant.serverUrl + "/pub/attachment/downloadIdCardZip?policyId="  + this.policyId);
-      approvalApi.downloadIdCardZip(this.policyId);
+      approvalApi.downloadPdfZip(this.policyId);
     },
     downloadPDF() {
       // approvalApi.downloadPolicyPDF(self.id, self.policyId).then(response => {
@@ -292,7 +256,13 @@ export default {
     //上传文件
     handleUploadFileSuccess(response, file, fileList) {
       console.log(response);
-      this.fileUrl = response.data;
+
+      if(!!response.result){
+        this.fileUrl = response.data;
+      }
+      else{
+        this.$message.error(response.message || "上传文件失败!");
+      }
     },
     handleFileRemove(file, fileList) {
       console.log(file, fileList);

+ 22 - 12
src/views/business/insurancePolicy-leftTab.vue

@@ -76,14 +76,16 @@
             <el-table-column prop="companyMember.age" label="年龄" width="80"></el-table-column>
             <el-table-column prop="companyMember.jobName" label="岗位/工种" width="200"></el-table-column>
             <el-table-column prop="companyMember.healthStatus" label="健康状况" width="100"></el-table-column>
-            <el-table-column prop="companyMember.cardFiles" label="身份证正面照" width="120">
-              <template slot-scope="scope">
-                <a :href="scope.row.companyMember.cardFiles" target="_blank">
-                  <el-avatar
-                    size="small"
-                    :src="scope.row.companyMember.cardFiles+'?x-oss-process=image/resize,m_lfit,h_100,w_100'"
-                  ></el-avatar>
-                </a>
+            <el-table-column prop="companyMember.cardFiles" label="身份证" width="120">
+              <template slot-scope="{row}">
+                <template v-for="url in splitSep(row.companyMember.cardFiles,'|')">
+                  <a :href="url" target="_blank" :key="url">
+                    <el-avatar
+                      size="small"
+                      :src="url+'?x-oss-process=image/resize,m_lfit,h_100,w_100'"
+                    ></el-avatar>
+                  </a>
+                </template>
               </template>
             </el-table-column>
           </el-table>
@@ -161,9 +163,9 @@
             <el-table-column prop="index" label="序号" width="80"></el-table-column>
             <!-- <el-table-column prop="insuredNumber" label="附件类型" width="150"></el-table-column> -->
             <el-table-column prop="name" label="附件名称" width="500px"></el-table-column>
-            <el-table-column prop="file" label="操作" width="80">
-              <template slot-scope="scope">
-                <a :href="scope.row.file" target="_blank">下载</a>
+            <el-table-column label="操作" width="80">
+              <template slot-scope="{row}">
+                <a :href="row.url" target="_blank" style="cursor:pointer">下载</a>
               </template>
             </el-table-column>
           </el-table>
@@ -182,7 +184,7 @@
             </tr>
             <tr>
               <td>社会推广员</td>
-              <td>赵磊</td>
+              <td>赵磊1</td>
               <td>18600001111</td>
               <td>zhaolei001</td>
             </tr>
@@ -277,6 +279,14 @@ export default {
     };
   },
   methods: {
+    splitSep(arrStr,sep) {
+      if(arrStr==null || arrStr.length==0){
+        return [];
+      }
+      else{
+        return arrStr.split(sep);
+      }
+    },
     changePage(pageIndex) {
       var self = this;
 

+ 24 - 42
src/views/business/insurancePolicy-secondApproval.vue

@@ -20,47 +20,27 @@
 
       <el-container>
         <el-main>
-          <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'100px'">
-            <table>
-              <tr>
-                <td>当前步骤</td>
-                <td>{{policy.statusN}}</td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item label="处理类型" prop="processStatus">
-                    <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
-                      <el-option label="通过" value="正常"></el-option>
-                      <el-option label="退回" value="回退"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td colspan="2">
-                  <el-form-item prop="opinion">
-                    <el-input
-                      type="textarea"
-                      :rows="20"
-                      placeholder="请输入内容"
-                      v-model="formModel.opinion"
-                    ></el-input>
-                  </el-form-item>
-                </td>
-              </tr>
-              <tr>
-                <td>下一步骤</td>
-                <td>待制单</td>
-              </tr>
-              <tr>
-                <td>
-                  <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
-                </td>
-                <td>
-                  <el-button size="mini" type="primary" @click="saveApproval()">提交</el-button>
-                </td>
-              </tr>
-            </table>
+          <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'80px'">
+            <el-form-item label="当前步骤" style="text-align:left;">{{policy.statusN}}</el-form-item>
+            <el-form-item label="处理类型" prop="processStatus">
+              <el-select v-model="formModel.processStatus" placeholder="请选择" filterable>
+                <el-option label="通过" value="正常"></el-option>
+                <el-option label="退回" value="回退"></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item prop="opinion">
+              <el-input
+                type="textarea"
+                :rows="20"
+                placeholder="请输入内容"
+                v-model="formModel.opinion"
+              ></el-input>
+            </el-form-item>
+            <el-form-item label="下一步骤" style="text-align:left;">复审</el-form-item>
+            <el-form-item>
+              <el-button size="mini" type="success" @click="downloadFiles()">打包下载申请资料</el-button>
+              <el-button size="mini" type="primary" @click="saveApproval()">提交</el-button>
+            </el-form-item>
           </el-form>
         </el-main>
       </el-container>
@@ -111,7 +91,9 @@ export default {
       id: "",
       definitionId: "",
       policyId: "",
-      insureData: "",
+      insureData: {
+        insurancePolicy: {}
+      },
       acceptData: [],
       formModel: {
         processStatus: "",

+ 1 - 1
src/views/business/insurancePolicy-transfer.vue

@@ -259,7 +259,7 @@ export default {
       });
     },
     downloadFiles() {
-      approvalApi.downloadIdCardZip(this.policyId);
+      approvalApi.downloadPolicyZip(this.policyId);
     }
   },
   async mounted() {