Browse Source

Merge branch 'dev' of http://39.101.143.165:8090/dong_k/tenant-Platform into dev

@dongkboy 1 month ago
parent
commit
7bbc198e08

+ 5 - 5
src/components/ruleConditionContainer/index.vue

@@ -70,7 +70,7 @@
           </template>
           <template v-if="item.attrType == 'select'">
             <el-select v-model="item.minArray" placeholder="选择值" clearable filterable multiple :disabled="disabled"
-              @change="change($event, index, item)" @visible-change="item.checkAll = false"
+              @change="change($event, index, item)" @visible-change="item.checkAll = false" @blur="item.checkAll = false"
               :filter-method="(query) => filterMethod(query, item)">
               <template #header>
                 <el-checkbox v-model="item.checkAll" :indeterminate="item.indeterminate" :disabled="disabled"
@@ -205,12 +205,12 @@ const filterMethod = (query, item) => {
 const handleCheckAll = (item, index: number, val: boolean) => {
 
   item.indeterminate = false
+  let arr = item.dictLabal
+  if (item.dictLabalFilter) arr = item.dictLabalFilter
   if (val) {
-    let arr = item.dictLabal
-    if (item.dictLabalFilter) arr = item.dictLabalFilter
-    item.minArray = arr.map((_) => _.code)
+    item.minArray = [...new Set([...(item.minArray ?? []), ...arr.map((_) => _.code)])]
   } else {
-    item.minArray = []
+    item.minArray = item.minArray.filter(v => !arr.find(a => a.code === v))
   }
 }
 onMounted(() => {

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

@@ -52,7 +52,7 @@
               <!-- 车牌号输入框:当车辆未上牌时禁用 -->
               <el-form-item :disabled="insurancePolicyForm.isRegistered == '2'" label="车牌" prop="licenseNo">
                 <el-input v-model="insurancePolicyForm.licenseNo" minlength="7" maxlength="8" placeholder="输入车牌号"
-                  @input="upperCaseType('licenseNo')" @change="getQuoteNumber"></el-input>
+                  @input="upperCaseType('licenseNo')" @blur="changeCompany()" @change="getQuoteNumber"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="6">
@@ -88,7 +88,7 @@
             <el-col :span="6">
               <!-- 使用性质下拉选择 -->
               <el-form-item label="使用性质" prop="carNatureCode">
-                <el-select v-model="insurancePolicyForm.carNatureCode" placeholder="请选择" @change="ruleFilterCompany">
+                <el-select v-model="insurancePolicyForm.carNatureCode" placeholder="请选择" @change="changeCompany">
                   <el-option v-for="item in optionObj.car_nature_code" :label="item.label" :value="item.value"
                     :key="item.value"></el-option>
                 </el-select>
@@ -106,7 +106,7 @@
             <el-col :span="6">
               <!-- 车辆种类下拉选择 -->
               <el-form-item label="车辆种类" prop="plateType">
-                <el-select v-model="insurancePolicyForm.plateType" placeholder="请选择" @change="ruleFilterCompany">
+                <el-select v-model="insurancePolicyForm.plateType" placeholder="请选择" @change="changeCompany">
                   <el-option v-for="item in optionObj.car_kind_code" :label="item.label" :value="item.value"
                     :key="item.value"></el-option>
                 </el-select>
@@ -125,7 +125,7 @@
             <el-col :span="6">
               <!-- 能源种类下拉选择 -->
               <el-form-item label="能源种类" prop="energyTypeCode">
-                <el-select v-model="insurancePolicyForm.energyTypeCode" placeholder="请选择" @change="ruleFilterCompany">
+                <el-select v-model="insurancePolicyForm.energyTypeCode" placeholder="请选择" @change="changeCompany">
                   <el-option v-for="item in optionObj.energy_type_code" :label="item.label" :value="item.value"
                     :key="item.value"></el-option>
                 </el-select>
@@ -986,7 +986,7 @@
                                     :value="item.value"></el-option>
                                 </el-select>
                                 <span v-if="props.row.kindName == '乘客责任险'">*{{ insurancePolicyForm.seatCount - 1
-                                  }}/座</span>
+                                }}/座</span>
                               </div>
                             </template>
                           </el-table-column>
@@ -1058,7 +1058,7 @@
                           <el-table-column label="产品名称" prop="productName" align="center">
                             <template #default="props">
                               <el-button link type="primary" @click="getJYXDetail(props.row)">{{ props.row.productName
-                                }}</el-button>
+                              }}</el-button>
                             </template>
                           </el-table-column>
                           <el-table-column label="数量" align="center">
@@ -1111,12 +1111,12 @@
                             <div class="Factor-item flex a-c f-c ">
                               <span class="item-header flex a-c ">交强续保</span>
                               <span>{{ ['', '新保', '续保', '转保'][Number(scope.row.quoteResult?.scoreVo?.jqRenewal)] || '--'
-                              }}</span>
+                                }}</span>
                             </div>
                             <div class="Factor-item flex a-c f-c ">
                               <span class="item-header flex a-c ">商业续保</span>
                               <span>{{ ['', '新保', '续保', '转保'][Number(scope.row.quoteResult?.scoreVo?.syRenewal)] || '--'
-                              }}</span>
+                                }}</span>
                             </div>
                             <div class="Factor-item flex a-c f-c ">
                               <span class="item-header flex a-c ">总折扣率</span>
@@ -3982,6 +3982,14 @@ const handleOpen = (scope: any) => {
   })
 }
 
+const changeCompany = () => {
+  if (quoteData.value.length) {
+    ruleFilterCompany({
+      value: insurancePolicyForm.value.productId
+    }, null)
+  }
+}
+
 /**
  * 根据规则筛选保险公司
  * 根据产品ID和车辆及人员信息获取可报价的保险公司列表

+ 2 - 3
src/views/insurancePolicy/modules/quotation.vue

@@ -6,13 +6,12 @@
       </template>
       <div class="max-h-[calc(100vh-140px)] min-h-500px overflow-y-auto" v-loading="dialogFormLoading">
         <div class="content font-size-16px color-[#000] line-height-[1] p-24px" v-if="!dialogFormLoading">
-          <div class="flex justify-between">
-            <div class="w-332px"></div>
+          <div class="flex justify-center relative">
             <div class="flex justify-center flex-col items-center">
               <img class="w-[48px] h-[48px]" :src="quotationObj.logo" />
               <div class="font-size-[24px]">{{ quotationObj.nameSimple }}</div>
             </div>
-            <div class="w-332px">
+            <div class="absolute right-0 top-0">
               <div class="" v-if="quotationObj.policy?.ciApplyNumber">交强险投保单号:{{ quotationObj.policy.ciApplyNumber }}</div>
               <div class="m-t-6px" v-if="quotationObj.policy?.biApplyNumber">商业险投保单号:{{ quotationObj.policy.biApplyNumber }}</div>
             </div>

+ 8 - 7
src/views/quoteConfig/agreement/components/operatorTrajectory.vue

@@ -53,13 +53,14 @@ const operAtorTrajectory = (primaryValue) => {
 
 const myRouter = useRouter()
 const detail = (id) => {
-  myRouter.push({
-    path: '/systemManage/logManage/logDetail',
-    query: {
-      id
-    }
-  })
-  dialog.value = false
+  window.open(`/#/systemManage/logManage/logDetail?id=${id}`, '_blank')
+  // myRouter.push({
+  //   path: '/systemManage/logManage/logDetail',
+  //   query: {
+  //     id
+  //   }
+  // })
+  // dialog.value = false
 }
 
 defineExpose({