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

核保上传影像移动到核保之前

祁鹏飞 2 месяцев назад
Родитель
Сommit
16b9be6367
2 измененных файлов с 46 добавлено и 30 удалено
  1. 12 21
      src/views/insurancePolicy/index.vue
  2. 34 9
      src/views/insurancePolicy/modules/underwriting.vue

+ 12 - 21
src/views/insurancePolicy/index.vue

@@ -3095,7 +3095,6 @@ let underwritingShow = ref(false)
 let underwritingIndex = ref(-1)
 const handleUnderwriting = (scope: any) => {
   underwritingIndex.value = scope.$index
-  scope.row.loading = true
   isUnderwriting.value = true
   // insurancePolicyForm.value.imageVoList
   let data = {
@@ -3107,22 +3106,16 @@ const handleUnderwriting = (scope: any) => {
     imageVoList: insurancePolicyForm.value.imageVoList,
     list: images.value
   }
-  api.insurancePolicyApi.imagesUpload(data).then((res: any) => {
-    if (res.code === 200) {
-      underwritingShow.value = true
-      nextTick(() => {
-        UnderwritingRefs.value.initEdit(data)
-      })
 
-    }
-  }).finally(() => {
-    scope.row.loading = false;
-    isUnderwriting.value = false
+  underwritingShow.value = true
+  nextTick(() => {
+    UnderwritingRefs.value.initEdit(data)
   })
+
+
 }
 const historyhandleUnderwriting = (ordersNo: String, scope: any) => {
 
-  scope.row.loading = true
   let data = {
     order: {
       ordersNo,
@@ -3131,14 +3124,12 @@ const historyhandleUnderwriting = (ordersNo: String, scope: any) => {
     imageVoList: insurancePolicyForm.value.imageVoList,
     list: images.value
   }
-  api.insurancePolicyApi.imagesUpload(data).then((res: any) => {
-    if (res.code === 200) {
-      underwritingShow.value = true
-      nextTick(() => {
-        UnderwritingRefs.value.initEdit(data)
-      })
-    }
-  }).finally(() => scope.row.loading = false)
+
+  underwritingShow.value = true
+  nextTick(() => {
+    UnderwritingRefs.value.initEdit(data)
+  })
+
 }
 let underwritingMsgShow = ref(false)
 
@@ -3149,7 +3140,7 @@ const handleUnderwritingClose = (bool: any, dataObj: any) => {
     insOrderRightsInfoDto.value.totalPriceCount = dataObj.totalPriceCount;
   }
   underwritingShow.value = false
-  if (bool.code == 200) {
+  if (bool?.code == 200) {
     ElMessage({
       message: bool.msg,
       type: 'success'

+ 34 - 9
src/views/insurancePolicy/modules/underwriting.vue

@@ -131,7 +131,8 @@
       </div>
     </div>
     <div class="footer">
-      <el-button class="border-[#0083FF] color-[#0083FF]" plain type="primary" @click="handleSubmit(false)">取消</el-button>
+      <el-button class="border-[#0083FF] color-[#0083FF]" plain type="primary"
+        @click="handleSubmit(false)">取消</el-button>
       <el-button type="primary" @click="handleSubmit(true)" :loading="loading">提交核保</el-button>
     </div>
     <Equities v-if="equitiesShow" :show="equitiesShow" :recipientInfo="recipientInfo"
@@ -221,7 +222,13 @@ const addImages = () => {
 const handleImageTypeSelect = (data) => {
   imageTypeShow.value = false
   if (data && data.list?.length > 0) {
-    images.value = data.list
+    images.value = data.list.map(v => {
+      const obj = images.value.find(j => j.imageType === v.imageType)
+      return {
+        ...v,
+        fileUrl: obj?.fileUrl
+      }
+    })
   }
 }
 
@@ -244,6 +251,14 @@ const uploadImage = async (file, item) => {
     item.fileUrl = result.downloadUrl
     item.imageId = result.id
     item.fileName = result.fileName
+    const imageBase64 = {
+      imageBase64Str: result.downloadUrl,
+      imageId: result.id,
+      imageName: result.fileName,
+      imageSize: result.fileSize,
+    }
+    uploadData.data.imageVoList = uploadData.data.imageVoList.filter(v => v.imageType !== item.imageType)
+    uploadData.data.imageVoList.push({ imageCode: item.imageType, imageBase64List: [imageBase64] })
   } else {
     ElMessage({
       message: msg,
@@ -327,7 +342,7 @@ const handleSubmit = (bool) => {
       specialAppointmentsVos: [...clauseList.value],
       insOrderRightsInfoDto: {},
     }
-    if(info){
+    if (info) {
       params.insOrderRightsInfoDto = {
         insOrderRightsPackageList: insOrderRightsInfoDto.value.insOrderRightsPackageList,
         insOrderRightsList: insOrderRightsInfoDto.value.insOrderRightsList,
@@ -338,13 +353,21 @@ const handleSubmit = (bool) => {
         }
       }
     }
-    api.insurancePolicyApi.underwriting(params).then((res: any) => {
-      loading.value = false
-      emit('close', res, {
-        equitiesData: equitiesData.value.length,
-        totalPriceCount: totalPriceCount.value
-      })
+    let data = {
+      ...uploadData.value,
+      list: images.value
+    }
+    api.insurancePolicyApi.imagesUpload(data).then((res1: any) => {
+      if (res1.code === 200) {
+        api.insurancePolicyApi.underwriting(params).then((res: any) => {
+          loading.value = false
+          emit('close', res, {
+            equitiesData: equitiesData.value.length,
+            totalPriceCount: totalPriceCount.value
+          })
 
+        })
+      }
     })
   } else {
     emit('close', false)
@@ -353,7 +376,9 @@ const handleSubmit = (bool) => {
 
 //数据交互
 let ordersNo = ref('')
+const uploadData = ref({})
 const initEdit = (data: any) => {
+  uploadData.value = data
   ordersNo.value = data.order.ordersNo
   images.value = data.list.map(item => {
     return {