瀏覽代碼

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

@dongkboy 4 月之前
父節點
當前提交
67f259f3f2

二進制
src/assets/images/insurancePolicy/baofeiActive.png


二進制
src/assets/images/insurancePolicy/cheliangActive.png


二進制
src/assets/images/insurancePolicy/dianziActive.png


二進制
src/assets/images/insurancePolicy/equities.png


二進制
src/assets/images/insurancePolicy/equitiesActive.png


二進制
src/assets/images/insurancePolicy/feiyong.png


二進制
src/assets/images/insurancePolicy/feiyongActive.png


二進制
src/assets/images/insurancePolicy/guanxiActive.png


二進制
src/assets/images/insurancePolicy/guijiActive.png


二進制
src/assets/images/insurancePolicy/toubao.png


二進制
src/assets/images/insurancePolicy/toubaoActive.png


二進制
src/assets/images/insurancePolicy/yingxiangActive.png


二進制
src/assets/images/insurancePolicy/yuedingActive.png


二進制
src/assets/images/insurancePolicy/zhifuActive.png


+ 96 - 165
src/views/additionalOrder/additional/index.vue

@@ -1221,7 +1221,7 @@
                     }}</el-radio>
                   </el-radio-group>
                 </el-form-item>
-                <el-table :data="insuranceData" style="width: 1200px">
+                <el-table :data="insuranceData">
                   <el-table-column label="险种名称" prop="kindName"></el-table-column>
                   <el-table-column label="保额">
                     <template #default="scope">
@@ -1395,7 +1395,7 @@
             <template #title>
               <span class="title">投保信息</span>
             </template>
-            <el-row :gutter="20">
+            <el-row :gutter="20" class="p-r-20px">
               <el-col :span="24">
                 <el-form-item class="white-m-p24" label="车辆投保信息" prop="transfer">
 
@@ -1517,7 +1517,7 @@
             <template #title>
               <span class="title">费用信息</span>
             </template>
-            <el-row :gutter="20">
+            <el-row :gutter="20" class="p-r-20px">
               <el-col :span="8">
                 <el-form-item class="white-m-p24" label="报价协议" prop="agreementId">
                   <el-select v-model="additionalForm.agreementId" @change="handleAgreementSelect">
@@ -1608,114 +1608,122 @@
               <el-form-item class="white-m-p24" label="交强保单">
                 <el-upload v-if="!jqPolicy" :auto-upload="false" :show-file-list="false" accept=".pdf"
                   @change="uploadImage($event, 4)">
-                  <el-button link type="primary" icon="Upload">上传</el-button>
+                  <el-button plain type="primary" icon="Upload" size="default">上传</el-button>
                 </el-upload>
-                <div class="fileInfo" v-else>
-                  <img style="width: 40px; height: 40px"
-                    :src="jqPolicyName.includes('.png') || jqPolicyName?.includes('.jpg') || jqPolicyName?.includes('.jpeg') ? image : jqPolicyName?.includes('.pdf') ? pdf : jqPolicyName.includes('.doc') || jqPolicyName.includes('.docx') ? word : ''" />
-                  <div class="fileName">{{ jqPolicyName }}</div>
-                  <div class="fileBtn">
-                    <el-upload :auto-upload="false" :show-file-list="false" accept=".pdf"
-                      @change="uploadImage($event, 4)" style="display: flex; align-items: center">
-                      <el-icon class="btn-icon">
-                        <Upload />
+                <div class="w-full" v-else>
+                  <div class="w-[33%] h-76px rounded-4px b-(1px solid #eee) p-[18px_24px] flex justify-between">
+                    <img style="width: 40px; height: 40px"
+                      :src="jqPolicyName.includes('.png') || jqPolicyName?.includes('.jpg') || jqPolicyName?.includes('.jpeg') ? image : jqPolicyName?.includes('.pdf') ? pdf : jqPolicyName.includes('.doc') || jqPolicyName.includes('.docx') ? word : ''" />
+                    <div class="w-[calc(100%-120px)] overflow-hidden text-ellipsis">{{ jqPolicyName }}</div>
+                    <div class="flex items-center ">
+                      <el-upload :auto-upload="false" :show-file-list="false" accept=".pdf"
+                        @change="uploadImage($event, 4)" style="display: flex; align-items: center">
+                        <el-icon class="btn-icon">
+                          <Upload />
+                        </el-icon>
+                      </el-upload>
+                      <el-icon class="btn-icon" @click="imageView(4)">
+                        <View />
+                      </el-icon>
+                      <el-icon class="btn-icon" @click="downloadImage(4)">
+                        <Download />
                       </el-icon>
-                    </el-upload>
-                    <el-icon class="btn-icon" @click="imageView(4)">
-                      <View />
-                    </el-icon>
-                    <el-icon class="btn-icon" @click="downloadImage(4)">
-                      <Download />
-                    </el-icon>
-                    <el-icon class="btn-icon" @click="deleteImage(4)">
-                      <Delete />
-                    </el-icon>
+                      <el-icon class="btn-icon" @click="deleteImage(4)">
+                        <Delete />
+                      </el-icon>
+                    </div>
                   </div>
                 </div>
               </el-form-item>
               <el-form-item class="white-m-p24" label="商业保单">
                 <el-upload v-if="!syPolicy" :auto-upload="false" :show-file-list="false" accept=".pdf"
                   @change="uploadImage($event, 5)">
-                  <el-button link type="primary" icon="Upload">上传</el-button>
+                  <el-button plain type="primary" icon="Upload" size="default">上传</el-button>
                 </el-upload>
-                <div class="fileInfo" v-else>
-                  <img style="width: 40px; height: 40px"
-                    :src="syPolicyName.includes('.png') || syPolicyName.includes('.jpg') || syPolicyName.includes('.jpeg') ? image : syPolicyName.includes('.pdf') ? pdf : syPolicyName.includes('.doc') || syPolicyName.includes('.docx') ? word : ''" />
-                  <div class="fileName">{{ syPolicyName }}</div>
-                  <div class="fileBtn">
-                    <el-upload :auto-upload="false" :show-file-list="false" accept=".pdf"
-                      @change="uploadImage($event, 5)" style="display: flex; align-items: center">
-                      <el-icon class="btn-icon">
-                        <Upload />
+                <div class="w-full" v-else>
+                  <div class="w-[33%] h-76px rounded-4px b-(1px solid #eee) p-[18px_24px] flex justify-between">
+                    <img style="width: 40px; height: 40px"
+                      :src="syPolicyName.includes('.png') || syPolicyName.includes('.jpg') || syPolicyName.includes('.jpeg') ? image : syPolicyName.includes('.pdf') ? pdf : syPolicyName.includes('.doc') || syPolicyName.includes('.docx') ? word : ''" />
+                    <div class="w-[calc(100%-120px)] overflow-hidden text-ellipsis">{{ syPolicyName }}</div>
+                    <div class="flex items-center ">
+                      <el-upload :auto-upload="false" :show-file-list="false" accept=".pdf"
+                        @change="uploadImage($event, 5)" style="display: flex; align-items: center">
+                        <el-icon class="btn-icon">
+                          <Upload />
+                        </el-icon>
+                      </el-upload>
+                      <el-icon class="btn-icon" @click="imageView(5)">
+                        <View />
+                      </el-icon>
+                      <el-icon class="btn-icon" @click="downloadImage(5)">
+                        <Download />
                       </el-icon>
-                    </el-upload>
-                    <el-icon class="btn-icon" @click="imageView(5)">
-                      <View />
-                    </el-icon>
-                    <el-icon class="btn-icon" @click="downloadImage(5)">
-                      <Download />
-                    </el-icon>
-                    <el-icon class="btn-icon" @click="deleteImage(5)">
-                      <Delete />
-                    </el-icon>
+                      <el-icon class="btn-icon" @click="deleteImage(5)">
+                        <Delete />
+                      </el-icon>
+                    </div>
                   </div>
                 </div>
               </el-form-item>
               <el-form-item class="white-m-p24" label="非车保单">
                 <el-upload :auto-upload="false" v-if="!noPolicy" :show-file-list="false"
                   accept=".png, .jpg, .jpeg, .pdf, .doc, .docx" @change="uploadImage($event, 6)">
-                  <el-button link type="primary" icon="Upload">上传</el-button>
+                  <el-button plain type="primary" icon="Upload" size="default">上传</el-button>
                 </el-upload>
-                <div class="fileInfo" v-else>
-                  <img style="width: 40px; height: 40px"
-                    :src="noPolicyName.includes('.png') || noPolicyName.includes('.jpg') || noPolicyName.includes('.jpeg') ? image : noPolicyName.includes('.pdf') ? pdf : noPolicyName.includes('.doc') || noPolicyName.includes('.docx') ? word : ''" />
-                  <div class="fileName">{{ noPolicyName }}</div>
-                  <div class="fileBtn">
-                    <el-upload :auto-upload="false" :show-file-list="false"
-                      accept=".png, .jpg, .jpeg, .pdf, .doc, .docx" @change="uploadImage($event, 6)"
-                      style="display: flex; align-items: center">
-                      <el-icon class="btn-icon">
-                        <Upload />
+                <div class="w-full" v-else>
+                  <div class="w-[33%] h-76px rounded-4px b-(1px solid #eee) p-[18px_24px] flex justify-between">
+                    <img style="width: 40px; height: 40px"
+                      :src="noPolicyName.includes('.png') || noPolicyName.includes('.jpg') || noPolicyName.includes('.jpeg') ? image : noPolicyName.includes('.pdf') ? pdf : noPolicyName.includes('.doc') || noPolicyName.includes('.docx') ? word : ''" />
+                    <div class="w-[calc(100%-120px)] overflow-hidden text-ellipsis">{{ noPolicyName }}</div>
+                    <div class="flex items-center ">
+                      <el-upload :auto-upload="false" :show-file-list="false"
+                        accept=".png, .jpg, .jpeg, .pdf, .doc, .docx" @change="uploadImage($event, 6)"
+                        style="display: flex; align-items: center">
+                        <el-icon class="btn-icon">
+                          <Upload />
+                        </el-icon>
+                      </el-upload>
+                      <el-icon class="btn-icon" @click="imageView(6)">
+                        <View />
+                      </el-icon>
+                      <el-icon class="btn-icon" @click="downloadImage(6)">
+                        <Download />
                       </el-icon>
-                    </el-upload>
-                    <el-icon class="btn-icon" @click="imageView(6)">
-                      <View />
-                    </el-icon>
-                    <el-icon class="btn-icon" @click="downloadImage(6)">
-                      <Download />
-                    </el-icon>
-                    <el-icon class="btn-icon" @click="deleteImage(6)">
-                      <Delete />
-                    </el-icon>
+                      <el-icon class="btn-icon" @click="deleteImage(6)">
+                        <Delete />
+                      </el-icon>
+                    </div>
                   </div>
                 </div>
               </el-form-item>
               <el-form-item class="white-m-p24" label="交强电子标志">
                 <el-upload :auto-upload="false" v-if="!jqSign" :show-file-list="false"
                   accept=".png, .jpg, .jpeg, .pdf, .doc, .docx" @change="uploadImage($event, 7)">
-                  <el-button link type="primary" icon="Upload">上传</el-button>
+                  <el-button plain type="primary" icon="Upload" size="default">上传</el-button>
                 </el-upload>
-                <div class="fileInfo" v-else>
-                  <img style="width: 40px; height: 40px"
-                    :src="jqSignName.includes('.png') || jqSignName.includes('.jpg') || jqSignName.includes('.jpeg') ? image : jqSignName.includes('.pdf') ? pdf : jqSignName.includes('.doc') || jqSignName.includes('.docx') ? word : ''" />
-                  <div class="fileName">{{ jqSignName }}</div>
-                  <div class="fileBtn">
-                    <el-upload :auto-upload="false" :show-file-list="false"
-                      accept=".png, .jpg, .jpeg, .pdf, .doc, .docx" @change="uploadImage($event, 7)"
-                      style="display: flex; align-items: center">
-                      <el-icon class="btn-icon">
-                        <Upload />
+                <div class="w-full" v-else>
+                  <div class="w-[33%] h-76px rounded-4px b-(1px solid #eee) p-[18px_24px] flex justify-between">
+                    <img style="width: 40px; height: 40px"
+                      :src="jqSignName.includes('.png') || jqSignName.includes('.jpg') || jqSignName.includes('.jpeg') ? image : jqSignName.includes('.pdf') ? pdf : jqSignName.includes('.doc') || jqSignName.includes('.docx') ? word : ''" />
+                    <div class="w-[calc(100%-120px)] overflow-hidden text-ellipsis">{{ jqSignName }}</div>
+                    <div class="flex items-center ">
+                      <el-upload :auto-upload="false" :show-file-list="false"
+                        accept=".png, .jpg, .jpeg, .pdf, .doc, .docx" @change="uploadImage($event, 7)"
+                        style="display: flex; align-items: center">
+                        <el-icon class="btn-icon">
+                          <Upload />
+                        </el-icon>
+                      </el-upload>
+                      <el-icon class="btn-icon" @click="imageView(7)">
+                        <View />
+                      </el-icon>
+                      <el-icon class="btn-icon" @click="downloadImage(7)">
+                        <Download />
                       </el-icon>
-                    </el-upload>
-                    <el-icon class="btn-icon" @click="imageView(7)">
-                      <View />
-                    </el-icon>
-                    <el-icon class="btn-icon" @click="downloadImage(7)">
-                      <Download />
-                    </el-icon>
-                    <el-icon class="btn-icon" @click="deleteImage(7)">
-                      <Delete />
-                    </el-icon>
+                      <el-icon class="btn-icon" @click="deleteImage(7)">
+                        <Delete />
+                      </el-icon>
+                    </div>
                   </div>
                 </div>
               </el-form-item>
@@ -4235,7 +4243,9 @@ onMounted(() => {
 
 <style scoped lang="scss">
 @use "@/assets/styles/common/style";
-
+:deep(.el-upload.el-upload--text) {
+  --el-color-primary-light-9: #fff
+}
 .addtional {
   width: calc(100% - 20px);
   height: calc(100vh - 140px);
@@ -4406,7 +4416,6 @@ onMounted(() => {
 
       .addData {
         line-height: 32px;
-        width: 1200px;
         border: 1px dotted #cccccc;
         display: flex;
         align-items: center;
@@ -4485,84 +4494,6 @@ onMounted(() => {
     }
   }
 
-  .fileInfo {
-    display: flex;
-    align-items: center;
-    justify-content: flex-start;
-    //padding: 2px 20px;
-    border-radius: 5px;
-    margin: 0 10px;
-
-    //&:hover{
-    //  background: #ccc;
-    //}
-    .fileName {
-      width: 200px;
-      overflow: hidden;
-      text-overflow: ellipsis;
-      white-space: nowrap;
-    }
-
-    .fileBtn {
-      display: flex;
-      align-items: center;
-
-      .btn-icon {
-        margin: 0 10px;
-        font-size: 16px;
-        cursor: pointer;
-
-        &:hover {
-          color: #00a0f4;
-        }
-      }
-    }
-
-    .file-box {
-      position: relative;
-
-      .btn-top {
-        width: 100%;
-        display: flex;
-        align-items: center;
-        justify-content: flex-end;
-        position: absolute;
-        top: 0;
-        left: 0;
-
-        .image-close {
-          display: block;
-          width: 12px;
-          height: 12px;
-        }
-      }
-
-      .file-img {
-        display: block;
-        width: 208px;
-        height: 130px;
-        border-radius: 5px;
-      }
-
-      .btn-bottom {
-        position: absolute;
-        left: 0;
-        bottom: 0;
-        z-index: 1000;
-        display: flex;
-        align-items: center;
-        height: 24px;
-        width: 100%;
-        background: url("@/assets/images/btn-bg.png") no-repeat;
-        background-size: 100% 100%;
-
-        .width-50 {
-          width: 50%;
-        }
-      }
-    }
-
-  }
 
   .footer {
     height: 60px;

+ 11 - 12
src/views/insurancePolicy/order.vue

@@ -81,12 +81,7 @@
       <el-table-column label="车架号" prop="vinNo" width="200"></el-table-column>
       <el-table-column label="状态" prop="orderStatus" width="200">
         <template #default="scope">
-          {{ scope.row.orderStatus === '0' ? '订单已提交' : scope.row.orderStatus === '1' ? '待核保' : scope.row.orderStatus ===
-            '2' ? '核保中' : scope.row.orderStatus === '3' ? '人工处理' : scope.row.orderStatus === '4' ? '待缴费' :
-              scope.row.orderStatus ===
-                '5' ? '已承保' : scope.row.orderStatus === '6' ? '报价失败' : scope.row.orderStatus === '7' ? '核保失败' :
-                  scope.row.orderStatus ===
-                    '8' ? '订单关闭' : '' }}
+          {{ orderStatusList.find(v=>v.value===Number(scope.row.orderStatus))?.label ?? '--'  }}
         </template>
       </el-table-column>
       <el-table-column label="报价时间" prop="createTime" width="200"></el-table-column>
@@ -135,9 +130,8 @@
             v-if="scope.row.orderStatus === '7' || scope.row.orderStatus === '1' || scope.row.orderStatus === '4'"
             @click="updateOrderStatus(scope.row.orderNo)">更新订单</el-button>
           <!-- 模拟接口,正式上线后,删除 -->
-          <el-button link type="primary"
-            v-if="scope.row.orderStatus === '7' || scope.row.orderStatus === '1' || scope.row.orderStatus === '4'"
-            @click="mockUnderwited(scope.row.orderNo)">模拟承保</el-button>
+          <el-button link type="primary" :loading="scope.row.loading"
+            v-if="scope.row.orderStatus === '4'" @click="mockUnderwited(scope.row)">模拟承保</el-button>
           <el-button link type="primary" v-if="scope.row.orderStatus === '3'"
             @click="updateOrderStatus(scope.row.orderNo)">同步订单</el-button>
           <el-button link type="primary" v-if="scope.row.orderStatus === '6'"
@@ -315,6 +309,10 @@ const orderStatusList = ref([
     label: '待核保',
     value: 1,
   },
+  {
+    label: '订单已提交',
+    value: 0,
+  },
   {
     label: '人工处理中',
     value: 3,
@@ -557,8 +555,9 @@ const updateOrderStatus = (orderNo) => {
   })
 }
 
-const mockUnderwited = (orderNo) => {
-  api.insurancePolicyApi.mockUnderwited({ order: { ordersNo: orderNo } }).then((res: any) => {
+const mockUnderwited = (row) => {
+  row.loading = true
+  api.insurancePolicyApi.mockUnderwited({ order: { ordersNo: row.orderNo } }).then((res: any) => {
     if (res.code == 200) {
       ElMessage({
         message: res.msg,
@@ -571,7 +570,7 @@ const mockUnderwited = (orderNo) => {
         type: 'warning'
       })
     }
-  })
+  }).finally(() => row.loading = false)
 }
 
 /**

+ 16 - 29
src/views/insurancePolicy/orderDetail.vue

@@ -113,7 +113,7 @@
         <div class="tipsList">
           <div class="tipsItem" :class="{ 'active': tipsIndex === index }" v-for="(item, index) in tipsList"
             :key="index" @click="handleTipsIndexChange(item, index)">
-            <img :src="item.url" />
+            <img :src="getAssetsFile(item.url + (tipsIndex === index ? 'Active' : ''))" />
             <span class="tipsName">{{ item.name }}</span>
           </div>
         </div>
@@ -1073,17 +1073,6 @@
 </template>
 
 <script setup lang="ts">
-import toubao from '@/assets/images/insurancePolicy/toubao.png'
-import cheliang from '@/assets/images/insurancePolicy/cheliang.png'
-import guanxi from '@/assets/images/insurancePolicy/guanxi.png'
-import yingxiang from '@/assets/images/insurancePolicy/yingxiang.png'
-import zhifu from '@/assets/images/insurancePolicy/zhifu.png'
-import yueding from '@/assets/images/insurancePolicy/yueding.png'
-import dianzi from '@/assets/images/insurancePolicy/dianzi.png'
-import baofei from '@/assets/images/insurancePolicy/baofei.png'
-import feiyong from '@/assets/images/insurancePolicy/feiyong.png'
-import guiji from '@/assets/images/insurancePolicy/guiji.png'
-import equities2 from '@/assets/images/additional/equities2.png'
 import detail from '../../layouts/components/JYXDetail/index.vue'
 import costView from './modules/costView.vue'
 
@@ -1108,53 +1097,57 @@ const isCancelVisible = ref(false)
 
 let JYXDetail = ref()
 
+/** 获取相关图片资源的URL地址 */
+const getAssetsFile = (url: string) => {
+  return new URL(`../../assets/images/insurancePolicy/${url}.png`, import.meta.url).href;
+};
 // 页签
 let tipsIndex = ref(0)
 let tipsList = ref([
   {
     name: '投保信息',
     id: 'TBMsg',
-    url: toubao
+    url: 'toubao'
   }, {
     name: '车辆信息',
     id: 'carMsg',
-    url: cheliang
+    url: 'cheliang'
   }, {
     name: '关系人信息',
     id: 'personMsg',
-    url: guanxi
+    url: 'guanxi'
   }, {
     name: '影像资料',
     id: 'imageMsg',
-    url: yingxiang
+    url: 'yingxiang'
   }, {
     name: '支付信息',
     id: 'payMsg',
-    url: zhifu
+    url: 'zhifu'
   }, {
     name: '特别约定',
     id: 'appointMsg',
-    url: yueding
+    url: 'yueding'
   }, {
     name: '电子保单',
     id: 'fileMsg',
-    url: dianzi
+    url: 'dianzi'
   }, {
     name: '保费因素',
     id: 'premiumMsg',
-    url: baofei
+    url: 'baofei'
   }, {
     name: '费用信息',
     id: 'costMsg',
-    url: feiyong
+    url: 'feiyong'
   }, {
     name: '订单轨迹',
     id: 'lineMsg',
-    url: guiji
+    url: 'guiji'
   }, {
     name: '权益信息',
     id: 'equities',
-    url: equities2,
+    url: 'equities',
   }
 ])
 const handleTipsIndexChange = (item, index) => {
@@ -1204,12 +1197,6 @@ let taxList = ref([
     bool: false
   },
 ])
-const taxIndexChange = (item) => {
-  taxList.value.forEach(a => {
-    a.bool = false
-  })
-  item.bool = !item.bool
-}
 
 // 方案
 let insuranceData = ref([])

+ 0 - 1
src/views/receivable/handingFee/invoiceRecord.vue

@@ -243,7 +243,6 @@ const handleDelete = (row) => {
             message: res.msg,
             type: 'success'
           })
-          initList()
         } else {
 
         }