chen пре 3 година
родитељ
комит
5c0fc964dd
3 измењених фајлова са 752 додато и 214 уклоњено
  1. 197 166
      src/api/policy_list.js
  2. 89 48
      src/views/sales_rebate/rebate_list.vue
  3. 466 0
      src/views/sales_rebate/rebate_list_type.vue

+ 197 - 166
src/api/policy_list.js

@@ -1,123 +1,119 @@
-import request from '@/utils/request'
-
+import request from "@/utils/request";
 
 // 销售政策
 export function getList(params) {
   return request({
-    url: '/policy/list',
-    method: 'get',
-    params
-  })
+    url: "/policy/list",
+    method: "get",
+    params,
+  });
 }
 //新增政策
 export function addPoliy(params) {
   return request({
-    url: '/policy/add',
-    method: 'post',
-    data: params
-  })
+    url: "/policy/add",
+    method: "post",
+    data: params,
+  });
 }
 //新增政策条件
 
 export function addPoliyCondition(params) {
   return request({
-    url: '/policy/condition/add',
-    method: 'post',
-    data: params
-  })
+    url: "/policy/condition/add",
+    method: "post",
+    data: params,
+  });
 }
 //政策条件列表
 export function getConditionList(params) {
   return request({
-    url: '/policy/condition/list',
-    method: 'get',
-    params
-  })
+    url: "/policy/condition/list",
+    method: "get",
+    params,
+  });
 }
 
 export function updatePolicy(params) {
   return request({
-    url: '/policy/update',
-    method: 'post',
-    data: params
-  })
+    url: "/policy/update",
+    method: "post",
+    data: params,
+  });
 }
 
 export function deletePolicy(params) {
   return request({
-    url: '/policy/delete',
-    method: 'post',
-    params
-  })
+    url: "/policy/delete",
+    method: "post",
+    params,
+  });
 }
 
 //修改条件
 export function updateCondition(params) {
   return request({
-    url: '/policy/condition/update',
-    method: 'post',
-    params
-  })
+    url: "/policy/condition/update",
+    method: "post",
+    params,
+  });
 }
 
-
 export function getConditionMaterialDetail(params) {
   return request({
-    url: '/policy/condition/detail',
-    method: 'get',
-    params
-  })
+    url: "/policy/condition/detail",
+    method: "get",
+    params,
+  });
 }
 //政策条件的机型列表
 export function getConditionMaterialList(params) {
   return request({
-    url: '/policy/condition/material/list',
-    method: 'get',
-    params
-  })
+    url: "/policy/condition/material/list",
+    method: "get",
+    params,
+  });
 }
 //经销商api
 
 export function getCrList(params) {
   return request({
-    url: '/customer/list',
-    method: 'get',
-    params
-  })
+    url: "/customer/list",
+    method: "get",
+    params,
+  });
 }
 
 //政策销售商列表
 export function getCustomerList(params) {
   return request({
-    url: '/policy/customer/list',
-    method: 'get',
-    params
-  })
+    url: "/policy/customer/list",
+    method: "get",
+    params,
+  });
 }
 //获取销售政策编号
 export function getId(params) {
   return request({
-    url: '/policy/id',
-    method: 'get',
-    params
-  })
+    url: "/policy/id",
+    method: "get",
+    params,
+  });
 }
 
-
-
 export function deleteCondition(params) {
   return request({
-    url: '/policy/condition/delete',
-    method: 'post',
-    params
-  })
+    url: "/policy/condition/delete",
+    method: "post",
+    params,
+  });
 }
 export function toExamine(params) {
   return request({
-    url: '/policy/examine',
-    method: 'post',
-    params
-  })
+    url: "/policy/examine",
+    method: "post",
+    params,
+  });
 }
 //导入政策货品
 // /policy/material/import
@@ -125,223 +121,258 @@ export function toExamine(params) {
 //政策货品列表
 export function getMaterialList(params) {
   return request({
-    url: '/policy/material/list',
-    method: 'get',
-    params
-  })
+    url: "/policy/material/list",
+    method: "get",
+    params,
+  });
 }
 //提审政策
 export function getpolicySubmit(params) {
   return request({
-    url: '/policy/policy/submit',
-    method: 'post',
-    params
-  })
+    url: "/policy/policy/submit",
+    method: "post",
+    params,
+  });
 }
 
 //删除政策货品
 
 export function deleteMaterialPolicy(params) {
   return request({
-    url: '/policy/material/delete',
-    method: 'post',
-    params
-  })
+    url: "/policy/material/delete",
+    method: "post",
+    params,
+  });
 }
 
 //获取经销商详情
 export function getPolicyDetail(params) {
   return request({
-    url: '/policy/detail',
-    method: 'get',
-    params
-  })
+    url: "/policy/detail",
+    method: "get",
+    params,
+  });
 }
 
 // 对应经销商
 
 export function getCustomerlist(params) {
   return request({
-    url: '/policy/customer_count/list',
-    method: 'get',
-    params
-  })
+    url: "/policy/customer_count/list",
+    method: "get",
+    params,
+  });
 }
 
 export function eidtBatch(params) {
   return request({
-    url: '/policy/customer_count/batch',
-    method: 'post',
-    params
-  })
+    url: "/policy/customer_count/batch",
+    method: "post",
+    params,
+  });
 }
 
-
-
 //销售类型
 
 export function getTypeList(params) {
   return request({
-    url: '/sale/type/list',
-    method: 'get',
-    params
-  })
+    url: "/sale/type/list",
+    method: "get",
+    params,
+  });
 }
 
 export function DeleteData(params) {
   return request({
-    url: '/policy/material/delete',
-    method: 'psot',
-    params
-  })
+    url: "/policy/material/delete",
+    method: "psot",
+    params,
+  });
 }
 
 export function addData(params) {
   return request({
-    url: '/sale/type/add',
-    method: 'post',
-    data: params
-  })
+    url: "/sale/type/add",
+    method: "post",
+    data: params,
+  });
 }
 
 export function delTypeData(params) {
   return request({
-    url: '/sale/type/delete',
-    method: 'post',
-    params
-  })
+    url: "/sale/type/delete",
+    method: "post",
+    params,
+  });
 }
 
 export function getDetail(params) {
   return request({
-    url: '/sale/type/detail',
-    method: 'post',
-    data: params
-  })
+    url: "/sale/type/detail",
+    method: "post",
+    data: params,
+  });
 }
 
 export function updateType(params) {
   return request({
-    url: '/sale/type/update',
-    method: 'post',
-    data: params
-  })
+    url: "/sale/type/update",
+    method: "post",
+    data: params,
+  });
 }
 
 // 返利钱包列表
 
 export function getWalletList(params) {
   return request({
-    url: '/wallet/rebate/list',
-    method: 'get',
-    params
-  })
+    url: "/wallet/rebate/list",
+    method: "get",
+    params,
+  });
 }
 
-
 export function addWallet(params) {
   return request({
-    url: '/wallet/add',
-    method: 'post',
-    data: params
-  })
+    url: "/wallet/add",
+    method: "post",
+    data: params,
+  });
 }
 
-
 export function getWalletDetail(params) {
   return request({
-    url: '/wallet/rebate/detail',
-    method: 'get',
-    params
-  })
+    url: "/wallet/rebate/detail",
+    method: "get",
+    params,
+  });
 }
 
 export function updateWallet(params) {
   return request({
-    url: '/wallet/update',
-    method: 'post',
-    data: params
-  })
+    url: "/wallet/update",
+    method: "post",
+    data: params,
+  });
 }
 
-
 // 销售品类
 export function getDictList(params) {
   return request({
-    url: '/common/dict/list',
-    method: 'get',
-    params
-  })
+    url: "/common/dict/list",
+    method: "get",
+    params,
+  });
 }
 
 // 产品品类
 export function getProductList(params) {
   return request({
-    url: '/product-category/list',
-    method: 'get',
-    params
-  })
+    url: "/product-category/list",
+    method: "get",
+    params,
+  });
 }
 
 //获取轮播图列表
 export function getImgCarouseList(params) {
   return request({
-    url: '/record/list',
-    method: 'get',
-    params
-  })
+    url: "/record/list",
+    method: "get",
+    params,
+  });
 }
 
 //轮播图显示与隐藏
 export function handleImgIsShow(params) {
   return request({
-    url: '/record/updateImgStatus',
-    method: 'post',
-    params
-  })
+    url: "/record/updateImgStatus",
+    method: "post",
+    params,
+  });
 }
 
 //增加轮播图
 export function addImgCarousel(params) {
   return request({
-    url: '/record/carousel/add',
-    method: 'post',
-    data: params
-  })
+    url: "/record/carousel/add",
+    method: "post",
+    data: params,
+  });
 }
 
 //修改轮播图
 export function editImgCarousel(params) {
   return request({
-    url: '/record/update',
-    method: 'post',
-    data: params
-  })
+    url: "/record/update",
+    method: "post",
+    data: params,
+  });
 }
 
 //批量删除轮播图
 export function delImgData(params) {
   return request({
-    url: '/record/delete',
-    method: 'post',
-    params
-  })
+    url: "/record/delete",
+    method: "post",
+    params,
+  });
 }
 
 //添加公司信息
 export function addCompany(params) {
   return request({
-    url: '/record/company/add',
-    method: 'post',
-    data: params
-  })
+    url: "/record/company/add",
+    method: "post",
+    data: params,
+  });
 }
 
 //获取公司数据
 export function getCompanyList(params) {
   return request({
-    url: '/record/company/list',
-    method: 'get',
-    params
-  })
+    url: "/record/company/list",
+    method: "get",
+    params,
+  });
+}
+//返利钱包销售类型-列表
+export function getWalletRebateSaletypelist(params) {
+  return request({
+    url: "/wallet/rebate_saletype/list",
+    method: "get",
+    params,
+  });
+}
+//返利钱包销售类型-新增
+export function getWalletRebateSaletypeAdd(data) {
+  return request({
+    url: "/wallet/rebate_saletype/add",
+    method: "POST",
+    data,
+  });
+}
+//返利钱包销售类型-详情
+export function getWalletRebateSaletypeDetail(params) {
+  return request({
+    url: "/wallet/rebate_saletype/detail",
+    method: "get",
+    params,
+  });
+}
+//返利钱包列表
+export function getWalletRebateList(params) {
+  return request({
+    url: "/wallet/rebate/list",
+    method: "get",
+    params,
+  });
+}
+//返利钱包销售类型-删除
+export function getWalletRebateSaletypeDelete(params) {
+  return request({
+    url: "/wallet/rebate_saletype/delete",
+    method: "post",
+    params,
+  });
 }

+ 89 - 48
src/views/sales_rebate/rebate_list.vue

@@ -62,6 +62,9 @@
                 >新增</el-button
               >
 
+              <el-button type="primary" size="small" @click="delfn"
+                >批量删除</el-button
+              >
               <el-button type="primary" size="small" @click="submitScreenForm"
                 >查询</el-button
               >
@@ -83,6 +86,7 @@
         fit
         highlight-current-row
         stripe
+        @selection-change="selectionhangeFn"
       >
         <el-table-column type="selection" width="55" align="center">
         </el-table-column>
@@ -125,7 +129,11 @@
             <el-button type="text" size="small" @click="hanleDateil(scope.row)"
               >查看</el-button
             >
-            <el-button type="text" size="small" @click="hanleEdit(scope.row)" v-if="$checkBtnRole('edit', $route.meta.roles)"
+            <el-button
+              type="text"
+              size="small"
+              @click="hanleEdit(scope.row)"
+              v-if="$checkBtnRole('edit', $route.meta.roles)"
               >编辑</el-button
             >
             <!-- <el-button type="text" size="small">编辑</el-button> -->
@@ -161,50 +169,52 @@
           :inline="false"
           size="normal"
         >
-          <el-form-item label="返利使用钱包" prop="name">
-            <el-input
+          <el-form-item label="返利使用钱包" prop="walletRebateId">
+            <!-- <el-input
               v-model="dialogForm.name"
               :readonly="type == 3"
-            ></el-input>
+            ></el-input> -->
+            <el-select
+              v-model="dialogForm.walletRebateId"
+              :disabled="type == 3"
+              placeholder="请选择钱包"
+            >
+              <el-option
+                v-for="item in walletList"
+                :key="item.walletRebateId"
+                :label="item.name"
+                :value="item.walletRebateId"
+              >
+              </el-option>
+            </el-select>
           </el-form-item>
 
-          <el-form-item label="销售类型名称" prop="saleTypeName">
+          <el-form-item label="销售类型名称" prop="saleTypeId">
             <el-select
-              v-model="dialogForm.saleTypeCode"
+              v-model="dialogForm.saleTypeId"
               :disabled="type == 3"
               @change="handleChange"
               placeholder="请选择销售类型编码"
             >
               <el-option
                 v-for="item in typeList"
-                :key="item.sysDictId"
+                :key="item.id"
                 :label="item.saleName"
-                :value="item.saleCode"
+                :value="item.id"
               >
               </el-option>
             </el-select>
           </el-form-item>
-          <el-form-item label="销售类型编码" prop="saleTypeCode">
+          <!-- <el-form-item label="销售类型编码" prop="saleTypeCode">
             <el-input
               v-model="dialogForm.saleTypeCode"
               :readonly="true"
             ></el-input>
-          </el-form-item>
+          </el-form-item> -->
           <!-- <el-form-item label="产品使用品类" prop="mainName">
             <el-input v-model="dialogForm.mainName" :readonly="true"></el-input>
           </el-form-item> -->
 
-          <el-form-item label="返利折扣比例" prop="rebateRate">
-
-           <el-input
-                type="number"
-                 placeholder="例如0.1=1折"
-                :readonly="type == 3"
-                @change="handleNumber"
-                v-model.number="dialogForm.rebateRate"
-              ></el-input>
-          </el-form-item>
-
           <el-form-item label="状态" prop="status">
             <el-switch
               v-model="dialogForm.status"
@@ -238,12 +248,18 @@ import {
   getWalletList,
   getWalletDetail,
   getProductList,
+  getWalletRebateSaletypelist,
+  getWalletRebateList,
+  getWalletRebateSaletypeAdd,
+  getWalletRebateSaletypeDelete,
 } from "@/api/policy_list";
 
 export default {
   mixins: [Mixin],
   data() {
     return {
+      ids: [],
+      walletList: [],
       type: 0, // 0 1
       screenForm: {
         mainName: "",
@@ -252,13 +268,9 @@ export default {
         status: "",
       },
       dialogForm: {
-        name: "",
-        mainName: "",
-        mainId: "",
-        saleTypeCode: "",
-        saleTypeName: "",
-        rebateRate: "",
-        status: "",
+        walletRebateId: "",
+
+        saleTypeId: "",
       },
       dataList: [],
       columns: [
@@ -326,18 +338,44 @@ export default {
       dictListData: [],
       typeList: [],
       rules: {
-        name: [{ required: true, message: "请输入名称", trigger: "blur" }],
-        saleTypeCode: [
-          { required: true, message: "请选择编码", trigger: "blur" },
+        walletRebateId: [
+          { required: true, message: "请输入名称", trigger: "blur" },
         ],
-
-        rebateRate: [
-          { required: true, message: "请输入比例", trigger: "blur" },
+        saleTypeId: [
+          { required: true, message: "请选择销售类型", trigger: "blur" },
         ],
+
+        // rebateRate: [
+        //   { required: true, message: "请输入比例", trigger: "blur" },
+        // ],
       },
     };
   },
   methods: {
+    //
+    selectionhangeFn(value) {
+      console.log(value);
+      this.ids = value.map((v) => v.walletRebateSaleTypeId);
+    },
+    //删除
+    async delfn() {
+      if (this.ids.length == 0) {
+        this.$message.error("请选择列表数据");
+        return;
+      }
+      let res = this.ids.toString();
+      await getWalletRebateSaletypeDelete({ walletRebateSaleTypeIds: res });
+      this.getList();
+      this.$message.success("删除成功");
+    },
+    //获取钱包列表
+    async getWalletList() {
+      const res = await getWalletRebateList({
+        pageNum: 1,
+        pageSize: -1,
+      });
+      this.walletList = res.data.records;
+    },
     getList() {
       this.listLoading = true;
       const params = {
@@ -349,7 +387,7 @@ export default {
         status: this.screenForm.status,
       };
 
-      getWalletList(params).then((res) => {
+      getWalletRebateSaletypelist(params).then((res) => {
         this.dataList = res.data.records;
         this.listTotal = res.data.total;
         this.listLoading = false;
@@ -373,15 +411,15 @@ export default {
         }
       });
     },
-    handleNumber(e){
-     console.log(e)
-     if (Number(e)<0) {
-        this.dialogForm.rebateRate = 0.1
-     }else if(Number(e)>1){
-      this.dialogForm.rebateRate = 0.9
-     }else{
-       this.dialogForm.rebateRate = e
-     }
+    handleNumber(e) {
+      console.log(e);
+      if (Number(e) < 0) {
+        this.dialogForm.rebateRate = 0.1;
+      } else if (Number(e) > 1) {
+        this.dialogForm.rebateRate = 0.9;
+      } else {
+        this.dialogForm.rebateRate = e;
+      }
     },
     handleSwitch(e, walletRebateId) {
       updateWallet({
@@ -396,8 +434,8 @@ export default {
       console.log(item);
       this.dialogForm = {
         adminCompanyId: item.adminCompanyId,
-        mainId: '',
-        mainName:'',
+        mainId: "",
+        mainName: "",
         name: item.name,
         rebateRate: item.rebateRate,
         rabateSort: item.rabateSort,
@@ -438,7 +476,7 @@ export default {
     hanelclose() {
       this.type = "";
       this.hanleReset();
-       this.$refs.dialogForm.resetFields();
+      this.$refs.dialogForm.resetFields();
     },
     handelInfo() {
       console.log(this.$refs.dialogForm);
@@ -449,7 +487,7 @@ export default {
             const params = {
               ...this.dialogForm,
             };
-            addWallet(params).then((res) => {
+            getWalletRebateSaletypeAdd(params).then((res) => {
               console.log(res);
               this.$successMsg("添加成功");
               this.hanleReset();
@@ -497,6 +535,9 @@ export default {
       // });
     },
   },
+  created() {
+    this.getWalletList();
+  },
   components: {
     Pagination,
   },

+ 466 - 0
src/views/sales_rebate/rebate_list_type.vue

@@ -0,0 +1,466 @@
+<template>
+  <div class="app-container">
+    <div class="screen-container">
+      <el-form
+        ref="screenForm"
+        :model="screenForm"
+        size="small"
+        label-position="left"
+      >
+        <el-row :gutter="20">
+          <el-col :xs="24" :ms="6" :lg="6">
+            <el-form-item label="" prop="mainName">
+              <el-input
+                v-model="screenForm.name"
+                placeholder="返利类型"
+                size="small"
+              ></el-input>
+            </el-form-item>
+          </el-col>
+
+          <el-col :xs="24" :ms="6" :lg="6">
+            <el-form-item prop="status">
+              <el-select
+                v-model="screenForm.status"
+                placeholder="请选择"
+                size="small"
+              >
+                <el-option
+                  v-for="item in options"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
+                </el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="24" :ms="18" :lg="18">
+            <el-form-item>
+              <el-button
+                type="primary"
+                size="small"
+                v-if="$checkBtnRole('add', $route.meta.roles)"
+                @click="(dialogVisible = true), (type = 1), getDictList()"
+                >新增</el-button
+              >
+
+              <el-button type="primary" size="small" @click="submitScreenForm"
+                >查询</el-button
+              >
+              <el-button type="primary" size="small" @click="resetScreenForm"
+                >重置</el-button
+              >
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+    </div>
+
+    <div class="mymain-container">
+      <el-table
+        v-loading="listLoading"
+        :data="dataList"
+        element-loading-text="Loading"
+        border
+        fit
+        highlight-current-row
+        stripe
+      >
+        <el-table-column type="selection" width="55" align="center">
+        </el-table-column>
+        <template v-for="col in columns">
+          <el-table-column
+            align="center"
+            :label="col.lable"
+            :prop="col.prop"
+            :min-width="col.widht"
+            show-overflow-tooltip
+            v-if="col.prop == 'status'"
+          >
+            <template slot-scope="scope">
+              <el-switch
+                v-model="scope.row.status"
+                @change="handleSwitch($event, scope.row.walletRebateId)"
+                :active-text="scope.row.status ? '已启用' : '已禁用'"
+              >
+              </el-switch>
+            </template>
+          </el-table-column>
+          <el-table-column
+            v-else
+            align="center"
+            :label="col.lable"
+            :prop="col.prop"
+            :min-width="col.widht"
+            show-overflow-tooltip
+          >
+          </el-table-column>
+        </template>
+
+        <el-table-column
+          align="center"
+          fixed="right"
+          label="操作"
+          min-width="160"
+        >
+          <template slot-scope="scope">
+            <el-button type="text" size="small" @click="hanleDateil(scope.row)"
+              >查看</el-button
+            >
+            <el-button
+              type="text"
+              size="small"
+              @click="hanleEdit(scope.row)"
+              v-if="$checkBtnRole('edit', $route.meta.roles)"
+              >编辑</el-button
+            >
+            <!-- <el-button type="text" size="small">编辑</el-button> -->
+          </template>
+        </el-table-column>
+      </el-table>
+      <!-- 分页 -->
+      <div class="fr">
+        <el-pagination
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page="currentPage"
+          :page-sizes="[10, 20, 30, 50]"
+          :page-size="10"
+          layout="total, sizes, prev, pager, next, jumper"
+          :total="listTotal"
+        >
+        </el-pagination>
+      </div>
+    </div>
+    <div>
+      <el-dialog
+        :visible.sync="dialogVisible"
+        width="50%"
+        @close="hanelclose"
+        title="返利类型"
+      >
+        <el-form
+          :model="dialogForm"
+          ref="dialogForm"
+          :rules="rules"
+          label-width="120px"
+          :inline="false"
+          size="normal"
+        >
+          <el-form-item label="返利使用钱包" prop="name">
+            <el-input
+              v-model="dialogForm.name"
+              :readonly="type == 3"
+            ></el-input>
+          </el-form-item>
+
+          <!-- <el-form-item label="产品使用品类" prop="mainName">
+            <el-input v-model="dialogForm.mainName" :readonly="true"></el-input>
+          </el-form-item> -->
+
+          <el-form-item label="返利折扣比例" prop="rebateRate">
+            <el-input
+              type="number"
+              placeholder="例如0.1=1折"
+              :readonly="type == 3"
+              @change="handleNumber"
+              v-model.number="dialogForm.rebateRate"
+            ></el-input>
+          </el-form-item>
+
+          <el-form-item label="状态" prop="status">
+            <el-switch
+              v-model="dialogForm.status"
+              :disabled="type == 3"
+              :active-value="true"
+              :inactive-value="false"
+              :active-text="dialogForm.status ? '启用' : ''"
+            >
+            </el-switch>
+          </el-form-item>
+        </el-form>
+        <template v-if="type !== 3">
+          <span slot="footer" class="dialog-footer">
+            <el-button @click="hanleCancel">取 消</el-button>
+            <el-button type="primary" @click="handelInfo">确 定</el-button>
+          </span>
+        </template>
+      </el-dialog>
+    </div>
+  </div>
+</template>
+
+<script>
+import Mixin from "@/mixin/index";
+import Pagination from "@/components/Pagination";
+import {
+  addWallet,
+  getDictList,
+  getTypeList,
+  updateWallet,
+  getWalletList,
+  getWalletDetail,
+  getProductList,
+} from "@/api/policy_list";
+
+export default {
+  mixins: [Mixin],
+  data() {
+    return {
+      type: 0, // 0 1
+      screenForm: {
+        name: "",
+        saleTypeCode: "",
+        saleTypeName: "",
+        status: "",
+      },
+      dialogForm: {
+        name: "",
+        mainName: "",
+        mainId: "",
+        saleTypeCode: "",
+        saleTypeName: "",
+        rebateRate: "",
+        status: "",
+      },
+      dataList: [],
+      columns: [
+        {
+          prop: "name",
+          lable: "返利类型",
+          widht: 160,
+        },
+        {
+          prop: "rebateRate",
+          lable: "返利折扣比例",
+          widht: 160,
+        },
+        {
+          prop: "status",
+          lable: "状态",
+          widht: 160,
+        },
+        {
+          prop: "createBy",
+          lable: "创建人",
+          widht: 160,
+        },
+        {
+          prop: "createTime",
+          lable: "创建时间",
+          widht: 160,
+        },
+        {
+          prop: "updateBy",
+          lable: "更新人",
+          widht: 160,
+        },
+        {
+          prop: "updateTime",
+          lable: "更新时间",
+          widht: 160,
+        },
+      ],
+      options: [
+        {
+          value: "",
+          label: "全部",
+        },
+        {
+          value: 1,
+          label: "已启用",
+        },
+        {
+          value: 0,
+          label: "已停用",
+        },
+      ],
+      dictListData: [],
+      typeList: [],
+      rules: {
+        name: [{ required: true, message: "请输入名称", trigger: "blur" }],
+        saleTypeCode: [
+          { required: true, message: "请选择编码", trigger: "blur" },
+        ],
+
+        rebateRate: [
+          { required: true, message: "请输入比例", trigger: "blur" },
+        ],
+      },
+    };
+  },
+  methods: {
+    getList() {
+      this.listLoading = true;
+      const params = {
+        pageNum: this.currentPage,
+        pageSize: this.pageSize,
+        name: this.screenForm.name,
+        // saleTypeCode: this.screenForm.saleTypeCode,
+        // saleTypeName: this.screenForm.saleTypeName,
+        status: this.screenForm.status,
+      };
+
+      getWalletList(params).then((res) => {
+        this.dataList = res.data.records;
+        this.listTotal = res.data.total;
+        this.listLoading = false;
+      });
+      getProductList({
+        productCategoryName: "",
+        productCategoryNumber: "",
+      }).then((res) => {
+        this.productList = res.data;
+      });
+    },
+
+    handleChange(e) {
+      console.log(e, this.typeList);
+
+      this.typeList.find((k) => {
+        if (e == k.saleCode) {
+          this.dialogForm.saleTypeName = k.saleName;
+          // this.dialogForm.mainId = k.mainId;
+          // this.dialogForm.mainName = k.mainName;
+        }
+      });
+    },
+    handleNumber(e) {
+      console.log(e);
+      if (Number(e) < 0) {
+        this.dialogForm.rebateRate = 0.1;
+      } else if (Number(e) > 1) {
+        this.dialogForm.rebateRate = 0.9;
+      } else {
+        this.dialogForm.rebateRate = e;
+      }
+    },
+    handleSwitch(e, walletRebateId) {
+      updateWallet({
+        walletRebateId,
+        status: e,
+      }).then((res) => {
+        this.$successMsg("状态已更改");
+        // this.hanleReset();
+      });
+    },
+    hanleEdit(item) {
+      console.log(item);
+      this.dialogForm = {
+        adminCompanyId: item.adminCompanyId,
+        mainId: "",
+        mainName: "",
+        name: item.name,
+        rebateRate: item.rebateRate,
+        rabateSort: item.rabateSort,
+        saleTypeCode: item.saleTypeCode,
+        saleTypeId: item.saleTypeId,
+        saleTypeName: item.saleTypeName,
+        status: item.status,
+        walletRebateId: item.walletRebateId,
+      };
+      this.getDictList();
+      this.dialogVisible = true;
+    },
+    getDictList() {
+      getDictList({
+        sysDictEnum: "PRODUCT_TYPE",
+      }).then((res) => {
+        console.log(res);
+        this.dictListData = res.data;
+      });
+      const params = {
+        pageNum: 1,
+        pageSize: 10,
+        saleCode: "",
+        saleName: "",
+        status: "",
+      };
+      getTypeList(params).then((res) => {
+        this.typeList = res.data.records;
+      });
+    },
+    hanleDateil(item) {
+      this.type = 3;
+      this.dialogVisible = true;
+      this.dialogForm = {
+        ...item,
+      };
+    },
+    hanelclose() {
+      this.type = "";
+      this.hanleReset();
+      this.$refs.dialogForm.resetFields();
+    },
+    handelInfo() {
+      console.log(this.$refs.dialogForm);
+      this.$refs.dialogForm.validate((valid) => {
+        if (valid) {
+          if (this.type) {
+            // this.hanleScreen(this.dialogForm.mainId);
+            const params = {
+              ...this.dialogForm,
+            };
+            addWallet(params).then((res) => {
+              console.log(res);
+              this.$successMsg("添加成功");
+              this.hanleReset();
+            });
+          } else {
+            const upParams = {
+              ...this.dialogForm,
+            };
+            updateWallet(upParams).then((res) => {
+              this.$successMsg("修改成功");
+              this.hanleReset();
+            });
+          }
+        } else {
+          console.log("error submit!!");
+          return false;
+        }
+      });
+    },
+    hanleReset() {
+      this.dialogForm = {
+        name: "",
+        mainId: "",
+        mainName: "",
+        saleTypeCode: "",
+        saleTypeName: "",
+        rabateRate: "",
+        status: true,
+      };
+      // this.$refs.dialogForm.resetFields()
+      this.dialogVisible = false;
+      this.getList();
+    },
+    hanleCancel() {
+      this.hanleReset();
+      this.dialogVisible = false;
+    },
+    hanleScreen(code) {
+      // this.dictListData.find((k) => {
+      //   if (k.dictCode == code) {
+      //     this.dialogForm.mainId = k.dictCode;
+      //     this.dialogForm.mainName = k.dictValue;
+      //     return;
+      //   }
+      // });
+    },
+  },
+  components: {
+    Pagination,
+  },
+};
+</script>
+
+<style scoped>
+.el-switch.is-disabled {
+  opacity: inherit;
+}
+::v-deep .el-select {
+  width: 100%;
+}
+</style>