Răsfoiți Sursa

任务池-渠道新增导出 、协议费用增加启用禁用

@dongkboy 1 an în urmă
părinte
comite
127ea291ad

+ 18 - 0
src/components/Form/retrievalForm.vue

@@ -94,6 +94,9 @@
         />
       </el-col>
       <el-col :span="2" style="text-align: right">
+        <el-button v-if="isExport" size="small" type="primary" @click="exportFileSubmit"
+          >导出</el-button
+        >
         <el-button size="small" type="primary" @click="handleSubmit"
           >查询</el-button
         >
@@ -116,6 +119,10 @@ export default {
     dateType :{
       type: String,
       default: "0",
+    },
+    isExport:{
+      type:Boolean,
+      default:false,
     }
   },
   data() {
@@ -209,6 +216,17 @@ export default {
       this.isCollapsed = !this.isCollapsed; // 切换折叠状态
       this.$emit("toggleCollapse", this.isCollapsed);
     },
+    //导出
+    exportFileSubmit(){
+      this.$refs.form.validate((valid) => {
+        if (valid) {
+          this.$emit("exportSubmit", this.formData);
+        } else {
+          // 表单验证失败,做相应处理
+        }
+      });
+    },
+    //查询
     handleSubmit() {
       this.$refs.form.validate((valid) => {
         if (valid) {

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

@@ -348,6 +348,7 @@ export const getPtlInsAttributionTemplate = (data) => {
 
 
 /** 协议产品费用 */
+
 //查询
 export const productCostQuery = (data) => {
   return axios({
@@ -432,6 +433,21 @@ export const productContbatchCopy = (data) => {
     data
   })
 }
+//费用禁用
+export const productdisable = (id) => {
+  return axios({
+    url: '/plt/new/agreement/costs/disable/'+id,
+    method: "post",
+  })
+}
+//费用批量禁用
+export const productbatchDisable = (data) => {
+  return axios({
+    url: '/plt/new/agreement/costs/batchDisable',
+    method: "post",
+    data
+  })
+}
 /** 协议产品费用 */
 /** 费用审核 */
 

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

@@ -1004,6 +1004,14 @@ export const queryPageHospitalityByChannel = (data) => {
     data
   })
 }
+//任务池(渠道)列表导出接口
+export const exportHospitalityByChannel = (data) => {
+  return axios({
+    url: "/insurance/order/exportHospitalityByChannel ",
+    method: "post",
+    data
+  })
+}
 // 任务池(代理人)列表接口
 export const queryPageHospitalityLinkagent = (data) => {
   return axios({

+ 143 - 57
src/views/AgreementManage/CarInsurance/AgreementProductFee.vue

@@ -44,6 +44,14 @@
             </el-select>
           </el-form-item>
         </el-col>
+        <el-col :span="6">
+          <el-form-item label="费用状态">
+            <el-select style="width: 100%;" v-model="productpageRequest.validStatus" clearable>
+              <el-option label="启用" value="1"></el-option>
+              <el-option label="禁用" value="0"></el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
         <el-col :span="6">
           <el-form-item label="创建日期">
             <el-date-picker style="width: 100%;" v-model="createDate" type="daterange" value-format="yyyy-MM-dd"
@@ -53,8 +61,8 @@
         </el-col>
         <el-col :span="12">
           <el-form-item label="费用描述">
-            <el-select style="width: 100%;"  v-model="productpageRequest.costsDescription" multiple filterable allow-create default-first-option
-              placeholder="关键字搜索 例:新能源、非车险、评分等">
+            <el-select style="width: 100%;" v-model="productpageRequest.costsDescription" multiple filterable allow-create
+              default-first-option placeholder="关键字搜索 例:新能源、非车险、评分等">
             </el-select>
           </el-form-item>
         </el-col>
@@ -86,16 +94,16 @@
     </div>
     <kt-common-table :tableHeights="580" :SerialShow="false" :operationWidth="250" :showOperation="true"
       :showBatchDelete="true" :showBatchSettled="false" :showBatchPrint="false" :customToolseletted="true"
-      :data="productPageResult" :columns="productColumns" @findPage="productCostFindPage" button2Name="编辑"
-      button2Type="text" button3Type="text" button5Type="text" :button2style="{ color: '#2D4D89' }"
-      :button3style="{ color: '#D42426' }" :button5style="{ color: '#2D4D89' }" permsButton2="agreement:input:productCost"
-      @handleButton2="productUpdate" deleteName="批量修改费用" @handleDelete="batchUpdate" @customTool="batchDelete"
-      @customTool1="customTool1" customToolName1="批量修改起止时间"
-      customToolName="批量删除" button3Name="删除"  permsButton3="agreement:input:productCost" @handleButton3="productDelete"
+      :disableInBulk="false" :data="productPageResult" :columns="productColumns" @findPage="productCostFindPage"
+      button2Name="编辑" button2Type="text" button3Type="text" button5Type="text" button4Type="text"
+      :button2style="{ color: '#2D4D89' }" :button3style="{ color: '#D42426' }" :button5style="{ color: '#2D4D89' }"
+      permsButton2="agreement:input:productCost" @handleButton2="productUpdate" deleteName="批量修改费用"
+      @handleDelete="batchUpdate" @customTool="batchDelete" @customTool1="customTool1" customToolName1="批量修改起止时间"
+      customToolName="批量删除" button3Name="删除" permsButton3="agreement:input:productCost" @handleButton3="productDelete"
       button5Name="轨迹" @handleButton5="trajectory" button3Icon="">
     </kt-common-table>
-    <el-dialog  :append-to-body="true" :title="productCostAddDialogTitle" :visible.sync="productCostAddVehicleFactorVisible" width="80%" top="6vh"
-      @close="productcloseDialog">
+    <el-dialog :append-to-body="true" :title="productCostAddDialogTitle"
+      :visible.sync="productCostAddVehicleFactorVisible" width="80%" top="6vh" @close="productcloseDialog">
       <el-tabs v-model="activeName" type="card">
         <el-tab-pane :label="tabtitle + '费用'" name="feiyong" class="tab-panestyle">
           <div class="tab-panecent">
@@ -335,7 +343,7 @@
           @click="productCostAddSubmit('productCostForm')">确 定</el-button>
       </span>
     </el-dialog>
-    <el-dialog  :append-to-body="true" :visible.sync="ddgjdialogVisible" width="25%" title="订单轨迹">
+    <el-dialog :append-to-body="true" :visible.sync="ddgjdialogVisible" width="25%" title="订单轨迹">
       <div class="tab-panestyle">
         <div style="height: 400px; overflow-y: auto;padding: 6px;">
           <el-steps direction="vertical" :active="trajectoryTable.length - 1">
@@ -351,7 +359,8 @@
         </div>
       </div>
     </el-dialog>
-    <el-dialog  :append-to-body="true" title="产品历史记录" :visible.sync="productHistoryRecordDialogVisible" width="70%" :fullscreen="true">
+    <el-dialog :append-to-body="true" title="产品历史记录" :visible.sync="productHistoryRecordDialogVisible" width="70%"
+      :fullscreen="true">
       <div class="p-2">
         <el-row class="queryFrom">
           <el-form ref="queryFormRef" :model="productHistoryRecordForm" label-width="80px">
@@ -393,9 +402,10 @@
       </div>
 
     </el-dialog>
-    <el-dialog  :append-to-body="true" title="批量操作" :visible.sync="batchdialogVisible" width="50%">
+    <el-dialog :append-to-body="true" title="批量操作" :visible.sync="batchdialogVisible" width="50%">
       <div class="tab-panestyle">
-        <el-form :inline="true" :model="batchUpdateForm" id="bulkOperation" class="demo-form-inline  tab-panecent" style="padding: 20px;">
+        <el-form :inline="true" :model="batchUpdateForm" id="bulkOperation" class="demo-form-inline  tab-panecent"
+          style="padding: 20px;">
           <!-- <el-row>
             <el-col :span="8">
               <el-form-item label="费用起期:">
@@ -412,7 +422,7 @@
               </el-form-item>
             </el-col>
           </el-row> -->
-          <el-row >
+          <el-row>
             <div class="title">交强险费用</div>
             <el-col :span="8">
               <el-form-item label="总费用比例" prop="jqCostsProportion">
@@ -552,14 +562,15 @@
           @click="batchCostsubmit">确 定</el-button>
       </span>
     </el-dialog>
-    <el-dialog  :append-to-body="true" title="费用复制窗口" :visible.sync="productCostCopyDialogVisible" :close-on-click-modal="false"
-      :fullscreen="true">
+    <el-dialog :append-to-body="true" title="费用复制窗口" :visible.sync="productCostCopyDialogVisible"
+      :close-on-click-modal="false" :fullscreen="true">
       <div class="p-2">
         <el-form :inline="true" :model="productcopyItemPageRequest" class="demo-form-inline" size="small"
           label-width="80px">
           <el-form-item label="选择协议">
             <el-select v-model="productcopyItemPageRequest.agreementId" placeholder="请选择协议">
-              <el-option v-for="(item, index) in protocolpageResult" :key="index" :label="`${item.agreementName}-${item.businessDescription}-${item.jobDescription}`"
+              <el-option v-for="(item, index) in protocolpageResult" :key="index"
+                :label="`${item.agreementName}-${item.businessDescription}-${item.jobDescription}`"
                 :value="item.id"></el-option>
             </el-select>
           </el-form-item>
@@ -582,8 +593,8 @@
             </el-date-picker>
           </el-form-item>
           <el-form-item label="费用描述">
-            <el-select style="width: 300px;"  v-model="productcopyItemPageRequest.costsDescription" multiple filterable allow-create default-first-option
-              placeholder="费用描述">
+            <el-select style="width: 300px;" v-model="productcopyItemPageRequest.costsDescription" multiple filterable
+              allow-create default-first-option placeholder="费用描述">
             </el-select>
           </el-form-item>
           <el-form-item>
@@ -597,7 +608,8 @@
         </kt-common-table>
       </div>
     </el-dialog>
-    <el-dialog  :append-to-body="true" title="产品费用历史记录详情" :visible.sync="productHistoryDetailsDialogVisible" width="80%" top="6vh">
+    <el-dialog :append-to-body="true" title="产品费用历史记录详情" :visible.sync="productHistoryDetailsDialogVisible" width="80%"
+      top="6vh">
       <div class="tab-panestyle">
         <Product-Cost-Form v-if="productHistoryDetailsDialogVisible" :form="dynamicFormArray" :operator="operatorlist"
           over-size="small" @cancelForm="productHistoryDetailsDialogVisible = false" :disabled="true"></Product-Cost-Form>
@@ -605,21 +617,22 @@
     </el-dialog>
 
 
-    <el-dialog  :append-to-body="true" title="批量修改起止时间" :visible.sync="showUpdate1" width="30%" top="6vh">
+    <el-dialog :append-to-body="true" title="批量修改起止时间" :visible.sync="showUpdate1" width="30%" top="6vh">
       <div class="tab-panestyle">
-        <el-form :inline="true" :model="batchUpdateForm1" id="bulkOperation" class="demo-form-inline  tab-panecent" style="padding: 20px;">
+        <el-form :inline="true" :model="batchUpdateForm1" id="bulkOperation" class="demo-form-inline  tab-panecent"
+          style="padding: 20px;">
           <el-row>
             <el-col :span="12">
               <el-form-item label="费用起期:">
-                <el-date-picker size="small"  v-model="batchUpdateForm1.costsStartDate" type="datetime"
+                <el-date-picker size="small" v-model="batchUpdateForm1.costsStartDate" type="datetime"
                   placeholder="选择开始日期" value-format="yyyy-MM-dd HH:mm:ss">
                 </el-date-picker>
               </el-form-item>
             </el-col>
             <el-col :span="12">
               <el-form-item label="费用止期:">
-                <el-date-picker size="small"  v-model="batchUpdateForm1.costsEndDate" type="datetime"
-                  placeholder="选择结束日期" value-format="yyyy-MM-dd HH:mm:ss" @change="checkStartDate1">
+                <el-date-picker size="small" v-model="batchUpdateForm1.costsEndDate" type="datetime" placeholder="选择结束日期"
+                  value-format="yyyy-MM-dd HH:mm:ss" @change="checkStartDate1">
                 </el-date-picker>
               </el-form-item>
             </el-col>
@@ -645,9 +658,9 @@ export default {
     KtCommonTable,
     ProductCostForm
   },
-  props:{
-    messageInfo:{
-      default:{}
+  props: {
+    messageInfo: {
+      default: {}
     }
   },
   data() {
@@ -982,6 +995,7 @@ export default {
         { prop: "desc", label: "费用因子描述", minWidth: 520 },
         { prop: "priorityLevel", label: "方案优先级", minWidth: 100 },
         { prop: "isAudit", label: "审核状态", minWidth: 120, formatter: this.auditTypeFormation },
+        { prop: "validStatus", label: "费用状态", minWidth: 200, formatter: this.validStatusFormation },
         {
           prop: "jqCarCostsProportion",
           label: "费用比例(交强)",
@@ -1175,6 +1189,7 @@ export default {
         pageNum: 1,
         pageSize: 20,
         agreementId: "",
+        validStatus: "",
       },
       productPageResult: [],
       insuranceCompanyId: "",
@@ -1232,7 +1247,7 @@ export default {
       showUpdate1: false,
       batchUpdateForm1: {},
       carClassList: [],
-      batchUpdatelist:[],
+      batchUpdatelist: [],
       lineData: {},
     }
   },
@@ -1261,10 +1276,10 @@ export default {
       if (res.code == 200) {
         this.protocolpageResult = res.data;
         this.protocolpageResult.forEach(item => {
-          item.agreementName == null ? item.agreementName='' : item.agreementName,
-          item.businessDescription ==  null ?  item.businessDescription='' : item.businessDescription,
-          item.jobDescription == null ? item.jobDescription=''  : item.jobDescription
-         });
+          item.agreementName == null ? item.agreementName = '' : item.agreementName,
+            item.businessDescription == null ? item.businessDescription = '' : item.businessDescription,
+            item.jobDescription == null ? item.jobDescription = '' : item.jobDescription
+        });
         console.log(this.protocolpageResult);
       } else {
         this.$message.error(res.msg);
@@ -1273,6 +1288,7 @@ export default {
   },
   // 方法函数
   methods: {
+
     disabledDate1(time) {
       let datetime = this.productcopyItemPageRequest.costStartDate;
       const disabledTime = new Date(datetime).getTime() - 8.64e7;
@@ -1693,30 +1709,63 @@ export default {
       // costsDateBatch
       this.showUpdate1 = true
     },
+    //批量禁用
+    batchdisableInBulkClick(data) {
+      this.$confirm('禁用后今日内可支付的订单将失效, 是否继续?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'danger'
+      }).then(() => {
+        this.$api.insCompany.productbatchDisable({ costsIdList: data }).then((res) => {
+          if (res.code == '200') {
+            this.$message({
+              type: 'success',
+              message: res.msg,
+            });
+            this.productCostFindPage();
+
+          } else {
+            this.$message({
+              type: 'error',
+              message: res.msg,
+            });
+          }
+        });
+      }).catch(() => {
+
+      });
+
+    },
     //产品批量编辑
     batchUpdate(data) {
-      let listName=[];
-      data.map(val=>{
-        let name=this.productPageResult.content.find(ele=>ele.id==val).productName;
+      let listName = [];
+      data.map(val => {
+        let name = this.productPageResult.content.find(ele => ele.id == val).productName;
         listName.push(name)
         return val;
       })
-      this.batchUpdatelist=listName;
+      this.batchUpdatelist = listName;
       console.log(this.batchUpdatelist)
       let contains1 = listName.every(item => ['单交'].includes(item));
-      let contains2 = listName.every(item => ['单商','单三'].includes(item));
-      let contains3 = listName.every(item => ['交商','交三'].includes(item));
-      if(contains1 || contains2 || contains3){
-      this.batchUpdateForm = {
-        ids: data,
-      };
-      this.batchdialogVisible = true;
-      }else{
+      let contains2 = listName.every(item => ['单商', '单三'].includes(item));
+      let contains3 = listName.every(item => ['交商', '交三'].includes(item));
+      if (contains1 || contains2 || contains3) {
+        this.batchUpdateForm = {
+          ids: data,
+        };
+        this.batchdialogVisible = true;
+      } else {
         return this.$message.error('险种选择错误,无法批量修改');
       }
     },
     //产品编辑
     productUpdate({ row, column }) {
+      if (row.validStatus === 1) {
+        return this.$message({
+          type: 'warning',
+          message: "请先禁用后再编辑费用",
+        });
+      }
       this.$api.insCompany.productcostFactorQuery(row.id).then((res) => {
         if (res.code == '200') {
           let obj = Object.assign({}, res.data);
@@ -1877,6 +1926,35 @@ export default {
       let expense = this.expenseAuditlist.find(val => val.value == expenseAudit).label;
       return <el-tag type="success">{expense}</el-tag>;
     },
+    validStatusFormation(row, column) {
+      let _this = this;
+      return <el-switch value={row.validStatus} active-value={1}
+        inactive-value={0} onChange={validStatuschange} ></el-switch>;
+      function validStatuschange(value) {
+        _this.$confirm('禁用后今日内可支付的订单将失效, 是否继续?', '提示', {
+          confirmButtonText: '确定',
+          cancelButtonText: '取消',
+          type: 'danger'
+        }).then(() => {
+          _this.$api.insCompany.productdisable(row.id).then((res) => {
+            if (res.code == '200') {
+              _this.$message({
+                type: 'success',
+                message: res.msg,
+              });
+              _this.productCostFindPage();
+            } else {
+              _this.$message({
+                type: 'error',
+                message: res.msg,
+              });
+            }
+          });
+        }).catch(() => {
+        });
+      }
+    },
+
     operatorTypeFormatter(row, column) {
       let operatorType = row.operatorType;
       switch (operatorType) {
@@ -1918,7 +1996,7 @@ export default {
       }
       return contains
     },
-    batchUpdateincludes(){
+    batchUpdateincludes() {
       let a = ['单交'];
       let contains = this.batchUpdatelist.every(item => a.includes(item));
       return contains
@@ -2228,40 +2306,48 @@ export default {
   background: #f2f7fc;
   border-color: #fff;
 }
+
 // 批量操作弹窗样式
-#bulkOperation{
-  .title{
+#bulkOperation {
+  .title {
     color: #333;
     font-size: 16px;
     font-weight: 500;
     padding-bottom: 20px;
   }
-  .el-form-item{
+
+  .el-form-item {
     margin-bottom: 20px;
-    >>>.el-form-item__content{
+
+    >>>.el-form-item__content {
       width: 100%;
       line-height: normal;
-      .el-date-editor.el-input, .el-date-editor.el-input__inner{
+
+      .el-date-editor.el-input,
+      .el-date-editor.el-input__inner {
         width: 100%;
       }
     }
-    >>>.el-form-item__label{
+
+    >>>.el-form-item__label {
       height: 22px;
       line-height: 22px;
       margin-bottom: 10px;
     }
-    >>>.el-input-number{
+
+    >>>.el-input-number {
       width: 100%;
-      .el-input__inner{
+
+      .el-input__inner {
         color: #333;
         text-align: left;
-        &:focus{
+
+        &:focus {
           color: #333;
         }
       }
     }
   }
 }
-
 </style>
 

+ 28 - 2
src/views/Core/KtCommonTable.vue

@@ -166,6 +166,7 @@
           showBatchSettled ||
           showBatchPrint ||
           customToolseletted ||
+          disableInBulk ||
           select
         "
       ></el-table-column>
@@ -464,6 +465,16 @@
         style="float: left"
         v-if="customToolseletted"
       />
+      <kt-button
+        :label="disableInBulkName"
+        :perms="disableInBulkperms"
+        :size="size"
+        type="danger"
+        @click="disableInBulkClick()"
+        :disabled="selections.length === 0"
+        style="float: left"
+        v-if="disableInBulk"
+      />
       <kt-button
         :label="settledName"
         :perms="permsSettled"
@@ -554,7 +565,17 @@ export default {
       type: Boolean,
       default: false,
     },
-
+    disableInBulkName: {
+      type: String,
+    },
+    disableInBulkperms: {
+      type: String,
+    },
+    disableInBulk:{
+        // 批量禁用
+        type: Boolean,
+      default: false,
+    },
     settledName: {
       //批量按钮name
       type: String,
@@ -1204,7 +1225,12 @@ export default {
       this.selections.map((item) => idlist.push(item.id));
       this.$emit("customTool1", idlist);
     },
-
+    //批量导出
+    disableInBulkClick(){
+      let idlist = [];
+      this.selections.map((item) => idlist.push(item.id));
+      this.$emit("disableInBulkClick", idlist);
+    },
     // 删除操作
     delete: function (ids) {
       var _keyName = "id";

+ 47 - 26
src/views/Task/TaskPoolChannel/TaskPoolChannel3.vue

@@ -1,17 +1,16 @@
 <template>
   <div>
-    <retrievalForm :fields="retrievalFields" @submit="handleFormSubmit" @toggleCollapse="toggleCollapse" :dateType="3"
-      @areaSelectChange="areaSelectChange"></retrievalForm>
-    <kt-common-table :data="pageResult" ref="commonTable" :columns="columns1" element-loading-text="加载中..." v-loading="loading"
-      :showBatchDelete="false" @findPage="findPage"
-      button3Name="转发" button3Type="text" @handleButton3="transmit" :stripe="false"
-      button2Name="报价轨迹" button2Type="text" @handleButton2="trajectory"
-      button6Name="批单" button6Type="text" @handleButton6="batchOrder"
-      button5Name="详情" button5Type="text" @handleButton5="detailFun"
-      button4Name="转发记录" button4Type="text" @handleButton4="forwardingRecords" :operationWidth="300"></kt-common-table>
+    <retrievalForm :fields="retrievalFields" @submit="handleFormSubmit" @exportSubmit="exportSubmit" :isExport="true"
+      @toggleCollapse="toggleCollapse" :dateType="3" @areaSelectChange="areaSelectChange"></retrievalForm>
+    <kt-common-table :data="pageResult" ref="commonTable" :columns="columns1" element-loading-text="加载中..."
+      v-loading="loading" :showBatchDelete="false" @findPage="findPage" button3Name="转发" button3Type="text"
+      @handleButton3="transmit" :stripe="false" button2Name="报价轨迹" button2Type="text" @handleButton2="trajectory"
+      button6Name="批单" button6Type="text" @handleButton6="batchOrder" button5Name="详情" button5Type="text"
+      @handleButton5="detailFun" button4Name="转发记录" button4Type="text" @handleButton4="forwardingRecords"
+      :operationWidth="300"></kt-common-table>
     <el-dialog title="转发" :visible.sync="dialogVisible" width="30%">
       转发人:
-      <el-select v-model="transmitValue" filterable clearable  placeholder="请选择">
+      <el-select v-model="transmitValue" filterable clearable placeholder="请选择">
         <el-option v-for="item in options" :key="item.userId" :label="item.name" :value="item.userId"></el-option>
       </el-select>
       <span slot="footer" class="dialog-footer">
@@ -19,7 +18,8 @@
         <el-button type="primary" size="small" @click="transmitSumit">确 定</el-button>
       </span>
     </el-dialog>
-    <detailsDialog ref="detailsDialog"  :isTaskPool="true" :orderInfo="queryOrders" :isAuditing="isAuditing" :feeOrderNewVoList="feeOrderNewVoList"></detailsDialog>
+    <detailsDialog ref="detailsDialog" :isTaskPool="true" :orderInfo="queryOrders" :isAuditing="isAuditing"
+      :feeOrderNewVoList="feeOrderNewVoList"></detailsDialog>
     <el-dialog :visible.sync="ddgjdialogVisible" width="500px">
       <div slot="title" class=" dialog-title">
         <span>订单轨迹</span>
@@ -33,7 +33,7 @@
                 <div>车牌号:{{ item.licenseNo }}</div>
                 <div>被保人:{{ item.insuredname }}</div>
                 <div>
-                  <span >操作人:{{ item.operator }}</span>
+                  <span>操作人:{{ item.operator }}</span>
                   <span style="margin-left: 10px">操作人工号:{{ item.audituser }}</span>
                 </div>
                 <span v-if="item.operatorTime">
@@ -45,17 +45,16 @@
         </el-steps>
       </div>
     </el-dialog>
-    <el-dialog :visible.sync="forwardingRecordsdialogVisible"  title="转发记录" width="70%">
-      <el-table :data="gridData"  height="400" border  v-loading="loading" highlight-current-row stripe
-        :header-cell-style="{
-          background: '#F2F7FC',
-          fontWeight: '700',
-          color: '#606266',
-        }">
+    <el-dialog :visible.sync="forwardingRecordsdialogVisible" title="转发记录" width="70%">
+      <el-table :data="gridData" height="400" border v-loading="loading" highlight-current-row stripe :header-cell-style="{
+        background: '#F2F7FC',
+        fontWeight: '700',
+        color: '#606266',
+      }">
         <el-table-column property="subOrderId" align="center" label="订单号" width="200"></el-table-column>
         <el-table-column property="oldOperatorId" align="center" label="转发人" width="200"></el-table-column>
         <el-table-column property="newOperatorId" align="center" label="接收人"></el-table-column>
-        <el-table-column property="remark"  align="center" label="转发信息"></el-table-column>
+        <el-table-column property="remark" align="center" label="转发信息"></el-table-column>
         <el-table-column property="createTime" align="center" label="转发时间"></el-table-column>
       </el-table>
     </el-dialog>
@@ -105,7 +104,7 @@ export default {
         { prop: "jypremium", label: "驾意险保费", minWidth: 160 },
         // { prop: "isExternal", label: "外部订单", formatter: this.isExternalFormatter},
         { prop: "insuredname", label: "投保人姓名", minWidth: 120 },
-        {prop: "underwritingStatus", label: "核保通过方式", minWidth: 180, formatter: this.underwritingMethodFormatter },
+        { prop: "underwritingStatus", label: "核保通过方式", minWidth: 180, formatter: this.underwritingMethodFormatter },
         { prop: "userid", label: "业务员工号", minWidth: 180 },
         { prop: "createtime", label: "报价时间", minWidth: 160 },
       ],
@@ -127,6 +126,12 @@ export default {
     getStatusText(code) {
       return this.optionsStatus.find(val => val.dictValue == code).dictTag;;
     },
+    //导出
+    exportSubmit(data) {
+      let obj = Object.assign(this.pageRequest, data)
+      this.pageRequest = obj;
+      this.exportRecords();
+    },
     handleFormSubmit(data) {
       let obj = Object.assign(this.pageRequest, data)
       this.pageRequest = obj;
@@ -154,13 +159,31 @@ export default {
           if (res.code == 200) {
             this.loading = false;
             this.pageResult = res.data;
-            this.$refs.commonTable.taskPool=true
+            this.$refs.commonTable.taskPool = true
           } else {
             this.loading = false;
             this.$message.error(res.msg);
           }
         });
     },
+    //导出
+    exportRecords() {
+      this.$api.task.exportHospitalityByChannel(this.pageRequest).then((res) => {
+        if (res.code == '200') {
+          let url = process.env.BASE_URL + res.data; // 3.创建一个临时的url指向blob对象
+          let a = document.createElement("a");
+          a.href = url;
+          a.download = "导出文件.xlsx";
+          a.click();
+          window.URL.revokeObjectURL(url);
+        } else {
+          this.$message({
+            type: 'error',
+            message: res.msg,
+          });
+        }
+      });
+    },
     trajectory(row) {
       this.$api.letter.queryBySuborderDetails(row.row.subOrderId).then((res) => {
         if (res.code == 200 && res.data.length > 0) {
@@ -237,7 +260,7 @@ export default {
         this.queryFrom.endDate = e[1];
       }
     },
-    batchOrder(row){
+    batchOrder(row) {
 
     },
     // detailFun(row) {
@@ -282,7 +305,6 @@ export default {
 </script>
 
 <style scoped lang="scss">
-
 /deep/ {
 
   .el-step__description.is-finish,
@@ -290,6 +312,7 @@ export default {
     color: #333;
     border: none;
   }
+
   .el-step__title,
   .el-step__icon-inner {
     color: var(--themeColor)
@@ -316,6 +339,4 @@ export default {
     box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.1);
   }
 }
-
-
 </style>

+ 4 - 4
src/views/Task/daikeComponents/KtLetter1.vue

@@ -380,14 +380,14 @@
             </el-form-item>
           </el-col>
           <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
-            <el-form-item v-dateFormat label="有效期起期" prop="identifyValidDate">
-              <el-date-picker v-model="policyHolderInfo.identifyValidDate" value-format="yyyy-MM-dd" @blur="getCompanyList"
+            <el-form-item  label="有效期起期" prop="identifyValidDate">
+              <el-date-picker v-dateFormat v-model="policyHolderInfo.identifyValidDate" value-format="yyyy-MM-dd" @blur="getCompanyList"
                 :picker-options="pickerOptions" type="date" placeholder="选择有效期" placement="bottom-start"></el-date-picker>
             </el-form-item>
           </el-col>
           <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
-            <el-form-item v-dateFormat label="有效期止期" prop="identifyValidEndDate">
-              <el-date-picker v-model="policyHolderInfo.identifyValidEndDate" type="date" @blur="getCompanyList"
+            <el-form-item  label="有效期止期" prop="identifyValidEndDate">
+              <el-date-picker v-dateFormat v-model="policyHolderInfo.identifyValidEndDate" type="date" @blur="getCompanyList"
                 value-format="yyyy-MM-dd" placeholder="选择有效期" placement="bottom-start"
                 style="width: calc(100% - 40px)"></el-date-picker>
               <div class="insure-long-term" @click="insureLongterm('policyHolderInfo')">