Jelajahi Sumber

Merge branch 'dev' of http://www.baoxianzhanggui.com:8090/sxzgd/vue-insagent-pc into dev

yaoyao 2 tahun lalu
induk
melakukan
eafbbd8560

+ 1 - 1
build/check-versions.js

@@ -19,7 +19,7 @@ const versionRequirements = [
 if (shell.which('npm')) {
   versionRequirements.push({
     name: 'npm',
-    currentVersion: exec('npm --version'),
+    currentVersion: '6.14.14',
     versionRequirement: packageConfig.engines.npm
   })
 }

+ 2 - 2
config/dev.env.js

@@ -7,7 +7,7 @@ module.exports = merge(prodEnv, {
 
 
   ENV_CONFIG: '"dev"',
-  // BASE_URL: '"https://test.baoxianzhanggui.com/web-api"',//测试服务器
+  BASE_URL: '"https://test.baoxianzhanggui.com/web-api"',//测试服务器
   // BASE_URL:'"https://sxzgkj.baoxianzhanggui.com/web-api"'//正式服务器
   // BASE_URL:'"https://sxzgkj.baoxianzhanggui.com/web-api"'//正式服务器
   // BASE_URL: '"http://192.168.0.115:8080/"' //凯森
@@ -18,7 +18,7 @@ module.exports = merge(prodEnv, {
   // BASE_URL: '"http:///192.168.0.42:8080/"',//武鸿鹏
   // BASE_URL: '"http://192.168.1.101:8080/"',
   // BASE_URL: '"http://192.168.0.250:8080/"',//
-  BASE_URL: '"http:///192.168.0.103:8080/"',//霍续亮
+  // BASE_URL: '"http:///192.168.0.103:8080/"',//霍续亮
   // BASE_URL: '"http://192.168.0.52:8080/"',//贺礼霄
   // BASE_URL: '"http:///192.168.0.55:8080/"',//蔡雅茹
   // CONSOLE_BASE_URL: '"http://localhost:8080/"' //控制台测试服务器

+ 2 - 0
src/components/TemplateTable/index.vue

@@ -511,6 +511,8 @@ export default {
       });
     },
     statMaps(list) {
+      console.log(list,9999999);
+
       if (!list) return;
       let obj = {};
       list.forEach((item) => {

+ 19 - 0
src/http/moudules/insCompany.js

@@ -810,3 +810,22 @@ export const queryExtractFeeAll = (data) => {
     data
   })
 }
+// 合伙人、工作室管理机构树
+export const getSysDeptTree = () => {
+  return axios({
+    url: '/dept/getSysDeptTree',
+    method: "get",
+  })
+}
+export const agencyGetUserInfo = (id) => {
+  return axios({
+    url: '/agency/getUserInfo/'+id,
+    method: "get",
+  })
+}
+export const queryRecommendAndPartner = (id) => {
+  return axios({
+    url: '/sysPartner/queryRecommendAndPartner/'+id,
+    method: "get",
+  })
+}

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

@@ -1226,3 +1226,11 @@ export const pingangetPolicyPrint = (data) => {
     data
   })
 }
+// 平安补传资料
+export const additionalInformation = (data) => {
+  return axios({
+    url: '/order/pingAnApi/additionalInformation',
+    method: 'post',
+    data
+  })
+}

+ 1116 - 0
src/views/Core/components/imageDialog.vue

@@ -0,0 +1,1116 @@
+<template>
+    <div>
+        <el-dialog :visible.sync="imageUploaddialogVisible" width="1070px">
+            <div slot="title" class="dialog-title">
+                <span>影像上传</span>
+            </div>
+            <el-row>
+                <el-col :span="4">
+                    <div class="tab-style">
+                        <li class="liMenu" :class="idx == tabLiIndex ? 'tabLi-style' : ''"
+                            @click="tabLiScroll(item.scroll, idx)" v-for="(item, idx) in tabLimenu" :key="idx">
+                            {{ item.name }}
+                        </li>
+                    </div>
+                </el-col>
+                <el-col :span="20" style="height: 320px; overflow-y: auto">
+                    <div class="flex f-wrap" id="vehicle">
+                        <div class="aaa">
+                            <span>1.行驶证主页</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList1', 'imgList1', 'C01')
+                                " :file-list="imgList1" ref="upload1" :class="{ styleB: imgList1.length == 1 }">
+                                <img v-show="imgList1.length == 0" src="../../../../static/carfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }" v-if="imgList1.length > 0">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList1', 'imgList1')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>2.行驶证副页</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList1', 'imgList2', 'D01')
+                                " :file-list="imgList2" ref="upload2" :class="{ styleB: imgList2.length === 1 }">
+                                <img v-show="imgList2.length == 0" src="../../../../static/carback.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList1', 'imgList2')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>3.机动车辆登记证书</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList1', 'imgList12', 'TAR05')
+                                " :file-list="imgList12" ref="upload2" :class="{ styleB: imgList12.length === 1 }">
+                                <img v-show="imgList12.length == 0" src="../../../../static/carback.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList1', 'imgList12')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>4.新车合格证</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList5', 'imgList9', 'XC00')
+                                " :file-list="imgList9" multiple ref="upload3" :class="{ styleB: imgList9.length === 1 }">
+                                <img v-show="imgList9.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList5', 'imgList9')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>5.购车发票</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList5', 'imgList10', 'GC00')
+                                " :file-list="imgList10" multiple ref="upload4"
+                                :class="{ styleB: imgList10.length === 1 }">
+                                <img v-show="imgList10.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList5', 'imgList10')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+
+                    </div>
+                    <div class="flex f-wrap" id="owner">
+                        <div class="aaa">
+                            <span>1.车主身份证(正面)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList2', 'imgList3', 'C02')
+                                " :file-list="imgList3" multiple ref="upload3" :class="{ styleB: imgList3.length === 1 }">
+                                <img v-show="imgList3.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList2', 'imgList3')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>2.车主身份证(反面)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList2', 'imgList4', 'D02')
+                                " :file-list="imgList4" multiple ref="upload4" :class="{ styleB: imgList4.length === 1 }">
+                                <img v-show="imgList4.length == 0" src="../../../../static/userback.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList2', 'imgList4')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>3.营业执照</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag multiple
+                                ref="upload4">
+                                <img src="../../../../static/userfront.png" style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList2', 'imgList4')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                    </div>
+                    <div class="flex f-wrap" id="applicant">
+                        <div class="aaa">
+                            <span>1.投保人身份证(正面)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList3', 'imgList5', 'C03')
+                                " :file-list="imgList5" multiple ref="upload5" :class="{ styleB: imgList5.length === 1 }">
+                                <img v-show="imgList5.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList3', 'imgList5')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>2.投保人身份证(反面)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList3', 'imgList6', 'D03')
+                                " :file-list="imgList6" multiple ref="upload6" :class="{ styleB: imgList6.length === 1 }">
+                                <img v-show="imgList6.length == 0" src="../../../../static/userback.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList3', 'imgList6')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>3.营业执照</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag multiple
+                                ref="upload4">
+                                <img src="../../../../static/userfront.png" style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList2', 'imgList4')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                    </div>
+                    <div class="flex f-wrap">
+                        <div class="aaa">
+                            <span id="insured">1.被保人身份证(正面)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList4', 'imgList7', 'C04')
+                                " :file-list="imgList7" multiple ref="upload7" :class="{ styleB: imgList7.length === 1 }">
+                                <img v-show="imgList7.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList4', 'imgList7')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>2.被保人身份证(反面)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList4', 'imgList8', 'D04')
+                                " :file-list="imgList8" multiple ref="upload8" :class="{ styleB: imgList8.length === 1 }">
+                                <img v-show="imgList8.length == 0" src="../../../../static/userback.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList4', 'imgList8')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>3.营业执照</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag multiple
+                                ref="upload4">
+                                <img src="../../../../static/userfront.png" style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList2', 'imgList4')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                    </div>
+                    <div class="flex f-wrap" id="relationship">
+                        <div class="aaa">
+                            <span>1.关系证明</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList5', 'imgList11', 'GX00')
+                                " :file-list="imgList11" multiple ref="upload3"
+                                :class="{ styleB: imgList11.length === 1 }">
+                                <img v-show="imgList11.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList5', 'imgList11')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                    </div>
+                    <div class="flex f-wrap" id="yanchezhao">
+                        <div class="aaa">
+                            <span>1.验车照(车架)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList13', 'C0500')
+                                " :file-list="imgList13" multiple ref="upload3"
+                                :class="{ styleB: imgList13.length === 1 }">
+                                <img v-show="imgList13.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList13')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>2.验车照(后左)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList14', 'C0501')
+                                " :file-list="imgList14" multiple ref="upload3"
+                                :class="{ styleB: imgList14.length === 1 }">
+                                <img v-show="imgList14.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList14')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>3.验车照(后右)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList15', 'C0502')
+                                " :file-list="imgList15" multiple ref="upload3"
+                                :class="{ styleB: imgList15.length === 1 }">
+                                <img v-show="imgList15.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList15')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>4.验车照(前右)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList16', 'C0503')
+                                " :file-list="imgList16" multiple ref="upload3"
+                                :class="{ styleB: imgList16.length === 1 }">
+                                <img v-show="imgList16.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList16')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>5.验车照(前左)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList17', 'C0504')
+                                " :file-list="imgList17" multiple ref="upload3"
+                                :class="{ styleB: imgList17.length === 1 }">
+                                <img v-show="imgList17.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList17')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>6.验车照(正前)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList18', 'C0506')
+                                " :file-list="imgList18" multiple ref="upload3"
+                                :class="{ styleB: imgList18.length === 1 }">
+                                <img v-show="imgList18.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList18')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>7.验车照(正后)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList19', 'C0507')
+                                " :file-list="imgList19" multiple ref="upload3"
+                                :class="{ styleB: imgList19.length === 1 }">
+                                <img v-show="imgList19.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList19')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>8.验车照(人车合影)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList20', 'C0505')
+                                " :file-list="imgList20" multiple ref="upload3"
+                                :class="{ styleB: imgList20.length === 1 }">
+                                <img v-show="imgList20.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList20')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>9.验车照(地标合影)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList21', 'C0508')
+                                " :file-list="imgList21" multiple ref="upload3"
+                                :class="{ styleB: imgList21.length === 1 }">
+                                <img v-show="imgList21.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList21')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>10.验车照(工作台)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList22', 'C0509')
+                                " :file-list="imgList22" multiple ref="upload3"
+                                :class="{ styleB: imgList22.length === 1 }">
+                                <img v-show="imgList22.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList22')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                        <div class="aaa">
+                            <span>11.验车照(天窗)</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList23', 'C0510')
+                                " :file-list="imgList23" multiple ref="upload3"
+                                :class="{ styleB: imgList23.length === 1 }">
+                                <img v-show="imgList23.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList23')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                    </div>
+                    <div class="flex f-wrap" id="snbaodan">
+                        <div class="aaa">
+                            <span>1.上年商业险保单</span>
+                            <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
+                                drivingupload(file, 'imageList6', 'imgList24', 'LAST_INSURANCE_POLICY')
+                                " :file-list="imgList24" multiple ref="upload3"
+                                :class="{ styleB: imgList24.length === 1 }">
+                                <img v-show="imgList24.length == 0" src="../../../../static/userfront.png"
+                                    style="width: 100%; height: 100%" />
+                                <div slot="file" slot-scope="{ file }">
+                                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                                    <span class="el-upload-list__item-actions">
+                                        <span class="el-upload-list__item-delete"
+                                            @click="handleRemove1(file, 'imageList6', 'imgList24')">
+                                            <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                                            <i class="el-icon-delete"></i>
+                                        </span>
+                                    </span>
+                                </div>
+                            </el-upload>
+                        </div>
+                    </div>
+                </el-col>
+            </el-row>
+
+            <span slot="footer" class="dialog-footer">
+                <el-button size="small" @click="imageUploaddialogVisible = false">取 消</el-button>
+                <el-button v-if="type == 1" size="small" type="primary" @click="uploadinformation">上传资料</el-button>
+                <el-button v-if="type == 2" size="small" type="primary" @click="repairinformation">补传资料</el-button>
+            </span>
+        </el-dialog>
+        <el-image-viewer v-if="showViewer" :on-close="closeViewer" :z-index="9999" :url-list="[ProViewImg]" />
+    </div>
+</template>
+<script>
+export default {
+    data() {
+        return {
+            imageUploaddialogVisible: false,
+            tabLiIndex: 0,
+            tabLimenu: [
+                {
+                    name: "车辆信息",
+                    scroll: "vehicle",
+                },
+                {
+                    name: "车主信息",
+                    scroll: "owner",
+                },
+                {
+                    name: "投保人信息",
+                    scroll: "applicant",
+                },
+                {
+                    name: "被保人信息",
+                    scroll: "insured",
+                },
+                {
+                    name: "关系证明",
+                    scroll: "relationship",
+                },
+                {
+                    name: "验车照",
+                    scroll: "yanchezhao",
+                },
+                {
+                    name: "上年商业险保单",
+                    scroll: "snbaodan",
+                },
+
+            ],
+            showViewer: false,
+            ProViewImg: "", //预览图片
+            carfrontImg: "", //行驶证正面
+            carbackImg: "", //行驶证背面
+            userfrontImg: "", //身份证正面
+            userbackImg: "", //身份证背面
+            businessImg: "",
+            CarFrontFile: "", //车正面文件流
+            CarBackFile: "", //车背面文件流
+            C02File: "",
+            D02File: "",
+            C03File: "",
+            D03File: "",
+            C04File: "",
+            D04File: "",
+            //影像回显列表
+            imgList1: [],
+            imgList2: [],
+            imgList3: [],
+            imgList4: [],
+            imgList5: [],
+            imgList6: [],
+            imgList7: [],
+            imgList8: [],
+            imgList9: [],
+            imgList10: [],
+            imgList11: [],
+            imgList12: [],
+            imgList13: [],
+            imgList14: [],
+            imgList15: [],
+            imgList16: [],
+            imgList17: [],
+            imgList18: [],
+            imgList19: [],
+            imgList20: [],
+            imgList21: [],
+            imgList22: [],
+            imgList23: [],
+            imgList24: [],
+            //影像上传列表
+            imageList1: [],
+            imageList2: [],
+            imageList3: [],
+            imageList4: [],
+            imageList5: [],
+            imageList6: [],
+        }
+    },
+
+    props: {
+        quoteno: String,
+        type: {
+            type: Number,
+            default: 1
+        },
+        companyId: String
+    },
+    methods: {
+        setBackupVisible: function (backupVisible) {
+            this.imageUploaddialogVisible = backupVisible
+        },
+        tabLiScroll(id, idx) {
+            this.tabLiIndex = idx;
+            document.getElementById(id).scrollIntoView({ behavior: "smooth" });
+        },
+        //预览图片
+        handlePictureCardPreview(img) {
+            this.ProViewImg = img;
+            this.showViewer = true;
+        },
+        // 关闭查看器
+        closeViewer() {
+            this.showViewer = false;
+        },
+        //影像上传
+        drivingupload(file, imageIdList, imgurl, type) {
+            let that = this;
+            let size = file.size / 1024 / 1024 < 5;
+            const isJPG =
+                file.raw.type === "image/jpeg" || file.raw.type === "image/png";
+            if (!size) {
+                this.$message.error("上传图片大小不能超过 5MB!");
+                this[imgurl] = [];
+                return false;
+            }
+            if (!isJPG) {
+                this.$message.error("上传图片只能是 JPG、PNG 格式!");
+                this[imgurl] = [];
+                return false;
+            }
+            this[imgurl].push(file);
+
+            var file = file.raw;
+            const params = new FormData(); // 声明formData数据类型
+            params.append("multipartFile", file);
+            params.append("type", "image");
+            this.$api.letter.uploadFile(params).then((res) => {
+                if (res.code == "200") {
+                    if (this[imageIdList].some((v) => v.imageType == type)) {
+                        this[imageIdList].map((val) => {
+                            if (val.imageType == type) {
+                                val.imageId = res.data.id;
+                            }
+                        });
+                    } else {
+                        this[imageIdList].push({
+                            imageId: res.data.id,
+                            imageType: type,
+                        });
+                    }
+                }
+            });
+        },
+        imageEcho(quotenos) {
+            //影像查询
+            this.$api.letter.findByQuoteNo(quotenos).then((res) => {
+                if (res.code == "200") {
+                    this.imageList1 = [];
+                    this.imageList2 = [];
+                    this.imageList3 = [];
+                    this.imageList4 = [];
+                    this.imageList5 = [];
+                    this.imageList6 = [];
+                    this.imgList1 = [];
+                    this.imgList2 = [];
+                    this.imgList3 = [];
+                    this.imgList4 = [];
+                    this.imgList5 = [];
+                    this.imgList6 = [];
+                    this.imgList7 = [];
+                    this.imgList8 = [];
+                    this.imgList9 = [];
+                    this.imgList10 = [];
+                    this.imgList11 = [];
+                    this.imgList12 = [];
+                    this.imgList13 = [];
+                    this.imgList14 = [];
+                    this.imgList15 = [];
+                    this.imgList16 = [];
+                    this.imgList17 = [];
+                    this.imgList18 = [];
+                    this.imgList19 = [];
+                    this.imgList20 = [];
+                    this.imgList21 = [];
+                    this.imgList22 = [];
+                    this.imgList23 = [];
+                    this.imgList24 = [];
+                    Object.keys(res.data).forEach((keys) => {
+                        if (res.data[keys].url) {
+                            res.data[keys].url = process.env.BASE_URL + res.data[keys].url;
+                            switch (keys) {
+                                case "C01":
+                                    this.imageList1.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList1.push(res.data[keys]);
+                                    break;
+                                case "D01":
+                                    this.imageList1.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList2.push(res.data[keys]);
+                                    break;
+                                case "C02":
+                                    this.imageList2.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList3.push(res.data[keys]);
+                                    break;
+
+                                case "D02":
+                                    this.imageList2.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList4.push(res.data[keys]);
+                                    break;
+                                case "C03":
+                                    this.imageList3.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList5.push(res.data[keys]);
+                                    break;
+                                case "D03":
+                                    this.imageList3.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList6.push(res.data[keys]);
+                                    break;
+                                case "C04":
+                                    this.imageList4.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList7.push(res.data[keys]);
+                                    break;
+                                case "D04":
+                                    this.imageList4.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList8.push(res.data[keys]);
+                                    break;
+                                case "XC00":
+                                    this.imageList5.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList9.push(res.data[keys]);
+                                    break;
+                                case "GC00":
+                                    this.imageList5.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList10.push(res.data[keys]);
+                                    break;
+                                case "GX00":
+                                    this.imageList5.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList11.push(res.data[keys]);
+                                    break;
+                                case "TAR05":
+                                    this.imageList1.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList12.push(res.data[keys]);
+                                    break;
+                                case "C0500":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList13.push(res.data[keys]);
+                                    break;
+                                case "C0501":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList14.push(res.data[keys]);
+                                    break;
+                                case "C0502":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList15.push(res.data[keys]);
+                                    break;
+                                case "C0503":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList16.push(res.data[keys]);
+                                    break;
+                                case "C0504":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList17.push(res.data[keys]);
+                                    break;
+                                case "C0506":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList18.push(res.data[keys]);
+                                    break;
+                                case "C0507":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList19.push(res.data[keys]);
+                                    break;
+                                case "C0505":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList20.push(res.data[keys]);
+                                    break;
+                                case "C0508":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList21.push(res.data[keys]);
+                                    break;
+                                case "C0509":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList22.push(res.data[keys]);
+                                    break;
+                                case "C0510":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList23.push(res.data[keys]);
+                                    break;
+                                case "LAST_INSURANCE_POLICY":
+                                    this.imageList6.push({
+                                        imageId: res.data[keys].imageId,
+                                        imageType: res.data[keys].imageType,
+                                    });
+                                    this.imgList24.push(res.data[keys]);
+                                    break;
+                                default:
+                                    break;
+                            }
+                        }
+                    });
+                } else {
+                    this.$message({ message: res.msg, type: "info" });
+                }
+            });
+        },
+        emptyList() {
+            this.imageList1 = [];
+            this.imageList2 = [];
+            this.imageList3 = [];
+            this.imageList4 = [];
+            this.imageList5 = [];
+            this.imageList6 = [];
+            this.imgList1 = [];
+            this.imgList2 = [];
+            this.imgList3 = [];
+            this.imgList4 = [];
+            this.imgList5 = [];
+            this.imgList6 = [];
+            this.imgList7 = [];
+            this.imgList8 = [];
+            this.imgList9 = [];
+            this.imgList10 = [];
+            this.imgList11 = [];
+            this.imgList12 = [];
+            this.imgList13 = [];
+            this.imgList14 = [];
+            this.imgList15 = [];
+            this.imgList16 = [];
+            this.imgList17 = [];
+            this.imgList18 = [];
+            this.imgList19 = [];
+            this.imgList20 = [];
+            this.imgList21 = [];
+            this.imgList22 = [];
+            this.imgList23 = [];
+            this.imgList24 = [];
+        },
+        handleRemove1(file, imageIdList, imgList) {
+            this[imageIdList].map((ele, index) => {
+                if (file.imageId === ele.imageId) {
+                    this[imageIdList].splice(index, 1);
+                }
+                return ele;
+            });
+            if (file.imageId) {
+                this[imgList].map((ele, index) => {
+                    if (file.imageId === ele.imageId) {
+                        this[imgList].splice(index, 1);
+                    }
+                    return ele;
+                });
+            } else {
+                this[imgList].map((ele, index) => {
+                    if (file.uid === ele.uid) {
+                        this[imgList].splice(index, 1);
+                    }
+                    return ele;
+                });
+            }
+        },
+        uploadinformation() {
+            // //上传图片
+            const mergedArray = [
+                ...this.imageList1,
+                ...this.imageList2,
+                ...this.imageList3,
+                ...this.imageList4,
+                ...this.imageList5,
+                ...this.imageList6,
+            ];
+            let imageparam = {
+                imageList: mergedArray,
+                quoteNo: this.quoteno,
+            };
+            this.$api.letter.uploadImages(imageparam).then((responses) => {
+                if (responses.code == "200") {
+                    this.imageEcho(this.quoteno);
+                    this.$message({ message: responses.msg, type: "success" });
+                } else {
+                    this.$message({ message: responses.msg, type: "error" });
+                }
+            });
+            this.imageUploaddialogVisible = false;
+        },
+
+        repairinformation() {
+            // //上传图片
+            const mergedArray = [
+                ...this.imageList1,
+                ...this.imageList2,
+                ...this.imageList3,
+                ...this.imageList4,
+                ...this.imageList5,
+                ...this.imageList6,
+            ];
+            let imageparam = {
+                imageList: mergedArray,
+                companyId: this.companyId,
+            };
+            this.$api.letter.additionalInformation(imageparam).then((responses) => {
+                if (responses.code == "200") {
+                    this.imageUploaddialogVisible = false;
+                    this.$message({ message: responses.msg, type: "success" });
+                } else {
+                    this.$message({ message: responses.msg, type: "error" });
+                }
+            });
+        },
+    }
+
+}
+</script>
+<style lang="scss"  scoped>
+.tab-style {
+    width: 120px;
+
+    li {
+        text-align: right;
+        padding-right: 20px;
+        line-height: 40px;
+        cursor: pointer;
+        box-sizing: border-box;
+        border-right: 1px solid #e2e5eb;
+    }
+
+    li:focus {
+        background: rgba(212, 36, 38, 0.1);
+        border-right: 2px solid var(--themeColor);
+        color: var(--themeColor);
+    }
+}
+
+.tabLi-style {
+    background: rgba(212, 36, 38, 0.1);
+    border-right: 2px solid var(--themeColor);
+    color: var(--themeColor);
+}
+
+/deep/{
+    .styleB .el-upload--picture-card {
+    // display: none;
+    opacity: 0;
+}
+
+.styleB {
+    height: 128px;
+}
+
+.styleB .el-upload--picture-card {
+    display: none;
+}
+}
+.aaa {
+    /deep/ {
+        margin-bottom: 20px;
+        margin-right: 30px;
+
+        span {
+            display: inline-block;
+            margin-bottom: 10px;
+        }
+
+        .el-upload .el-upload-dragger {
+            width: 180px;
+            height: 120px;
+            border: 1px dashed #c0ccda;
+            padding: 0;
+        }
+
+        .el-upload-list--picture-card .el-upload-list__item {
+            width: 180px;
+            height: 120px;
+        }
+
+        .el-upload-list__item:first-child {
+            margin-top: 0;
+        }
+
+        .el-upload--picture-card {
+            width: 180px;
+            height: 120px;
+        }
+
+        .el-upload-list__item {
+            width: 180px;
+            height: 120px;
+            margin: 0 !important;
+            display: block !important;
+        }
+
+        .el-upload-list--picture-card .el-upload-list__item-thumbnail {
+            width: 180px;
+            height: 120px;
+        }
+    }
+
+    
+}</style>

+ 23 - 0
src/views/FinancialManagement/AcountWithdrawal/WithdrawalReview.vue

@@ -73,6 +73,23 @@ export default {
           value: '2'
         },
       ],
+      ascriptionoptions: [
+       {
+          label: '渠道',
+          value: '1'
+        }, {
+          label: '个代',
+          value: '2'
+        },
+        {
+          label: '合伙人',
+          value: 'a'
+        },
+        {
+          label: '机构负责人',
+          value: 'b'
+        },
+      ],
       bankVerifyoptions: [
         {
           label: '未验证',
@@ -97,6 +114,7 @@ export default {
         { prop: "bankAddress", label: "开户行" },
         { prop: "bankVerify", label: "认证状态", formatter: this.bankVerifyFormatter },
         { prop: "auditStatus", label: "状态", formatter: this.statusFormatter },
+        { prop: "ascription", label: "卡归属", formatter: this.ascriptionsFormatter },
         { prop: "remark", label: "驳回原因" },
       ],
     };
@@ -108,6 +126,11 @@ export default {
     statusFormatter(row, column) { //协议类型
       return this.options.find(val => val.value == row.auditStatus).label
     },
+    ascriptionsFormatter(row, column) { //协议类型
+      if(row.ascription){
+        return this.ascriptionoptions.find(val => val.value == row.ascription).label
+      }
+    },
     bankVerifyFormatter(row, column) { //协议类型
       return this.bankVerifyoptions.find(val => val.value == row.bankVerify).label
     },

+ 147 - 94
src/views/PeopleManage/Institutional.vue

@@ -1,25 +1,52 @@
 <template>
   <div>
-    <div>
-      
+    <el-main ref="elMain" style="padding: 0px">
+      <Split :gutterSize="2" style="height: calc(100vh - 120px)">
+        <!-- 左侧树Start -->
+        <SplitArea :size="leftSplitWidth" :minSize="240">
+          <div>
+            <div>
+              <kt-button
+                style="background-color: #ffc000; border: #ffc000"
+                icon="fa fa-plus"
+                label="新增"
+                type="primary"
+                perms="sys:teamchannel:add"
+                @click="handleAddButton"
+              />
+            </div>
+            <el-divider></el-divider>
+            <el-tree
+              :data="ztreeNodes"
+              :props="{ children: 'children', label: 'name' }"
+              node-key="id"
+              :default-expanded-keys="['9']"
+              @node-click="onZTreeClick"
+            ></el-tree>
+          </div>
+        </SplitArea>
+        <!-- 左侧树End -->
+
+        <!-- 右侧列表页面Start -->
+        <SplitArea :size="rightSplitWidth">
           <templateTable
-            :formList="formList"
             :searchData.sync="queryFrom"
             :tableConfig="tableConfig"
-            :btnGroup="btnGroup"
             :data="pageResult"
             @getList="findPage"
             @handleSearchList="handleSearchList"
             :pagination="pageData"
           >
-          <template slot="source" slot-scope="scope">
+          <!-- <template slot="source" slot-scope="scope">
               <span>
                     {{ statMaps(scope.row.source) }}</span
                   >
-            </template>
+            </template> -->
           </templateTable>
-    </div>
-
+  </SplitArea>
+        <!-- 右侧列表页面End -->
+      </Split>
+    </el-main>
     <!-- 新增修改界面 -->
     <el-dialog
       :title="dialogTitle"
@@ -39,28 +66,30 @@
             size="small"
           >
             <el-row>
+             
               <el-col :span="12">
-                <el-form-item label="工号" prop="userId">
-                  <el-input v-model="formData.userId" disabled></el-input>
+                <el-form-item label="机构编码" prop="deptId">
+                  <el-input v-model="formData.deptId" disabled></el-input>
                 </el-form-item>
               </el-col>
               <el-col :span="12">
-                <el-form-item label="名称" prop="userName">
-                  <el-select v-model="formData.userName" clearable filterable  placeholder="选择名称" @change="userChange">
-                <el-option v-for="(item, index) in useroption" :key="index" :label="item.name"
+                <el-form-item label="机构名称" prop="deptName">
+                  <el-input v-model="formData.deptName" disabled></el-input>
+                  <!-- <el-select v-model="formData.deptName" clearable filterable :disabled="dialogTitle=='编辑'" placeholder="选择机构名称" @change="deptChange">
+                <el-option v-for="(item, index) in deptoption" :key="index" :label="item.name"
                   :value="item.name"></el-option>
-              </el-select>
+              </el-select> -->
                 </el-form-item>
               </el-col>
               <el-col :span="12">
-                <el-form-item label="机构id" prop="deptId">
-                  <el-input v-model="formData.deptId" disabled></el-input>
+                <el-form-item label="管理员工号" prop="userId">
+                  <el-input v-model="formData.userId" disabled></el-input>
                 </el-form-item>
               </el-col>
               <el-col :span="12">
-                <el-form-item label="机构名称" prop="deptName">
-                  <el-select v-model="formData.deptName" clearable filterable :disabled="dialogTitle=='编辑'" placeholder="选择机构名称" @change="deptChange">
-                <el-option v-for="(item, index) in deptoption" :key="index" :label="item.name"
+                <el-form-item label="管理员名称" prop="userName">
+                  <el-select v-model="formData.userName" style="width: 200px;" clearable filterable  placeholder="选择管理员名称" @change="userChange">
+                <el-option v-for="(item, index) in useroption" :key="index" :label="item.name"
                   :value="item.name"></el-option>
               </el-select>
                 </el-form-item>
@@ -71,13 +100,14 @@
                 </el-form-item>
               </el-col>
               <el-col :span="12">
-                <el-form-item label="机构等级" prop="deptId">
+                <el-form-item label="机构等级" prop="comlevel">
                   <el-input v-model="formData.comlevel" disabled></el-input>
                 </el-form-item>
               </el-col>
               <el-col :span="12">
                 <el-form-item label="业务来源" prop="source">
-                  <el-select v-model="formData.source" multiple clearable  placeholder="请选择业务来源">
+                  <!-- <el-input v-model="formData.source" disabled></el-input> -->
+                  <el-select v-model="formData.source" style="width: 200px;"  clearable  placeholder="请选择业务来源" disabled>
                     <el-option
                       v-for="val in organizationSourceoptions"
                       :key="val.dictValue"
@@ -87,21 +117,9 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <!-- <el-col :span="12">
-                <el-form-item label="业务来源" prop="source">
-                  <el-select v-model="formData.source" multiple clearable  placeholder="请选择业务来源">
-                    <el-option
-                      v-for="val in organizationSourceoptions"
-                      :key="val.dictValue"
-                      :label="val.dictTag"
-                      :value="val.dictValue">
-                    </el-option>
-                  </el-select>
-                </el-form-item>
-              </el-col> -->
               <el-col :span="12">
                 <el-form-item label="推荐人" prop="suggestId">
-                  <el-select v-model="formData.suggestId" @change="suggestChange" clearable  placeholder="请选择推荐人">
+                  <el-select v-model="formData.suggestId" style="width: 200px;" @change="suggestChange" clearable  placeholder="请选择推荐人">
                     <el-option
                       v-for="val in sysPartnerOption"
                       :key="val.userId"
@@ -132,6 +150,10 @@ export default {
   },
   data() {
     return {
+      ztreeNodes: [],
+      leftSplitWidth: 20,
+      rightSplitWidth: 80,
+      currentTreeNode: null,
       formList: [
         // {
         //   label: "工号",
@@ -149,12 +171,12 @@ export default {
         //   prop: "deptId",
         //   type: "input",
         // },
-        {
-          label: "机构名称",
-          prop: "deptId",
-          type: "select",
-          options:[]
-        },
+        // {
+        //   label: "机构名称",
+        //   prop: "deptId",
+        //   type: "select",
+        //   options:[]
+        // },
         // {
         //   label: "业务来源",
         //   prop: "source",
@@ -162,16 +184,14 @@ export default {
         //   options:[]
         // },
       ],
-      btnGroup: [
-        {
-          name: "新增",
-          click: (row, index) => { return this.handleAddButton() },
+      // btnGroup: [
+      //   {
+      //     name: "新增",
+      //     click: (row, index) => { return this.handleAddButton() },
 
-        },
-      ],
+      //   },
+      // ],
       useroption:[],
-      deptoption:[],
-      organizationSourceoptions:[],
       tableConfig: {
         columns: [
           // 数据列
@@ -190,12 +210,18 @@ export default {
             label: "机构等级",
             type: "text",
           },
-          { name: "source", label: "业务来源", type: "slot" },
+          {
+            prop: "source",
+            label: "业务来源",
+            type: "statMap",
+            options:[]
+          },
+          // { name: "source", label: "业务来源", type: "slot" },
         ],
         loading: true,
         isPaginationShow: true,
         isShowIndex: true,
-        
+        operationWidth:150,
         optBtns: [
           {
             type: "primary",
@@ -240,26 +266,46 @@ export default {
       pageResult: [],
       dialogTitle: "",
       dialogVisible: false, // 新增编辑界面是否显示
-      sysPartnerOption:[]
-
+      sysPartnerOption:[],
+      organizationSourceoptions:[]
     };
   },
   created() {
     this.findPage();
-    this.$api.insCompany.sysPartner().then(res=>{
-      this.sysPartnerOption=res.data
-    })
-    this.$api.insCompany.getDeptInfo().then(res=>{
-      if(res.code==200){
-        this.formList.forEach(e=>{
-          if(e.prop=='deptId'){
-            e.options=res.data
+    this.findLeftTreeData(); // 获取机构树的数据
+    this.$api.insCompany.dicType('organizationSource').then((res) => {
+        if (res.code == 200) {
+          this.tableConfig.columns.forEach(e=>{
+          if(e.prop=='source'){
+            e.options=res.data.ddList
           }
         })
-        this.deptoption=res.data
+          this.organizationSourceoptions = res.data.ddList;
+        }
+      });
+  
+  },
+  methods: {
+    findLeftTreeData: function () {
+        this.$api.insCompany.getSysDeptTree().then((res) => {
+          // this.treeDataRecursion(res.data, treeTypeNum);
+          this.ztreeNodes = res.data;
+        });
+      },
+      //添加人员
+      handleAddButton() {
+      if (this.currentTreeNode == null) {
+        this.$message.info("请选择所属公司或部门");
+        return;
       }
-    })
-    this.$api.insCompany.getUserInfo().then(res=>{
+      if (
+        this.currentTreeNode.comlevel != null &&
+          this.currentTreeNode.comlevel !== "5"
+      ) {
+        this.$message.info("请选择第五级机构");
+        return;
+      }
+      this.$api.insCompany.agencyGetUserInfo(this.currentTreeNode.parentId).then(res=>{
       if(res.code==200){
         this.formList.forEach(e=>{
           if(e.prop=='userId'){
@@ -269,18 +315,31 @@ export default {
         this.useroption=res.data
       }
     })
-    this.$api.insCompany.dicType('organizationSource').then((res) => {
-        if (res.code == 200) {
-          this.formList.forEach(e=>{
-          if(e.prop=='source'){
-            e.options=res.data.ddList
-          }
-        })
-          this.organizationSourceoptions = res.data.ddList;
-        }
-      });
-  },
-  methods: {
+    this.$api.insCompany.queryRecommendAndPartner(this.currentTreeNode.parentId).then(res=>{
+      this.sysPartnerOption=res.data
+    })
+    
+      this.dialogTitle = "新增";
+      this.formData={
+        deptName:this.currentTreeNode.name,
+        deptId:this.currentTreeNode.id,
+        comlevel:this.currentTreeNode.comlevel,
+        source:this.currentTreeNode.managementSource,
+      }
+      this.dialogVisible = true;
+      if(this.$refs["formData"]){
+        this.$refs["formData"].resetFields();
+      }
+    },
+    onZTreeClick: function (evt, treeId, treeNode) {
+      // 点击事件
+      this.currentTreeNode = evt;
+      this.pageData.pageNum = 1;
+      let data={
+        deptId:this.currentTreeNode.id
+      } 
+      this.findPage(data);
+    },
     suggestChange(e){
       this.formData.suggestName=''
       if(e){
@@ -295,16 +354,6 @@ export default {
         this.formData.userId=''
       }
     },
-    deptChange(val){
-      if(val){
-        this.formData.deptId= this.deptoption.find(e=>e.name==val).id
-        this.formData.comlevel= this.deptoption.find(e=>e.name==val).comlevel
-      }
-      else{
-        this.formData.comlevel=''
-        this.formData.deptId=''
-      }
-    },
     // 查询Start
     queryStaffInfo() {
       this.findPage();
@@ -345,6 +394,19 @@ export default {
     },
     //编辑
     async handleTableEdit(params) {
+      this.$api.insCompany.agencyGetUserInfo(params.parentId).then(res=>{
+      if(res.code==200){
+        this.formList.forEach(e=>{
+          if(e.prop=='userId'){
+            e.options=res.data
+          }
+        })
+        this.useroption=res.data
+      }
+    })
+    this.$api.insCompany.queryRecommendAndPartner(params.parentId).then(res=>{
+      this.sysPartnerOption=res.data
+    })
       this.$api.insCompany
         .agencyQueryById(params.id)
         .then((res) => {
@@ -374,15 +436,6 @@ export default {
         })
         .catch(() => {});
     },
-    //添加人员
-    handleAddButton() {
-      this.dialogTitle = "新增";
-      this.formData={}
-      this.dialogVisible = true;
-      if(this.$refs["formData"]){
-        this.$refs["formData"].resetFields();
-      }
-    },
     handleDialogBefore(done) {
       // 退出对话框之前确认提示
       this.$confirm("确认关闭?")

+ 7 - 4
src/views/PeopleManage/InstitutionalExtraction.vue

@@ -26,12 +26,15 @@ export default {
   data() {
     return {
       formList: [
-      
+      {
+          label: "工号",
+          prop: "userId",
+          type: "input",
+        },
         {
           label: "名称",
-          prop: "userId",
-          type: "select",
-          options:[]
+          prop: "userName",
+          type: "input",
         },
       ],
       tableConfig: {

+ 7 - 36
src/views/PeopleManage/InstitutionalPremium.vue

@@ -109,12 +109,15 @@ export default {
       operationdialogVisible:false,
       operationtableData:[],
       formList: [
-      
         {
-          label: "名称",
+          label: "工号",
           prop: "userId",
-          type: "select",
-          options:[]
+          type: "input",
+        },
+        {
+          label: "名称",
+          prop: "userName",
+          type: "input",
         },
       ],
       btnGroup: [
@@ -124,8 +127,6 @@ export default {
 
         },
       ],
-      useroption:[],
-      deptoption:[],
       statusoption:[
         {
           label:'未审核',
@@ -254,26 +255,6 @@ export default {
   created() {
     this.findPage();
   
-    this.$api.insCompany.getDeptInfo().then(res=>{
-      if(res.code==200){
-        this.formList.forEach(e=>{
-          if(e.prop=='deptId'){
-            e.options=res.data
-          }
-        })
-        this.deptoption=res.data
-      }
-    })
-    this.$api.insCompany.getUserInfo().then(res=>{
-      if(res.code==200){
-        this.formList.forEach(e=>{
-          if(e.prop=='userId'){
-            e.options=res.data
-          }
-        })
-        this.useroption=res.data
-      }
-    })
   },
   methods: {
     handleClose(done) {
@@ -287,16 +268,6 @@ export default {
         this.formData.userId=''
       }
     },
-    deptChange(val){
-      if(val){
-        this.formData.deptId= this.deptoption.find(e=>e.name==val).id
-        this.formData.comlevel= this.deptoption.find(e=>e.name==val).comlevel
-      }
-      else{
-        this.formData.comlevel=''
-        this.formData.deptId=''
-      }
-    },
     // 查询Start
     queryStaffInfo() {
       this.findPage();

+ 209 - 92
src/views/PeopleManage/Partner.vue

@@ -1,19 +1,52 @@
 <template>
   <div>
-    <div>
-      
+    <el-main ref="elMain" style="padding: 0px">
+      <Split :gutterSize="2" style="height: calc(100vh - 120px)">
+        <!-- 左侧树Start -->
+        <SplitArea :size="leftSplitWidth" :minSize="240">
+          <div>
+            <!-- <div>
+              <kt-button
+                style="background-color: #ffc000; border: #ffc000"
+                icon="fa fa-plus"
+                label="新增"
+                type="primary"
+                perms="sys:teamchannel:add"
+                @click="handleAddButton"
+              />
+            </div>
+            <el-divider></el-divider> -->
+            <el-tree
+              :data="ztreeNodes"
+              :props="{ children: 'children', label: 'name' }"
+              node-key="id"
+              :default-expanded-keys="['9']"
+              @node-click="onZTreeClick"
+            ></el-tree>
+          </div>
+        </SplitArea>
+        <!-- 左侧树End -->
+
+        <!-- 右侧列表页面Start -->
+        <SplitArea :size="rightSplitWidth">
           <templateTable
-            :formList="formList"
             :searchData.sync="queryFrom"
             :tableConfig="tableConfig"
-            :btnGroup="btnGroup"
             :data="pageResult"
             @getList="findPage"
             @handleSearchList="handleSearchList"
             :pagination="pageData"
           >
+          <template slot="type" slot-scope="scope">
+            <span
+              :style="{ background: scope.row.type == '1' ? 'linear-gradient( 180deg, #66CDBB 0%, #33A08D 100%)' : '#A6A6A6', borderRadius: '4px', padding: '4px 10px', color: '#fff' }">{{
+                scope.row.type == 1 ? "是" : "否" }}</span>
+          </template>
           </templateTable>
-    </div>
+        </SplitArea>
+        <!-- 右侧列表页面End -->
+      </Split>
+    </el-main>
 
     <!-- 新增修改界面 -->
     <el-dialog
@@ -41,10 +74,11 @@
               </el-col>
               <el-col :span="12">
                 <el-form-item label="名称" prop="userName">
-                  <el-select v-model="formData.userName" clearable filterable  placeholder="选择名称" @change="userChange">
+                  <el-input v-model="formData.userName" disabled></el-input>
+                  <!-- <el-select v-model="formData.name" disabled clearable filterable  placeholder="选择名称" @change="userChange">
                 <el-option v-for="(item, index) in useroption" :key="index" :label="item.name"
                   :value="item.name"></el-option>
-              </el-select>
+              </el-select> -->
                 </el-form-item>
               </el-col>
               <el-col :span="12">
@@ -62,9 +96,9 @@
                       :value="val.userId">
                     </el-option>
                   </el-select>
-                  
                 </el-form-item>
               </el-col>
+              
             </el-row>
           </el-form>
         <span slot="footer" class="dialog-footer">
@@ -78,6 +112,7 @@
 <script>
 import KtButton from "@/views/Core/KtButton"; // 按钮权限组件
 import templateTable from "../../components/TemplateTable/index.vue";
+
 export default {
   components: {
     KtButton,
@@ -85,6 +120,10 @@ export default {
   },
   data() {
     return {
+      ztreeNodes: [],
+      leftSplitWidth: 20,
+      rightSplitWidth: 80,
+      currentTreeNode: null,
       formList: [
         // {
         //   label: "工号",
@@ -97,59 +136,47 @@ export default {
           type: "select",
           options:[]
         },
-        // {
-        //   label: "机构id",
-        //   prop: "deptId",
-        //   type: "input",
-        // },
-        // {
-        //   label: "机构名称",
-        //   prop: "deptId",
-        //   type: "select",
-        //   options:[]
-        // },
-        // {
-        //   label: "业务来源",
-        //   prop: "source",
-        //   type: "select",
-        //   options:[]
-        // },
-      ],
-      btnGroup: [
-        {
-          name: "新增",
-          click: (row, index) => { return this.handleAddButton() },
-
-        },
+       
       ],
+    
       useroption:[],
       tableConfig: {
         columns: [
           // 数据列
-          { prop: "userId", label: "工号", type: "text" },
+          { prop: "id", label: "工号", type: "text" },
           {
-            prop: "userName",
+            prop: "name",
             label: "名称",
             type: "text",
           },
-          { prop: "suggestId", label: "推荐人id", type: "text" },
-
+          { prop: "deptId", label: "机构工号", type: "text" },
+          {
+            prop: "deptName",
+            label: "机构名称",
+            type: "text",
+          },
+          { prop: "suggestId", label: "推荐人工号", type: "text" },
           { prop: "suggestName", label: "推荐人名称", type: "text" },
           { prop: "proportional", label: "抽成比例", type: "text" },
+          { name: "type", label: "是否为合伙人", type: "slot" },
         ],
         loading: true,
         isPaginationShow: true,
         isShowIndex: true,
+        operationWidth:150,
         optBtns: [
-            // {
-            //   type: "primary",
-            //   label: "编辑",
-            //   perm: "sys:agent:edit",
-            //   icon: "fa fa-edit",
-            //   click: (row, index) => {
-            //     return this.handleTableEdit(row);
-            //   },
-            // },
+            {
+              type: "primary",
+              label: "编辑",
+              perm: "sys:agent:edit",
+              icon: "fa fa-edit",
+              hide:(row)=>{
+                return row.type!=='1'
+              },
+              click: (row, index) => {
+                return this.handleTableEdit(row);
+              },
+            },
           {
             type: "primary",
             label: "删除",
@@ -187,21 +214,29 @@ export default {
   },
   created() {
     this.findPage();
-    this.$api.insCompany.sysPartner().then(res=>{
-      this.sysPartnerOption=res.data
-    })
-    this.$api.insCompany.getUserInfo().then(res=>{
-      if(res.code==200){
-        this.formList.forEach(e=>{
-          if(e.prop=='userId'){
-            e.options=res.data
-          }
-        })
-        this.useroption=res.data
-      }
-    })
+    this.findLeftTreeData(); // 获取机构树的数据
   },
   methods: {
+    findLeftTreeData: function () {
+        this.$api.dept.findTree().then((res) => {
+          this.treeDataRecursion(res.data, '1');
+          this.ztreeNodes = res.data;
+        });
+      },
+       //树过滤五级机构递归
+       treeDataRecursion(data, num, one) {
+        data = data || this.ztreeNodes;
+        one = one || 0;
+        one++;
+        for (let i = 0; i < data.length; i++) {
+          if (data[i].comlevel == 5 && (data[i].managementSource != num)) {
+            data.splice(i, 1);
+            i = i - 1;
+          } else {
+            this.treeDataRecursion(data[i].children, num, one);
+          }
+        }
+      },
     userChange(val){
       if(val){
         this.formData.userId= this.useroption.find(e=>e.name==val).id
@@ -243,16 +278,25 @@ export default {
     },
     //编辑
     async handleTableEdit(params) {
-      this.$api.insCompany
-        .agencyQueryById(params.id)
-        .then((res) => {
-          if(res.code==200){
-            this.dialogTitle = "编辑";
-            this.dialogVisible= true
-            this.formData=res.data
-          }
+      this.$api.insCompany.queryRecommendAndPartner(params.parentId).then(res=>{
+        this.sysPartnerOption=res.data
+      })
+      this.dialogTitle = "编辑";
+      this.dialogVisible= true
+      params.userName=params.name
+      params.userId=params.id
+      this.formData= JSON.parse(JSON.stringify(params)) 
 
-        });
+      // this.$api.insCompany
+      //   .agencyQueryById(params.id)
+      //   .then((res) => {
+      //     if(res.code==200){
+      //       this.dialogTitle = "编辑";
+      //       this.dialogVisible= true
+      //       this.formData=res.data
+      //     }
+
+      //   });
     },
     // 删除单个人员
     handleTableDeleteFlag(data) {
@@ -272,15 +316,70 @@ export default {
         })
         .catch(() => {});
     },
-    //添加人员
-    handleAddButton() {
+   
+      //新增人员
+      handleAddButton() {
+      if (this.currentTreeNode == null) {
+        this.$message.info("请选择所属公司或部门");
+        return;
+      }
+      if (
+        this.currentTreeNode.comlevel != null &&
+          this.currentTreeNode.comlevel !== "5"
+      ) {
+        this.$message.info("请选择第五级机构");
+        return;
+      }
+      this.$api.insCompany.agencyGetUserInfo(this.currentTreeNode.parentId).then(res=>{
+      if(res.code==200){
+        this.formList.forEach(e=>{
+          if(e.prop=='userId'){
+            e.options=res.data
+          }
+        })
+        this.useroption=res.data
+      }
+    })
+    this.$api.insCompany.queryRecommendAndPartner(this.currentTreeNode.parentId).then(res=>{
+      this.sysPartnerOption=res.data
+    })
+    
       this.dialogTitle = "新增";
-      this.formData={}
+      this.formData={
+        deptName:this.currentTreeNode.name,
+        deptId:this.currentTreeNode.id,
+        comlevel:this.currentTreeNode.comlevel,
+        source:this.currentTreeNode.managementSource,
+      }
       this.dialogVisible = true;
       if(this.$refs["formData"]){
         this.$refs["formData"].resetFields();
       }
     },
+    onZTreeClick: function (evt, treeId, treeNode) {
+      // 点击事件
+      this.currentTreeNode = evt;
+      this.pageData.pageNum = 1;
+      let data={
+        deptId:this.currentTreeNode.id
+      } 
+      this.findPage(data);
+
+    },
+    suggestChange(e){
+      this.formData.suggestName=''
+      if(e){
+        this.formData.suggestName=this.sysPartnerOption.find(val=>val.userId==e).userName
+      }
+    },
+    userChange(val){
+      if(val){
+        this.formData.userId= this.useroption.find(e=>e.name==val).id
+      }
+      else{
+        this.formData.userId=''
+      }
+    },
     handleDialogBefore(done) {
       // 退出对话框之前确认提示
       this.$confirm("确认关闭?")
@@ -299,8 +398,7 @@ export default {
       this.$refs.formData.validate((valid) => {
         if (valid) {
           this.$confirm("确认提交吗?", "提示", {}).then(() => {
-            if (this.dialogTitle == "新增") {
-              this.$api.insCompany
+            this.$api.insCompany
                 .sysPartnerAdd(this.formData)
                 .then((res) => {
                   if (res.code == 200) {
@@ -318,26 +416,45 @@ export default {
                     });
                   }
                 });
-            } else {
-              this.$api.insCompany
-                .agencyEdit(this.formData)
-                .then((res) => {
-                  if (res.code == 200) {
-                    this.$message({
-                      message: "编辑成功",
-                      type: "success",
-                    });
-                    this.dialogVisible = false;
-                    this.$refs["formData"].resetFields();
-                    this.findPage();
-                  } else {
-                    this.$message({
-                      message: `编辑失败,请重新添加,(${res.msg})`,
-                      type: "error",
-                    });
-                  }
-                });
-            }
+            // if (this.dialogTitle == "新增") {
+            //   this.$api.insCompany
+            //     .sysPartnerAdd(this.formData)
+            //     .then((res) => {
+            //       if (res.code == 200) {
+            //         this.$message({
+            //           message: "保存成功",
+            //           type: "success",
+            //         });
+            //         this.dialogVisible = false;
+            //         this.$refs["formData"].resetFields();
+            //         this.findPage();
+            //       } else {
+            //         this.$message({
+            //           message: `保存失败,请重新添加,(${res.msg})`,
+            //           type: "error",
+            //         });
+            //       }
+            //     });
+            // } else {
+            //   this.$api.insCompany
+            //     .agencyEdit(this.formData)
+            //     .then((res) => {
+            //       if (res.code == 200) {
+            //         this.$message({
+            //           message: "编辑成功",
+            //           type: "success",
+            //         });
+            //         this.dialogVisible = false;
+            //         this.$refs["formData"].resetFields();
+            //         this.findPage();
+            //       } else {
+            //         this.$message({
+            //           message: `编辑失败,请重新添加,(${res.msg})`,
+            //           type: "error",
+            //         });
+            //       }
+            //     });
+            // }
           });
         }
       });

+ 7 - 4
src/views/PeopleManage/PartnerExtraction.vue

@@ -26,12 +26,15 @@ export default {
   data() {
     return {
       formList: [
-      
         {
-          label: "名称",
+          label: "工号",
           prop: "userId",
-          type: "select",
-          options:[]
+          type: "input",
+        },
+        {
+          label: "名称",
+          prop: "userName",
+          type: "input",
         },
       ],
       tableConfig: {

+ 11 - 1
src/views/Sys/Appversion.vue

@@ -233,6 +233,12 @@ export default {
         appname: "",
         describes: "",
       },
+      columnFilters: {
+          appid: {
+            name: "appid",
+            value: "",
+          },
+        },
       appformLabelAlign: {
         appid: "", //应用id
         appname: "", //应用名称
@@ -245,6 +251,7 @@ export default {
         updateflag: false, //强制更新
         issueflag: false, //上线发行
         sid: "",
+       
       },
       // 查看
       appformLabelAlign1: {},
@@ -428,10 +435,12 @@ export default {
       this.AppDetailsshow = true;
     },
     Versionadmin(index, row) {
-      this.versiondata();
       this.appformLabelAlign.appid = row.appid;
       this.appformLabelAlign.appname = row.appname;
       this.Versionadminshow = true;
+      this.columnFilters.appid.value=row.appid
+      this.versiondata();
+
     },
     // 设置应用每页条数
     applyhandleSizeChange(val) {
@@ -483,6 +492,7 @@ export default {
       let pageRequest = {
         pageNum: this.appPage,
         pageSize: this.apppageSize,
+        columnFilters:this.columnFilters
       };
       this.$api.app.VersionfindPage(pageRequest).then((res) => {
         var data1 = res.data.content;

File diff ditekan karena terlalu besar
+ 655 - 295
src/views/Task/daikeComponents/KtLetter.vue


+ 22 - 8
src/views/Task/daikeComponents/KtOrder.vue

@@ -174,6 +174,7 @@
               <el-button v-if="item.orderstatus !== '2'" size="mini" type="text" class="blue_color"
                 @click="orderTrajectory(scope.row, item)">订单轨迹</el-button>
               <el-button size="mini" type="primary" @click="bjdpreview(item.id, scope.row.userid)">报价单</el-button>
+              <el-button v-if="item.orderstatus == '1' && item.inscompany=='平安财险' && item.fileStatus" size="mini" type="text" class="green_color" @click="additionalInformation(item.id,scope.row)">补充资料</el-button>
               <!-- <el-button size="mini" type="text" @click="CloseEdit(scope.$index, scope.row)">编辑</el-button> -->
               <el-button type="text" size="mini" v-if="item.orderstatus == '2'">
                 <el-dropdown trigger="click">
@@ -487,6 +488,8 @@
     <!-- 报价单 -->
     <quotationDialog ref="quotationDialog" :queryOrders="queryOrders"></quotationDialog>
     <quotationDialogPro ref="quotationDialogPro" :queryOrders="queryOrders"></quotationDialogPro>
+    
+    <imageDialog ref="imageDialog" :companyId="companyId" :type="2"></imageDialog>
   </div>
 </template>
 <script>
@@ -498,9 +501,13 @@ import QRCode from "qrcodejs2";
 import quotationDialog from "@/views/Core/components/quotationDialog.vue";
 import quotationDialogPro from "@/views/Core/components/quotationDialogPro.vue";
 import detailsDialog from "@/views/Core/components/detailsDialog.vue";
+import imageDialog from "@/views/Core/components/imageDialog.vue";
+import { debounce } from 'lodash';
+
 export default {
   data() {
     return {
+      companyId:'',
       orderLoaing: false,
       qrcodeWidth: "180",
       qrcodeHeight: "180",
@@ -604,7 +611,7 @@ export default {
       resultMessageImg:''
     };
   },
-  components: { quotationDialog, detailsDialog, quotationDialogPro },
+  components: { quotationDialog, detailsDialog, quotationDialogPro,imageDialog},
   created() {
     this.getDicType("natureOfVehicleUse"); //车辆使用性质
     this.getDicType("vehicleType"); //车辆种类
@@ -693,6 +700,11 @@ export default {
     },
   },
   methods: {
+    additionalInformation(companyId,row){
+        this.companyId=companyId
+      this.$refs.imageDialog.imageEcho(row.quoteno)
+      this.$refs.imageDialog.setBackupVisible(true);
+    },
     //报价历史点击事件
     onoffQuotationHistory(row) {
       this.quotationhistoryRow = row;
@@ -2387,8 +2399,9 @@ export default {
     //         this.$refs.expandTable.toggleRowExpansion(row, row.expanded);
     //   }
     // },
-    handleRowChange(row) {
-      if (!row.expanded) {
+    handleRowChange:debounce(function(row,expandedRows) {
+      console.log(expandedRows);
+      if (expandedRows.length>0) {
         this.$api.letter
           .querySonOrders({ orderNo: row.orderno })
           .then((res) => {
@@ -2405,11 +2418,12 @@ export default {
               this.$message.info("暂无数据");
             }
           });
-      } else {
-        row.expanded = !row.expanded;
-        this.$refs.expandTable.toggleRowExpansion(row, row.expanded);
-      }
-    },
+      } 
+      // else {
+      //   row.expanded = !row.expanded;
+      //   this.$refs.expandTable.toggleRowExpansion(row, row.expanded);
+      // }
+    }, 500), // 300 毫秒内不会重复触发,
     //数据
     findPage() {
       this.orderLoaing = true;

Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini