Przeglądaj źródła

fix:重置表单内容无法全部清空bug修复

test 2 lat temu
rodzic
commit
34ad6cc3c3

+ 280 - 216
src/views/AgreementManage/CarInsurance/BacklineAllocation.vue

@@ -1,15 +1,19 @@
 <template>
   <div>
-    <el-main ref="elMain" style="padding: 0px;">
+    <el-main ref="elMain" style="padding: 0px">
       <Split :gutterSize="2" style="height: calc(100vh - 120px)">
         <!-- 左侧树Start -->
-        <SplitArea  :minSize="240">
+        <SplitArea :minSize="240">
           <div>
             <!-- <el-divider></el-divider>
             <el-input size="small" style="width:90%" placeholder="请输入工号" v-model="personnelValue" clearable >
               <el-button type="primary" slot="append" icon="el-icon-search" @click="personnelFun()"></el-button>
             </el-input> -->
-            <el-form ref="queryFormRef" :model="personnePageRequest" label-width="60px">
+            <el-form
+              ref="queryFormRef"
+              :model="personnePageRequest"
+              label-width="60px"
+            >
               <el-row>
                 <el-col :span="7">
                   <el-form-item label="工号">
@@ -33,8 +37,15 @@
                 </el-col>
                 <el-col :span="7">
                   <el-form-item label="机构">
-                    <el-cascader v-model="personnePageRequest.deptId"  :size="overSize" :show-all-levels="false"
-                    :options="deptList" :props="optionProps"  clearable filterable></el-cascader>
+                    <el-cascader
+                      v-model="personnePageRequest.deptId"
+                      :size="overSize"
+                      :show-all-levels="false"
+                      :options="deptList"
+                      :props="optionProps"
+                      clearable
+                      filterable
+                    ></el-cascader>
                   </el-form-item>
                 </el-col>
                 <el-col :span="2">
@@ -55,98 +66,101 @@
               </el-row>
             </el-form>
             <el-table
-            :data="personnePageReData"
-            border
-            ref="personneTable"
-            width="100%"
-            size="small"
-            align="center" :header-cell-style="{
-            background: '#F2F7FC',
-            fontWeight: '900',
-            color: '#606266',
-            }"
-            @selection-change="personneSelectionChange"
-            :row-class-name="tableRowClassName">
-            <el-table-column
-              type="selection"
-              width="55">
-            </el-table-column>
-            <el-table-column
-              prop="userId"
-              label="工号">
-            </el-table-column>
-            <el-table-column
-              prop="name"
-              label="名称">
-            </el-table-column>
-            <el-table-column
-              prop="deptName"
-              label="机构名称">
-            </el-table-column>
-            <el-table-column
-            width="100"
-              label="操作">
-              <template slot-scope="scope">
-                <el-button type="text" @click="handleTableEdit(scope.row.userId)"  size="small">编辑</el-button>
-              </template>
-            </el-table-column>
-            <!-- 表格列 -->
-          </el-table>
-       
-          <el-pagination
-      @size-change="handleSizeChange"
-      @current-change="refreshPageRequest"
-      :current-page="personnePageRequest.pageNum"
-      :page-sizes="[10, 20, 50, 100, 200, 300, 400, 500]" 
-      :page-size="personnePageRequest.pageSize"
-      layout="total, sizes, prev, pager, next, jumper"
-      :total="personnePageRequest.total">
-    </el-pagination>
+              :data="personnePageReData"
+              border
+              ref="personneTable"
+              width="100%"
+              size="small"
+              align="center"
+              :header-cell-style="{
+                background: '#F2F7FC',
+                fontWeight: '900',
+                color: '#606266',
+              }"
+              @selection-change="personneSelectionChange"
+              :row-class-name="tableRowClassName"
+            >
+              <el-table-column type="selection" width="55"> </el-table-column>
+              <el-table-column prop="userId" label="工号"> </el-table-column>
+              <el-table-column prop="name" label="名称"> </el-table-column>
+              <el-table-column prop="deptName" label="机构名称">
+              </el-table-column>
+              <el-table-column width="100" label="操作">
+                <template slot-scope="scope">
+                  <el-button
+                    type="text"
+                    @click="handleTableEdit(scope.row.userId)"
+                    size="small"
+                    >编辑</el-button
+                  >
+                </template>
+              </el-table-column>
+              <!-- 表格列 -->
+            </el-table>
+
+            <el-pagination
+              @size-change="handleSizeChange"
+              @current-change="refreshPageRequest"
+              :current-page="personnePageRequest.pageNum"
+              :page-sizes="[10, 20, 50, 100, 200, 300, 400, 500]"
+              :page-size="personnePageRequest.pageSize"
+              layout="total, sizes, prev, pager, next, jumper"
+              :total="personnePageRequest.total"
+            >
+            </el-pagination>
           </div>
         </SplitArea>
         <!-- 工具区域Start -->
-        <SplitArea >
+        <SplitArea>
           <el-form ref="queryFormRef" :model="pageRequest" label-width="60px">
-              <el-row>
-                <el-col :span="7">
-                  <el-form-item label="工号">
-                    <el-input
-                      clearable
-                      :size="overSize"
-                      placeholder="工号"
-                      v-model="pageRequest.userId"
-                    ></el-input>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="7">
-                  <el-form-item label="姓名">
-                    <el-input
-                      clearable
-                      :size="overSize"
-                      placeholder="姓名"
-                      v-model="pageRequest.sysUserName"
-                    ></el-input>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="7">
-                  <el-form-item label="保险公司" label-width="80px">
-                    <el-cascader v-model="pageRequest.insuranceCompany"  :size="overSize" :show-all-levels="false"
-                    :options="ztreeNodes" :props="optionProps"  clearable filterable></el-cascader>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="12">
-                    <el-button
-                      size="small"
-                      type="primary"
-                      @click="findQuery()"
-                      >查询</el-button
-                    >
-                    <kt-button  label="添加" type="primary" @click="handleAddProduct" />
-                </el-col>
-              </el-row>
-            </el-form>
+            <el-row>
+              <el-col :span="7">
+                <el-form-item label="工号">
+                  <el-input
+                    clearable
+                    :size="overSize"
+                    placeholder="工号"
+                    v-model="pageRequest.userId"
+                  ></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="7">
+                <el-form-item label="姓名">
+                  <el-input
+                    clearable
+                    :size="overSize"
+                    placeholder="姓名"
+                    v-model="pageRequest.sysUserName"
+                  ></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="7">
+                <el-form-item label="保险公司" label-width="80px">
+                  <el-cascader
+                    v-model="pageRequest.insuranceCompany"
+                    :size="overSize"
+                    :show-all-levels="false"
+                    :options="ztreeNodes"
+                    :props="optionProps"
+                    clearable
+                    filterable
+                  ></el-cascader>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-button size="small" type="primary" @click="findQuery()"
+                  >查询</el-button
+                >
+                <kt-button
+                  label="添加"
+                  type="primary"
+                  @click="handleAddProduct"
+                />
+              </el-col>
+            </el-row>
+          </el-form>
           <kt-common-table
-          style="margin-top:10px"
+            style="margin-top: 10px"
             :data="pageResult"
             :columns="columns"
             :showBatchDelete="true"
@@ -168,16 +182,25 @@
       :visible.sync="productDialogVisible"
       width="800px"
     >
-    <div style="margin-bottom:15px">保险公司:
-      <el-select v-model="pagePagination.companyId" filterable clearable @change="companyChange"  size="small" placeholder="请选择">
-      <el-option
-        v-for="item in ztreeNodes"
-        :key="item.id"
-        :label="item.name"
-        :value="item.id">
-      </el-option>
-    </el-select>
-  </div>
+      <div style="margin-bottom: 15px">
+        保险公司:
+        <el-select
+          v-model="pagePagination.companyId"
+          filterable
+          clearable
+          @change="companyChange"
+          size="small"
+          placeholder="请选择"
+        >
+          <el-option
+            v-for="item in ztreeNodes"
+            :key="item.id"
+            :label="item.name"
+            :value="item.id"
+          >
+          </el-option>
+        </el-select>
+      </div>
       <el-table
         @selection-change="handleSelectionChange"
         :data="tableData"
@@ -186,22 +209,37 @@
         style="width: 100%"
       >
         <el-table-column type="selection" width="55"></el-table-column>
-        <el-table-column prop="agreementCode" label="协议代码" width="180"></el-table-column>
-        <el-table-column prop="agreementName" label="协议名称"></el-table-column>
-        <el-table-column prop="insuranceCompany" label="保险公司名称"></el-table-column>
+        <el-table-column
+          prop="agreementCode"
+          label="协议代码"
+          width="180"
+        ></el-table-column>
+        <el-table-column
+          prop="agreementName"
+          label="协议名称"
+        ></el-table-column>
+        <el-table-column
+          prop="insuranceCompany"
+          label="保险公司名称"
+        ></el-table-column>
       </el-table>
       <el-pagination
-      @size-change="pagePaginationsize"
-      @current-change="pagePaginationcurrent"
-      :current-page="pagePagination.pageNum"
-      :page-sizes="[10, 20, 50, 100, 200]" 
-      :page-size="pagePagination.pageSize"
-      layout="total, sizes, prev, pager, next, jumper"
-      :total="pagePagination.total">
+        @size-change="pagePaginationsize"
+        @current-change="pagePaginationcurrent"
+        :current-page="pagePagination.pageNum"
+        :page-sizes="[10, 20, 50, 100, 200]"
+        :page-size="pagePagination.pageSize"
+        layout="total, sizes, prev, pager, next, jumper"
+        :total="pagePagination.total"
+      >
       </el-pagination>
       <span slot="footer" class="dialog-footer">
-        <el-button size="small" @click="productDialogVisible = false">取 消</el-button>
-        <el-button size="small" type="primary" @click="submitForm">确 定</el-button>
+        <el-button size="small" @click="productDialogVisible = false"
+          >取 消</el-button
+        >
+        <el-button size="small" type="primary" @click="submitForm"
+          >确 定</el-button
+        >
       </span>
     </el-dialog>
   </div>
@@ -213,12 +251,12 @@ import CommonUtil from "@/utils/comutil.js";
 export default {
   components: {
     KtButton,
-    KtCommonTable
+    KtCommonTable,
   },
   data() {
     return {
       ztreeNodes: [],
-      deptList:[],
+      deptList: [],
       optionProps: {
         //公司下拉列表配置
         checkStrictly: true,
@@ -232,150 +270,162 @@ export default {
       rightSplitWidth: 80,
       // 右侧列表查询数据Start
       pageResult: {},
-      personnePageReData:[],
+      personnePageReData: [],
       pageRequest: {
         //查询的默认条件
         pageNum: 1,
-        pageSize: 20
+        pageSize: 20,
       },
       pagePagination: {
         pageNum: 1,
         pageSize: 20,
-        total:0
+        total: 0,
       },
       personnePageRequest: {
         //查询的默认条件
         pageNum: 1,
         pageSize: 10,
-        total:0
+        total: 0,
       },
       columns: [
         // 数据列
         {
           prop: "sysUserId",
           label: "工号 ",
-          sortable: false
+          sortable: false,
         },
         {
           prop: "sysUserName",
           label: "姓名",
-          sortable: false
+          sortable: false,
         },
         {
           prop: "agreementCode",
           label: "协议代码",
-          sortable: false
+          sortable: false,
         },
         {
           prop: "agreementName",
           label: "协议名称",
-          sortable: false
+          sortable: false,
         },
         {
           prop: "agreementType",
           label: "协议类型",
           formatter: this.agreementtypeFormatter,
-          sortable: false
+          sortable: false,
         },
         {
           prop: "insuranceCompany",
           label: "保险公司名称",
-          sortable: false
-        }
+          sortable: false,
+        },
       ],
       productDialogVisible: false, //控制产品对话框
       dialogTitle: "新增",
       userId: "",
       tableData: [],
-      personnelValue:'', //工号搜索
+      personnelValue: "", //工号搜索
     };
   },
   created() {
-      this.$api.cost.gainTopList({ type: 1 }).then((res) => {
-        this.ztreeNodes = res.data;
-      });
+    this.$api.cost.gainTopList({ type: 1 }).then((res) => {
+      this.ztreeNodes = res.data;
+    });
     this.getDicType("agreementType"); //协议类型
-    this.getAllCompany()
-    this.personnelFindPage()
+    this.getAllCompany();
+    this.personnelFindPage();
   },
   watch: {},
   methods: {
-    handleDelete(val){
-      this.handleTableDelete(val)
+    handleDelete(val) {
+      this.handleTableDelete(val);
     },
-    personnelFindQuery(){
-      this.personnePageRequest.pageNum='1',
-      this.personnePageRequest.pageSize=20
-      this.personnelFindPage()
+    personnelFindQuery() {
+      (this.personnePageRequest.pageNum = "1"),
+        (this.personnePageRequest.pageSize = 20);
+      this.personnelFindPage();
     },
-    findQuery(){
-      this.pageRequest.pageNum='1',
-      this.pageRequest.pageSize=20
-      this.findPage()
+    findQuery() {
+      (this.pageRequest.pageNum = "1"), (this.pageRequest.pageSize = 20);
+      this.findPage();
     },
-    tableRowClassName(row){
-      if (row.row.flag ) {
-        return 'flagRow';
+    tableRowClassName(row) {
+      if (row.row.flag) {
+        return "flagRow";
       } else {
-        return '';
+        return "";
       }
     },
-    pagePaginationsize(pageSize){
+    pagePaginationsize(pageSize) {
       this.pagePagination.pageSize = pageSize;
-      this.handleTableEdit(this.userId)
+      this.handleTableEdit(this.userId);
     },
     pagePaginationcurrent: function (pageNum) {
       this.pagePagination.pageNum = pageNum;
-      this.handleTableEdit(this.userId)
+      this.handleTableEdit(this.userId);
     },
-    handleSizeChange(pageSize){
+    handleSizeChange(pageSize) {
       this.personnePageRequest.pageSize = pageSize;
-      this.personnelFindPage()
+      this.personnelFindPage();
     },
     refreshPageRequest: function (pageNum) {
       this.personnePageRequest.pageNum = pageNum;
-      this.personnelFindPage()
+      this.personnelFindPage();
     },
-    personnelFindPage(){
-      let deptId=''
-      if(this.personnePageRequest.deptId && this.personnePageRequest.deptId.length>0){
-        deptId=this.personnePageRequest.deptId[this.personnePageRequest.deptId.length-1]
+    personnelFindPage() {
+      let deptId = "";
+      if (
+        this.personnePageRequest.deptId &&
+        this.personnePageRequest.deptId.length > 0
+      ) {
+        deptId =
+          this.personnePageRequest.deptId[
+            this.personnePageRequest.deptId.length - 1
+          ];
       }
-      this.$api.task.findAllUserList({...this.personnePageRequest,deptId}).then(res => {
-      if (res.code == 200) {
-        this.personnePageReData = res.data.content;
-        this.personnePageRequest.pageNum= res.data.pageNum;
-        this.personnePageRequest.pageSize= res.data.pageSize;
-        this.personnePageRequest.total= res.data.totalSize;
-      } else {
-        this.$message.error(res.msg);
-      }
-    });
+      this.$api.task
+        .findAllUserList({ ...this.personnePageRequest, deptId })
+        .then((res) => {
+          if (res.code == 200) {
+            this.personnePageReData = res.data.content;
+            this.personnePageRequest.pageNum = res.data.pageNum;
+            this.personnePageRequest.pageSize = res.data.pageSize;
+            this.personnePageRequest.total = res.data.totalSize;
+          } else {
+            this.$message.error(res.msg);
+          }
+        });
     },
-    companyChange(val){
-      if(val){
-        this.handleTableEdit(this.userId,val)
-      }
-      else{
-        this.handleTableEdit(this.userId)
+    companyChange(val) {
+      if (val) {
+        this.handleTableEdit(this.userId, val);
+      } else {
+        this.handleTableEdit(this.userId);
       }
     },
     //--tree begin-------
-    handleTableEdit( userId,companyId ) {
-      this.userId=userId
-        this.$api.task.findPtlAgreementPageListByUserId({userId,companyId,...this.pagePagination}).then(res => {
+    handleTableEdit(userId, companyId) {
+      this.userId = userId;
+      this.$api.task
+        .findPtlAgreementPageListByUserId({
+          userId,
+          companyId,
+          ...this.pagePagination,
+        })
+        .then((res) => {
           if (res.code == 200) {
             this.tableData = res.data.content;
-            this.pagePagination.pageNum= res.data.pageNum;
-            this.pagePagination.pageSize= res.data.pageSize;
-            this.pagePagination.total= res.data.totalSize;
+            this.pagePagination.pageNum = res.data.pageNum;
+            this.pagePagination.pageSize = res.data.pageSize;
+            this.pagePagination.total = res.data.totalSize;
             this.$nextTick(() => {
-              this.tableData.forEach(val => {
-              if(val.flag=='true'){
-                this.$refs.multipleTable.toggleRowSelection(val);
-              }
+              this.tableData.forEach((val) => {
+                if (val.flag == "true") {
+                  this.$refs.multipleTable.toggleRowSelection(val);
+                }
+              });
             });
-            })
             this.dialogTitle = "修改";
             this.productDialogVisible = true;
           } else {
@@ -384,26 +434,26 @@ export default {
         });
     },
     // 获取所有机构列表
-    getAllCompany(){
-        this.$api.task.findAllTree().then(res => {
-            this.deptList=res.data
-        });
-      },
+    getAllCompany() {
+      this.$api.task.findAllTree().then((res) => {
+        this.deptList = res.data;
+      });
+    },
     handleTableDeleteFlag(data) {
-      this.handleTableDelete([data.row.id])
+      this.handleTableDelete([data.row.id]);
     },
     handleTableDelete(id) {
-      this.$api.task.addOrDelete( {ids:id} ).then(res => {
+      this.$api.task.addOrDelete({ ids: id }).then((res) => {
         if (res.code == "200") {
           this.$message({
             message: "删除成功",
-            type: "success"
+            type: "success",
           });
           this.findPage();
         } else {
           this.$message({
             message: "操作失败",
-            type: "error"
+            type: "error",
           });
         }
       });
@@ -411,9 +461,12 @@ export default {
     //-- tree end-------
     // 右侧按钮方法Start
     handleAddProduct() {
-      if (this.$refs.personneTable.selection && this.$refs.personneTable.selection.length>0) {
-        this.userId=this.$refs.personneTable.selection[0].userId
-        this.$api.task.findPtlAgreementList().then(res => {
+      if (
+        this.$refs.personneTable.selection &&
+        this.$refs.personneTable.selection.length > 0
+      ) {
+        this.userId = this.$refs.personneTable.selection[0].userId;
+        this.$api.task.findPtlAgreementList().then((res) => {
           if (res.code == 200) {
             this.tableData = res.data;
             this.dialogTitle = "新增";
@@ -434,12 +487,23 @@ export default {
         this.pageRequest.pageNum = data.pageRequest.pageNum;
         this.pageRequest.pageSize = data.pageRequest.pageSize;
       }
-      this.pageRequest.insuranceCompany=this.pageRequest.insuranceCompany?this.pageRequest.insuranceCompany[0]:''
+      console.log(this.pageRequest);
+      let insuranceCompany = Array.isArray(this.pageRequest.insuranceCompany)
+        ? this.pageRequest.insuranceCompany[0]
+        : "";
+      // this.pageRequest.insuranceCompany = Array.isArray(
+      //   this.pageRequest.insuranceCompany
+      // )
+      //   ? this.pageRequest.insuranceCompany[0]
+      //   : "";
       this.$api.task
-        .sysUserLinkPtlAgreementPage({...this.pageRequest})
-        .then(res => {
+        .sysUserLinkPtlAgreementPage({
+          ...this.pageRequest,
+          insuranceCompany: insuranceCompany,
+        })
+        .then((res) => {
           if (res.code == 200) {
-            res.data.content.forEach(val => {
+            res.data.content.forEach((val) => {
               val.sysUserId = val.sysUser ? val.sysUser.id : "";
               val.sysUserName = val.sysUser ? val.sysUser.name : "";
               val.agreementCode = val.ptlAgreement
@@ -466,20 +530,20 @@ export default {
       this.$api.task
         .addOrUpdate({
           ptlAgreementIds: this.ptlAgreementIds,
-          userId: this.userId
+          userId: this.userId,
         })
-        .then(res => {
+        .then((res) => {
           if (res.code == 200) {
             this.$message({
               message: "操作成功",
-              type: "success"
+              type: "success",
             });
             this.personnelFindPage();
             this.productDialogVisible = false;
           } else {
             this.$message({
               message: "操作失败",
-              type: "error"
+              type: "error",
             });
           }
         });
@@ -491,12 +555,12 @@ export default {
         dataList: this.agreementTypeoptions,
         value: "dictValue",
         label: "dictTag",
-        data: agreementType
+        data: agreementType,
       });
     },
     //--数据字典 begin --
     getDicType(type) {
-      this.$api.insCompany.dicType(type).then(res => {
+      this.$api.insCompany.dicType(type).then((res) => {
         if (res.code == 200) {
           this[type + "options"] = res.data.ddList;
         }
@@ -504,10 +568,10 @@ export default {
     },
     //--数据字典 end --
     handleSelectionChange(val) {
-        this.ptlAgreementIds = [];
-        val.forEach(obj => {
-          this.ptlAgreementIds.push(obj.id); // 将每个对象的id添加到allIds数组中
-        });
+      this.ptlAgreementIds = [];
+      val.forEach((obj) => {
+        this.ptlAgreementIds.push(obj.id); // 将每个对象的id添加到allIds数组中
+      });
     },
     personneSelectionChange(selection) {
       if (selection.length > 1) {
@@ -515,7 +579,7 @@ export default {
         this.$refs.personneTable.toggleRowSelection(selection.pop()); // 设置选择项
       }
     },
-  }
+  },
 };
 </script>
   
@@ -524,11 +588,11 @@ export default {
 .queryFrom .el-row {
   margin: 10px 0px;
 }
->>>.el-table .flagRow{
-    background: rgba(212, 36, 38, 0.2)  !important;
-  }
-  >>> .el-table__header-wrapper .el-table__header .el-checkbox {
- 	 display: none;
+>>> .el-table .flagRow {
+  background: rgba(212, 36, 38, 0.2) !important;
+}
+>>> .el-table__header-wrapper .el-table__header .el-checkbox {
+  display: none;
 }
 .queryFrom .el-form-item {
   margin-bottom: 0px;

+ 418 - 164
src/views/AgreementManage/CarInsurance/ProductCostExamine.vue

@@ -2,187 +2,355 @@
 <template>
   <div class="page">
     <!-- 模板内容 -->
-    <el-form :inline="true" size="small" :model="productpageRequest" class="demo-form-inline" label-width="100px">
+    <el-form
+      :inline="true"
+      size="small"
+      :model="productpageRequest"
+      class="demo-form-inline"
+      label-width="100px"
+    >
       <el-form-item label="保险公司">
-        <el-select size="small" clearable filterable v-model="productpageRequest.companyId" :placeholder="'请输入'"
-          @change="refreshAgreement">
-          <el-option v-for="(s, i) in InsCompanyList" :key="i" :label="s.name" :value="s.id"></el-option>
+        <el-select
+          size="small"
+          clearable
+          filterable
+          v-model="productpageRequest.companyId"
+          :placeholder="'请输入'"
+          @change="refreshAgreement"
+        >
+          <el-option
+            v-for="(s, i) in InsCompanyList"
+            :key="i"
+            :label="s.name"
+            :value="s.id"
+          ></el-option>
         </el-select>
       </el-form-item>
 
       <el-form-item label="协议选择">
-        <el-select size="small" clearable v-model="productpageRequest.agreementId" :placeholder="'请输入'">
-          <el-option v-for="(s, i) in agreementList" :key="i" :label="s.agreementName" :value="s.id"></el-option>
+        <el-select
+          size="small"
+          clearable
+          filterable
+          v-model="productpageRequest.agreementId"
+          :placeholder="'请输入'"
+        >
+          <el-option
+            v-for="(s, i) in agreementList"
+            :key="i"
+            :label="s.agreementName"
+            :value="s.id"
+          ></el-option>
         </el-select>
       </el-form-item>
 
       <el-form-item label="产品名称">
-        <el-select size="small" clearable v-model="productpageRequest.productCode" multiple :placeholder="'请输入'">
-          <el-option v-for="(s, i) in insuranceRepertoire" :key="i" :label="s.dictTag" :value="s.dictValue"></el-option>
+        <el-select
+          size="small"
+          clearable
+          v-model="productpageRequest.productCode"
+          multiple
+          :placeholder="'请输入'"
+        >
+          <el-option
+            v-for="(s, i) in insuranceRepertoire"
+            :key="i"
+            :label="s.dictTag"
+            :value="s.dictValue"
+          ></el-option>
         </el-select>
       </el-form-item>
 
       <el-form-item label="创建日期">
-        <el-date-picker value-format="yyyy-MM-dd" v-model="date" size="mini" type="daterange" align="left"
-          range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
+        <el-date-picker
+          value-format="yyyy-MM-dd"
+          v-model="date"
+          size="mini"
+          type="daterange"
+          align="left"
+          range-separator="至"
+          start-placeholder="开始日期"
+          end-placeholder="结束日期"
+        >
         </el-date-picker>
       </el-form-item>
 
       <el-form-item label="审核状态">
         <el-select v-model="productpageRequest.isAudit">
-          <el-option v-for="(item, index) in expenseAuditlist" :key="index" :label="item.label"
-            :value="item.value"></el-option>
+          <el-option
+            v-for="(item, index) in expenseAuditlist"
+            :key="index"
+            :label="item.label"
+            :value="item.value"
+          ></el-option>
         </el-select>
       </el-form-item>
       <el-form-item label="费用描述">
-        <el-input v-model="productpageRequest.costsDescription" clearable placeholder="费用描述"></el-input>
+        <el-input
+          v-model="productpageRequest.costsDescription"
+          clearable
+          placeholder="费用描述"
+        ></el-input>
       </el-form-item>
       <el-form-item>
         <el-button type="primary" @click="costQuery">查询</el-button>
       </el-form-item>
     </el-form>
-    <kt-common-table :SerialShow="false" :operationWidth="150" :showOperation="true" button2Name="查看"
-      permsButton2="agreement:input:productCost" @handleButton2="viewDetails" :showBatchDelete="true" deleteName="批量审核"
-      @handleDelete="handleDelete" :data="costAudit" :columns="costColumns" @findPage="costPage">
+    <kt-common-table
+      :SerialShow="false"
+      :operationWidth="150"
+      :showOperation="true"
+      button2Name="查看"
+      permsButton2="agreement:input:productCost"
+      @handleButton2="viewDetails"
+      :showBatchDelete="true"
+      deleteName="批量审核"
+      @handleDelete="handleDelete"
+      :data="costAudit"
+      :columns="costColumns"
+      @findPage="costPage"
+    >
     </kt-common-table>
-    <el-dialog title="详情" :visible.sync="productCostAddVehicleFactorVisible" width="80%" top="6vh">
+    <el-dialog
+      title="详情"
+      :visible.sync="productCostAddVehicleFactorVisible"
+      width="80%"
+      top="6vh"
+    >
       <div class="productstitle flex j-s" style="margin-top: 10px">
         <div>
           <span>{{ productCostForm.productName }}费用</span>
         </div>
       </div>
-      <el-button class="mrgin-1" size="small" type="warning"
-        @click="productCostFactorDialogVisible = true">产品费用因子</el-button>
-      <el-form ref="productCostForm" :model="productCostForm" label-width="130px" size="mini" disabled>
+      <el-button
+        class="mrgin-1"
+        size="small"
+        type="warning"
+        @click="productCostFactorDialogVisible = true"
+        >产品费用因子</el-button
+      >
+      <el-form
+        ref="productCostForm"
+        :model="productCostForm"
+        label-width="130px"
+        size="mini"
+        disabled
+      >
         <el-row>
           <el-col :span="20" :offset="2">
             <el-form-item label="费用描述">
-              <el-input type="textarea" v-model="productCostForm.costsDescription" placeholder="输入费用描述内容"></el-input>
+              <el-input
+                type="textarea"
+                v-model="productCostForm.costsDescription"
+                placeholder="输入费用描述内容"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="10" :offset="2">
             <el-form-item label="费用起期" prop="costsStartDate">
-              <el-date-picker style="width: 100%" v-model="productCostForm.costsStartDate" type="datetime"
-                placeholder="选择费用开始日期" value-format="yyyy-MM-dd HH:mm:ss">
+              <el-date-picker
+                style="width: 100%"
+                v-model="productCostForm.costsStartDate"
+                type="datetime"
+                placeholder="选择费用开始日期"
+                value-format="yyyy-MM-dd HH:mm:ss"
+              >
               </el-date-picker>
             </el-form-item>
           </el-col>
           <el-col :span="10">
             <el-form-item label="费用止期" prop="costsEndDate">
-              <el-date-picker style="width: 100%" v-model="productCostForm.costsEndDate" type="datetime"
-                placeholder="选择费用结束日期" value-format="yyyy-MM-dd HH:mm:ss">
+              <el-date-picker
+                style="width: 100%"
+                v-model="productCostForm.costsEndDate"
+                type="datetime"
+                placeholder="选择费用结束日期"
+                value-format="yyyy-MM-dd HH:mm:ss"
+              >
               </el-date-picker>
             </el-form-item>
           </el-col>
           <el-col :span="10" :offset="2">
             <el-form-item label="优先级">
-              <el-input style="width: 100%" v-model="productCostForm.priorityLevel"
-                onkeyup="value=value.replace(/\D/g,'')" placeholder="输入数字"></el-input>
+              <el-input
+                style="width: 100%"
+                v-model="productCostForm.priorityLevel"
+                onkeyup="value=value.replace(/\D/g,'')"
+                placeholder="输入数字"
+              ></el-input>
             </el-form-item>
           </el-col>
         </el-row>
-        <el-row v-if="['单交', '交三', '交商', '兜底配置'].includes(
-          productCostForm.productName
-        )
-          ">
+        <el-row
+          v-if="
+            ['单交', '交三', '交商', '兜底配置'].includes(
+              productCostForm.productName
+            )
+          "
+        >
           <h4 style="color: tomato">交强险费用</h4>
           <el-col :span="5" :offset="1">
             <el-form-item label="费用比例" prop="jqCarCostsProportion">
-              <el-input v-model="productCostForm.jqCarCostsProportion" placeholder="请输入费用比例"></el-input>
+              <el-input
+                v-model="productCostForm.jqCarCostsProportion"
+                placeholder="请输入费用比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="其他费用比例">
-              <el-input disabled v-model="productCostForm.jqCarOtherCostsProportion" placeholder="请输入其他费用比例"></el-input>
+              <el-input
+                disabled
+                v-model="productCostForm.jqCarOtherCostsProportion"
+                placeholder="请输入其他费用比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="总费用比例" prop="jqCostsProportion">
-              <el-input v-model="productCostForm.jqCostsProportion" placeholder="请输入总费用比例"></el-input>
+              <el-input
+                v-model="productCostForm.jqCostsProportion"
+                placeholder="请输入总费用比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="交强管理比例一级	" prop="jqExportRadioLevel1">
-              <el-input v-model="productCostForm.jqExportRadioLevel1" placeholder="请输入管理费比例"></el-input>
+              <el-input
+                v-model="productCostForm.jqExportRadioLevel1"
+                placeholder="请输入管理费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="交强管理比例二级	" prop="jqExportRadioLevel2">
-              <el-input v-model="productCostForm.jqExportRadioLevel2" placeholder="请输入管理费比例"></el-input>
+              <el-input
+                v-model="productCostForm.jqExportRadioLevel2"
+                placeholder="请输入管理费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="交强管理比例三级	" prop="jqExportRadioLevel3">
-              <el-input v-model="productCostForm.jqExportRadioLevel3" placeholder="请输入管理费比例"></el-input>
+              <el-input
+                v-model="productCostForm.jqExportRadioLevel3"
+                placeholder="请输入管理费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="交强管理比例四级	" prop="jqExportRadioLevel4">
-              <el-input v-model="productCostForm.jqExportRadioLevel4" placeholder="请输入管理费比例"></el-input>
+              <el-input
+                v-model="productCostForm.jqExportRadioLevel4"
+                placeholder="请输入管理费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="交强管理比例五级	" prop="jqExportRadioLevel5">
-              <el-input v-model="productCostForm.jqExportRadioLevel5" placeholder="请输入管理费比例"></el-input>
+              <el-input
+                v-model="productCostForm.jqExportRadioLevel5"
+                placeholder="请输入管理费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
-            <el-form-item label="交强出口手续比例" prop="jqCostsExportProportion">
-              <el-input v-model="productCostForm.jqCostsExportProportion" placeholder="请输入出口手续费比例"></el-input>
+            <el-form-item
+              label="交强出口手续比例"
+              prop="jqCostsExportProportion"
+            >
+              <el-input
+                v-model="productCostForm.jqCostsExportProportion"
+                placeholder="请输入出口手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
         </el-row>
-        <el-row v-if="['单商', '单三', '交商', '交三', '兜底配置'].includes(
-          productCostForm.productName
-        )
-          ">
+        <el-row
+          v-if="
+            ['单商', '单三', '交商', '交三', '兜底配置'].includes(
+              productCostForm.productName
+            )
+          "
+        >
           <h4 style="color: tomato">商业险费用</h4>
 
           <el-col :span="5" :offset="1">
             <el-form-item label="费用比例" prop="syCarCostsProportion">
-              <el-input v-model="productCostForm.syCarCostsProportion" placeholder="请输入费用比例"></el-input>
+              <el-input
+                v-model="productCostForm.syCarCostsProportion"
+                placeholder="请输入费用比例"
+              ></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="5" :offset="1">
             <el-form-item label="其他费用比例">
-              <el-input v-model="productCostForm.syCarOtherCostsProportion" placeholder="请输入其他费用比例" disabled></el-input>
+              <el-input
+                v-model="productCostForm.syCarOtherCostsProportion"
+                placeholder="请输入其他费用比例"
+                disabled
+              ></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="5" :offset="1">
             <el-form-item label="总费用比例" prop="syCostsProportion">
-              <el-input v-model="productCostForm.syCostsProportion" placeholder="请输入总费用比例"></el-input>
+              <el-input
+                v-model="productCostForm.syCostsProportion"
+                placeholder="请输入总费用比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="商业手续比例一级	" prop="syExportRadioLevel1">
-              <el-input v-model="productCostForm.syExportRadioLevel1" placeholder="请输入手续费比例"></el-input>
+              <el-input
+                v-model="productCostForm.syExportRadioLevel1"
+                placeholder="请输入手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="商业手续比例二级	" prop="syExportRadioLevel2">
-              <el-input v-model="productCostForm.syExportRadioLevel2" placeholder="请输入手续费比例"></el-input>
+              <el-input
+                v-model="productCostForm.syExportRadioLevel2"
+                placeholder="请输入手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="商业手续比例三级	" prop="syExportRadioLevel3">
-              <el-input v-model="productCostForm.syExportRadioLevel3" placeholder="请输入手续费比例"></el-input>
+              <el-input
+                v-model="productCostForm.syExportRadioLevel3"
+                placeholder="请输入手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="商业手续比例四级	" prop="syExportRadioLevel4">
-              <el-input v-model="productCostForm.syExportRadioLevel4" placeholder="请输入手续费比例"></el-input>
+              <el-input
+                v-model="productCostForm.syExportRadioLevel4"
+                placeholder="请输入手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
             <el-form-item label="商业手续比例五级	" prop="syExportRadioLevel5">
-              <el-input v-model="productCostForm.syExportRadioLevel5" placeholder="请输入手续费比例"></el-input>
+              <el-input
+                v-model="productCostForm.syExportRadioLevel5"
+                placeholder="请输入手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
-            <el-form-item label="商业出口手续比例" prop="syCostsExportProportion">
-              <el-input v-model="productCostForm.syCostsExportProportion" placeholder="请输入出口手续费比例"></el-input>
+            <el-form-item
+              label="商业出口手续比例"
+              prop="syCostsExportProportion"
+            >
+              <el-input
+                v-model="productCostForm.syCostsExportProportion"
+                placeholder="请输入出口手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
         </el-row>
@@ -190,84 +358,155 @@
           <h4 style="color: tomato">非车费用</h4>
           <el-col :span="5" :offset="1">
             <el-form-item label="费用比例" prop="noCarCostsProportion">
-              <el-input v-model="productCostForm.noCarCostsProportion" placeholder="请输入费用比例"></el-input>
+              <el-input
+                v-model="productCostForm.noCarCostsProportion"
+                placeholder="请输入费用比例"
+              ></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="5" :offset="1">
             <el-form-item label="其他费用比例">
-              <el-input v-model="productCostForm.noCarOtherCostsProportion" placeholder="请输入其他费用比例" disabled></el-input>
+              <el-input
+                v-model="productCostForm.noCarOtherCostsProportion"
+                placeholder="请输入其他费用比例"
+                disabled
+              ></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="5" :offset="1">
             <el-form-item label="总费用比例" prop="noCostsProportion">
-              <el-input v-model="productCostForm.noCostsProportion" placeholder="请输入总费用比例"></el-input>
+              <el-input
+                v-model="productCostForm.noCostsProportion"
+                placeholder="请输入总费用比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
-            <el-form-item label="非车手续比例一级	" prop="noCarExportRadioLevel1">
-              <el-input v-model="productCostForm.noCarExportRadioLevel1" placeholder="请输入手续费比例"></el-input>
+            <el-form-item
+              label="非车手续比例一级	"
+              prop="noCarExportRadioLevel1"
+            >
+              <el-input
+                v-model="productCostForm.noCarExportRadioLevel1"
+                placeholder="请输入手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
-            <el-form-item label="非车手续比例二级	" prop="noCarExportRadioLevel2">
-              <el-input v-model="productCostForm.noCarExportRadioLevel2" placeholder="请输入手续费比例"></el-input>
+            <el-form-item
+              label="非车手续比例二级	"
+              prop="noCarExportRadioLevel2"
+            >
+              <el-input
+                v-model="productCostForm.noCarExportRadioLevel2"
+                placeholder="请输入手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
-            <el-form-item label="非车手续比例三级	" prop="noCarExportRadioLevel3">
-              <el-input v-model="productCostForm.noCarExportRadioLevel3" placeholder="请输入手续费比例"></el-input>
+            <el-form-item
+              label="非车手续比例三级	"
+              prop="noCarExportRadioLevel3"
+            >
+              <el-input
+                v-model="productCostForm.noCarExportRadioLevel3"
+                placeholder="请输入手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
-            <el-form-item label="非车手续比例四级	" prop="noCarExportRadioLevel4">
-              <el-input v-model="productCostForm.noCarExportRadioLevel4" placeholder="请输入手续费比例"></el-input>
+            <el-form-item
+              label="非车手续比例四级	"
+              prop="noCarExportRadioLevel4"
+            >
+              <el-input
+                v-model="productCostForm.noCarExportRadioLevel4"
+                placeholder="请输入手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
-            <el-form-item label="非车手续比例五级	" prop="noCarExportRadioLevel5">
-              <el-input v-model="productCostForm.noCarExportRadioLevel5" placeholder="请输入手续费比例"></el-input>
+            <el-form-item
+              label="非车手续比例五级	"
+              prop="noCarExportRadioLevel5"
+            >
+              <el-input
+                v-model="productCostForm.noCarExportRadioLevel5"
+                placeholder="请输入手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="5" :offset="1">
-            <el-form-item label="非车出口手续比例" prop="noCostsExportProportion">
-              <el-input v-model="productCostForm.noCostsExportProportion" placeholder="请输入出口手续费比例"></el-input>
+            <el-form-item
+              label="非车出口手续比例"
+              prop="noCostsExportProportion"
+            >
+              <el-input
+                v-model="productCostForm.noCostsExportProportion"
+                placeholder="请输入出口手续费比例"
+              ></el-input>
             </el-form-item>
           </el-col>
         </el-row>
       </el-form>
       <div class="flex j-s a-c">
-        <span style="margin-right: 10px;width: 100px;">驳回原因</span>
-        <el-input type="textarea" v-model="reject" maxlength="100" show-word-limit></el-input>
+        <span style="margin-right: 10px; width: 100px">驳回原因</span>
+        <el-input
+          type="textarea"
+          v-model="reject"
+          maxlength="100"
+          show-word-limit
+        ></el-input>
       </div>
-      <span slot="footer" class="dialog-footer ">
-        <el-button size="mini" @click="productCostAddVehicleFactorVisible = false">关闭</el-button>
-        <el-button size="mini" type="success" @click="approval">审核通过</el-button>
-        <el-button size="mini" type="primary" @click="rejectionReason">审核驳回</el-button>
+      <span slot="footer" class="dialog-footer">
+        <el-button
+          size="mini"
+          @click="productCostAddVehicleFactorVisible = false"
+          >关闭</el-button
+        >
+        <el-button size="mini" type="success" @click="approval"
+          >审核通过</el-button
+        >
+        <el-button size="mini" type="primary" @click="rejectionReason"
+          >审核驳回</el-button
+        >
       </span>
     </el-dialog>
-    <el-dialog title="产品因子录入" :visible.sync="productCostFactorDialogVisible" :close-on-click-modal="false" width="70%"
-      top="6vh" :fullscreen="true">
-      <Product-Cost-Form v-if="productCostFactorDialogVisible" :form="dynamicFormArray" :operator="operatorlist"
-        :disabled="true" over-size="small" @cancelForm="cancel"></Product-Cost-Form>
+    <el-dialog
+      title="产品因子录入"
+      :visible.sync="productCostFactorDialogVisible"
+      :close-on-click-modal="false"
+      width="70%"
+      top="6vh"
+      :fullscreen="true"
+    >
+      <Product-Cost-Form
+        v-if="productCostFactorDialogVisible"
+        :form="dynamicFormArray"
+        :operator="operatorlist"
+        :disabled="true"
+        over-size="small"
+        @cancelForm="cancel"
+      ></Product-Cost-Form>
     </el-dialog>
   </div>
 </template>
 <!-- 行为区域 -->
 <script>
 import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
-import ProductCostForm from '@/components/Form/ProductCostForm.vue';//表单组件
+import ProductCostForm from "@/components/Form/ProductCostForm.vue"; //表单组件
 
 export default {
   components: {
     KtCommonTable,
-    ProductCostForm
+    ProductCostForm,
   },
   // 数据存放区域
   data() {
     return {
-      date: '',
+      date: "",
       reject: "",
       productpageRequest: {
         createStartTime: "",
@@ -277,7 +516,7 @@ export default {
         pageSize: 20,
         companyId: "",
         agreementId: "",
-        costsDescription: '',
+        costsDescription: "",
         productCode: [],
       },
       //保险公司列表
@@ -289,9 +528,21 @@ export default {
       productCostAddVehicleFactorVisible: false, //产品费用录入    显示/隐藏
       productCostFactorDialogVisible: false,
       //操作符字典
-      operator: { "pageNum": 1, "pageSize": 10, "columnFilters": { "label": { "name": "label", "value": "agreement_operator" } } },
+      operator: {
+        pageNum: 1,
+        pageSize: 10,
+        columnFilters: {
+          label: { name: "label", value: "agreement_operator" },
+        },
+      },
       operatorlist: [],
-      expenseAudit: { "pageNum": 1, "pageSize": 10, "columnFilters": { "label": { "name": "label", "value": "agreement_audit_status" } } },
+      expenseAudit: {
+        pageNum: 1,
+        pageSize: 10,
+        columnFilters: {
+          label: { name: "label", value: "agreement_audit_status" },
+        },
+      },
       expenseAuditlist: [],
       costAudit: {},
       dynamicFormArray: [],
@@ -308,36 +559,41 @@ export default {
         jqCarCostsProportion: 4, //费用比例(交强)
         jqCarOtherCostsProportion: "", //其他费用比例(交强)
         jqCostsProportion: "", //总费用比例(交强)
-        jqExportRadioLevel1: "",//交强出口比例1级
-        jqExportRadioLevel2: "",//交强出口比例2级
-        jqExportRadioLevel3: "",//交强出口比例3级
-        jqExportRadioLevel4: "",//交强出口比例4级
-        jqExportRadioLevel5: "",//交强出口比例5级
+        jqExportRadioLevel1: "", //交强出口比例1级
+        jqExportRadioLevel2: "", //交强出口比例2级
+        jqExportRadioLevel3: "", //交强出口比例3级
+        jqExportRadioLevel4: "", //交强出口比例4级
+        jqExportRadioLevel5: "", //交强出口比例5级
         syCarCostsProportion: "", //费用比例(商业)
         syCarOtherCostsProportion: "", //其他费用比例(商业)
         syCostsProportion: "", //总费用比例(商业)
-        syExportRadioLevel1: "",//商业出口比例1级
-        syExportRadioLevel2: "",//商业出口比例2级
-        syExportRadioLevel3: "",//商业出口比例3级
-        syExportRadioLevel4: "",//商业出口比例4级
-        syExportRadioLevel5: "",//商业出口比例5级
-        noCarExportRadioLevel1: "",//非车出口比例1级
-        noCarExportRadioLevel2: "",//非车出口比例2级
-        noCarExportRadioLevel3: "",//非车出口比例3级
-        noCarExportRadioLevel4: "",//非车出口比例4级
-        noCarExportRadioLevel5: "",//非车出口比例5级
-        jqExportInvestmentRadio: "",//交强出口加投比例
-        syExportInvestmentRadio: "",//商业出口加投比例
-        noCarExportInvestmentRadio: "",//非车出口加投比例
-        noCarCostsProportion: "",//费用比例(非车)
-        noCarOtherCostsProportion: "",//其他费用比例(非车)
-        noCostsProportion: "",//总费用比例(非车)
-        costsAttrLinks: [],//费用因子
+        syExportRadioLevel1: "", //商业出口比例1级
+        syExportRadioLevel2: "", //商业出口比例2级
+        syExportRadioLevel3: "", //商业出口比例3级
+        syExportRadioLevel4: "", //商业出口比例4级
+        syExportRadioLevel5: "", //商业出口比例5级
+        noCarExportRadioLevel1: "", //非车出口比例1级
+        noCarExportRadioLevel2: "", //非车出口比例2级
+        noCarExportRadioLevel3: "", //非车出口比例3级
+        noCarExportRadioLevel4: "", //非车出口比例4级
+        noCarExportRadioLevel5: "", //非车出口比例5级
+        jqExportInvestmentRadio: "", //交强出口加投比例
+        syExportInvestmentRadio: "", //商业出口加投比例
+        noCarExportInvestmentRadio: "", //非车出口加投比例
+        noCarCostsProportion: "", //费用比例(非车)
+        noCarOtherCostsProportion: "", //其他费用比例(非车)
+        noCostsProportion: "", //总费用比例(非车)
+        costsAttrLinks: [], //费用因子
       },
 
       costColumns: [
         { prop: "productName", label: " 产品名称", minWidth: 120 },
-        { prop: "agreementId", label: " 协议名称", minWidth: 160, formatter: this.agreementIdFormatter },
+        {
+          prop: "agreementId",
+          label: " 协议名称",
+          minWidth: 160,
+          formatter: this.agreementIdFormatter,
+        },
         { prop: "costsStartDate", label: "费用起期", minWidth: 160 },
         { prop: "costsEndDate", label: "费用止期", minWidth: 160 },
         { prop: "costsDescription", label: "费用描述", minWidth: 220 },
@@ -473,12 +729,11 @@ export default {
           label: "非车出口比例五级",
           minWidth: 160,
         },
-
       ],
       batchSizeList: [],
       isBatch: false,
       allAgreementList: [],
-    }
+    };
   },
   // 生命周期函数
   created() {
@@ -487,14 +742,14 @@ export default {
     });
     this.getFactorTemplate();
     //获取操作符
-    this.$api.dict.findPage(this.operator).then(res => {
+    this.$api.dict.findPage(this.operator).then((res) => {
       this.operatorlist = res.data.content;
-    })
-    this.$api.dict.findPage(this.expenseAudit).then(res => {
+    });
+    this.$api.dict.findPage(this.expenseAudit).then((res) => {
       this.expenseAuditlist = res.data.content;
-    })
+    });
     //获取保险公司列表
-    this.$api.cost.gainTopList({ type: 1 }).then(res => {
+    this.$api.cost.gainTopList({ type: 1 }).then((res) => {
       if (res.data) {
         this.InsCompanyList = res.data;
       }
@@ -512,113 +767,114 @@ export default {
       this.costPage();
     },
     handleDelete(ids) {
-      this.isBatch = true
+      this.isBatch = true;
       this.batchSizeList = ids;
       this.productCostAddVehicleFactorVisible = true;
     },
     approval() {
       let data = {
         costsIds: this.isBatch ? this.batchSizeList : [this.productCostForm.id],
-        isAudit: '1',
-      }
+        isAudit: "1",
+      };
 
       this.$api.insCompany.auditBatch(data).then((res) => {
-        if (res.code == '200') {
+        if (res.code == "200") {
           this.productCostAddVehicleFactorVisible = false;
           this.costPage();
           this.$message({
-            type: 'success',
+            type: "success",
             message: res.msg,
           });
         } else {
           this.$message({
-            type: 'error',
+            type: "error",
             message: res.msg,
           });
         }
       });
-
     },
     //保险公司选择后刷新协议列表
     refreshAgreement(e) {
       let thef = this;
-      this.$api.insCompany.findAgreementByCompanyId({ partnerCompaniesId: e }).then((res) => {
-        if (res.data) {
-          //清空搜索参数
-          thef.productpageRequest.agreementId = '';
-          this.agreementList = res.data;
-        }
-      })
+      this.$api.insCompany
+        .findAgreementByCompanyId({ partnerCompaniesId: e })
+        .then((res) => {
+          if (res.data) {
+            //清空搜索参数
+            thef.productpageRequest.agreementId = "";
+            this.agreementList = res.data;
+          }
+        });
     },
     rejectionReason() {
       if (!this.reject) {
         return this.$message({
-          message: '驳回操作,请说明驳回原因',
-          type: 'warning'
+          message: "驳回操作,请说明驳回原因",
+          type: "warning",
         });
       }
       let data = {
         costsIds: this.isBatch ? this.batchSizeList : [this.productCostForm.id],
-        isAudit: '2',
-        reject: this.reject
-      }
+        isAudit: "2",
+        reject: this.reject,
+      };
       this.$api.insCompany.auditBatch(data).then((res) => {
-        if (res.code == '200') {
+        if (res.code == "200") {
           this.productCostAddVehicleFactorVisible = false;
           this.costPage();
           this.$message({
-            type: 'success',
+            type: "success",
             message: "已驳回",
           });
         } else {
           this.$message({
-            type: 'error',
+            type: "error",
             message: res.msg,
           });
         }
       });
     },
     getFactorTemplate() {
-      this.$api.insCompany.productConfigItem().then(res => {
-        if (res.code == '200') {
+      this.$api.insCompany.productConfigItem().then((res) => {
+        if (res.code == "200") {
           let data = res.data;
-          data.map(ele => {
+          data.map((ele) => {
             switch (ele.attrType) {
-              case 'inputNumber':
-                ele.operator = '1';
+              case "inputNumber":
+                ele.operator = "1";
                 break;
             }
-            if (ele.attrName == '车牌号') {
+            if (ele.attrName == "车牌号") {
               ele.dictLabal = this.areanumberplateList;
             }
-          })
+          });
           // this.productCostForm.costsAttrLinks = data;
           this.dynamicFormArray = data;
         }
-      })
+      });
     },
     cancel(data) {
       this.productCostFactorDialogVisible = data;
     },
     //查看详情
     viewDetails({ row, column }) {
-      this.isBatch = false
+      this.isBatch = false;
       this.$api.insCompany.productcostFactorQuery(row.id).then((res) => {
-        if (res.code == '200') {
+        if (res.code == "200") {
           let obj = Object.assign({}, res.data);
-          obj.costsAttrLinks.map(val => {
+          obj.costsAttrLinks.map((val) => {
             switch (val.attrType) {
-              case 'inputNumber':
+              case "inputNumber":
                 if (!val.operator) {
-                  val.operator = '1';
+                  val.operator = "1";
                 }
                 break;
             }
-            if (val.attrCode == 'LicenseNo') {
+            if (val.attrCode == "LicenseNo") {
               val.dictLabal = this.areanumberplateList;
             }
             return val;
-          })
+          });
           this.$nextTick(() => {
             this.dynamicFormArray = obj.costsAttrLinks;
             this.productCostForm = obj;
@@ -626,7 +882,7 @@ export default {
           this.productCostAddVehicleFactorVisible = true;
         } else {
           this.$message({
-            type: 'error',
+            type: "error",
             message: res.msg,
           });
         }
@@ -652,20 +908,19 @@ export default {
         .then((res) => {
           if (res.code == 200) {
             this.costAudit = res.data;
-          }
-          else {
-            this.$message.error(res.msg)
+          } else {
+            this.$message.error(res.msg);
           }
         });
     },
     agreementIdFormatter(row, column) {
-      return this.allAgreementList.find(val => val.id == row.agreementId).agreementName;
-    }
+      return this.allAgreementList.find((val) => val.id == row.agreementId)
+        .agreementName;
+    },
   },
   // 计算属性
-  computed: {
-  }
-}
+  computed: {},
+};
 </script>
 <!-- 样式区域 -->
 <style lang='scss' scoped>
@@ -680,7 +935,7 @@ export default {
   text-align: center;
 }
 
-.productstitle>div {
+.productstitle > div {
   width: 100px;
   height: 26px;
   line-height: 30px;
@@ -709,6 +964,5 @@ export default {
     justify-content: center;
     align-items: center;
   }
-
 }
 </style>

+ 405 - 251
src/views/FinancialManagement/CarInsurance/CompanySettlement/DocGenerate.vue

@@ -24,9 +24,10 @@
                 :options="options"
                 :show-all-levels="false"
                 v-model="pageRequest.companyId"
-                :props="{value:'id', label: 'name',  checkStrictly: true}"
-                filterable></el-cascader>
-                <!-- :before-filter="get_tree"	 -->
+                :props="{ value: 'id', label: 'name', checkStrictly: true }"
+                filterable
+              ></el-cascader>
+              <!-- :before-filter="get_tree"	 -->
               <!-- <el-select
                 v-model="pageRequest.companyId"
                 filterable
@@ -93,14 +94,20 @@
             :lg="lgcell"
             :xl="xlcell"
           >
-          <kt-button label="查询" size="small" type="primary" perms="insuranceSettlementManagement:generateSettlementDocument:query" @click="onSubmit('queryForm')"/>
+            <kt-button
+              label="查询"
+              size="small"
+              type="primary"
+              perms="insuranceSettlementManagement:generateSettlementDocument:query"
+              @click="onSubmit('queryForm')"
+            />
           </el-col>
         </el-row>
       </el-form>
     </div>
     <el-main ref="elMain" style="padding: 0px">
       <kt-common-table
-      :operationWidth="150"
+        :operationWidth="150"
         :showOperation="true"
         permsDelete="sys:user:delete"
         :showBatchDelete="false"
@@ -132,50 +139,56 @@
         title="生成成功"
         :subTitle="'结算单号:' + docOrderid"
       >
-      <template slot="extra">
-        <el-button type="primary" size="small" @click="dialogVisible=false">关闭</el-button>
-      </template>
+        <template slot="extra">
+          <el-button type="primary" size="small" @click="dialogVisible = false"
+            >关闭</el-button
+          >
+        </template>
       </el-result>
     </el-dialog>
-    <el-dialog
-      title="提示"
-      :visible.sync="dialogVisible11"
-      width="30%">
-      <span>
-        选择结算月份:
-      </span>
-      <el-date-picker size="small"
-      v-model="monthvalue"
-      type="month"
-      value-format="yyyy-MM-dd"
-      placeholder="选择月">
-    </el-date-picker>
+    <el-dialog title="提示" :visible.sync="dialogVisible11" width="30%">
+      <span> 选择结算月份: </span>
+      <el-date-picker
+        size="small"
+        v-model="monthvalue"
+        type="month"
+        value-format="yyyy-MM-dd"
+        placeholder="选择月"
+      >
+      </el-date-picker>
       <span slot="footer" class="dialog-footer">
-        <el-button size="small" @click="dialogVisible11 = false">取 消</el-button>
+        <el-button size="small" @click="dialogVisible11 = false"
+          >取 消</el-button
+        >
         <el-button size="small" type="primary" @click="jiesuanminrt()"
           >确 定</el-button
         >
       </span>
     </el-dialog>
-    <el-dialog title="报价详情" :visible.sync="quotedetailsdialogVisible" width="90%">
+    <el-dialog
+      title="报价详情"
+      :visible.sync="quotedetailsdialogVisible"
+      width="90%"
+    >
       <div class="Enclosure" v-if="orderInfo">
         <div class="home flex j-s a-c back">
           <div class="flex j-s a-c color">
-            <img src="../../../../../src/icon/company.png" alt class="icon-img" />
-            <span style="margin-left:10px;">报价信息</span>
+            <img
+              src="../../../../../src/icon/company.png"
+              alt
+              class="icon-img"
+            />
+            <span style="margin-left: 10px">报价信息</span>
           </div>
         </div>
-        <div style="padding:20px;font-weight:bold;font-size:20px;">
+        <div style="padding: 20px; font-weight: bold; font-size: 20px">
           <span>总保费</span>
-          <span style="color:#ff7612;">¥{{ orderInfo.sumpremium }}</span>
+          <span style="color: #ff7612">¥{{ orderInfo.sumpremium }}</span>
         </div>
-        <div class="headers headers_Custom" style="padding:20px;">
+        <div class="headers headers_Custom" style="padding: 20px">
           <div v-show="orderInfo.jqpremium">
             交强险金额:
-            <span>
-              ¥{{
-                orderInfo.jqpremium }}
-            </span>
+            <span> ¥{{ orderInfo.jqpremium }} </span>
           </div>
           <div v-show="orderInfo.sypremium">
             商业险金额:
@@ -202,126 +215,226 @@
       <div class="Enclosure" v-if="orderInfo">
         <div class="home flex j-s a-c back">
           <div class="flex j-s a-c color">
-            <img src="../../../../../src/icon/company.png" alt class="icon-img" />
-            <span style="margin-left:10px;">保费因素</span>
+            <img
+              src="../../../../../src/icon/company.png"
+              alt
+              class="icon-img"
+            />
+            <span style="margin-left: 10px">保费因素</span>
           </div>
         </div>
         <el-descriptions size="small">
-          <el-descriptions-item label="评分">{{ orderInfo.extendInfo.score }}</el-descriptions-item>
-          <el-descriptions-item label="出险信息">{{ orderInfo.extendInfo.accidentInfoStr }}</el-descriptions-item>
-          <el-descriptions-item label="商业险折扣比例">{{ orderInfo.extendInfo.nirrratio }}</el-descriptions-item>
-          <el-descriptions-item label="交强险折扣比例">{{ orderInfo.extendInfo.nirrratioCI }}</el-descriptions-item>
-          <el-descriptions-item label="自主定价系数">{{ orderInfo.extendInfo.pricingAdjustValue }}</el-descriptions-item>
+          <el-descriptions-item label="评分">{{
+            orderInfo.extendInfo.score
+          }}</el-descriptions-item>
+          <el-descriptions-item label="出险信息">{{
+            orderInfo.extendInfo.accidentInfoStr
+          }}</el-descriptions-item>
+          <el-descriptions-item label="商业险折扣比例">{{
+            orderInfo.extendInfo.nirrratio
+          }}</el-descriptions-item>
+          <el-descriptions-item label="交强险折扣比例">{{
+            orderInfo.extendInfo.nirrratioCI
+          }}</el-descriptions-item>
+          <el-descriptions-item label="自主定价系数">{{
+            orderInfo.extendInfo.pricingAdjustValue
+          }}</el-descriptions-item>
           <el-descriptions-item label="业务员交强险销售费用浮动率">
-            {{ orderInfo.extendInfo.jqFeeSaleChangeRateA4
-            }}
+            {{ orderInfo.extendInfo.jqFeeSaleChangeRateA4 }}
           </el-descriptions-item>
-          <el-descriptions-item label="交强深度定价分档">{{ orderInfo.extendInfo.deepPriceGradeCI }}</el-descriptions-item>
+          <el-descriptions-item label="交强深度定价分档">{{
+            orderInfo.extendInfo.deepPriceGradeCI
+          }}</el-descriptions-item>
           <el-descriptions-item label="业务员商业险销售费用浮动率">
-            {{ orderInfo.extendInfo.syFeeSaleChangeRateA4
-            }}
+            {{ orderInfo.extendInfo.syFeeSaleChangeRateA4 }}
           </el-descriptions-item>
-          <el-descriptions-item label="商业深度定价分档">{{ orderInfo.extendInfo.deepPriceGradeBI }}</el-descriptions-item>
+          <el-descriptions-item label="商业深度定价分档">{{
+            orderInfo.extendInfo.deepPriceGradeBI
+          }}</el-descriptions-item>
         </el-descriptions>
       </div>
       <div class="Enclosure" v-if="orderInfo">
         <div class="home flex j-s a-c back">
           <div class="flex j-s a-c color">
-            <img src="../../../../../src/icon/company.png" alt class="icon-img" />
-            <span style="margin-left:10px;">车辆信息</span>
+            <img
+              src="../../../../../src/icon/company.png"
+              alt
+              class="icon-img"
+            />
+            <span style="margin-left: 10px">车辆信息</span>
           </div>
         </div>
         <el-descriptions size="small">
-          <el-descriptions-item label="车牌号">{{ orderInfo.carinfo.licenseNo }}</el-descriptions-item>
-          <el-descriptions-item label="车辆识别代码">{{ orderInfo.carinfo.vinNo }}</el-descriptions-item>
-          <el-descriptions-item label="品牌型号">{{ orderInfo.carinfo.modelcname }}</el-descriptions-item>
-          <el-descriptions-item label="发动机号">{{ orderInfo.carinfo.engineNo }}</el-descriptions-item>
-          <el-descriptions-item label="年款">{{ orderInfo.carinfo.caryear }}</el-descriptions-item>
-          <el-descriptions-item label="座位数">{{ orderInfo.carinfo.seatCount }}</el-descriptions-item>
-          <el-descriptions-item label="新车购置价">{{ orderInfo.carinfo.purchasePrice }}</el-descriptions-item>
+          <el-descriptions-item label="车牌号">{{
+            orderInfo.carinfo.licenseNo
+          }}</el-descriptions-item>
+          <el-descriptions-item label="车辆识别代码">{{
+            orderInfo.carinfo.vinNo
+          }}</el-descriptions-item>
+          <el-descriptions-item label="品牌型号">{{
+            orderInfo.carinfo.modelcname
+          }}</el-descriptions-item>
+          <el-descriptions-item label="发动机号">{{
+            orderInfo.carinfo.engineNo
+          }}</el-descriptions-item>
+          <el-descriptions-item label="年款">{{
+            orderInfo.carinfo.caryear
+          }}</el-descriptions-item>
+          <el-descriptions-item label="座位数">{{
+            orderInfo.carinfo.seatCount
+          }}</el-descriptions-item>
+          <el-descriptions-item label="新车购置价">{{
+            orderInfo.carinfo.purchasePrice
+          }}</el-descriptions-item>
           <el-descriptions-item label="使用性质">
-            {{ orderInfo.carinfo.carnature == '01' ? '营业' : ''
-            }}
+            {{ orderInfo.carinfo.carnature == "01" ? "营业" : "" }}
           </el-descriptions-item>
-          <el-descriptions-item label="注册日期">{{ orderInfo.carinfo.registerDate }}</el-descriptions-item>
-          <el-descriptions-item label="发证日期">{{ orderInfo.carinfo.issueDate }}</el-descriptions-item>
+          <el-descriptions-item label="注册日期">{{
+            orderInfo.carinfo.registerDate
+          }}</el-descriptions-item>
+          <el-descriptions-item label="发证日期">{{
+            orderInfo.carinfo.issueDate
+          }}</el-descriptions-item>
           <el-descriptions-item label="是否过户">
-            {{ orderInfo.carinfo.transferFlag == true ? '是' : '否'
-            }}
+            {{ orderInfo.carinfo.transferFlag == true ? "是" : "否" }}
           </el-descriptions-item>
         </el-descriptions>
       </div>
       <div class="Enclosure" v-if="orderInfo">
         <div class="home flex j-s a-c back">
           <div class="flex j-s a-c color">
-            <img src="../../../../../src/icon/company.png" alt class="icon-img" />
-            <span style="margin-left:10px;">车主信息</span>
+            <img
+              src="../../../../../src/icon/company.png"
+              alt
+              class="icon-img"
+            />
+            <span style="margin-left: 10px">车主信息</span>
           </div>
         </div>
         <el-descriptions size="small">
-          <el-descriptions-item label="车主姓名">{{ orderInfo.ownerinfo.name }}</el-descriptions-item>
-          <el-descriptions-item label="证件类型"> {{ orderInfo.ownerinfo.identifyType}}</el-descriptions-item>
-          <el-descriptions-item label="身份证号">{{ orderInfo.ownerinfo.identifyNumber }}</el-descriptions-item>
-          <el-descriptions-item label="手机号">{{ orderInfo.ownerinfo.mobile }}</el-descriptions-item>
-          <el-descriptions-item label="地址">{{ orderInfo.ownerinfo.addr }}</el-descriptions-item>
-          <el-descriptions-item label="电子邮箱">{{ orderInfo.ownerinfo.email }}</el-descriptions-item>
+          <el-descriptions-item label="车主姓名">{{
+            orderInfo.ownerinfo.name
+          }}</el-descriptions-item>
+          <el-descriptions-item label="证件类型">
+            {{ orderInfo.ownerinfo.identifyType }}</el-descriptions-item
+          >
+          <el-descriptions-item label="身份证号">{{
+            orderInfo.ownerinfo.identifyNumber
+          }}</el-descriptions-item>
+          <el-descriptions-item label="手机号">{{
+            orderInfo.ownerinfo.mobile
+          }}</el-descriptions-item>
+          <el-descriptions-item label="地址">{{
+            orderInfo.ownerinfo.addr
+          }}</el-descriptions-item>
+          <el-descriptions-item label="电子邮箱">{{
+            orderInfo.ownerinfo.email
+          }}</el-descriptions-item>
         </el-descriptions>
       </div>
       <div class="Enclosure" v-if="orderInfo">
         <div class="home flex j-s a-c back">
           <div class="flex j-s a-c color">
-            <img src="../../../../../src/icon/company.png" alt class="icon-img" />
-            <span style="margin-left:10px;">投保人信息</span>
+            <img
+              src="../../../../../src/icon/company.png"
+              alt
+              class="icon-img"
+            />
+            <span style="margin-left: 10px">投保人信息</span>
           </div>
         </div>
         <el-descriptions size="small">
-          <el-descriptions-item label="投保人姓名">{{ orderInfo.applyinfo.name }}</el-descriptions-item>
-          <el-descriptions-item label="证件类型"> {{ orderInfo.applyinfo.identifyType}}</el-descriptions-item>
-          <el-descriptions-item label="身份证号">{{ orderInfo.applyinfo.identifyNumber }}</el-descriptions-item>
-          <el-descriptions-item label="手机号">{{ orderInfo.applyinfo.mobile }}</el-descriptions-item>
-          <el-descriptions-item label="地址">{{ orderInfo.applyinfo.addr }}</el-descriptions-item>
-          <el-descriptions-item label="电子邮箱">{{ orderInfo.applyinfo.email }}</el-descriptions-item>
+          <el-descriptions-item label="投保人姓名">{{
+            orderInfo.applyinfo.name
+          }}</el-descriptions-item>
+          <el-descriptions-item label="证件类型">
+            {{ orderInfo.applyinfo.identifyType }}</el-descriptions-item
+          >
+          <el-descriptions-item label="身份证号">{{
+            orderInfo.applyinfo.identifyNumber
+          }}</el-descriptions-item>
+          <el-descriptions-item label="手机号">{{
+            orderInfo.applyinfo.mobile
+          }}</el-descriptions-item>
+          <el-descriptions-item label="地址">{{
+            orderInfo.applyinfo.addr
+          }}</el-descriptions-item>
+          <el-descriptions-item label="电子邮箱">{{
+            orderInfo.applyinfo.email
+          }}</el-descriptions-item>
         </el-descriptions>
       </div>
       <div class="Enclosure" v-if="orderInfo">
         <div class="home flex j-s a-c back">
           <div class="flex j-s a-c color">
-            <img src="../../../../../src/icon/company.png" alt class="icon-img" />
-            <span style="margin-left:10px;">被保人信息</span>
+            <img
+              src="../../../../../src/icon/company.png"
+              alt
+              class="icon-img"
+            />
+            <span style="margin-left: 10px">被保人信息</span>
           </div>
         </div>
         <el-descriptions size="small">
-          <el-descriptions-item label="被保人姓名">{{ orderInfo.insureinfo.name }}</el-descriptions-item>
-          <el-descriptions-item label="证件类型"> {{ orderInfo.insureinfo.identifyType}}</el-descriptions-item>
-          <el-descriptions-item label="身份证号">{{ orderInfo.insureinfo.identifyNumber }}</el-descriptions-item>
-          <el-descriptions-item label="手机号">{{ orderInfo.insureinfo.mobile }}</el-descriptions-item>
-          <el-descriptions-item label="地址">{{ orderInfo.insureinfo.addr }}</el-descriptions-item>
-          <el-descriptions-item label="电子邮箱">{{ orderInfo.insureinfo.email }}</el-descriptions-item>
+          <el-descriptions-item label="被保人姓名">{{
+            orderInfo.insureinfo.name
+          }}</el-descriptions-item>
+          <el-descriptions-item label="证件类型">
+            {{ orderInfo.insureinfo.identifyType }}</el-descriptions-item
+          >
+          <el-descriptions-item label="身份证号">{{
+            orderInfo.insureinfo.identifyNumber
+          }}</el-descriptions-item>
+          <el-descriptions-item label="手机号">{{
+            orderInfo.insureinfo.mobile
+          }}</el-descriptions-item>
+          <el-descriptions-item label="地址">{{
+            orderInfo.insureinfo.addr
+          }}</el-descriptions-item>
+          <el-descriptions-item label="电子邮箱">{{
+            orderInfo.insureinfo.email
+          }}</el-descriptions-item>
         </el-descriptions>
       </div>
 
       <div class="Enclosure" v-if="orderInfo">
         <div class="home flex j-s a-c back">
           <div class="flex j-s a-c color">
-            <img src="../../../../../src/icon/company.png" alt class="icon-img" />
-            <span style="margin-left:10px;">险种信息</span>
+            <img
+              src="../../../../../src/icon/company.png"
+              alt
+              class="icon-img"
+            />
+            <span style="margin-left: 10px">险种信息</span>
           </div>
         </div>
-        <div style="font-size:12px">
-          <div class="headers kindinfocss" style="justify-content: space-around">
+        <div style="font-size: 12px">
+          <div
+            class="headers kindinfocss"
+            style="justify-content: space-around"
+          >
             <span>商业险险别</span>
             <span>保额(元)</span>
             <span>保费(元)</span>
           </div>
-          <div class="headers kindinfocss" style="color:rgb(255, 118, 18); justify-content:space-around;"
-            v-for="(kindinfoitem, kindinfoindex) in orderInfo.kindinfo" :key="kindinfoindex">
+          <div
+            class="headers kindinfocss"
+            style="color: rgb(255, 118, 18); justify-content: space-around"
+            v-for="(kindinfoitem, kindinfoindex) in orderInfo.kindinfo"
+            :key="kindinfoindex"
+          >
             <template v-if="kindinfoitem.coveragePremium">
               <span>{{ kindinfoitem.kindName }}</span>
-              <span v-if="['D4', 'SY_FJ_YBW2'].includes(kindinfoitem.kindCode)">{{ kindinfoitem.unitAmount }}</span>
-              <span v-else-if="['MJ1', 'MJ2', 'MJ3', 'MJ4'].includes(kindinfoitem.kindCode)">
-                {{
-                  kindinfoitem.deductibleRate
-                }}
+              <span
+                v-if="['D4', 'SY_FJ_YBW2'].includes(kindinfoitem.kindCode)"
+                >{{ kindinfoitem.unitAmount }}</span
+              >
+              <span
+                v-else-if="
+                  ['MJ1', 'MJ2', 'MJ3', 'MJ4'].includes(kindinfoitem.kindCode)
+                "
+              >
+                {{ kindinfoitem.deductibleRate }}
               </span>
               <span v-else>{{ kindinfoitem.amount }}</span>
               <span>{{ kindinfoitem.coveragePremium }}</span>
@@ -329,24 +442,40 @@
           </div>
         </div>
       </div>
-      <div class="Enclosure" v-if="orderInfo.accidentInfo&&orderInfo.accidentInfo.length>0">
+      <div
+        class="Enclosure"
+        v-if="orderInfo.accidentInfo && orderInfo.accidentInfo.length > 0"
+      >
         <div class="home flex j-s a-c back">
           <div class="flex j-s a-c color">
-            <img src="../../../../../src/icon/company.png" alt class="icon-img" />
-            <span style="margin-left:10px;">驾意险</span>
+            <img
+              src="../../../../../src/icon/company.png"
+              alt
+              class="icon-img"
+            />
+            <span style="margin-left: 10px">驾意险</span>
           </div>
         </div>
-        <div style="font-size:12px"  >
-          <div class="jyxStyle" style=" font-weight: bold;color: #333;">
-            <span style="width:50%;margin-left:50px">产品</span>
-            <span style="width:20%">份数</span>
-            <span style="width:20%">价格</span>
+        <div style="font-size: 12px">
+          <div class="jyxStyle" style="font-weight: bold; color: #333">
+            <span style="width: 50%; margin-left: 50px">产品</span>
+            <span style="width: 20%">份数</span>
+            <span style="width: 20%">价格</span>
           </div>
-          <div  v-for="(kindinfoitem, kindinfoindex) in orderInfo.accidentInfo" :key="kindinfoindex">
-            <div style="margin-top:20px" class="jyxStyle">
-              <span style="width:50%;margin-left:50px">{{ kindinfoitem.projectName }}</span>
-              <span style="width:20%">{{ kindinfoitem.quantity ?kindinfoitem.quantity:'1' }}</span>
-              <span style="width:20%">{{ kindinfoitem.actualPremium}}/份</span>
+          <div
+            v-for="(kindinfoitem, kindinfoindex) in orderInfo.accidentInfo"
+            :key="kindinfoindex"
+          >
+            <div style="margin-top: 20px" class="jyxStyle">
+              <span style="width: 50%; margin-left: 50px">{{
+                kindinfoitem.projectName
+              }}</span>
+              <span style="width: 20%">{{
+                kindinfoitem.quantity ? kindinfoitem.quantity : "1"
+              }}</span>
+              <span style="width: 20%"
+                >{{ kindinfoitem.actualPremium }}/份</span
+              >
             </div>
           </div>
         </div>
@@ -354,18 +483,29 @@
       <div class="Enclosure" v-if="orderInfo">
         <div class="home flex j-s a-c back">
           <div class="flex j-s a-c color">
-            <img src="../../../../../src/icon/company.png" alt class="icon-img" />
-            <span style="margin-left:10px;">欠税明细</span>
+            <img
+              src="../../../../../src/icon/company.png"
+              alt
+              class="icon-img"
+            />
+            <span style="margin-left: 10px">欠税明细</span>
           </div>
         </div>
-        <div style="font-size:12px">
-          <div class="headers kindinfocss" style="justify-content: space-around;">
+        <div style="font-size: 12px">
+          <div
+            class="headers kindinfocss"
+            style="justify-content: space-around"
+          >
             <span>日期</span>
             <span>欠费(元)</span>
             <span>滞纳金(元)</span>
           </div>
-          <div class="headers kindinfocss" style="color:rgb(255, 118, 18); justify-content:space-around;"
-            v-for="(taxArrearsitem, taxArrearsindex) in orderInfo.taxArrears" :key="taxArrearsindex">
+          <div
+            class="headers kindinfocss"
+            style="color: rgb(255, 118, 18); justify-content: space-around"
+            v-for="(taxArrearsitem, taxArrearsindex) in orderInfo.taxArrears"
+            :key="taxArrearsindex"
+          >
             <span>{{ taxArrearsitem.years }}</span>
             <span>{{ taxArrearsitem.taxDefault }}</span>
             <span>{{ taxArrearsitem.lateFee }}</span>
@@ -375,19 +515,41 @@
       <div class="Enclosure" v-if="orderInfo">
         <div class="home flex j-s a-c back">
           <div class="flex j-s a-c color">
-            <img src="../../../../../src/icon/company.png" alt class="icon-img" />
-            <span style="margin-left:10px;">投保单号</span>
+            <img
+              src="../../../../../src/icon/company.png"
+              alt
+              class="icon-img"
+            />
+            <span style="margin-left: 10px">投保单号</span>
           </div>
         </div>
         <el-descriptions size="small" :column="2">
-          <el-descriptions-item label="交强险投保单号">{{ orderInfo.jqapplyno }}</el-descriptions-item>
-          <el-descriptions-item label="商业险投保单号">{{ orderInfo.syapplyno }}</el-descriptions-item>
-          <el-descriptions-item label="交强险保单号">{{ orderInfo.jqpolicyno }}</el-descriptions-item>
-          <el-descriptions-item label="商业险保单号">{{ orderInfo.sypolicyno }}</el-descriptions-item>
+          <el-descriptions-item label="交强险投保单号">{{
+            orderInfo.jqapplyno
+          }}</el-descriptions-item>
+          <el-descriptions-item label="商业险投保单号">{{
+            orderInfo.syapplyno
+          }}</el-descriptions-item>
+          <el-descriptions-item label="交强险保单号">{{
+            orderInfo.jqpolicyno
+          }}</el-descriptions-item>
+          <el-descriptions-item label="商业险保单号">{{
+            orderInfo.sypolicyno
+          }}</el-descriptions-item>
         </el-descriptions>
       </div>
-      <span slot="footer" class="dialog-footer" style="display: flex; justify-content: center;align-items: center;">
-        <el-button size="small" type="primary" style="background-color: #DE504C; border: 1px solid #DE504C;" @click="quotedetailsdialogVisible = false">关 闭</el-button>
+      <span
+        slot="footer"
+        class="dialog-footer"
+        style="display: flex; justify-content: center; align-items: center"
+      >
+        <el-button
+          size="small"
+          type="primary"
+          style="background-color: #de504c; border: 1px solid #de504c"
+          @click="quotedetailsdialogVisible = false"
+          >关 闭</el-button
+        >
       </span>
     </el-dialog>
   </div>
@@ -409,7 +571,7 @@ export default {
       mdcell: 12,
       smcell: 24,
       xscell: 24,
-      quotedetailsdialogVisible:false,
+      quotedetailsdialogVisible: false,
       orderInfo: {
         //选中的订单
         ownerinfo: {},
@@ -419,7 +581,7 @@ export default {
         kindinfo: [],
         riskinfo: [],
         ownerinfo: {},
-        extendInfo:{}
+        extendInfo: {},
       },
       pageRequest: {
         //查询的默认条件
@@ -434,10 +596,10 @@ export default {
       companyList: [],
       institutionOptions: [],
       dialogVisible: false,
-      dialogVisible11:false,
-      monthvalue:"",
+      dialogVisible11: false,
+      monthvalue: "",
       docOrderid: "",
-      plyNoList:[],
+      plyNoList: [],
       // 右侧列表查询数据Start
       pageResult: [],
       columns: [
@@ -473,12 +635,12 @@ export default {
         companyId: [
           { required: true, message: "保险公司必传", trigger: "change" },
         ],
-        deptId: [
-          { required: true, message: "机构必传", trigger: "change" },
+        deptId: [{ required: true, message: "机构必传", trigger: "change" }],
+        startDate: [
+          { required: true, message: "日期不能为空", trigger: "change" },
         ],
-        startDate: [{ required: true, message: "日期不能为空", trigger: "change" }],
       },
-      options:[],
+      options: [],
     };
   },
   created() {
@@ -489,9 +651,9 @@ export default {
     // this.companyquery(); //公司数据
     this.deptQuery(); //机构数据
     // this.findLeftInsTreeFun()
-    this.$api.insCompany.findLeftInsTree({name:'',type:1}).then((res) => {
-        this.options=res.data
-      })
+    this.$api.insCompany.findLeftInsTree({ name: "", type: 1 }).then((res) => {
+      this.options = res.data;
+    });
   },
   mounted() {},
   methods: {
@@ -504,20 +666,20 @@ export default {
     //   this.findLeftInsTreeFun(val)
     // },
     handleTableSettled(ids) {
-      this.plyNoList=ids;
-      this.dialogVisible11=true;
+      this.plyNoList = ids;
+      this.dialogVisible11 = true;
     },
-    jiesuanminrt(){
-      let params={
-        companyId:this.pageRequest.companyId,
-        deptId:this.pageRequest.deptId,
-        plyNoList:this.plyNoList,
-        settleMonth:this.monthvalue
-      }
+    jiesuanminrt() {
+      let params = {
+        companyId: this.pageRequest.companyId,
+        deptId: this.pageRequest.deptId,
+        plyNoList: this.plyNoList,
+        settleMonth: this.monthvalue,
+      };
       this.$api.settlement.docGenerate(params).then((res) => {
         if (res.code == "200") {
           this.docOrderid = res.msg;
-          this.dialogVisible11=false;
+          this.dialogVisible11 = false;
           this.dialogVisible = true;
           this.onSubmit();
         }
@@ -527,27 +689,33 @@ export default {
     onSubmit(formName) {
       this.$refs[formName].validate((valid) => {
         if (valid) {
-          this.pageRequest.companyId=this.pageRequest.companyId[0]
+          let companyId = Array.isArray(this.pageRequest.companyId)
+            ? this.pageRequest.companyId[0]
+            : "";
+          // this.pageRequest.companyId=this.pageRequest.companyId[0]
           this.$api.settlement
-        .iscompanyTosettledQuery(this.pageRequest)
-        .then((res) => {
-          if (res.code == "200") {
-            this.pageResult = res.data;
-            if(res.data.content.length<1){
-              this.$message({
-              message: "无数据",
-              type: "warning",
-            });
-            }
-          } else {
-            this.$message({
-              message: res.msg,
-              type: "error",
+            .iscompanyTosettledQuery({
+              ...this.pageRequest,
+              companyId: companyId,
+            })
+            .then((res) => {
+              if (res.code == "200") {
+                this.pageResult = res.data;
+                if (res.data.content.length < 1) {
+                  this.$message({
+                    message: "无数据",
+                    type: "warning",
+                  });
+                }
+              } else {
+                this.$message({
+                  message: res.msg,
+                  type: "error",
+                });
+              }
             });
-          }
-        });
         }
-      })
+      });
     },
     //保险公司查询
     companyquery() {
@@ -643,11 +811,10 @@ export default {
       that.$api.settlement
         .iscompanyTosettledQuery(that.pageRequest)
         .then((res) => {
-          if(res.code==200){
+          if (res.code == 200) {
             that.pageResult = res.data;
-          }
-          else{
-            this.$message.error(res.msg)
+          } else {
+            this.$message.error(res.msg);
           }
         })
         .then(data != null ? data.callback : "");
@@ -655,7 +822,7 @@ export default {
     exDetails({ row, index }) {
       let params = {
         orderNo: row.orderno,
-      }
+      };
       this.$api.task.feeDetail(params).then((res) => {
         if (res.code == 200) {
           res.data.kindinfo.map((ele, index) => {
@@ -678,14 +845,12 @@ export default {
             }
             return ele;
           });
-          this.orderInfo = res.data
+          this.orderInfo = res.data;
           this.quotedetailsdialogVisible = true;
         } else {
           this.$message.error("订单获取失败");
         }
-
       });
-
     },
     transformTime(date) {
       var d = new Date(date);
@@ -725,16 +890,11 @@ export default {
       return datetime;
     },
     toChinesNum(num) {
-      let changeNum = [
-        "零", "1", "2", "3", "4", "5", "6", "7", "8", "9"
-      ];
+      let changeNum = ["零", "1", "2", "3", "4", "5", "6", "7", "8", "9"];
       let unit = ["", "0", "00", "000", "0000"];
       num = parseInt(num);
-      let getWan = temp => {
-        let strArr = temp
-          .toString()
-          .split("")
-          .reverse();
+      let getWan = (temp) => {
+        let strArr = temp.toString().split("").reverse();
         let newNum = "";
         let newArr = [];
         strArr.forEach((item, index) => {
@@ -837,7 +997,7 @@ export default {
   justify-content: center;
 }
 
-.code_title>span {
+.code_title > span {
   font-size: 22px;
   color: #000;
   font-weight: bold;
@@ -855,7 +1015,7 @@ export default {
   border-bottom: 6px dotted #fdcb08;
 }
 
-.ORcode>div {
+.ORcode > div {
   width: 180px;
   height: 180px;
   border: 1px solid #000;
@@ -870,7 +1030,7 @@ export default {
   border-bottom: 1px solid #f2f2f2;
 }
 
-.ORtitle>div {
+.ORtitle > div {
   width: 100%;
   margin: 10px 0;
   font-weight: bold;
@@ -879,19 +1039,18 @@ export default {
   align-items: center;
 }
 
-.ORtitle>div>span:nth-child(1) {
+.ORtitle > div > span:nth-child(1) {
   color: #979797;
   text-align: end;
   width: 150px;
 }
 
-.ORtitle>div>span:nth-child(2) {
+.ORtitle > div > span:nth-child(2) {
   color: #000;
   margin-left: 10px;
 }
 </style>
 <style scoped>
-
 #qqq {
   background-color: #111;
   width: 300px;
@@ -968,7 +1127,7 @@ export default {
   border: 1px solid #dddddd;
 }
 
-.rightContainer .bodyTitle>label {
+.rightContainer .bodyTitle > label {
   margin: 0px 15px;
   font-weight: bold;
 }
@@ -984,8 +1143,6 @@ export default {
   margin-bottom: 15px;
 }
 
-
-
 .body .el-row .el-col label {
   text-align: right;
   width: 80px;
@@ -1101,7 +1258,7 @@ export default {
   width: 600px;
 }
 
-.demo-table-expand-time>div {
+.demo-table-expand-time > div {
   margin: 0 10px;
 }
 .icon-img {
@@ -1131,15 +1288,15 @@ export default {
   color: #333;
 }
 /* 内容待定 */
-.headers_Custom >div{
+.headers_Custom > div {
   padding: 20px 40px;
   font-size: 16px;
 }
-.headers_Custom >div>span {
+.headers_Custom > div > span {
   color: rgb(226, 118, 10);
 }
 
-  .back {
+.back {
   color: #303133;
   font-weight: 700;
 }
@@ -1183,13 +1340,13 @@ export default {
   color: #fff;
 }
 
-.bjdCarSum >div{
-    width: 100%;
-    padding: 15px 20px;
-    box-sizing: border-box;
-    font-weight: bold;
-    color: #000;
-    border-bottom: 1px solid #f2f2f2;
+.bjdCarSum > div {
+  width: 100%;
+  padding: 15px 20px;
+  box-sizing: border-box;
+  font-weight: bold;
+  color: #000;
+  border-bottom: 1px solid #f2f2f2;
 }
 
 .bjdCarMessage1 {
@@ -1200,33 +1357,31 @@ export default {
   display: flex;
   align-items: center;
   color: #000;
-
-
 }
-.bjdCarMessage1 > .f-c >span:nth-child(1){
-        font-size: 18px;
-        font-weight: bold;
-  }
-.bjdCarMessage1>img,
-.bjdfooter>img {
+.bjdCarMessage1 > .f-c > span:nth-child(1) {
+  font-size: 18px;
+  font-weight: bold;
+}
+.bjdCarMessage1 > img,
+.bjdfooter > img {
   margin-right: 30px;
 }
 
-.bjdCarMessage1 .f-c>span:nth-child(2),
-.bjdCarMessage1 .f-c>span:nth-child(3) {
+.bjdCarMessage1 .f-c > span:nth-child(2),
+.bjdCarMessage1 .f-c > span:nth-child(3) {
   font-size: 12px;
   margin-top: 5px;
 }
 
-.bjdCarMessage2_car >span:nth-child(1) {
-      color: #000;
-      font-weight: bold;
+.bjdCarMessage2_car > span:nth-child(1) {
+  color: #000;
+  font-weight: bold;
 }
-.bjdCarMessage2_car >span:nth-child(2) {
+.bjdCarMessage2_car > span:nth-child(2) {
   color: #999;
 }
-.bjdCarMessage2 >ul>li {
-      margin: 20px 0;
+.bjdCarMessage2 > ul > li {
+  margin: 20px 0;
 }
 .Risk {
   width: 100%;
@@ -1241,65 +1396,64 @@ export default {
   width: 100%;
   height: 40px;
 }
-.Risk_title>div {
-    background: rgb(199, 20, 45);
-    color: rgb(255, 255, 255);
-    height: 100%;
-    font-weight: 500;
-    width: 33.3%;
-    padding: 10px 20px;
-    box-sizing: border-box;
-    border: #fff solid 1px;
-    display: flex;
-    justify-content: center;
-    align-items: center;
-    border-bottom: none;
-
+.Risk_title > div {
+  background: rgb(199, 20, 45);
+  color: rgb(255, 255, 255);
+  height: 100%;
+  font-weight: 500;
+  width: 33.3%;
+  padding: 10px 20px;
+  box-sizing: border-box;
+  border: #fff solid 1px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  border-bottom: none;
 }
 
-.Risk_title>div:nth-child(2) {
+.Risk_title > div:nth-child(2) {
   border-left: none;
-      border-right: none;
+  border-right: none;
 }
 
 .Risk_data {
   width: 100%;
   height: 40px;
 }
-.Risk_data >div {
-    background: #fbf6f7;
-    color: rgb(51, 51, 51);
-    height: 100%;
-    font-weight: 500;
-    width: 33.3%;
-    padding: 10px 20px;
-    box-sizing: border-box;
-    border: #fff solid 1px;
-    display: flex;
-    justify-content: center;
-    align-items: center;
-    border-bottom: none;
-  }
-.Risk_data >div :nth-child(2) {
+.Risk_data > div {
+  background: #fbf6f7;
+  color: rgb(51, 51, 51);
+  height: 100%;
+  font-weight: 500;
+  width: 33.3%;
+  padding: 10px 20px;
+  box-sizing: border-box;
+  border: #fff solid 1px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  border-bottom: none;
+}
+.Risk_data > div :nth-child(2) {
   border-left: none;
-      border-right: none;
+  border-right: none;
 }
-.Risk_title>div :nth-child(3) {
+.Risk_title > div :nth-child(3) {
   border-top-right-radius: 10px;
 }
-.jyxStyle>span{
+.jyxStyle > span {
   display: inline-block;
   text-align: center;
 }
-.FeeEnclosure  /deep/ table {
+.FeeEnclosure /deep/ table {
   width: 100% !important;
 }
 
-.FeeEnclosure  /deep/ .cell {
+.FeeEnclosure /deep/ .cell {
   text-align: center;
 }
 
-.FeeEnclosure /deep/ .el-table__empty-block{
+.FeeEnclosure /deep/ .el-table__empty-block {
   width: 100% !important;
 }
 </style>

Plik diff jest za duży
+ 565 - 363
src/views/FinancialManagement/CarInsurance/PlatformSettlement/NonVehicleBalance.vue


+ 83 - 71
src/views/FinancialManagement/CarInsurance/PlatformSettlement/NonVehicleBalanceno.vue

@@ -9,43 +9,55 @@
       @findPage="findPage"
       @handleSearchList="handleSearchList"
       :pagination="pageData"
+      @handleResetForm="handleResetForm"
     >
-    <template slot="data">
-      <yearMonthYay ref="yearMonthYay" @getYearData="getYearData"  @getMonthData="getMonthData"  @getDayData="getDayData"></yearMonthYay>
-    </template>
-    <template slot="dockingPerson">
-      <el-select v-model="formData.dockingPerson" filterable clearable  placeholder="请选择" size="small">
-      <el-option
-        v-for="item in dockingPersonOption"
-        :key="item.docking_person"
-        :label="item.docking_person"
-        :value="item.docking_person">
-      </el-option>
-    </el-select>
-    </template>
+      <template slot="data">
+        <yearMonthYay
+          ref="yearMonthYay"
+          @getYearData="getYearData"
+          @getMonthData="getMonthData"
+          @getDayData="getDayData"
+        ></yearMonthYay>
+      </template>
+      <template slot="dockingPerson">
+        <el-select
+          v-model="formData.dockingPerson"
+          filterable
+          clearable
+          placeholder="请选择"
+          size="small"
+        >
+          <el-option
+            v-for="item in dockingPersonOption"
+            :key="item.docking_person"
+            :label="item.docking_person"
+            :value="item.docking_person"
+          >
+          </el-option>
+        </el-select>
+      </template>
     </templateTable>
   </div>
 </template>
   <script>
-import KtCommonTable from "@/views/Core/KtCommonTable.vue";//表格组件
-import templateTable from '@/components/TemplateTable/index.vue'
-import { mapState } from 'vuex'
-import yearMonthYay from './yearMonthYay.vue'
+import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
+import templateTable from "@/components/TemplateTable/index.vue";
+import { mapState } from "vuex";
+import yearMonthYay from "./yearMonthYay.vue";
 
 export default {
   name: "baosi",
-  components: { KtCommonTable,templateTable ,yearMonthYay},
-  created() {
-  },
+  components: { KtCommonTable, templateTable, yearMonthYay },
+  created() {},
   computed: {
     ...mapState({
-      perms: state =>state.user.perms
-    })
+      perms: (state) => state.user.perms,
+    }),
   },
   data() {
     return {
-      searchData:{},
-        formList:[
+      searchData: {},
+      formList: [
         {
           label: "保险公司",
           prop: "companyName",
@@ -66,45 +78,45 @@ export default {
           name: "data",
           type: "slot",
         },
-    ],
-    tableConfig:{
-      columns: [
+      ],
+      tableConfig: {
+        columns: [
           {
             prop: "companyName",
             label: "保险公司名称",
-            type: "text"
+            type: "text",
           },
           {
             prop: "partnerCompaniesName",
             label: "合作公司名称",
-            type: "text"
+            type: "text",
           },
           {
             prop: "dockingPerson",
             label: "对接人",
-            type: "text"
+            type: "text",
           },
           {
             prop: "totalFeevalue",
             label: "未结算总额",
-            type: "text"
+            type: "text",
           },
           {
             prop: "commissionFeevalue",
             label: "未结算手续费",
-            type: "text"
+            type: "text",
           },
           {
             prop: "otherFeevalue",
             label: "未结算跟单费",
-            type: "text"
+            type: "text",
           },
         ],
-        loading:true,
-        isPaginationShow:true,
+        loading: true,
+        isPaginationShow: true,
         showSummary: true,
         isShowIndex: true,
-        tableHeight: 'auto',
+        tableHeight: "auto",
         // optBtns:[
         // {
         //     type:'primary',
@@ -112,40 +124,43 @@ export default {
         //     click:(row, index) => {return this.balanceFun(row)},
         // }
         // ]
-    },
-    tableData: [],
-    formData:{},
-      pageData:{
+      },
+      tableData: [],
+      formData: {},
+      pageData: {
         pageNum: 1,
         pageSize: 20,
-        agreementType: '1',
-        handlingFeesStatus:'0'
+        agreementType: "1",
+        handlingFeesStatus: "0",
       },
-      dockingPersonOption:[]
+      dockingPersonOption: [],
     };
   },
-  created(){
+  created() {
     this.findPage();
-    this.$api.task
-        .getDockingPersonList()
-        .then(res => {
-          if (res.code==200) {
-              this.dockingPersonOption=res.data
-          }
-          else{
-            this.$message.error(res.msg)
-          }
-        });
+    this.$api.task.getDockingPersonList().then((res) => {
+      if (res.code == 200) {
+        this.dockingPersonOption = res.data;
+      } else {
+        this.$message.error(res.msg);
+      }
+    });
   },
   methods: {
-    getYearData(val){
-      this.formData.year=val
+    //重置表单查询信息
+    handleResetForm() {
+      this.formData = {};
+      this.pageData.dockingPerson = [];
+      this.$refs.yearMonthYay.clear();
+    },
+    getYearData(val) {
+      this.formData.year = val;
     },
-    getMonthData(val){
-      this.formData.month=val
+    getMonthData(val) {
+      this.formData.month = val;
     },
-    getDayData(val){
-      this.formData.day=val
+    getDayData(val) {
+      this.formData.day = val;
     },
     // 查询
     handleSearchList(val) {
@@ -155,8 +170,8 @@ export default {
     findPage(data) {
       this.tableConfig.loading = true;
       this.$api.task
-        .totalPinAmount({...this.pageData,...data,...this.formData} )
-        .then(res => {
+        .totalPinAmount({ ...this.pageData, ...data, ...this.formData })
+        .then((res) => {
           if (res.data) {
             this.tableData = res.data;
             // this.pageData.pageNum = res.data.pageNum;
@@ -166,11 +181,9 @@ export default {
           }
         });
     },
- 
+
     // 结算
-    balanceFun(row){
-      
-    },
+    balanceFun(row) {},
     tablePageChange(val) {
       this.pageData.pageSize = val;
       this.findPage();
@@ -179,15 +192,14 @@ export default {
       this.pageData.pageNum = val;
       this.findPage();
     },
-  
-  }
+  },
 };
 </script>
     
   <style scoped>
-.InvoicedAndSettled>>>.el-table__body-wrapper {
-    overflow-y: auto !important;
-    height: auto !important;
+.InvoicedAndSettled >>> .el-table__body-wrapper {
+  overflow-y: auto !important;
+  height: auto !important;
 }
 </style>
     

+ 204 - 137
src/views/FinancialManagement/CarInsurance/PlatformSettlement/NonVehicleBalanceyes.vue

@@ -1,138 +1,202 @@
 <template>
   <!--布局容器-->
   <div class="InvoicedAndSettled" style="width: 99%; margin-top: 0px">
-    <templateTable :formList="formList" :tableConfig="tableConfig" :data="tableData" @findPage="findPage"
-      @handleSearchList="handleSearchList" :pagination="pageData">
+    <templateTable
+      :formList="formList"
+      :tableConfig="tableConfig"
+      :data="tableData"
+      @findPage="findPage"
+      @handleSearchList="handleSearchList"
+      :pagination="pageData"
+      @handleResetForm="handleResetForm"
+    >
       <template slot="data">
-        <yearMonthYay ref="yearMonthYay" @getYearData="getYearData" @getMonthData="getMonthData" @getDayData="getDayData">
+        <yearMonthYay
+          ref="yearMonthYay"
+          @getYearData="getYearData"
+          @getMonthData="getMonthData"
+          @getDayData="getDayData"
+        >
         </yearMonthYay>
       </template>
       <template slot="dockingPerson">
-        <el-select v-model="formData.dockingPerson" filterable clearable placeholder="请选择" size="small">
-          <el-option v-for="item in dockingPersonOption" :key="item.docking_person" :label="item.docking_person"
-            :value="item.docking_person">
+        <el-select
+          v-model="formData.dockingPerson"
+          filterable
+          clearable
+          placeholder="请选择"
+          size="small"
+        >
+          <el-option
+            v-for="item in dockingPersonOption"
+            :key="item.docking_person"
+            :label="item.docking_person"
+            :value="item.docking_person"
+          >
           </el-option>
         </el-select>
       </template>
     </templateTable>
-    <el-dialog title="记录" :visible.sync="dialogVisiblerecord" width="40%" :before-close="handleCloserecord">
-      <templateTable ref="templateTable1" :pagination="pageDatarecord" @getList="getListrecord"
-        :tableConfig="tableConfigDetailrecord" :data="formTableDatarecord" @findPage="findPageDetailrecord">
+    <el-dialog
+      title="记录"
+      :visible.sync="dialogVisiblerecord"
+      width="40%"
+      :before-close="handleCloserecord"
+    >
+      <templateTable
+        ref="templateTable1"
+        :pagination="pageDatarecord"
+        @getList="getListrecord"
+        :tableConfig="tableConfigDetailrecord"
+        :data="formTableDatarecord"
+        @findPage="findPageDetailrecord"
+      >
         <template slot="imageUrl" slot-scope="scope">
-          <img v-if="scope.row.imageUrl" :src="`${process + scope.row.imageUrl}`" class="imageclass" />
+          <img
+            v-if="scope.row.imageUrl"
+            :src="`${process + scope.row.imageUrl}`"
+            class="imageclass"
+          />
         </template>
       </templateTable>
       <span slot="footer" class="dialog-footer">
-        <el-button size="small" @click="dialogVisiblerecord = false">取消</el-button>
+        <el-button size="small" @click="dialogVisiblerecord = false"
+          >取消</el-button
+        >
       </span>
     </el-dialog>
-    <el-dialog title="明细" :visible.sync="dialogVisibleDetail" width="60%" :before-close="handleCloseDetail">
-      <templateTable ref="templateTable2" :pagination="pageDataDetail" @getList="getListDetail"
-        :tableConfig="tableConfigDetailDetail" :data="formTableDatarecord" @findPage="findPageDetailDetail">
+    <el-dialog
+      title="明细"
+      :visible.sync="dialogVisibleDetail"
+      width="60%"
+      :before-close="handleCloseDetail"
+    >
+      <templateTable
+        ref="templateTable2"
+        :pagination="pageDataDetail"
+        @getList="getListDetail"
+        :tableConfig="tableConfigDetailDetail"
+        :data="formTableDatarecord"
+        @findPage="findPageDetailDetail"
+      >
       </templateTable>
       <span slot="footer" class="dialog-footer">
-        <el-button size="small" @click="dialogVisibleDetail = false">取消</el-button>
+        <el-button size="small" @click="dialogVisibleDetail = false"
+          >取消</el-button
+        >
       </span>
     </el-dialog>
-    <el-dialog title="明细" :visible.sync="dialogVisibleRecordDetail" width="50%" :before-close="handleCloseRecordDetail">
-        <templateTable ref="templateTable2" :pagination="pageDataRecordDetail" @getList="getListRecordDetail"
-          :tableConfig="tableConfigDetailDetail" :data="formTableDatarecordDetail" @findPage="findPageRecordDetail">
-        </templateTable>
-        <span slot="footer" class="dialog-footer">
-          <el-button size="small" @click="dialogVisibleRecordDetail = false">取消</el-button>
-        </span>
+    <el-dialog
+      title="明细"
+      :visible.sync="dialogVisibleRecordDetail"
+      width="50%"
+      :before-close="handleCloseRecordDetail"
+    >
+      <templateTable
+        ref="templateTable2"
+        :pagination="pageDataRecordDetail"
+        @getList="getListRecordDetail"
+        :tableConfig="tableConfigDetailDetail"
+        :data="formTableDatarecordDetail"
+        @findPage="findPageRecordDetail"
+      >
+      </templateTable>
+      <span slot="footer" class="dialog-footer">
+        <el-button size="small" @click="dialogVisibleRecordDetail = false"
+          >取消</el-button
+        >
+      </span>
     </el-dialog>
   </div>
 </template>
 <script>
-import KtCommonTable from "@/views/Core/KtCommonTable.vue";//表格组件
-import templateTable from '@/components/TemplateTable/index.vue'
-import { mapState } from 'vuex'
-import yearMonthYay from './yearMonthYay.vue'
+import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
+import templateTable from "@/components/TemplateTable/index.vue";
+import { mapState } from "vuex";
+import yearMonthYay from "./yearMonthYay.vue";
 
 export default {
   name: "baosi",
   components: { KtCommonTable, templateTable, yearMonthYay },
-  created() {
-  },
+  created() {},
   computed: {
     ...mapState({
-      perms: state => state.user.perms
-    })
+      perms: (state) => state.user.perms,
+    }),
   },
   data() {
     return {
-      process:process.env.BASE_URL,
+      process: process.env.BASE_URL,
       tableConfigDetailDetail: {
         columns: [
           {
             prop: "licenseno",
             label: "车牌",
-            type: "text"
+            type: "text",
           },
           {
             prop: "policyno",
             label: "交强保单号",
-            type: "text"
+            type: "text",
           },
           {
             prop: "syPolicyno",
             label: "商业保单号",
-            type: "text"
+            type: "text",
           },
           {
             prop: "noPolicyno",
             label: "非车保单号",
-            type: "text"
+            type: "text",
           },
           {
             prop: "insuredName",
             label: "被保人",
-            type: "text"
+            type: "text",
           },
           {
             prop: "jqPremium",
             label: "交强保费",
-            type: "text"
+            type: "text",
           },
           {
             prop: "syPremium",
             label: "商业保费",
-            type: "text"
+            type: "text",
           },
           {
             prop: "noPremium",
             label: "非车保费",
-            type: "text"
+            type: "text",
           },
           {
             prop: "jqReceivableProportion",
             label: "交强应收比例",
-            type: "text"
+            type: "text",
           },
           {
             prop: "syReceivableProportion",
             label: "商业应收比例",
-            type: "text"
+            type: "text",
           },
           {
             prop: "noReceivableProportion",
             label: "非车应收比例",
-            type: "text"
+            type: "text",
           },
           {
             prop: "allFeeValue",
             label: "应收金额",
-            type: "text"
-          }
+            type: "text",
+          },
         ],
         loading: true,
-        isPaginationShow: true
+        isPaginationShow: true,
       },
       pageDataDetail: {
         pageNum: 1,
         pageSize: 20,
-        totalSize: 0
+        totalSize: 0,
       },
       dialogVisibleDetail: false,
       dialogVisiblerecord: false,
@@ -142,33 +206,35 @@ export default {
           {
             prop: "settlementTime",
             label: "进账日期",
-            type: "text"
+            type: "text",
           },
           {
             prop: "settlementAmount",
             label: "进帐金额",
-            type: "text"
+            type: "text",
           },
           {
             name: "imageUrl",
             label: "凭证",
-            type: 'slot'
-          }
+            type: "slot",
+          },
         ],
         loading: true,
         isPaginationShow: true,
         optBtns: [
           {
-            type: 'primary',
-            label: '明细',
-            click: (row, index) => { return this.haldRecordDetail(row) },
-          }
-        ]
+            type: "primary",
+            label: "明细",
+            click: (row, index) => {
+              return this.haldRecordDetail(row);
+            },
+          },
+        ],
       },
       pageDatarecord: {
         pageNum: 1,
         pageSize: 20,
-        totalSize: 0
+        totalSize: 0,
       },
       searchData: {},
       formList: [
@@ -198,51 +264,55 @@ export default {
           {
             prop: "companyName",
             label: "保险公司名称",
-            type: "text"
+            type: "text",
           },
           {
             prop: "partnerCompaniesName",
             label: "合作公司名称",
-            type: "text"
+            type: "text",
           },
           {
             prop: "dockingPerson",
             label: "对接人",
-            type: "text"
+            type: "text",
           },
           {
             prop: "totalFeevalue",
             label: "已结算总额",
-            type: "text"
+            type: "text",
           },
           {
             prop: "commissionFeevalue",
             label: "已结算手续费",
-            type: "text"
+            type: "text",
           },
           {
             prop: "otherFeevalue",
             label: "已结算跟单费",
-            type: "text"
+            type: "text",
           },
         ],
         loading: true,
         isPaginationShow: true,
         showSummary: true,
         isShowIndex: true,
-        tableHeight: 'auto',
+        tableHeight: "auto",
         optBtns: [
           {
-            type: 'primary',
-            label: '记录',
-            click: (row, index) => { return this.haldRecord(row) },
+            type: "primary",
+            label: "记录",
+            click: (row, index) => {
+              return this.haldRecord(row);
+            },
           },
           {
-            type: 'primary',
-            label: '明细',
-            click: (row, index) => { return this.haldDetail(row) },
-          }
-        ]
+            type: "primary",
+            label: "明细",
+            click: (row, index) => {
+              return this.haldDetail(row);
+            },
+          },
+        ],
       },
       tableData: [],
       formData: {},
@@ -251,7 +321,7 @@ export default {
         pageNum: 1,
         pageSize: 20,
         agreementType: 1,
-        handlingFeesStatus: 1
+        handlingFeesStatus: 1,
       },
       dockingPersonOption: [],
       // 记录里的明细
@@ -260,111 +330,112 @@ export default {
       pageDataRecordDetail: {
         pageNum: 1,
         pageSize: 20,
-        totalSize: 0
+        totalSize: 0,
       },
-      recordDetail: '',
+      recordDetail: "",
     };
   },
   created() {
     this.findPage();
-    this.$api.task
-      .getDockingPersonList()
-      .then(res => {
-        if (res.code == 200) {
-          this.dockingPersonOption = res.data
-        }
-        else {
-          this.$message.error(res.msg)
-        }
-      });
+    this.$api.task.getDockingPersonList().then((res) => {
+      if (res.code == 200) {
+        this.dockingPersonOption = res.data;
+      } else {
+        this.$message.error(res.msg);
+      }
+    });
   },
   methods: {
+    //重置表单查询信息
+    handleResetForm() {
+      this.formData = {};
+      this.pageData.dockingPerson = [];
+      this.$refs.yearMonthYay.clear();
+    },
     // 记录里的明细
     haldRecordDetail(row) {
-      console.log(row)
-      this.findPageRecordDetail(row)
-      this.dialogVisibleRecordDetail = true
+      console.log(row);
+      this.findPageRecordDetail(row);
+      this.dialogVisibleRecordDetail = true;
     },
     handleCloseRecordDetail() {
-      this.dialogVisibleRecordDetail = false
+      this.dialogVisibleRecordDetail = false;
     },
     getListRecordDetail() {
-      this.findPageRecordDetail()
+      this.findPageRecordDetail();
     },
     findPageRecordDetail(row) {
-      this.tableConfigDetailDetail.loading = true
+      this.tableConfigDetailDetail.loading = true;
       this.$api.task
-      .plyFeeQuery({
+        .plyFeeQuery({
           partnerCompaniesId: this.recordDetail,
           // agreementType: '1',
           // handlingFeesStatus: '1',
           settlementDate: row.settlementTime,
-          ...this.pageDataRecordDetail
+          ...this.pageDataRecordDetail,
         })
         .then((res) => {
-          console.log(res)
+          console.log(res);
           if (res.code == 200) {
             this.formTableDatarecordDetail = res.data.content;
             this.pageDataRecordDetail = {
               pageNum: res.data.pageNum,
               pageSize: res.data.pageSize,
               totalSize: res.data.totalSize,
-            }
+            };
             this.tableConfigDetailDetail.loading = false;
-          }
-          else {
+          } else {
             this.tableConfigDetailDetail.loading = false;
-            this.$message.error(res.msg)
+            this.$message.error(res.msg);
           }
-        })
+        });
     },
     // 明细
     findPageDetailDetail(data) {
-      this.tableConfigDetailDetail.loading = true
+      this.tableConfigDetailDetail.loading = true;
       this.$api.task
         .plyFeeQuery({
           partnerCompaniesId: data.partnerCompaniesId,
-          agreementType: '1',
-          handlingFeesStatus: '1',
-          ...this.pageDataDetail
+          agreementType: "1",
+          handlingFeesStatus: "1",
+          ...this.pageDataDetail,
         })
-        .then(res => {
+        .then((res) => {
           if (res.code == 200) {
             this.formTableDatarecord = res.data.content;
             this.pageDataDetail = {
               pageNum: res.data.pageNum,
               pageSize: res.data.pageSize,
               totalSize: res.data.totalSize,
-            }
+            };
             this.tableConfigDetailDetail.loading = false;
-          }
-          else {
+          } else {
             this.tableConfigDetail.loading = false;
-            this.$message.error(res.msg)
+            this.$message.error(res.msg);
           }
         });
     },
     // 明细
     getListDetail(data) {
-      this.findPageDetailDetail()
+      this.findPageDetailDetail();
     },
     // 明细
     haldDetail(row) {
-      this.findPageDetailDetail(row)
-      this.dialogVisibleDetail = true
+      this.findPageDetailDetail(row);
+      this.dialogVisibleDetail = true;
     },
     handleCloseDetail() {
-      this.dialogVisibleDetail = false
+      this.dialogVisibleDetail = false;
     },
     // 记录
     haldRecord(row) {
-      this.recordDetail = row.partnerCompaniesId
-      this.findPageDetailrecord(row)
-      this.dialogVisiblerecord = true
+      this.recordDetail = row.partnerCompaniesId;
+      this.findPageDetailrecord(row);
+      this.dialogVisiblerecord = true;
     },
     // 记录
     findPageDetailrecord(data) {
-      this.tableConfigDetailrecord.loading = true
+      this.tableConfigDetailrecord.loading = true;
       this.$api.task
         // .settlementFeesQuery({
         //   partnerCompaniesId: data.partnerCompaniesId,
@@ -374,9 +445,9 @@ export default {
         // })
         .plyFeeRecord({
           partnerCompaniesId: data.partnerCompaniesId,
-          handlingFeesStatus: '1'
+          handlingFeesStatus: "1",
         })
-        .then(res => {
+        .then((res) => {
           if (res.code == 200) {
             // this.formTableDatarecord = res.data.content;
             // this.pageDatarecord = {
@@ -384,30 +455,29 @@ export default {
             //   pageSize: res.data.pageSize,
             //   totalSize: res.data.totalSize,
             // }
-            this.formTableDatarecord = res.data
+            this.formTableDatarecord = res.data;
             this.tableConfigDetailrecord.loading = false;
-          }
-          else {
+          } else {
             this.tableConfigDetail.loading = false;
-            this.$message.error(res.msg)
+            this.$message.error(res.msg);
           }
         });
     },
     // 记录
     getListrecord(data) {
-      this.findPageDetailrecord()
+      this.findPageDetailrecord();
     },
     handleCloserecord() {
-      this.dialogVisiblerecord = false
+      this.dialogVisiblerecord = false;
     },
     getYearData(val) {
-      this.formData.year = val
+      this.formData.year = val;
     },
     getMonthData(val) {
-      this.formData.month = val
+      this.formData.month = val;
     },
     getDayData(val) {
-      this.formData.day = val
+      this.formData.day = val;
     },
     // 查询
     handleSearchList(val) {
@@ -418,22 +488,20 @@ export default {
       this.tableConfig.loading = true;
       this.$api.task
         .totalPinAmount({ ...this.pageData, ...data, ...this.formData })
-        .then(res => {
+        .then((res) => {
           if (res.code == 200) {
             this.tableData = res.data;
             // this.pageData.pageNum = res.data.pageNum;
             // this.pageData.pageSize = res.data.pageSize;
             // this.pageData.totalSize = res.data.totalSize;
             this.tableConfig.loading = false;
-          }
-          else {
+          } else {
             this.tableConfig.loading = false;
-            this.$message.error(res.msg)
+            this.$message.error(res.msg);
           }
         });
     },
 
-
     tablePageChange(val) {
       this.pageData.pageSize = val;
       this.findPage();
@@ -442,17 +510,16 @@ export default {
       this.pageData.pageNum = val;
       this.findPage();
     },
-
-  }
+  },
 };
 </script>
 
 <style scoped>
-.InvoicedAndSettled>>>.el-table__body-wrapper {
-    overflow-y: auto !important;
-    height: auto !important;
+.InvoicedAndSettled >>> .el-table__body-wrapper {
+  overflow-y: auto !important;
+  height: auto !important;
 }
->>>.dataTable .el-table__header-wrapper .el-table__header .el-checkbox {
+>>> .dataTable .el-table__header-wrapper .el-table__header .el-checkbox {
   display: none;
 }
 </style>

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików