Просмотр исходного кода

1.修复驾意险删除报价时依旧传的bug
2.驾意险开发 默认选中情况 功能

祁鹏飞 3 месяцев назад
Родитель
Сommit
72e061f48a
2 измененных файлов с 17 добавлено и 14 удалено
  1. 1 1
      src/layouts/components/DrivingType/index.vue
  2. 16 13
      src/views/insurancePolicy/index.vue

+ 1 - 1
src/layouts/components/DrivingType/index.vue

@@ -171,7 +171,7 @@ const initEditData = (data, index, id) => {
         })
         })
       }
       }
       JYXList.value = res.data
       JYXList.value = res.data
-      if(data && data.length > 0) {
+      if(data && Array.isArray(data)) {
         // data.forEach(item => {
         // data.forEach(item => {
         //   item.checked = true
         //   item.checked = true
         // })
         // })

+ 16 - 13
src/views/insurancePolicy/index.vue

@@ -975,7 +975,8 @@
                                   <el-option v-for="item in props.row.options" :label="item.label"
                                   <el-option v-for="item in props.row.options" :label="item.label"
                                     :value="item.value"></el-option>
                                     :value="item.value"></el-option>
                                 </el-select>
                                 </el-select>
-                                <span v-if="props.row.kindName == '乘客责任险'">*{{ insurancePolicyForm.seatCount - 1 }}/座</span>
+                                <span v-if="props.row.kindName == '乘客责任险'">*{{ insurancePolicyForm.seatCount - 1
+                                  }}/座</span>
                               </div>
                               </div>
                             </template>
                             </template>
                           </el-table-column>
                           </el-table-column>
@@ -1033,7 +1034,7 @@
                               </el-icon>
                               </el-icon>
                             </template>
                             </template>
                             <template #default="props">
                             <template #default="props">
-                              <el-icon @click="handleDrivingDel(scope, props)">
+                              <el-icon @click="handleDrivingDel(scope, props)" v-if="props.row.selectedStatus !== '3'">
                                 <Delete />
                                 <Delete />
                               </el-icon>
                               </el-icon>
                             </template>
                             </template>
@@ -1041,7 +1042,7 @@
                           <el-table-column label="产品名称" prop="productName" align="center">
                           <el-table-column label="产品名称" prop="productName" align="center">
                             <template #default="props">
                             <template #default="props">
                               <el-button link type="primary" @click="getJYXDetail(props.row)">{{ props.row.productName
                               <el-button link type="primary" @click="getJYXDetail(props.row)">{{ props.row.productName
-                              }}</el-button>
+                                }}</el-button>
                             </template>
                             </template>
                           </el-table-column>
                           </el-table-column>
                           <el-table-column label="数量" align="center">
                           <el-table-column label="数量" align="center">
@@ -2686,9 +2687,10 @@ const handleSelect = (row: any) => {
             driver: [],
             driver: [],
             inspect: []
             inspect: []
           }
           }
-          item.projectList = list.map((item: any) => {
+          item.projectList = list.map((item1: any) => {
             return {
             return {
-              ...item,
+              ...item1,
+              drivings: item1.drivings.filter(v => ['1', '2'].includes(v.selectedStatus)),
               rescue: [],
               rescue: [],
               detection: [],
               detection: [],
               driver: [],
               driver: [],
@@ -2728,9 +2730,10 @@ const handelExpend = (e: any) => {
             driver: [],
             driver: [],
             inspect: []
             inspect: []
           }
           }
-          item.projectList = list.map((item: any) => {
+          item.projectList = list.map((item1: any) => {
             return {
             return {
-              ...item,
+              ...item1,
+              drivings: item1.drivings.filter(v => ['1', '2'].includes(v.selectedStatus)),
               rescue: [],
               rescue: [],
               detection: [],
               detection: [],
               driver: [],
               driver: [],
@@ -3362,7 +3365,7 @@ const handleSubmit = async (InsurancePolicyRefs: FormInstance | undefined, scope
         // 再进行报价
         // 再进行报价
         quoteData.value.map((val: any, index: any) => {
         quoteData.value.map((val: any, index: any) => {
           if (val.id == scope.id) {
           if (val.id == scope.id) {
-            quoteInsurance(val.id, index)
+            quoteInsurance(val.id, index, val)
           }
           }
           return val;
           return val;
         })
         })
@@ -3397,7 +3400,7 @@ const batchQuotes = async (InsurancePolicyRefs: FormInstance | undefined) => {
         // 再进行报价
         // 再进行报价
         quoteData.value.map((val: any, index: any) => {
         quoteData.value.map((val: any, index: any) => {
           if (val.checked) {
           if (val.checked) {
-            quoteInsurance(val.id, index)
+            quoteInsurance(val.id, index, val)
           }
           }
           return val;
           return val;
         })
         })
@@ -3509,9 +3512,10 @@ const paramValidate = () => {
 
 
 }
 }
 // 统一报价
 // 统一报价
-const quoteInsurance = async (companyId: any, companyIndex: any) => {
+const quoteInsurance = async (companyId: any, companyIndex: any, val: any) => {
   quoteData.value[companyIndex].loading = true
   quoteData.value[companyIndex].loading = true
   let company = quoteData.value[companyIndex]
   let company = quoteData.value[companyIndex]
+  let product = company.projectList?.find((v, i) => val.productIndex === i)
   // 构建提交数据
   // 构建提交数据
   let data = {
   let data = {
     systemType: '2',
     systemType: '2',
@@ -3521,7 +3525,7 @@ const quoteInsurance = async (companyId: any, companyIndex: any) => {
       quoteNo: insurancePolicyForm.value.order.quoteNo,       // 报价单号
       quoteNo: insurancePolicyForm.value.order.quoteNo,       // 报价单号
       agreementId: company.isDispatch ? company.dispatchAgreementId : company.agreement, // 协议ID
       agreementId: company.isDispatch ? company.dispatchAgreementId : company.agreement, // 协议ID
       productId: insurancePolicyForm.value.productId,
       productId: insurancePolicyForm.value.productId,
-      orderSource:'0',       // 订单来源
+      orderSource: '0',       // 订单来源
     },
     },
     carInfoVo: {  // 车辆信息
     carInfoVo: {  // 车辆信息
       licenseKindCode: '02',              // 车牌种类代码
       licenseKindCode: '02',              // 车牌种类代码
@@ -3628,7 +3632,7 @@ const quoteInsurance = async (companyId: any, companyIndex: any) => {
       identifyNumber: insurancePolicyForm.value.identifyNumber,
       identifyNumber: insurancePolicyForm.value.identifyNumber,
     },
     },
     kindInfoVo: company?.insurancePlanInfo?.kinds || [],
     kindInfoVo: company?.insurancePlanInfo?.kinds || [],
-    accidentalDrivings: company?.insurancePlanInfo?.drivings || [],
+    accidentalDrivings: product?.drivings || [],
     specialInfoVo: company?.specialSelectedList || []
     specialInfoVo: company?.specialSelectedList || []
   }
   }
   /** 后端编辑接口bug,前端处理 交强险产品,清空商业险种信息  勿动****** */
   /** 后端编辑接口bug,前端处理 交强险产品,清空商业险种信息  勿动****** */
@@ -3844,7 +3848,6 @@ const ruleFilterCompany = (item: any, obj: any) => {
           })
           })
           return item
           return item
         })
         })
-        console.log(quoteData.value)
       }
       }
     } else {
     } else {
       quoteData.value = []
       quoteData.value = []