فهرست منبع

Merge branch 'master' of http://223.75.76.159:9090/zq/picc-admin-portal

tomatozq 5 سال پیش
والد
کامیت
76f74675bb

+ 4 - 1
src/api/business/approval.js

@@ -89,11 +89,14 @@ function getPromoterAndAgent(formData) {
   return request.post(constant.serverUrl + "/insuranceApplication/getPromoterAndAgent", formData);
 }
 
+function rollbackOrder(formData) {
+  return request.post(constant.serverUrl + "/insurancePolicy/rollbackOrder", formData);
+}
 
 
 export default {
   pageList, insureDetail, acceptDetail, firstApproval, secondApproval, transfer,
   policyRecordPageList, attachmentList, issued, otherPageList,
   otherDetail, uploadFiles, loadInsuranceAgent, getPromoterAndAgent,
-  downloadPolicyPdf, downloadIdCardZip, downloadPolicyZip
+  downloadPolicyPdf, downloadIdCardZip, downloadPolicyZip,rollbackOrder
 }

+ 5 - 1
src/api/sys/dataDictionary.js

@@ -49,6 +49,10 @@ function queryChildren(formData) {
   return request.post(constant.serverUrl + "/sys/dataDictionary/queryChildren", formData);
 }
 
+function findByCatalogName(formData){
+  return request.post(constant.serverUrl + "/sys/dataDictionary/findByCatalogName", formData);
+}
+
 export default {
-  pageList, create, edit, add, update, remove, batchRemove,query,queryChildren
+  pageList, create, edit, add, update, remove, batchRemove,query,queryChildren,findByCatalogName
 }

+ 1 - 1
src/views/business/insuranceFirst-firstApproval.vue

@@ -38,7 +38,7 @@
                       style="position: absolute;width: 70%;right: 0;"
                     >
                       <el-option label="通过" value="正常"></el-option>
-                      <el-option label="退回" value="回退"></el-option>
+                      <el-option label="资料不齐" value="回退"></el-option>
                     </el-select>
                   </el-form-item>
                 </td>

+ 129 - 11
src/views/business/insuranceFirst-firstDetails.vue

@@ -87,6 +87,7 @@
                   <el-avatar
                     size="small"
                     :src="url+'?x-oss-process=image/resize,m_lfit,h_100,w_100'"
+                    :key="row.id"
                   ></el-avatar>
                 </a>
               </template>
@@ -150,12 +151,7 @@
         </table>
       </el-tab-pane>
       <el-tab-pane label="附件信息" name="30">
-        <el-table
-          :data="filesData"
-          style="width: 100%"
-          v-loading="loading"
-          stripe
-        >
+        <el-table :data="filesData" style="width: 100%" v-loading="loading" stripe>
           <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>
@@ -166,6 +162,50 @@
           </el-table-column>
         </el-table>
       </el-tab-pane>
+      <el-tab-pane label="推广信息" name="40">
+        <table border="1" style="border-collapse:collapse;width:60%">
+          <tr>
+            <td class="table-bak" width="180">人员类型</td>
+            <td class="table-bak">姓名</td>
+            <!-- <td>联系方式</td>
+            <td>注册账号</td>-->
+          </tr>
+          <tr>
+            <td>社会推广员</td>
+            <!-- <td class="table-bak">姓名</td>
+            <td>联系方式</td>-->
+            <td>{{promote.promoter}}</td>
+          </tr>
+          <tr>
+            <td>保险代理人</td>
+            <td>{{promote.agentName}}</td>
+            <!-- <td>联系方式</td>
+            <td></td>-->
+          </tr>
+        </table>
+      </el-tab-pane>
+      <el-tab-pane label="流程历史记录" name="50">
+        <el-table :data="recordData" style="width: 100%" v-loading="loading" stripe>
+          <el-table-column label="序号" type="index" width="100" align="center">
+            <template slot-scope="scope">
+              <span>{{(pageIndexRecord - 1) * pageSizeRecord + scope.$index + 1}}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="processStatus" label="审核状态" width="100"></el-table-column>
+          <el-table-column prop="statusN" label="审核步骤" width="100"></el-table-column>
+          <el-table-column prop="opinion" label="意见" width="500"></el-table-column>
+          <el-table-column prop="createTime" label="操作时间" width="150"></el-table-column>
+        </el-table>
+
+        <el-pagination
+          :current-page.sync="pageIndexRecord"
+          :total="totalElementsRecord"
+          :page-sizes="pageSizeList"
+          @current-change="changePageRecord"
+          @size-change="pageSizeChangeRecord"
+          layout="total, sizes, prev, pager, next, jumper"
+        ></el-pagination>
+      </el-tab-pane>
     </el-tabs>
   </el-dialog>
 </template>
@@ -202,15 +242,15 @@ export default {
       totalPagesRecord: 0,
       totalElementsRecord: 0,
       filesData: [],
-      insuranceAgentlist: ""
+      insuranceAgentlist: "",
+      promote: []
     };
   },
   methods: {
-    splitSep(arrStr,sep) {
-      if(arrStr==null || arrStr.length==0){
+    splitSep(arrStr, sep) {
+      if (arrStr == null || arrStr.length == 0) {
         return [];
-      }
-      else{
+      } else {
         return arrStr.split(sep);
       }
     },
@@ -224,6 +264,10 @@ export default {
         this.acceptDetail();
       } else if (tab.name == "30") {
         this.attachmentList();
+      } else if (tab.name == "40") {
+        this.loadPromoterAndAgent();
+      } else if (tab.name == "50") {
+        this.changePageRecord(1);
       }
     },
     changePage(pageIndex) {
@@ -344,6 +388,80 @@ export default {
           self.loading = false;
           // self.$message.error(error + "");
         });
+    },
+    loadPromoterAndAgent() {
+      var self = this;
+
+      self.loading = true;
+
+      var formData = new FormData();
+
+      formData.append("applicationId", self.id);
+      formData.append("policyId", self.policyId);
+      formData.append("id", self.policyId);
+
+      approvalApi
+        .getPromoterAndAgent(formData)
+        .then(function(response) {
+          self.loading = false;
+
+          var jsonData = response.data.data;
+          self.promote = jsonData;
+        })
+        .catch(error => {
+          self.loading = false;
+          // self.$message.error(error + "");
+        });
+    },
+    changePageRecord(pageIndexRecord) {
+      var self = this;
+
+      self.loading = true;
+
+      self.pageIndexRecord = pageIndexRecord;
+      var formData = new FormData();
+
+      formData.append("pageIndex", self.pageIndexRecord);
+      formData.append("pageSize", self.pageSizeRecord);
+
+      formData.append("applicationId", self.id);
+      formData.append("policyId", self.policyId);
+
+      if (this.field != null) {
+        formData.append("field", this.field);
+      }
+
+      if (this.direction != null) {
+        formData.append("direction", this.direction);
+      }
+
+      approvalApi
+        .policyRecordPageList(formData)
+        .then(function(response) {
+          self.loading = false;
+
+          var jsonData = response.data.data;
+
+          self.recordData = jsonData.data;
+          self.totalPagesRecord = jsonData.totalPages;
+          self.totalElementsRecord = jsonData.recordsTotal;
+        })
+        .catch(error => {
+          self.loading = false;
+          // self.$message.error(error + "");
+        });
+    },
+    pageSizeChangeRecord(pageSize) {
+      this.pageSize = pageSize;
+    },
+    sortChangeRecord(data) {
+      this.field = data.column.field;
+      this.direction = data.order;
+
+      this.changePageRecord(this.pageIndex);
+    },
+    handleSelectionChangeRecord(val) {
+      this.multipleSelection = val;
     }
   },
   async mounted() {

+ 2 - 2
src/views/business/insuranceFirst-issued.vue

@@ -28,8 +28,8 @@
             </el-form-item>
             <el-form-item label="应收保费" style="text-align:left;">{{policy.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;">{{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.issuingBankN}}</el-form-item>
+            <el-form-item label="入账银行" style="text-align:left;">{{policy.accountBankN}}</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;">

+ 1 - 0
src/views/business/insuranceFirst-leftTab.vue

@@ -83,6 +83,7 @@
                     <el-avatar
                       size="small"
                       :src="url+'?x-oss-process=image/resize,m_lfit,h_100,w_100'"
+                      :key="row.id"
                     ></el-avatar>
                   </a>
                 </template>

+ 37 - 4
src/views/business/insuranceFirst-list.vue

@@ -30,6 +30,9 @@
           ></el-option>
         </el-select>
       </el-form-item>
+      <el-form-item label="投保单号" prop="policyNo">
+        <el-input type="text" size="mini" v-model="queryModel.policyNo"></el-input>
+      </el-form-item>
       <el-form-item label="投保企业" prop="companyName">
         <el-input type="text" size="mini" v-model="queryModel.companyName"></el-input>
       </el-form-item>
@@ -64,8 +67,9 @@
     <el-divider></el-divider>
     <el-tabs type="card" activeName @tab-click="handleClick">
       <el-tab-pane label="全部" name></el-tab-pane>
-      <el-tab-pane label="待初审" name="20"></el-tab-pane>
-      <el-tab-pane label="待复审" name="30"></el-tab-pane>
+      <el-tab-pane label="人才超市核准" name="20"></el-tab-pane>
+      <el-tab-pane label="材料不齐" name="15"></el-tab-pane>
+      <el-tab-pane label="中国人保审核" name="30"></el-tab-pane>
       <el-tab-pane label="待缴费" name="40"></el-tab-pane>
       <el-tab-pane label="待制单" name="50"></el-tab-pane>
       <el-tab-pane label="待出单" name="60"></el-tab-pane>
@@ -82,6 +86,8 @@
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column prop="statusN" label="投保单状态" width="100"></el-table-column>
         <el-table-column prop="definitionName" label="保险种类" width="180"></el-table-column>
+        <el-table-column prop="policyNo" label="投保单号" width="180"></el-table-column>
+        <el-table-column prop="finishTime" label="出单时间" width="180"></el-table-column>
         <el-table-column prop="companyName" label="投保企业" width="180"></el-table-column>
         <!-- <el-table-column prop="insuredName" label="投保人姓名" width="180"></el-table-column> -->
         <!-- <el-table-column prop="insuredTel" label="联系电话" width="180"></el-table-column>-->
@@ -97,6 +103,9 @@
         <el-table-column label="操作" width="250" fixed="right">
           <template slot-scope="{row}">
             <el-button size="mini" @click="openFirstDetails(row)">查看详情</el-button>&#12288;&#12288;
+            <span v-if="row.status=='15'">
+              <el-button size="mini" type="primary" @click="returnFirst(row)">返回初审</el-button>
+            </span>
             <span v-if="row.status=='20'">
               <el-button size="mini" type="primary" @click="openFirstApproval(row)">处理</el-button>
             </span>
@@ -125,6 +134,7 @@ import Constant from "@/constant";
 import firstDetails from "./insuranceFirst-firstDetails";
 import insuranceApplicationApi from "@/api/business/insuranceApplication";
 import insuranceDefinitionApi from "@/api/base/insuranceDefinition";
+import approvalApi from "@/api/business/approval";
 
 import NProgress from "nprogress"; // progress bar
 import "nprogress/nprogress.css"; // progress bar style
@@ -148,7 +158,8 @@ export default {
         number: "",
         insuranceFee: "",
         status: "",
-        userType: ""
+        userType: "",
+        policyNo:""
       },
       loading: false,
       tableData: [],
@@ -186,6 +197,7 @@ export default {
       formData.append("startTime", self.queryModel.startTime);
       formData.append("endTime", self.queryModel.endTime);
       formData.append("insuranceFee", self.queryModel.insuranceFee);
+      formData.append("policyNo", self.queryModel.policyNo);
 
       formData.append("status", this.tabStatus);
       formData.append("userType", "0");
@@ -217,7 +229,7 @@ export default {
     pageSizeChange(pageSize) {
       this.pageSize = pageSize;
 
-      this.$nextTick(()=>{
+      this.$nextTick(() => {
         this.changePage(this.pageIndex);
       });
     },
@@ -317,6 +329,27 @@ export default {
       } else if (this.tabStatus == "50") {
         //带制单50
       }
+    },
+    returnFirst(record) {
+      //返回初审20
+      var status = "20";
+      var formData = new FormData();
+      formData.append("applicationId", record.id);
+      formData.append("policyId", "");
+      formData.append("status", status);
+
+      approvalApi.rollbackOrder(formData).then(function(response) {
+        var jsonData = response.data;
+
+        if (jsonData.result) {
+          self.changePage(self.pageIndex);
+
+          self.$message({
+            type: "success",
+            message: "返回成功!"
+          });
+        }
+      });
     }
   },
   mounted: function() {

+ 10 - 3
src/views/business/insuranceFirst-listPicc.vue

@@ -30,6 +30,9 @@
           ></el-option>
         </el-select>
       </el-form-item>
+      <el-form-item label="投保单号" prop="policyNo">
+        <el-input type="text" size="mini" v-model="queryModel.policyNo"></el-input>
+      </el-form-item>
       <el-form-item label="投保企业" prop="companyName">
         <el-input type="text" size="mini" v-model="queryModel.companyName"></el-input>
       </el-form-item>
@@ -58,7 +61,7 @@
     <el-divider></el-divider>
     <el-tabs type="card" activeName @tab-click="handleClick">
       <el-tab-pane label="全部" name></el-tab-pane>
-      <el-tab-pane label="待复审" name="30"></el-tab-pane>
+      <el-tab-pane label="中国人保审核" name="30"></el-tab-pane>
       <el-tab-pane label="待出单" name="60"></el-tab-pane>
       <el-tab-pane label="已出单" name="70"></el-tab-pane>
       <el-table
@@ -72,6 +75,8 @@
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column prop="statusN" label="投保单状态" width="100"></el-table-column>
         <el-table-column prop="definitionName" label="保险种类" width="180"></el-table-column>
+        <el-table-column prop="policyNo" label="投保单号" width="180"></el-table-column>
+        <el-table-column prop="finishTime" label="出单时间" width="180"></el-table-column>
         <el-table-column prop="companyName" label="投保企业" width="180"></el-table-column>
         <!-- <el-table-column prop="insuredName" label="投保人姓名" width="180"></el-table-column> -->
         <!--<el-table-column prop="insuredTel" label="联系电话" width="180"></el-table-column>-->
@@ -137,7 +142,8 @@ export default {
         number: "",
         insuranceFee: "",
         status: "",
-        userType: ""
+        userType: "",
+        policyNo: ""
       },
       loading: false,
       tableData: [],
@@ -175,6 +181,7 @@ export default {
       formData.append("startTime", self.queryModel.startTime);
       formData.append("endTime", self.queryModel.endTime);
       formData.append("insuranceFee", self.queryModel.insuranceFee);
+      formData.append("policyNo", self.queryModel.policyNo);
 
       formData.append("status", this.tabStatus);
       formData.append("userType", "1"); //PICC
@@ -206,7 +213,7 @@ export default {
     pageSizeChange(pageSize) {
       this.pageSize = pageSize;
 
-      this.$nextTick(()=>{
+      this.$nextTick(() => {
         this.changePage(this.pageIndex);
       });
     },

+ 1 - 1
src/views/business/insuranceFirst-secondApproval.vue

@@ -30,7 +30,7 @@
             <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-option label="返回上一步" value="回退"></el-option>
               </el-select>
             </el-form-item>
             <el-form-item prop="opinion">

+ 56 - 5
src/views/business/insuranceFirst-transfer.vue

@@ -28,13 +28,39 @@
             </el-form-item>
             <el-form-item label="应收保费" style="text-align:left;">{{policy.insuranceFee}}</el-form-item>
             <el-form-item label="出账银行" prop="issuingBank">
-              <el-input placeholder="请输入出账银行" v-model="formModel.issuingBank"></el-input>
+              <el-select
+                v-model="formModel.issuingBank"
+                filterable
+                placeholder="请选择"
+                style="width:200px"
+                size="mini"
+              >
+                <el-option
+                  v-for="result in issuingBankData"
+                  :key="result.id"
+                  :label="result.name"
+                  :value="result.value"
+                ></el-option>
+              </el-select>
             </el-form-item>
             <el-form-item label="入账银行" prop="accountBank">
-              <el-input placeholder="请输入入账银行" v-model="formModel.accountBank"></el-input>
+              <el-select
+                v-model="formModel.accountBank"
+                filterable
+                placeholder="请选择"
+                style="width:200px"
+                size="mini"
+              >
+                <el-option
+                  v-for="result in accountBankData"
+                  :key="result.id"
+                  :label="result.name"
+                  :value="result.value"
+                ></el-option>
+              </el-select>
             </el-form-item>
             <el-form-item label="转账单号" prop="singlNumber">
-              <el-input placeholder="请输入转账单号" v-model="formModel.singlNumber"></el-input>
+              <el-input placeholder="请输入转账单号" v-model="formModel.singlNumber" style="width:50%"></el-input>
             </el-form-item>
             <el-form-item label="保险代理人" prop="agentId">
               <el-select
@@ -70,6 +96,7 @@ import Constant from "@/constant";
 import insuranceApplicationApi from "@/api/business/insuranceApplication";
 import approvalApi from "@/api/business/approval";
 import insuranceAgentApi from "@/api/base/insuranceAgent";
+import dataDictionaryApi from "@/api/sys/dataDictionary";
 // 显示当月投保信息
 import leftTab from "./insurancePolicy-leftTab.vue";
 
@@ -158,7 +185,9 @@ export default {
       insuranceAgentlist: "",
       policy: {},
       agentData: [],
-      submiting: false
+      submiting: false,
+      accountBankData: [],
+      issuingBank: []
     };
   },
   methods: {
@@ -287,6 +316,26 @@ export default {
     },
     downloadFiles() {
       approvalApi.downloadPolicyZip(this.policyId);
+    },
+    loadAccountBank() {
+      var formData = new FormData();
+
+      formData.append("catalogName", "入账银行");
+
+      dataDictionaryApi.findByCatalogName(formData).then(response => {
+        var jsonData = response.data;
+        this.accountBankData = jsonData.data;
+      });
+    },
+    loadIssuingBank() {
+      var formData = new FormData();
+
+      formData.append("catalogName", "出账银行");
+
+      dataDictionaryApi.findByCatalogName(formData).then(response => {
+        var jsonData = response.data;
+        this.issuingBankData = jsonData.data;
+      });
     }
   },
   async mounted() {
@@ -294,8 +343,10 @@ export default {
     self.loading = true;
 
     self.id = this.$route.query.id;
-    self.formModel.processStatus="正常";
+    self.formModel.processStatus = "正常";
     this.insureDetail();
+    this.loadIssuingBank();
+    this.loadAccountBank();
   }
 };
 </script>

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

@@ -29,7 +29,7 @@
             <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-option label="资料不齐" value="回退"></el-option>
               </el-select>
             </el-form-item>
             <el-form-item prop="opinion">

+ 83 - 12
src/views/business/insurancePolicy-firstDetails.vue

@@ -87,6 +87,7 @@
                   <el-avatar
                     size="small"
                     :src="url+'?x-oss-process=image/resize,m_lfit,h_100,w_100'"
+                    :key="row.id"
                   ></el-avatar>
                 </a>
               </template>
@@ -145,17 +146,14 @@
           </tr>
           <tr>
             <td colspan="2" class="table-bak">保险期间</td>
-            <td colspan="4">自 {{insureData.insurancePolicy.startTime}} 零时起 至 {{insureData.insurancePolicy.endTime}} 二十四时止。</td>
+            <td
+              colspan="4"
+            >自 {{insureData.insurancePolicy.startTime}} 零时起 至 {{insureData.insurancePolicy.endTime}} 二十四时止。</td>
           </tr>
         </table>
       </el-tab-pane>
       <el-tab-pane label="附件信息" name="30">
-        <el-table
-          :data="filesData"
-          style="width: 100%"
-          v-loading="loading"
-          stripe
-        >
+        <el-table :data="filesData" style="width: 100%" v-loading="loading" stripe>
           <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>
@@ -166,6 +164,50 @@
           </el-table-column>
         </el-table>
       </el-tab-pane>
+      <el-tab-pane label="推广信息" name="40">
+        <table border="1" style="border-collapse:collapse;width:60%">
+          <tr>
+            <td class="table-bak" width="180">人员类型</td>
+            <td class="table-bak">姓名</td>
+            <!-- <td>联系方式</td>
+            <td>注册账号</td>-->
+          </tr>
+          <tr>
+            <td>社会推广员</td>
+            <!-- <td class="table-bak">姓名</td>
+            <td>联系方式</td>-->
+            <td>{{promote.promoter}}</td>
+          </tr>
+          <tr>
+            <td>保险代理人</td>
+            <td>{{promote.agentName}}</td>
+            <!-- <td>联系方式</td>
+            <td></td>-->
+          </tr>
+        </table>
+      </el-tab-pane>
+      <el-tab-pane label="流程历史记录" name="50">
+        <el-table :data="recordData" style="width: 100%" v-loading="loading" stripe>
+          <el-table-column label="序号" type="index" width="100" align="center">
+            <template slot-scope="scope">
+              <span>{{(pageIndexRecord - 1) * pageSizeRecord + scope.$index + 1}}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="processStatus" label="审核状态" width="100"></el-table-column>
+          <el-table-column prop="statusN" label="审核步骤" width="100"></el-table-column>
+          <el-table-column prop="opinion" label="意见" width="500"></el-table-column>
+          <el-table-column prop="createTime" label="操作时间" width="150"></el-table-column>
+        </el-table>
+
+        <el-pagination
+          :current-page.sync="pageIndexRecord"
+          :total="totalElementsRecord"
+          :page-sizes="pageSizeList"
+          @current-change="changePageRecord"
+          @size-change="pageSizeChangeRecord"
+          layout="total, sizes, prev, pager, next, jumper"
+        ></el-pagination>
+      </el-tab-pane>
     </el-tabs>
   </el-dialog>
 </template>
@@ -201,15 +243,15 @@ export default {
       totalPagesRecord: 0,
       totalElementsRecord: 0,
       filesData: [],
-      insuranceAgentlist: ""
+      insuranceAgentlist: "",
+      promote: []
     };
   },
   methods: {
-    splitSep(arrStr,sep) {
-      if(arrStr==null || arrStr.length==0){
+    splitSep(arrStr, sep) {
+      if (arrStr == null || arrStr.length == 0) {
         return [];
-      }
-      else{
+      } else {
         return arrStr.split(sep);
       }
     },
@@ -223,6 +265,10 @@ export default {
         this.acceptDetail();
       } else if (tab.name == "30") {
         this.attachmentList();
+      } else if (tab.name == "40") {
+        this.loadPromoterAndAgent();
+      } else if (tab.name == "50") {
+        this.changePageRecord(1);
       }
     },
     changePage(pageIndex) {
@@ -328,6 +374,31 @@ export default {
           self.$message.error(error + "");
         });
     },
+
+    loadPromoterAndAgent() {
+      var self = this;
+
+      self.loading = true;
+
+      var formData = new FormData();
+
+      formData.append("applicationId", self.id);
+      formData.append("policyId", self.policyId);
+      formData.append("id", self.policyId);
+
+      approvalApi
+        .getPromoterAndAgent(formData)
+        .then(function(response) {
+          self.loading = false;
+
+          var jsonData = response.data.data;
+          self.promote = jsonData;
+        })
+        .catch(error => {
+          self.loading = false;
+          // self.$message.error(error + "");
+        });
+    },
     changePageRecord(pageIndexRecord) {
       var self = this;
 

+ 2 - 2
src/views/business/insurancePolicy-issued.vue

@@ -27,8 +27,8 @@
               </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.issuingBankN}}</el-form-item>
+            <el-form-item label="入账银行" style="text-align:left;">{{policy.accountBankN}}</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;">

+ 1 - 0
src/views/business/insurancePolicy-leftTab.vue

@@ -83,6 +83,7 @@
                     <el-avatar
                       size="small"
                       :src="url+'?x-oss-process=image/resize,m_lfit,h_100,w_100'"
+                      :key="row.id"
                     ></el-avatar>
                   </a>
                 </template>

+ 38 - 5
src/views/business/insurancePolicy-list.vue

@@ -30,6 +30,9 @@
           ></el-option>
         </el-select>
       </el-form-item>
+      <el-form-item label="投保单号" prop="policyNo">
+        <el-input type="text" size="mini" v-model="queryModel.policyNo"></el-input>
+      </el-form-item>
       <el-form-item label="投保企业" prop="companyName">
         <el-input type="text" size="mini" v-model="queryModel.companyName"></el-input>
       </el-form-item>
@@ -58,8 +61,9 @@
     <el-divider></el-divider>
     <el-tabs type="card" activeName @tab-click="handleClick">
       <el-tab-pane label="全部" name></el-tab-pane>
-      <el-tab-pane label="待初审" name="20"></el-tab-pane>
-      <el-tab-pane label="待复审" name="30"></el-tab-pane>
+      <el-tab-pane label="人才超市核准" name="20"></el-tab-pane>
+      <el-tab-pane label="材料不齐" name="15"></el-tab-pane>
+      <el-tab-pane label="中国人保审核" name="30"></el-tab-pane>
       <el-tab-pane label="待缴费" name="40"></el-tab-pane>
       <el-tab-pane label="待制单" name="50"></el-tab-pane>
       <el-tab-pane label="待出单" name="60"></el-tab-pane>
@@ -75,6 +79,8 @@
       >
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column prop="application.definitionName" label="保险种类" width="180"></el-table-column>
+        <el-table-column prop="policyNo" label="投保单号" width="180"></el-table-column>
+        <el-table-column prop="finishTime" label="出单时间" width="180"></el-table-column>
         <el-table-column prop="application.companyName" label="投保企业" width="180"></el-table-column>
         <!-- <el-table-column prop="application.insuredName" label="投保人姓名" width="180"></el-table-column>
         <el-table-column prop="application.insuredTel" label="联系电话" width="180"></el-table-column>-->
@@ -90,6 +96,9 @@
         <el-table-column label="操作" width="320" fixed="right">
           <template slot-scope="{row}">
             <el-button size="mini" @click="openPolicyDetails(row)">查看详情</el-button>&#12288;&#12288;
+            <span v-if="row.policy.status=='15'">
+              <el-button size="mini" type="primary" @click="returnFirst(row)">返回初审</el-button>
+            </span>
             <span v-if="row.policy.status=='20'">
               <el-button size="mini" type="primary" @click="openFirstApproval(row)">处理</el-button>
             </span>
@@ -146,7 +155,8 @@ export default {
         insuranceFee: "",
         status: "",
         userType: "",
-        applicationId: ""
+        applicationId: "",
+        policyNo:""
       },
       loading: false,
       tableData: [],
@@ -187,6 +197,7 @@ export default {
       formData.append("startTime", self.queryModel.startTime);
       formData.append("endTime", self.queryModel.endTime);
       formData.append("insuranceFee", self.queryModel.insuranceFee);
+      formData.append("policyNo", self.queryModel.policyNo);
 
       formData.append("status", this.tabStatus);
       formData.append("userType", "0");
@@ -217,8 +228,8 @@ export default {
     },
     pageSizeChange(pageSize) {
       this.pageSize = pageSize;
-    
-      this.$nextTick(()=>{
+
+      this.$nextTick(() => {
         this.changePage(this.pageIndex);
       });
     },
@@ -319,6 +330,28 @@ export default {
       } else if (this.tabStatus == "50") {
         //带制单50
       }
+    },
+    returnFirst(record) {
+      //返回初审20
+      var self = this;
+      var status = "20";
+      var formData = new FormData();
+      formData.append("applicationId", record.application.id);
+      formData.append("policyId", record.policy.id);
+      formData.append("status", status);
+
+      approvalApi.rollbackOrder(formData).then(function(response) {
+        var jsonData = response.data;
+
+        if (jsonData.result) {
+          self.changePage(self.pageIndex);
+
+          self.$message({
+            type: "success",
+            message: "返回成功!"
+          });
+        }
+      });
     }
   },
   mounted: function() {

+ 9 - 2
src/views/business/insurancePolicy-listPicc.vue

@@ -30,6 +30,9 @@
           ></el-option>
         </el-select>
       </el-form-item>
+      <el-form-item label="投保单号" prop="policyNo">
+        <el-input type="text" size="mini" v-model="queryModel.policyNo"></el-input>
+      </el-form-item>
       <el-form-item label="投保企业" prop="companyName">
         <el-input type="text" size="mini" v-model="queryModel.companyName"></el-input>
       </el-form-item>
@@ -58,7 +61,7 @@
     <el-divider></el-divider>
     <el-tabs type="card" activeName @tab-click="handleClick">
       <el-tab-pane label="全部" name></el-tab-pane>
-      <el-tab-pane label="待复审" name="30"></el-tab-pane>
+      <el-tab-pane label="中国人保审核" name="30"></el-tab-pane>
       <el-tab-pane label="待出单" name="60"></el-tab-pane>
       <el-tab-pane label="已出单" name="70"></el-tab-pane>
       <el-table
@@ -71,6 +74,8 @@
       >
         <el-table-column type="selection" width="55"></el-table-column>
         <el-table-column prop="application.definitionName" label="保险种类" width="180"></el-table-column>
+        <el-table-column prop="policyNo" label="投保单号" width="180"></el-table-column>
+        <el-table-column prop="finishTime" label="出单时间" width="180"></el-table-column>
         <el-table-column prop="application.companyName" label="投保企业" width="180"></el-table-column>
         <!-- <el-table-column prop="application.insuredName" label="投保人姓名" width="180"></el-table-column>
         <el-table-column prop="application.insuredTel" label="联系电话" width="180"></el-table-column>-->
@@ -142,7 +147,8 @@ export default {
         number: "",
         insuranceFee: "",
         status: "",
-        userType: ""
+        userType: "",
+        policyNo:""
       },
       loading: false,
       tableData: [],
@@ -182,6 +188,7 @@ export default {
       formData.append("startTime", self.queryModel.startTime);
       formData.append("endTime", self.queryModel.endTime);
       formData.append("insuranceFee", self.queryModel.insuranceFee);
+      formData.append("policyNo", self.queryModel.policyNo);
 
       formData.append("status", this.tabStatus);
       formData.append("userType", "1"); //PICC

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

@@ -25,7 +25,7 @@
             <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-option label="返回上一步" value="回退"></el-option>
               </el-select>
             </el-form-item>
             <el-form-item prop="opinion">

+ 56 - 5
src/views/business/insurancePolicy-transfer.vue

@@ -29,13 +29,39 @@
             </el-form-item>
             <el-form-item label="应收保费" style="text-align:left;">{{policy.insuranceFee}}</el-form-item>
             <el-form-item label="出账银行" prop="issuingBank">
-              <el-input placeholder="请输入出账银行" v-model="formModel.issuingBank"></el-input>
+              <el-select
+                v-model="formModel.issuingBank"
+                filterable
+                placeholder="请选择"
+                style="width:200px"
+                size="mini"
+              >
+                <el-option
+                  v-for="result in issuingBankData"
+                  :key="result.id"
+                  :label="result.name"
+                  :value="result.value"
+                ></el-option>
+              </el-select>
             </el-form-item>
             <el-form-item label="入账银行" prop="accountBank">
-              <el-input placeholder="请输入入账银行" v-model="formModel.accountBank"></el-input>
+              <el-select
+                v-model="formModel.accountBank"
+                filterable
+                placeholder="请选择"
+                style="width:200px"
+                size="mini"
+              >
+                <el-option
+                  v-for="result in accountBankData"
+                  :key="result.id"
+                  :label="result.name"
+                  :value="result.value"
+                ></el-option>
+              </el-select>
             </el-form-item>
             <el-form-item label="转账单号" prop="singlNumber">
-              <el-input placeholder="请输入转账单号" v-model="formModel.singlNumber"></el-input>
+              <el-input placeholder="请输入转账单号" v-model="formModel.singlNumber" style="width:50%"></el-input>
             </el-form-item>
             <el-form-item label="保险代理人" prop="agentId">
               <el-select
@@ -71,6 +97,7 @@ import Constant from "@/constant";
 import insuranceApplicationApi from "@/api/business/insuranceApplication";
 import approvalApi from "@/api/business/approval";
 import insuranceAgentApi from "@/api/base/insuranceAgent";
+import dataDictionaryApi from "@/api/sys/dataDictionary";
 import leftTab from "./insurancePolicy-leftTab.vue";
 import NProgress from "nprogress"; // progress bar
 import "nprogress/nprogress.css"; // progress bar style
@@ -157,7 +184,9 @@ export default {
       insuranceAgentlist: "",
       policy: {},
       agentData: [],
-      submiting: false
+      submiting: false,
+      accountBankData: [],
+      issuingBank: []
     };
   },
   methods: {
@@ -289,6 +318,26 @@ export default {
     },
     downloadFiles() {
       approvalApi.downloadPolicyZip(this.policyId);
+    },
+    loadAccountBank() {
+      var formData = new FormData();
+
+      formData.append("catalogName", "入账银行");
+
+      dataDictionaryApi.findByCatalogName(formData).then(response => {
+        var jsonData = response.data;
+        this.accountBankData = jsonData.data;
+      });
+    },
+    loadIssuingBank() {
+      var formData = new FormData();
+
+      formData.append("catalogName", "出账银行");
+
+      dataDictionaryApi.findByCatalogName(formData).then(response => {
+        var jsonData = response.data;
+        this.issuingBankData = jsonData.data;
+      });
     }
   },
   async mounted() {
@@ -297,8 +346,10 @@ export default {
 
     self.id = this.$route.query.id;
     self.policyId = this.$route.query.policyId;
-    self.formModel.processStatus="正常";
+    self.formModel.processStatus = "正常";
     this.insureDetail();
+    this.loadIssuingBank();
+    this.loadAccountBank();
   }
 };
 </script>