Procházet zdrojové kódy

国任添加意外险

lihongxiao před 2 roky
rodič
revize
4977bbbfcc

+ 2 - 2
config/dev.env.js

@@ -5,9 +5,9 @@ const prodEnv = require('./prod.env')
 module.exports = merge(prodEnv, {
 module.exports = merge(prodEnv, {
   NODE_ENV: '"development"',
   NODE_ENV: '"development"',
   ENV_CONFIG:'"dev"',
   ENV_CONFIG:'"dev"',
-  BASE_URL: '"http://39.98.239.48/web-api"',//测试服务器
+  // BASE_URL: '"http://39.98.239.48/web-api"',//测试服务器
   // BASE_URL:'"http://sxzgkj.baoxianzhanggui.com/web-api"'//正式服务器
   // BASE_URL:'"http://sxzgkj.baoxianzhanggui.com/web-api"'//正式服务器
-  // BASE_URL: '"http://192.168.0.115:8080/"' //凯森
+  BASE_URL: '"http://192.168.0.115:8080/"' //凯森
   // BASE_URL: '"http:///192.168.0.106:8080/"',//田智
   // BASE_URL: '"http:///192.168.0.106:8080/"',//田智
 })
 })
 
 

+ 8 - 1
src/http/moudules/letter.js

@@ -573,7 +573,14 @@ export const pythongetDriving=(data)=>{
       data
       data
   })
   })
 }
 }
-
+// 国任驾意险
+export const syncNonAutoInsGuoren=(data)=>{
+    return axios({
+        url:"/api/guoRen/syncNonAutoIns",
+        method:"post",
+        data
+    })
+  }
 //永城缴费状态查询
 //永城缴费状态查询
 export const orderStatusyongcheng = (id) => {
 export const orderStatusyongcheng = (id) => {
     return axios({
     return axios({

+ 112 - 13
src/views/Letter/Letter.vue

@@ -975,8 +975,6 @@
                   </el-form-item>
                   </el-form-item>
                   <el-form-item label="保费:">
                   <el-form-item label="保费:">
                     <span>{{accidentForm.premium}}&ensp;元</span>
                     <span>{{accidentForm.premium}}&ensp;元</span>
-                    <!-- <el-input-number v-model="accidentForm.premium" :min="1"></el-input-number>
-                    <span style="margin-left: 5px;">元</span> -->
                   </el-form-item>
                   </el-form-item>
                 </el-form>
                 </el-form>
                 <el-table v-if="accidentForm.accidentType" size="small" :data="accidenttableData" border
                 <el-table v-if="accidentForm.accidentType" size="small" :data="accidenttableData" border
@@ -1001,7 +999,41 @@
                 </el-table>
                 </el-table>
               </div>
               </div>
             </template>
             </template>
-
+            <template v-if="reslistitem.namesimple == '国任财险' && reslistitem.checked && reslistitem.agreementId">
+              <div class="flex f-c Driving-risk">
+                <h3>意外险信息</h3>
+                <el-form :inline="true" :model="guoRenaccidentForm" class="demo-form-inline" size="small">
+                  <el-form-item label="意外险类型:" style="margin-right:30px;">
+                    <el-select clearable  placeholder="选择类型" @clear="clearAccidentFormGr"
+                    @change="grcxchange" v-model="guoRenaccidentForm.goodsCode">
+                      <el-option v-for="(item, index) in guoRenaccidentDataList" :key="index" :label="item.goodDesc"
+                        :value="item.goodId"></el-option>
+                    </el-select>
+                  </el-form-item>
+                  <el-form-item label=" " >
+                    <el-select clearable v-model="guoRenaccidentForm.prodCode"  v-loading="accidentLoading" 
+                      @change="grcxchangeChild">
+                      <el-option v-for="(item, index) in guoRenaccidentDataListChild" :key="item.prodCode" :label="item.prodCName" 
+                        :value="item.prodCode"></el-option>
+                    </el-select>
+                  </el-form-item>
+                  <el-form-item label="份数:" style="margin-right:30px;">
+                    <el-input-number  v-model="guoRenaccidentForm.quantity" @change="numberCopieschange" :min="1" :max="guoRenaccidentForm.policyNum"></el-input-number>
+                    <span style="margin-left: 5px;">份</span>
+                  </el-form-item>
+                  <el-form-item label="保费:">
+                    <span>{{guoRenaccidentForm.premium}}&ensp;元</span>
+                  </el-form-item>
+                </el-form>
+                <el-table v-if="guoRenaccidentForm.prodCode" size="small" :data="guoRenaccidenttableData" border
+                 ref="expandTable" highlight-current-row
+                  :header-cell-style="{ background: '#F2F7FC', fontWeight: '700', color: '#ee7000' }">
+                  <el-table-column prop="liabName" label="保险责任" align="center"></el-table-column>
+                  <el-table-column prop="liabAmount" label="保额 (元)" align="center"></el-table-column>
+                  <el-table-column prop="liabPremium" label="保费 (元)" align="center"></el-table-column>
+                </el-table>
+              </div>
+            </template>
             <template v-if="reslistitem.namesimple == '中煤财险' && reslistitem.checked && reslistitem.agreementId">
             <template v-if="reslistitem.namesimple == '中煤财险' && reslistitem.checked && reslistitem.agreementId">
               <div class="flex f-c Driving-risk accident-style zmDriving">
               <div class="flex f-c Driving-risk accident-style zmDriving">
                 <h3>意外险信息</h3>
                 <h3>意外险信息</h3>
@@ -1552,10 +1584,10 @@
         <div style="padding:0 20px">
         <div style="padding:0 20px">
           <div class="ORcode">
           <div class="ORcode">
             <div style="padding:5px;position: relative;">
             <div style="padding:5px;position: relative;">
-              <div v-show="['永安财险', '人保财险', '永诚财险', '中煤财险', '众安财险', '紫金财险', '国任财险','中国人寿'].includes(inscompany)" id="qrcode"
+              <div v-show="['永安财险', '人保财险', '永诚财险', '中煤财险', '众安财险', '紫金财险','中国人寿'].includes(inscompany)" id="qrcode"
                 ref="qrcode">
                 ref="qrcode">
               </div>
               </div>
-              <img v-show="['恒邦财险','安盛天平'].includes(inscompany)" :src="paycodeimg" alt style="width:100%" />
+              <img v-show="['恒邦财险','安盛天平','国任财险'].includes(inscompany)" :src="paycodeimg" alt style="width:100%" />
             </div>
             </div>
           </div>
           </div>
         </div>
         </div>
@@ -2128,10 +2160,19 @@ export default {
       accidentForm: {
       accidentForm: {
         fen: "1",
         fen: "1",
         premium:0
         premium:0
-      }, //意外险内容
+      }, //永诚意外险内容
       accidentDataList: [], //永诚意外险
       accidentDataList: [], //永诚意外险
+      guoRenaccidentDataList: [], //国任意外险
+      guoRenaccidenttableData: [],
+      guoRenaccidentDataListChild:[],
       accidenttableData: [],
       accidenttableData: [],
       accidentLoading: false,
       accidentLoading: false,
+      guoRenaccidentLoading: false,
+      guoRenaccidentPremium:'',
+      guoRenaccidentForm: {
+        quantity: "1",
+        premium:0
+      }, //国任意外险内容
       accidentPremium: "",
       accidentPremium: "",
       pickerOptions: {
       pickerOptions: {
         disabledDate(time) {
         disabledDate(time) {
@@ -3720,6 +3761,42 @@ export default {
       if(index){
       if(index){
         this.ZADrivingChange(this.ZRInsuranceData[0])
         this.ZADrivingChange(this.ZRInsuranceData[0])
       }
       }
+    },
+     // 国任选择意外险类型
+     async grcxchange(index) {
+      if(index){
+        this.accidentLoading=true
+        this.guoRenaccidentForm.quantity = "1";
+        this.guoRenaccidentForm.prodCode=""
+        let data = await this.$api.letter.syncNonAutoInsGuoren({
+          goodsCode: index,
+          agreementId:this.guoRenaccidentForm.agreementId
+        });
+        if (data.code == 200) {
+          this.accidentLoading=false
+          this.guoRenaccidentDataListChild = data.data;
+        }
+        else{
+          this.accidentLoading=false
+          this.$message.error(data.msg)
+          this.guoRenaccidentDataListChild=[]
+        }
+      }
+    
+
+    },
+     // 国任选择意外险子级类型
+     async grcxchangeChild(index) {
+      let list=this.guoRenaccidentDataListChild.find(val => val.prodCode == index)
+      this.guoRenaccidentForm={
+        ... this.guoRenaccidentForm,
+        premium:list.premium,
+        quantity:list.appnum,
+        riskCode:list.riskCode,
+        amount:list.amount,
+        policyNum:Number(list.policyNum) 
+      }
+      this.guoRenaccidenttableData=list.prodCvgLiabList
     },
     },
     // 选择意外险类型
     // 选择意外险类型
     async ywxxxchange(index) {
     async ywxxxchange(index) {
@@ -3845,6 +3922,14 @@ export default {
             }
             }
           });
           });
           break;
           break;
+          case '国任财险':
+          this.guoRenaccidentForm.agreementId = item.agreementId
+          this.$api.letter.syncNonAutoInsGuoren({ goodsCode: item.id, agreementId: item.agreementId }).then(res => {
+            if (res.code == 200) {
+              this.guoRenaccidentDataList = res.data;
+            }
+          });
+          break;
         case '紫金财险':
         case '紫金财险':
           this.$api.letter.zijinqueryVehicleProducts({ agreementId: val, seatCount: Number(this.carInfo.seatCount) }).then(res => {
           this.$api.letter.zijinqueryVehicleProducts({ agreementId: val, seatCount: Number(this.carInfo.seatCount) }).then(res => {
             if (res.code == 200) {
             if (res.code == 200) {
@@ -3970,6 +4055,14 @@ export default {
             }
             }
           });
           });
           break;
           break;
+        case '国任财险':
+          this.guoRenaccidentForm.agreementId = this.totalCompanyList[index].agreement[0].id;
+          this.$api.letter.syncNonAutoInsGuoren({ goodsCode: "", agreementId: this.totalCompanyList[index].agreement[0].id }).then(res => {
+            if (res.code == 200) {
+              this.guoRenaccidentDataList = res.data;
+            }
+          });
+          break;  
         case '紫金财险':
         case '紫金财险':
           this.$api.letter.zijinqueryVehicleProducts({ agreementId: this.totalCompanyList[index].agreement[0].id, seatCount: Number(this.carInfo.seatCount) }).then(res => {
           this.$api.letter.zijinqueryVehicleProducts({ agreementId: this.totalCompanyList[index].agreement[0].id, seatCount: Number(this.carInfo.seatCount) }).then(res => {
             if (res.code == 200) {
             if (res.code == 200) {
@@ -4034,6 +4127,15 @@ export default {
         premium:0
         premium:0
       };
       };
     },
     },
+    clearAccidentFormGr() {
+      this.guoRenaccidenttableData=[],
+      this.guoRenaccidentDataListChild=[]
+      this.guoRenaccidentForm = {
+        quantity: "1",
+        premium:0
+      };
+
+    },
     clearAccidentFormHB(){
     clearAccidentFormHB(){
       this.hengbangaccidentalDrivingVo={};
       this.hengbangaccidentalDrivingVo={};
     },
     },
@@ -4156,6 +4258,8 @@ export default {
     },
     },
     //报价
     //报价
     quote() {
     quote() {
+      console.log( this.guoRenaccidentForm,1111111)
+
       let starttime = new Date(this.carInfo.registerDate)
       let starttime = new Date(this.carInfo.registerDate)
       let endtime = new Date(this.carInfo.issueDate)
       let endtime = new Date(this.carInfo.issueDate)
       if (endtime < starttime) {
       if (endtime < starttime) {
@@ -4797,14 +4901,9 @@ export default {
     //国任报价
     //国任报价
     guoRen(num, id) {
     guoRen(num, id) {
       let accidentalDrivingVo = {};
       let accidentalDrivingVo = {};
-      if (this.accidentForm.id) {
-        let data = this.accidentDataList.find(
-          val => val.id == this.accidentForm.accidentType
-        );
+      if ( this.guoRenaccidentForm.goodsCode) {
         accidentalDrivingVo = {
         accidentalDrivingVo = {
-          rideRiskCode: data.code ? data.code : "",
-          rideRiskName: data.name ? data.name : "",
-          quantity: this.accidentForm.fen ? this.accidentForm.fen : ""
+          ...this.guoRenaccidentForm,
         };
         };
       }
       }
       let params = {
       let params = {

+ 7 - 5
src/views/Letter/Orderlist.vue

@@ -2015,16 +2015,15 @@ export default {
             case "人保财险":
             case "人保财险":
             case "中煤财险":
             case "中煤财险":
             case "永诚财险":
             case "永诚财险":
-            case "众安财险":
-            case "国任财险":
-            this.paycodeimg = res.data.paymentLink;
-              break;
             case "紫金财险":
             case "紫金财险":
               this.$nextTick(() => {
               this.$nextTick(() => {
                 this.creatQrCode(res.data.paymentLink);
                 this.creatQrCode(res.data.paymentLink);
               });
               });
               break;
               break;
-              case "中国人寿":
+            case "众安财险":
+            this.paycodeimg = res.data.paymentLink;
+              break;
+            case "中国人寿":
               this.$nextTick(() => {
               this.$nextTick(() => {
                 this.creatQrCode(res.data.paymentLink);
                 this.creatQrCode(res.data.paymentLink);
               });
               });
@@ -2032,6 +2031,9 @@ export default {
             case "恒邦财险":
             case "恒邦财险":
               this.paycodeimg = res.data.paymentLink;
               this.paycodeimg = res.data.paymentLink;
               break;
               break;
+            case "国任财险":
+            this.paycodeimg = res.data.paymentLink;
+              break;
             case "安盛天平":
             case "安盛天平":
               let anresult = res.data.paymentLink.replace(/[\r\n]/g, "");
               let anresult = res.data.paymentLink.replace(/[\r\n]/g, "");
               let animgBase64 = `data:image/png;base64,${anresult}`;
               let animgBase64 = `data:image/png;base64,${anresult}`;