Răsfoiți Sursa

二维码配置

lihongxiao 2 ani în urmă
părinte
comite
2037826d23

+ 3 - 2
config/dev.env.js

@@ -11,15 +11,16 @@ module.exports = merge(prodEnv, {
   // BASE_URL:'"https://sxzgkj.baoxianzhanggui.com/web-api"'//正式服务器
   // BASE_URL:'"https://sxzgkj.baoxianzhanggui.com/web-api"'//正式服务器
   // BASE_URL: '"http://192.168.0.115:8080/"' //凯森
-  BASE_URL: '"http://192.168.0.106:8080/"',//屈晨
+  // BASE_URL: '"http://192.168.0.106:8080/"',//屈晨
   // BASE_URL: '"http://192.168.0.253:8080/"',//田智
   // BASE_URL: '"http:///192.168.0.42:8080/"',//武鸿鹏
   // BASE_URL: '"http:///192.168.0.253:8080/"',//田智
   // 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/"',//蔡雅茹
 })
 
 

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

@@ -283,7 +283,7 @@
         >
           <template slot-scope="scope">
             <span>
-              {{ scope.row[item.prop] &&scope.row[item.prop].length>0?statMaps(item.options)[scope.row[item.prop]] : "-" }}</span
+              {{ statMaps(item.options)[scope.row[item.prop]] }}</span
             >
           </template>
         </el-table-column>
@@ -512,6 +512,7 @@ export default {
     statMaps(list) {
       if (!list) return;
       let obj = {};
+
       list.forEach((item) => {
         obj[item.value || item.id || item.dictValue] = item.label || item.value || item.dictTag;
       });

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

@@ -1148,4 +1148,33 @@ export const getProductId = (data) => {
     method: "post",
     data
   })
+}
+// 平安报价
+export const pinganquote = (data) => {
+  return axios({
+    url: '/order/pingAnApi/quote',
+    method: 'post',
+    data
+  })
+}
+export const pinganaudit = (data) => {
+  return axios({
+    url: '/order/pingAnApi/audit',
+    method: 'post',
+    data
+  })
+}
+export const pingansubmitImage = (data) => {
+  return axios({
+    url: '/order/pingAnApi/submitImage',
+    method: 'post',
+    data
+  })
+}
+export const getDocumentStatusList = (data) => {
+  return axios({
+    url: '/order/pingAnApi/getDocumentStatusList',
+    method: 'post',
+    data
+  })
 }

+ 33 - 2
src/http/moudules/sys.js

@@ -83,5 +83,36 @@ export const updateConfig=(data) => {
 }
 
 
-
-
+// 二维码配置
+// 列表
+export const qrCodeList=(data) => {
+    return axios({
+        url: '/qrCode/getList',
+        method: 'post',
+        data
+    })
+}
+// 新增
+export const qrCodeSave=(data) => {
+    return axios({
+        url: '/qrCode/save',
+        method: 'post',
+        data
+    })
+}
+// 编辑
+export const qrCodeEdit=(data) => {
+    return axios({
+        url: '/qrCode/edit',
+        method: 'post',
+        data
+    })
+}
+// 删除
+export const qrCodedelete=(params) => {
+    return axios({
+        url: '/qrCode/delete',
+        method: 'DELETE',
+        params
+    })
+}

+ 0 - 1
src/views/DistributionManage/DistributionManage.vue

@@ -356,7 +356,6 @@
       },
       onZTreeClick: function(evt, treeId, treeNode) {
         // 点击事件
-        console.log(evt.type, treeNode);
         this.currentTreeNode = treeNode;
         this.pageRequest.columnFilters.deptid.value = this.currentTreeNode.id;
         this.findPage();

+ 0 - 1
src/views/Sys/Dict.vue

@@ -281,7 +281,6 @@ export default {
       this.pageRequest.columnFilters = {
         label: { name: "label", value: this.filters.label },
       };
-      console.log(this.pageResult);
       this.$api.dict
         .findPage(this.pageRequest)
         .then((res) => {

+ 429 - 0
src/views/Sys/QrCode.vue

@@ -0,0 +1,429 @@
+<template>
+  <div>
+    <div>
+      
+          <templateTable
+            :formList="formList"
+            :searchData.sync="queryFrom"
+            :tableConfig="tableConfig"
+            :btnGroup="btnGroup"
+            :data="pageResult"
+            @getList="findPage"
+            @handleSearchList="handleSearchList"
+            :pagination="pageData"
+          >
+          <!-- <template slot="qrCodeType" slot-scope="scope">
+              <span>
+                    {{ statMaps(scope.row.qrCodeType) }}</span
+                  >
+            </template> -->
+          </templateTable>
+    </div>
+
+    <!-- 新增修改界面 -->
+    <el-dialog
+      :title="dialogTitle"
+      width="40%"
+      :visible.sync="dialogVisible"
+      :close-on-click-modal="false"
+      :before-close="handleDialogBefore"
+      @close="closeDialog"
+      v-dialogDrag
+    >
+          <el-form
+            :model="formData"
+            :rules="rules"
+            ref="formData"
+            :inline="true"
+            label-width="110px"
+            size="small"
+          >
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="保险公司ID" prop="insCompanyId">
+                  <el-input v-model="formData.insCompanyId" disabled></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="保险公司名称" prop="insCompanyName">
+                  <el-select v-model="formData.insCompanyName" clearable filterable  placeholder="选择保险公司名称" @change="deptChange">
+                <el-option v-for="(item, index) in InsCompanyList" :key="index" :label="item.name"
+                  :value="item.name"></el-option>
+              </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="api类型" prop="apiType">
+                  <el-select v-model="formData.apiType"  clearable  placeholder="请选择二维码类型">
+                    <el-option
+                      v-for="val in apiTypeoptions"
+                      :key="val.value"
+                      :label="val.label"
+                      :value="val.value">
+                    </el-option>
+                  </el-select>
+                  
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="二维码类型" prop="qrCodeType">
+                  <el-select v-model="formData.qrCodeType"  clearable  placeholder="请选择二维码类型">
+                    <el-option
+                      v-for="val in qrCodeTypeoptions"
+                      :key="val.value"
+                      :label="val.label"
+                      :value="val.value">
+                    </el-option>
+                  </el-select>
+                  
+                </el-form-item>
+              </el-col>
+            </el-row>
+          </el-form>
+        <span slot="footer" class="dialog-footer">
+           <el-button size="small" @click="dialogVisible = false">取 消</el-button>
+          <el-button  type="primary" size="small" @click="submitForm">提交</el-button>
+        </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import KtButton from "@/views/Core/KtButton"; // 按钮权限组件
+import templateTable from "../../components/TemplateTable/index.vue";
+export default {
+  components: {
+    KtButton,
+    templateTable,
+  },
+  data() {
+    return {
+      formList: [
+        {
+          prop: "qrCodeType", 
+          label: "二维码类型",
+          type: "select",
+          options:[]
+        },
+        {
+          label: "保险公司名称",
+          prop: "insCompanyId",
+          type: "company",
+        },
+        // {
+        //   label: "业务来源",
+        //   prop: "source",
+        //   type: "select",
+        //   options:[]
+        // },
+      ],
+      btnGroup: [
+        {
+          name: "新增",
+          click: (row, index) => { return this.handleAddButton() },
+
+        },
+      ],
+      InsCompanyList:[],
+      qrCodeTypeoptions:[],
+      apiTypeoptions:[
+            {
+              label:'api对接',
+              value:'1'
+            },
+            {
+              label:'python对接',
+              value:'2'
+            }
+          ],
+      tableConfig: {
+        columns: [
+          // 数据列
+          {
+            prop: "insCompanyName",
+            label: "保险公司名称",
+            type: "text",
+          },
+          { prop: "apiType", label: "api类型", type: "statMap",options:[
+            {
+              label:'api对接',
+              value:'1'
+            },
+            {
+              label:'python对接',
+              value:'2'
+            }
+          ] },
+
+          { prop: "qrCodeType", label: "二维码类型", type: "statMap",options:[] },
+         
+          { prop: "createBy", label: "操作人", type: "text" },
+        ],
+        loading: true,
+        isPaginationShow: true,
+        isShowIndex: true,
+        optBtns: [
+          {
+            type: "primary",
+            label: "编辑",
+            perm: "sys:agent:edit",
+            icon: "fa fa-edit",
+            click: (row, index) => {
+              return this.handleTableEdit(row);
+            },
+          },
+          {
+            type: "primary",
+            label: "删除",
+            icon: "el-icon-delete",
+            click: (row, index) => {
+              return this.handleTableDeleteFlag(row);
+            },
+          },
+        ],
+      },
+      rules:{
+        proportional: [
+            { required: true, message: '请输入抽成比例', trigger: 'blur' },
+          ],
+          userName: [
+            { required: true, message: '请选择名称', trigger: 'change' }
+          ],
+          deptName: [
+            { required: true, message: '请选择机构名称', trigger: 'change' }
+          ],
+      },
+      pageData: {
+        pageNum: 1,
+        pageSize: 10,
+        totalSize: 0,
+      },
+      formData: {
+        roleId: "20",
+      },
+      queryFrom: {},
+      pageResult: [],
+      dialogTitle: "",
+      dialogVisible: false, // 新增编辑界面是否显示
+    };
+  },
+  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.cost.gainTopList({ type: 1 }).then((res) => {
+        if (res.data) {
+          this.InsCompanyList = res.data;
+        }
+      });
+    this.$api.dict.findByLableName('QRCode').then((res) => {
+        if (res.code == 200) {
+          this.formList.forEach(e=>{
+          if(e.prop=='qrCodeType'){
+            e.options=res.data
+          }
+        })
+        this.tableConfig.columns.forEach(e=>{
+          if(e.prop=='qrCodeType'){
+            e.options=res.data
+          }
+        })
+          this.qrCodeTypeoptions = res.data;
+        }
+      });
+  },
+  methods: {
+    userChange(val){
+      if(val){
+        this.formData.userId= this.useroption.find(e=>e.name==val).id
+      }
+      else{
+        this.formData.userId=''
+      }
+    },
+    deptChange(val){
+      if(val){
+        this.formData.insCompanyId= this.InsCompanyList.find(e=>e.name==val).id
+      }
+      else{
+        this.formData.insCompanyId=''
+      }
+    },
+    // 查询Start
+    queryStaffInfo() {
+      this.findPage();
+    },
+
+    
+    // 右侧列表的方法Start
+    findPage(data) {
+      this.tableConfig.loading = true;
+      this.$api.sys
+        .qrCodeList({
+          ...this.pageData,
+          ...data,
+        })
+        .then((res) => {
+          this.tableConfig.loading = false;
+          this.pageResult = res.data.content;
+          this.pageData.pageNum = res.data.pageNum;
+          this.pageData.pageSize = res.data.pageSize;
+          this.pageData.totalSize = res.data.totalSize;
+        });
+    },
+    handleSearchList(data) {
+      this.findPage(data);
+    },
+    //编辑
+    async handleTableEdit(params) {
+      let paramsForm=JSON.parse(JSON.stringify(params))
+      paramsForm.qrCodeType+=''
+      paramsForm.apiType+=''
+      this.dialogTitle = "编辑";
+      this.dialogVisible= true
+      this.formData=paramsForm
+      // this.$api.insCompany
+      //   .agencyQueryById(params.id)
+      //   .then((res) => {
+      //     if(res.code==200){
+      //       this.dialogTitle = "编辑";
+      //       this.dialogVisible= true
+      //       this.formData=res.data
+      //     }
+      //   });
+    },
+    // 删除单个人员
+    handleTableDeleteFlag(data) {
+      this.$confirm("确认删除?")
+        .then(() => {
+          this.$api.sys.qrCodedelete({id:data.id} ).then((res) => {
+            if (res.code == 200) {
+              this.$message({
+                message: "删除成功",
+                type: "success",
+              });
+              this.findPage();
+            } else {
+              this.$message.error(res.msg);
+            }
+          });
+        })
+        .catch(() => {});
+    },
+    //添加人员
+    handleAddButton() {
+      this.dialogTitle = "新增";
+      this.formData={}
+      this.dialogVisible = true;
+      if(this.$refs["formData"]){
+        this.$refs["formData"].resetFields();
+      }
+    },
+    handleDialogBefore(done) {
+      // 退出对话框之前确认提示
+      this.$confirm("确认关闭?")
+        .then((_) => {
+          done();
+        })
+        .catch((_) => {});
+    },
+    closeDialog() {
+      // 清空数据
+      this.deptInfo = {};
+      this.dialogVisible = false;
+    },
+    // 提交
+    submitForm() {
+      this.$refs.formData.validate((valid) => {
+        if (valid) {
+          this.$confirm("确认提交吗?", "提示", {}).then(() => {
+            if (this.dialogTitle == "新增") {
+              this.$api.sys
+                .qrCodeSave(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.sys
+                .qrCodeEdit(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",
+                    });
+                  }
+                });
+            }
+          });
+        }
+      });
+    },
+    // 下一步
+    
+  },
+};
+</script>
+
+<style scoped>
+.el-divider--horizontal {
+  margin: 4px 0;
+}
+
+/* 顶部查询条件样式Start */
+.queryFrom .el-row {
+  margin: 10px 0px;
+}
+
+.queryFrom .el-form-item {
+  margin-bottom: 0px;
+}
+
+.queryFrom .queryButton .el-form-item__content {
+  margin-left: 0px !important;
+}
+.disc {
+  -webkit-text-security: disc;
+  position: relative;
+}
+.none {
+  -webkit-text-security: none;
+  position: relative;
+}
+.icon {
+  color: #ccc;
+  position: absolute;
+  right: 0;
+  top: 10px;
+  text-align: center;
+}
+</style>

+ 260 - 497
src/views/Task/daikeComponents/KtLetter.vue

@@ -1024,500 +1024,6 @@
     }}</span>
               <!-- </div> -->
             </template>
-            <template v-if="reslistitem.namesimple == '泰康财险' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div class="flex f-c Driving-risk">
-                <el-form :inline="true" :model="accidentFormTk" class="demo-form-inline" size="small"
-                  style="font-weight: bold; margin-top: 15px">
-                  <el-form-item label="意外险类型" style="margin-right: 30px">
-                    <el-select clearable v-model="taikangtemplateSelection" placeholder="未选择" @clear="clearAccidentFormTk"
-                      @change="taikangInsuranceChange">
-                      <el-option v-for="(item, index) in taikangaccidentDataList" :key="index" :label="item.projectName"
-                        :value="item.projectCode"></el-option>
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="选择份数" style="margin-right: 50px">
-                    <el-input-number v-model="accidentFormTk.quantity" @change="numberCopieschangeTk" :min="1"
-                      controls-position="right"></el-input-number>
-                    <!-- <span style="margin-left: 5px;">份</span> -->
-                  </el-form-item>
-                  <el-form-item label="保费:">
-                    <span>{{ accidentFormTk.sumPremium }}&ensp;元</span>
-                  </el-form-item>
-                </el-form>
-                <el-table v-if="taikangtemplateSelection" size="small" :data="taikangInsuranceDataTable" border
-                  ref="expandTable" highlight-current-row :header-cell-style="{
-                    background: '#F7F7F9',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column prop="name" label="保险责任" align="center"></el-table-column>
-                  <el-table-column prop="amount" label="每座保额 (元)/每份" align="center"></el-table-column>
-                  <el-table-column prop="sumAmount" label="每车保额 (元)/每份" align="center"></el-table-column>
-                  <el-table-column prop="premium" label="责任保费 (元)/每份" align="center"></el-table-column>
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '恒邦财险' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div class="flex f-c Driving-risk">
-                <div class="dis a-c" style="margin: 15px 0">
-                  <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
-                  <el-select style="width: 250px; margin-right: 60px" filterable size="small" clearable
-                    v-model="hengbangtemplateSelection" placeholder="未选择" @clear="clearAccidentFormHB"
-                    @change="hengbangInsuranceChange">
-                    <el-option v-for="(item, index) in hengbangInsuranceData" :key="index" :label="item.projectName"
-                      :value="item.projectCode"></el-option>
-                  </el-select>
-                  保费:
-                  <b>{{
-                    hengbangaccidentalDrivingVo.sumPremium || 0
-                  }}&ensp;元</b>
-                </div>
-                <el-table size="small" :data="hengbangInsuranceDataTable" border v-if="hengbangtemplateSelection"
-                  ref="RsTable" highlight-current-row :header-cell-style="{
-                    background: '#F7F7F9 ',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column prop="name" label="险种名称" align="center"></el-table-column>
-                  <el-table-column prop="amount" label="险种金额" align="center"></el-table-column>
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '华农财险' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div class="flex f-c Driving-risk">
-                <el-form :inline="true" :model="accidentFormHN" class="demo-form-inline"
-                  style="font-weight: bold; margin-top: 15px" size="small">
-                  <el-form-item label="意外险类型:" style="margin-right: 30px">
-                    <el-select clearable v-model="accidentFormHN.accidentType" placeholder="未选择"
-                      @clear="clearAccidentFormHN" @change="huanongInsuranceChange">
-                      <el-option v-for="(item, index) in huanongInsuranceData" :key="index" :label="item.projectName"
-                        :value="item.projectCode"></el-option>
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="选择份数" style="margin-right: 30px">
-                    <el-input-number v-model="accidentFormHN.quantity" :min="1"
-                      controls-position="right"></el-input-number>
-                  </el-form-item>
-                </el-form>
-                <el-table v-if="accidentFormHN.accidentType" size="small" :data="huanongInsuranceDataTable" border
-                  ref="expandTable" highlight-current-row :header-cell-style="{
-                    background: '#F7F7F9 ',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column prop="name" label="保险责任" align="center"></el-table-column>
-                  <el-table-column prop="amount" label="保额" align="center">
-                    <template slot-scope="scope">
-                      <el-input v-model="scope.row.amount" placeholder="请输入内容" size="small" disabled></el-input>
-                    </template>
-                  </el-table-column>
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '太平财险' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div class="flex f-c Driving-risk">
-                <div class="dis a-c" style="margin: 15px 0">
-                  <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
-                  <el-select style="width: 250px; margin-right: 60px" filterable size="small" clearable
-                    v-model="taipingtemplateSelection" placeholder="未选择" @clear="clearAccidentFormTP"
-                    @change="taipingInsuranceChange">
-                    <el-option v-for="(item, index) in taipingInsuranceData" :key="index" :label="item.projectName"
-                      :value="item.projectCode"></el-option>
-                  </el-select>
-                  每份价税合计:
-                  <b>{{ taipingaccidentalDrivingVo.sumPremium || 0 }}&ensp;元</b>
-                </div>
-                <el-table size="small" :data="taipingInsuranceDataTable" border v-if="taipingtemplateSelection"
-                  ref="RsTable" highlight-current-row :header-cell-style="{
-                    background: '#F7F7F9 ',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column prop="name" label="险种名称" align="center"></el-table-column>
-                  <el-table-column prop="amount" label="险种金额" align="center"></el-table-column>
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '安盛天平' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div class="flex f-c Driving-risk">
-                <div class="dis a-c" style="margin-top: 15px">
-                  <span style="margin-right: 15px; font-weight: bold">意外险类型</span>
-                  <el-select style="width: 250px" size="small" clearable v-model="anshengtemplateSelection"
-                    placeholder="未选择" @clear="clearAccidentFormAS" @change="anshengInsuranceChange">
-                    <el-option v-for="(item, index) in anshengInsuranceData" :key="index"
-                      :label="item.projectCode + '   ' + item.projectName" :value="item.projectCode"></el-option>
-                  </el-select>
-                </div>
-                <el-table style="margin-top: 20px" size="small" :data="anshengInsuranceDataTable" border
-                  v-if="anshengtemplateSelection" ref="RsTable" highlight-current-row :header-cell-style="{
-                    background: '#F7F7F9 ',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column align="center" width="55" label="选择">
-                    <template slot-scope="scope">
-                      <el-radio class="radio" v-model="anshengInsurancetype" :label="scope.row.projectCode"
-                        @click.native.stop.prevent="ASDrivingRadio(scope.row)">&nbsp;</el-radio>
-                    </template>
-                  </el-table-column>
-                  <el-table-column prop="projectName" label="方案名称" align="center"></el-table-column>
-                  <el-table-column prop="projectCode" label="方案代码" align="center"></el-table-column>
-                  <el-table-column prop="quantity" label="份数" align="center">
-                  </el-table-column>
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '中国人寿' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div style="margin: 15px 0 15px 100px">
-                <span>商业险折扣:</span>
-                <el-input style="width: 220px" :disabled="!lastCompanyId" size="small" v-model="reslistitem.discount"
-                  placeholder="请输入内容" @input="
-                    reslistitem.discount = reslistitem.discount.replace(
-                      /[^\d.]/g,
-                      ''
-                    )
-                    "></el-input>
-              </div>
-              <div class="flex f-c Driving-risk">
-                <div class="dis a-c">
-                  <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
-                  <el-select style="width: 250px" filterable size="small" clearable v-model="renshoutemplateSelection"
-                    placeholder="未选择" @clear="clearAccidentFormRS" @change="renshouInsuranceChange">
-                    <el-option v-for="(item, index) in renshouInsuranceData" :key="index" :label="item.projectName"
-                      :value="item.projectCode"></el-option>
-                  </el-select>
-                </div>
-                <el-table size="small" style="margin-top: 20px" :data="renshouInsuranceDataTable" border
-                  v-if="renshoutemplateSelection" @row-click="RSDrivingChange" ref="RsTable" highlight-current-row
-                  :header-cell-style="{
-                    background: '#F7F7F9 ',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column prop="name" label="方案名称" align="center"></el-table-column>
-                  <el-table-column prop="premium" label="保费 (元)起" align="center">
-                    <template slot-scope="scope">
-                      <span>¥{{ scope.row.premium }}</span>
-                    </template>
-                  </el-table-column>
-                  <el-table-column label="份数" align="center">
-                    <template slot-scope="scope">
-                      <span>{{ scope.row.quantity }}</span>
-                    </template>
-                  </el-table-column>
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '众安财险' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div class="flex f-c Driving-risk">
-                <div class="dis a-c" style="margin: 15px 0">
-                  <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
-                  <el-select style="width: 250px" filterable size="small" clearable v-model="zhongantemplateSelection"
-                    placeholder="未选择" @clear="clearAccidentFormZA" @change="zhonganInsuranceChange">
-                    <el-option v-for="(item, index) in zhonganInsuranceData" :key="index" :label="item.projectName"
-                      :value="item.projectCode"></el-option>
-                  </el-select>
-                  <!-- 保费: <b>{{ zhonganaccidentalDrivingVo.sumgrosspremium || 0}}&ensp;元</b> -->
-                </div>
-                <el-table size="small" :data="zhonganInsuranceDataTable" border v-if="zhongantemplateSelection"
-                  @row-click="ZADrivingChange" ref="RsTable" highlight-current-row :header-cell-style="{
-                    background: '#F7F7F9 ',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column prop="name" label="险种名称" align="center"></el-table-column>
-                  <el-table-column prop="amount" label="险种金额" align="center"></el-table-column>
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '紫金财险' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div style="margin: 15px 0 15px 100px">
-                <span>自主定价系数:</span>
-                <el-input style="width: 220px" size="small" v-model="reslistitem.coefficient"
-                  placeholder="请输入内容"></el-input>
-              </div>
-              <div class="flex f-c Driving-risk">
-                <div class="dis a-c" style="margin-bottom: 15px">
-                  <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
-                  <el-select style="width: 250px" filterable multiple size="small" clearable
-                    v-model="zijintemplateSelection" placeholder="未选择" @clear="clearAccidentFormZJ"
-                    @change="zijinInsuranceChange">
-                    <el-option v-for="(item, index) in ziJinInsuranceData" :key="index" :label="item.projectName"
-                      :value="item.projectCode"></el-option>
-                  </el-select>
-                </div>
-                <el-table size="small" :data="zijinInsuranceDataTable" border v-if="zijintemplateSelection"
-                  @select="CheckboxChange" filterable ref="expandTable" highlight-current-row :header-cell-style="{
-                    background: '#F7F7F9 ',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column type="selection" width="55"></el-table-column>
-                  <el-table-column prop="projectName" label="方案名称" align="center"></el-table-column>
-                  <el-table-column prop="sumAmount" label="总保额 (元)/每份" align="center"></el-table-column>
-                  <el-table-column prop="sumPremium" label="保费 (元)/每份" align="center">
-                    <template slot-scope="scope">
-                      <span>¥{{ scope.row.sumPremium }}</span>
-                    </template>
-                  </el-table-column>
-                  <el-table-column prop="quantity" label="份数" align="center">
-                    <template slot-scope="scope">
-                      <el-input-number v-model="scope.row.quantity" :min="1" size="small"
-                        controls-position="right"></el-input-number>
-                    </template>
-                  </el-table-column>
-                  <el-table-column prop="Totalprice" label="总保费 (元)" align="center">
-                    <template slot-scope="scope">
-                      <span v-if="scope.row.quantity">{{
-                        scope.row.sumPremium * scope.row.quantity
-                      }}</span>
-                      <span v-else>{{ scope.row.sumPremium }}</span>
-                    </template>
-                  </el-table-column>
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '永诚财险' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div class="flex f-c Driving-risk">
-                <el-form :inline="true" :model="accidentForm" class="demo-form-inline" size="small"
-                  style="font-weight: bold; margin-top: 15px">
-                  <el-form-item label="意外险类型" style="margin-right: 30px">
-                    <el-select clearable v-model="yongchengtemplateSelection" placeholder="未选择" @clear="clearAccidentForm"
-                      @change="yongchengInsuranceChange">
-                      <el-option v-for="(item, index) in yongchengaccidentDataList" :key="index" :label="item.projectName"
-                        :value="item.projectCode"></el-option>
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="选择份数" style="margin-right: 50px">
-                    <el-input-number v-model="accidentForm.quantity" @change="numberCopieschange" :min="1"
-                      controls-position="right"></el-input-number>
-                    <!-- <span style="margin-left: 5px;">份</span> -->
-                  </el-form-item>
-                  <el-form-item label="保费:">
-                    <span>{{ accidentForm.sumPremium }}&ensp;元</span>
-                  </el-form-item>
-                </el-form>
-                <el-table v-if="yongchengtemplateSelection" size="small" :data="yongchengInsuranceDataTable" border
-                  ref="expandTable" highlight-current-row :header-cell-style="{
-                    background: '#F7F7F9',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column prop="name" label="保险责任" align="center"></el-table-column>
-                  <el-table-column prop="amount" label="每座保额 (元)/每份" align="center"></el-table-column>
-                  <el-table-column prop="sumAmount" label="每车保额 (元)/每份" align="center"></el-table-column>
-                  <el-table-column prop="premium" label="责任保费 (元)/每份" align="center"></el-table-column>
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '国任财险' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <!-- <div style="margin:10px 0 0 100px;">
-              <span style="margin-right:20px"> {{reslistitem.underwritingDescription}}</span>-->
-              <el-button type="text" style="margin: 10px 0 0 100px"
-                @click="contributingGuoRen(reslistitem.agreementId)">选择特约</el-button>
-              <!-- </div> -->
-              <div class="flex f-c Driving-risk">
-                <el-form :inline="true" :model="guoRenaccidentForm" class="demo-form-inline" size="small">
-                  <el-form-item label="意外险类型" style="margin-right: 30px">
-                    <el-select clearable placeholder="未选择" @clear="clearAccidentFormGr" @change="grcxchange"
-                      v-model="guoRenaccidentForm.goodsCode">
-                      <el-option v-for="(item, index) in guoRenaccidentDataList" :key="index" :label="item.projectName"
-                        :value="item.projectCode"></el-option>
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label=" ">
-                    <el-select clearable v-model="guoRenaccidentForm.prodCode" @change="grcxchangeChild">
-                      <el-option v-for="(item) in guoRenaccidentDataListChild" :key="item.projectCode"
-                        :label="item.projectName" :value="item.projectCode"></el-option>
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="选择份数" style="margin-right: 30px">
-                    <el-input-number v-model="guoRenaccidentForm.quantity" :min="1" controls-position="right"
-                      @change="numberCopieschangeGR"></el-input-number>
-                    <!-- <span style="margin-left: 5px;">份</span> -->
-                  </el-form-item>
-                  <el-form-item label="保费:">
-                    <span>{{ guoRenaccidentForm.sumPremium }}&ensp;元</span>
-                  </el-form-item>
-                </el-form>
-                <el-table v-if="guoRenaccidentForm.prodCode" size="small" :data="guoRenInsuranceDataTable" border
-                  ref="expandTable" highlight-current-row :header-cell-style="{
-                    background: '#F7F7F9 ',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column prop="name" label="保险责任" align="center"></el-table-column>
-                  <el-table-column prop="amount" label="保额 (元)" align="center"></el-table-column>
-                  <el-table-column prop="premium" label="保费 (元)" align="center">
-                    <template slot-scope="scope">¥{{ scope.row.premium }}</template>
-                  </el-table-column>
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '中煤财险' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div class="flex f-c Driving-risk accident-style zmDriving">
-                <el-form :inline="true" :model="accidentFormZM" class="demo-form-inline" size="small"
-                  style="font-weight: bold; margin-top: 15px">
-                  <el-form-item label="意外险类型" style="margin-right: 30px">
-                    <el-select style="width: 250px" size="small" clearable v-model="zhongmeitemplateSelection"
-                      placeholder="未选择" @clear="numberCopieschangeZM" @change="zhongmeiInsuranceChange">
-                      <el-option v-for="(item, index) in zhongmeiInsuranceData" :key="index" :label="item.projectName"
-                        :value="item.projectCode"></el-option>
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="选择份数" style="margin-right: 30px">
-                    <el-input-number v-model="accidentFormZM.quantity" @change="numberCopieschangeZM" :min="1"
-                      controls-position="right"></el-input-number>
-                    <!-- <span style="margin-left: 5px;">份</span> -->
-                  </el-form-item>
-                  <el-form-item label="保费:">
-                    <span>{{ accidentFormZM.sumPremium }}&ensp;元</span>
-                  </el-form-item>
-                </el-form>
-                <el-table size="small" :data="zhongmeiInsuranceDataTable" border ref="ZmMultipleTable"
-                  v-if="zhongmeitemplateSelection" :header-cell-style="{
-                    background: '#F7F7F9 ',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column prop="name" label="保险责任名称" align="center"></el-table-column>
-                  <el-table-column prop="amount" label="保险责任对应保额" align="center"></el-table-column>
-                  <!-- <el-table-column label="份数" align="center">
-                    <template slot-scope="scope">
-                      <div @click.stop>
-                        <el-input-number
-                          v-model="scope.row.quantity"
-                          @change="ZMhandleChange"
-                          :min="1"
-                          :max="Number(scope.row.insuredNumLimit)"
-                          controls-position="right"
-                        ></el-input-number>
-                      </div>
-                    </template>
-                  </el-table-column>-->
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '大家财险' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div class="flex f-c Driving-risk">
-                <div class="dis a-c" style="margin-top: 15px">
-                  <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
-                  <el-select v-if="reslistitem.apiType == 1" style="width: 250px" filterable size="small" clearable
-                    v-model="dajiatemplateSelection" placeholder="未选择" @clear="clearAccidentFormDJ"
-                    @change="dajiaInsuranceChange">
-                    <el-option v-for="(item, index) in dajiaInsuranceData" :key="index" :label="item.projectName"
-                      :value="item.projectCode"></el-option>
-                  </el-select>
-                  <div v-else>
-                    <el-select clearable placeholder="未选择" @change="djcxchange" v-model="dajiaaccidentForm.parentCode"
-                      @clear="clearAccidentFormDJ">
-                      <el-option v-for="(item, index) in dajiaInsuranceData" :key="index" :label="item.projectName"
-                        :value="item.projectCode"></el-option>
-                    </el-select>
-                    <el-select clearable v-model="dajiaaccidentForm.projectCode" @change="djcxchangeChild">
-                      <el-option v-for="(item) in dajiaaccidentDataListChild" :key="item.projectCode"
-                        :label="item.projectName" :value="item.projectCode"></el-option>
-                    </el-select>
-                  </div>
-                </div>
-                <el-table size="small" :data="dajiaInsuranceDataTable" border ref="RsTable" highlight-current-row
-                  :header-cell-style="{
-                    background: '#F7F7F9 ',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column prop="cvrgName" label="保险责任名称" align="center"></el-table-column>
-                  <el-table-column prop="cvrgPrm" label="保费 (元)/每份" align="center">
-                    <template slot-scope="scope">¥{{ scope.row.cvrgPrm }}</template>
-                  </el-table-column>
-                </el-table>
-              </div>
-            </template>
-            <template v-if="reslistitem.namesimple == '渤海财险' &&
-              reslistitem.checked &&
-              reslistitem.agreementId &&
-              isLetter !== '3'
-              ">
-              <div class="flex f-c Driving-risk" style="margin-top: 15px">
-                <el-form :inline="true" :model="boHaiaccidentForm" class="demo-form-inline" size="small">
-                  <el-form-item label="意外险类型" style="margin-right: 30px">
-                    <el-select clearable placeholder="未选择" @clear="clearAccidentFormBh" @change="bohaiInsuranceChange"
-                      v-model="boHaiaccidentForm.packageCode">
-                      <el-option v-for="(item, index) in boHaiaccidentDataList" :key="index" :label="item.packageName"
-                        :value="item.packageCode"></el-option>
-                    </el-select>
-                  </el-form-item>
-                  <el-form-item label="选择份数" style="margin-right: 30px">
-                    <el-input-number v-model="boHaiaccidentForm.copies" :min="1"
-                      controls-position="right"></el-input-number>
-                  </el-form-item>
-                  <el-form-item label="保费:">
-                    <span>{{
-                      boHaiaccidentForm.premium * boHaiaccidentForm.copies
-                    }}&ensp;元</span>
-                  </el-form-item>
-                </el-form>
-                <el-table v-if="boHaiaccidentForm.packageCode" size="small" :data="bohaiInsuranceDataTable" border
-                  v-loading="accidentLoadingbh" ref="expandTable" highlight-current-row :header-cell-style="{
-                    background: '#F7F7F9 ',
-                    fontWeight: '700',
-                    color: '#333333',
-                  }">
-                  <el-table-column prop="coverageName" label="保险责任名称" align="center"></el-table-column>
-                  <el-table-column prop="insuredAmount" label="保额 (元)" align="center">
-                    <template slot-scope="scope">¥{{ scope.row.insuredAmount }}</template>
-                  </el-table-column>
-                </el-table>
-              </div>
-            </template>
           </div>
         </div>
         <div class="coll" v-else>
@@ -1874,6 +1380,47 @@
   }}</span>
               <!-- </div> -->
             </template>
+            <template v-if="reslistitem.namesimple == '平安财险' &&
+              reslistitem.checked &&
+              reslistitem.agreementId
+              ">
+              <div class="flex f-c Driving-risk">
+                <el-form :inline="true" :model="accidentFormPA" class="demo-form-inline" size="small"
+                  style="font-weight: bold; margin-top: 15px">
+                  <el-form-item label="意外险类型" style="margin-right: 30px">
+                    <el-select clearable v-model="pingantemplateSelection" placeholder="未选择" @clear="clearAccidentFormPA"
+                      @change="pinganInsuranceChange">
+                      <el-option v-for="(item, index) in pinganInsuranceData" :key="index" :label="item.projectName"
+                        :value="item.projectCode"></el-option>
+                    </el-select>
+                  </el-form-item>
+                  <el-form-item label="选择份数" style="margin-right: 50px">
+                    <el-input-number v-model="accidentFormPA.quantity" @change="numberCopieschangePA" :min="1"
+                      controls-position="right"></el-input-number>
+                  </el-form-item>
+                  <el-form-item label="保费:">
+                    <span>{{ accidentFormPA.premium || 0 }}&ensp;元</span>
+                  </el-form-item>
+                </el-form>
+                <el-table style="margin-top: 20px" size="small" :data="pinganInsuranceDataTable" border
+                  v-if="pingantemplateSelection" ref="RsTable" highlight-current-row :header-cell-style="{
+                    background: '#F7F7F9 ',
+                    fontWeight: '700',
+                    color: '#333333',
+                  }">
+                  <el-table-column align="center" width="55" label="选择">
+                    <template slot-scope="scope">
+                      <el-radio class="radio" v-model="pinganInsurancetype" :label="scope.row.projectCode"
+                        @click.native.stop.prevent="PADrivingRadio(scope.row)">&nbsp;</el-radio>
+                    </template>
+                  </el-table-column>
+                  <el-table-column prop="name" label="方案名称" align="center"></el-table-column>
+                  <el-table-column prop="code" label="方案代码" align="center"></el-table-column>
+                  <el-table-column prop="premium" label="保费 (元)/每份" align="center">
+                  </el-table-column>
+                </el-table>
+              </div>
+            </template>
             <template v-if="reslistitem.namesimple == '泰康财险' &&
               reslistitem.checked &&
               reslistitem.agreementId &&
@@ -3307,10 +2854,15 @@ export default {
       taikangInsuranceDataTable: [],
       taikangaccidentDataList: [],
       accidentPremiumTk: "",
+      accidentPremiumPA:'',
       accidentFormTk: {
         quantity: "1",
         sumPremium: 0,
       },
+      accidentFormPA: {
+        quantity: "1",
+        premium: 0,
+      },
       taikangaccidentalDrivingVo: {},
       policyNumberForm: {
         jqpolicyno: "",
@@ -3372,6 +2924,10 @@ export default {
       zhongmeiInsuranceData: [], //中煤驾意险产品列表数据
       zhongmeiInsuranceDataTable: [], //中煤驾意险产品明细方案数据
       zhongmeiaccidentalDrivingVo: {}, //中煤驾意险最终选中字段
+      pinganInsuranceData: [], //平安驾意险产品列表数据
+      pingantemplateSelection:'',
+      pinganInsuranceDataTable:[],
+      pinganInsurancetype:'',
       currentCell: null,
       feeDetailInfo: [], //费用明细信息
       immediatelyValue: false,
@@ -5261,6 +4817,25 @@ export default {
         this.isBottom = false;
       }
     },
+    pinganInsuranceChange(index) {
+      if (!index) {
+        return;
+      }
+      this.taikangtemplateSelection = index;
+      // this.accidentFormPA = Object.assign(
+      //   this.accidentFormPA,
+      //   this.pinganInsuranceData.find((val) => val.projectCode == index)
+      // );
+      // this.pinganInsuranceData
+      //   .find((val) => val.projectCode == index)
+      //   .son.forEach((item) => {
+      //     item.sumAmount =
+      //       Number(item.amount) * Number(this.accidentFormPA.seatNum);
+      //   });
+      this.taikangInsuranceDataTable = this.pinganInsuranceData.find(
+        (val) => val.projectCode == index
+      ).son;
+    },
     taikangInsuranceChange(index) {
       if (index) {
         this.TkDrivingChange(
@@ -5285,7 +4860,7 @@ export default {
       this.taikangInsuranceDataTable = this.taikangaccidentDataList.find(
         (val) => val.projectCode == index
       ).son;
-      this.accidentPremiumTk = this.accidentFormTk.sumPremium;
+      this.accidentPremiumTk = this.accidentFormTk.premium;
     },
     anshengInsuranceChange(index) {
       this.anshengtemplateSelection = index;
@@ -5553,6 +5128,9 @@ export default {
     numberCopieschangeTk(index) {
       this.accidentFormTk.sumPremium = Number(this.accidentPremiumTk) * index;
     },
+    numberCopieschangePA(index) {
+      this.accidentFormPA.premium = Number(this.accidentPremiumPA) * index;
+    },
     numberCopieschangeZM(index) {
       this.accidentFormZM.sumPremium = Number(this.accidentPremiumZM) * index;
     },
@@ -5832,6 +5410,21 @@ export default {
             risk: this.riskList,
             kind: this.kindList,
             ruleThirdPartyInsurance: this.insureList[1].amount,
+            cimodelclass: ins == "平安财险" 
+                  ? this.carInfo.cimodelclass
+                  : "",
+              isUseCombine:ins == "平安财险" 
+              ? 'Y'
+              : "",
+              tonNumber:ins == "平安财险" 
+              ? this.carInfo.limitLoad
+              : "",
+              ownAttribute:ins == "平安财险" 
+              ? '03'
+              : "",
+              useAttribute: ins == "平安财险" 
+                  ? this.carInfo.carnature
+                  : "",
           })
           .then((res) => {
             if (res.code == 200) {
@@ -5847,6 +5440,7 @@ export default {
                   this.boHaiaccidentDataList = res.data;
                   break;
                 case "中煤财险":
+                case "平安财险":
                   this[item.cnName + +"InsuranceData"] = res.data;
                   break;
                 case "紫金财险":
@@ -6048,6 +5642,15 @@ export default {
       // this.anshengaccidentalDrivingVo.projectCode = row.projectCode;
       // this.anshengaccidentalDrivingVo.projectName = row.projectName;
     },
+    //平安驾意险选择
+    PADrivingRadio(row) {
+      this.accidentPremiumPA = row.premium;
+      this.pinganInsurancetype = row.code;
+      this.pinganaccidentalDrivingVo = Object.assign({
+        ...this.pinganaccidentalDrivingVo,
+        ...row,
+      });
+    },
     ZADrivingRadio(row) {
       this.ZADrivingChange(row);
     },
@@ -6150,7 +5753,7 @@ export default {
             .getDrivingInsuranceRule({
               agreementId: this.totalCompanyList[index].agreement[0].id,
               seatNum:
-                ins == "永诚财险" || ins == "中煤财险"
+                ins == "永诚财险" || ins == "中煤财险" 
                   ? Number(this.carInfo.seatCount)
                   : "",
               ruleUseNature: this.carInfo.carnature,
@@ -6158,6 +5761,21 @@ export default {
               risk: this.riskList,
               kind: this.kindList,
               ruleThirdPartyInsurance: this.insureList[1].amount,
+              cimodelclass: ins == "平安财险" 
+                  ? this.carInfo.cimodelclass
+                  : "",
+              isUseCombine:ins == "平安财险" 
+              ? 'Y'
+              : "",
+              tonNumber:ins == "平安财险" 
+              ? this.carInfo.limitLoad
+              : "",
+              ownAttribute:ins == "平安财险" 
+              ? '03'
+              : "",
+              useAttribute: ins == "平安财险" 
+                  ? this.carInfo.carnature
+                  : "",
             })
             .then((res) => {
               if (res.code == 200) {
@@ -6172,6 +5790,7 @@ export default {
                     this.boHaiaccidentDataList = res.data;
                     break;
                   case "中煤财险":
+                  case "平安财险":
                     this[name + "InsuranceData"] = res.data;
                     break;
                   case "紫金财险":
@@ -6344,7 +5963,13 @@ export default {
       this.accidentForm.fen = 1;
       this.accidentForm.premium = 0;
     },
-
+    clearAccidentFormPA() {
+      this.accidentFormPA = {};
+      this.accidentFormPA.quantity = 1;
+      this.accidentFormPA.premium = 0;
+      this.pinganaccidentalDrivingVo = {};
+      this.pinganInsuranceDataTable = [];
+    },
     clearAccidentFormTk() {
       this.taikangaccidentalDrivingVo = {};
       this.taikangInsuranceDataTable = [];
@@ -7406,6 +7031,80 @@ export default {
         this.totalCompanyList[num].apiType
       );
     },
+    // 平安报价
+    pingan(num, id) {
+      let isTaxSource = this.totalCompanyList[num].isTaxSource;
+      let params = {
+        accidentalDrivingVo: this.pinganaccidentalDrivingVo,
+        orderNo: this.orderno,
+        companyId: id,
+        agreementId: this.totalCompanyList[num].agreementId,
+        isTaxSource: isTaxSource == 1 ? isTaxSource : null,
+      };
+      this.$api.letter.pinganquote(params).then((res) => {
+        this.totalCompanyList[num].msg = res.msg;
+        if (!!res.msg && res.msg.indexOf("不存在有效协议") >= 0) {
+          this.totalCompanyList[num].quoteCode = "4";
+          this.totalCompanyList[num].msg = res.msg;
+          return;
+        } else if (
+          res.data == null &&
+          res.msg.indexOf("交强险平台返回") > -1 &&
+          res.msg.indexOf(";终保日期") > -1
+        ) {
+          this.totalCompanyList[num].lastYearMsg =
+            "<b>交强险</b><br>" +
+            res.msg.slice(
+              res.msg.indexOf("起保日期 "),
+              res.msg.indexOf("地区 山西。") + 6
+            );
+          let time =
+            res.msg.substr(res.msg.indexOf(";终保日期 ") + 6, 16) + ":00";
+          this.jqstartDate = time;
+          this.jqendDate = this.oneYearPast1(time);
+          if (this.riskList.length > 0) {
+            for (let i = 0; i < this.riskList.length; i++) {
+              if (this.riskList[i].riskCode == "0507") {
+                this.riskList[i].startDate = time;
+                this.riskList[i].endDate = this.oneYearPast1(time);
+              }
+            }
+          }
+          let param = {
+            userId: this.userId,
+            quoteno: this.quoteno,
+            orderNo: this.orderno,
+            carInfo: this.carInfo,
+            insuredPersonInfo: this.insuredPersonInfo,
+            ownerInfo: this.ownerInfo,
+            policyHolderInfo: this.policyHolderInfo,
+            kindList: this.kindList,
+            riskList: this.riskList,
+            vehicleAndVesselTax: this.vehicleAndVesselTaxForm,
+          };
+          return this.$api.letter[this.apiInterfaceName](param).then((res) => {
+            this.pingan(num, id);
+          });
+        } else if (!!res.data) {
+          if (res.data.warnMessageList && res.data.warnMessageList.length > 0) {
+            this.totalCompanyList[num].lastYearMsg = "";
+            let dat = res.data.warnMessageList;
+            dat.map((ele) => {
+              this.totalCompanyList[num].lastYearMsg += ele + "<br>";
+            });
+          }
+          this.totalCompanyList[num].quoteCode = 200;
+          this.totalCompanyList[num].result = res.data;
+          this.QuotationHistory();
+        } else {
+          this.totalCompanyList[num].quoteCode = "3";
+          this.totalCompanyList[num].msg = res.msg;
+          return;
+        }
+      });
+    },
+    
+    
     //永安报价
     yongan(num, id) {
       let isTaxSource = this.totalCompanyList[num].isTaxSource;
@@ -9168,6 +8867,70 @@ export default {
                   }
                 });
                 break;
+                case "平安财险":
+                await this.$api.letter
+                  .pingansubmitImage({
+                    companyId: this.companyId,
+                  })
+                  .then((res) => {
+                    if (res.code == "200") {
+                      var _this = this;
+                      _this.$api.letter
+                        .pinganaudit({
+                          companyId: this.companyId,
+                          jqappoint: "",
+                          syappoint: "",
+                        })
+                        .then((res) => {
+                          if (res.code == "200") {
+                            loading.close();
+                            _this.$message({
+                              message: "核保成功",
+                              type: "success",
+                            });
+                            this.QuotationHistory();
+                            _this.$api.letter
+                              .getByCompanyId({ companyId: this.companyId })
+                              .then((res) => {
+                                _this.orderstatus = res.data.orderstatus; //订单状态
+                                _this.underwritingdialogVisible = true;
+                                let indexid = this.totalCompanyList.findIndex(
+                                  (item) =>
+                                    item.namesimple ==
+                                    this.queryOrders.inscompany
+                                );
+                                this.totalCompanyList[indexid].orderstatus =
+                                  res.data.orderstatus;
+                              });
+                          } else {
+                            loading.close();
+                            _this.$message({
+                              showClose: true,
+                              message:
+                                this.queryOrders.inscompany +
+                                "提核--:" +
+                                res.msg,
+                              type: "error",
+                              duration: 0,
+                            });
+                            _this.$api.letter
+                              .getByCompanyId({ companyId: this.companyId })
+                              .then((res) => {
+                                _this.orderstatus = res.data.orderstatus; //订单状态
+                              });
+                          }
+                        });
+                    } else {
+                      this.$message({
+                        message:
+                          this.queryOrders.inscompany + "影像--:" + res.msg,
+                        type: "error",
+                        duration: 7000,
+                      });
+                      loading.close();
+                    }
+                  });
+                break;
             }
           }
         });

+ 3 - 0
src/views/Task/daikeComponents/KtOrder.vue

@@ -167,6 +167,7 @@
                   '中煤财险',
                   '渤海财险',
                   '泰康财险',
+                  '平安财险',
                 ].includes(item.inscompany)
                 " class="blue_color" @click="querystatus(item, index)">状态更新</el-button>
               <el-button v-if="item.orderstatus !== '2'" size="mini" type="text" class="blue_color"
@@ -465,6 +466,7 @@
                   '中煤财险',
                   '渤海财险',
                   '泰康财险',
+                  '平安财险',
                 ].includes(scope.row.inscompany)
                 " @click="querystatus(scope.row, 'history')">状态更新</el-button>
             </template>
@@ -974,6 +976,7 @@ export default {
         紫金财险: "getOrderDetail",
         中煤财险: "paymentEnquiry",
         渤海财险: "getOrderDetailboHai",
+        平安财险: "getDocumentStatusList",
       };
       Object.keys(inscompany).forEach((val) => {
         if (val == item.inscompany) {