Browse Source

Merge branch 'feature/Feature-basic_data' of https://gogs.zfire.top/zfire-front/supply-front into feature/Feature-basic_data

howie 3 years ago
parent
commit
b0fcd29678

+ 94 - 2
src/api/basic_data/dealer.js

@@ -1,8 +1,100 @@
 import request from '@/utils/request'
 import request from '@/utils/request'
 
 
-export function getList(params) {
+
+//获取经销商列表
+export function getDealerList(params) {
+  return request({
+    url: '/customer/list',
+    method: 'get',
+    params
+  })
+}
+//经销商详情
+export function getDealerInfo(params) {
+  return request({
+    url: '/customer/detail',
+    method: 'get',
+    params
+  })
+}
+
+//经销商客户存货分类列表
+export function getDealerStockList(params) {
+  return request({
+    url: '/customer/pt/list',
+    method: 'get',
+    params
+  })
+}
+//新增经销商客户存货分类
+export function getDealerStockAdd(data) {
+  return request({
+    url: '/customer/pt/add',
+    method: 'post',
+    data
+  })
+}
+//删除经销商客户存货分类
+export function deleDealerStockList(params) {
+  return request({
+    url: '/customer/pt/delete',
+    method: 'post',
+    params
+  })
+}
+//经销商工程机配置列表
+export function getDealerDepositList(params) {
+  return request({
+    url: '/customer/deposit/list',
+    method: 'get',
+    params
+  })
+}
+//新增经销商工程机配置
+export function getDealerDepositAdd(data) {
+  return request({
+    url: '/customer/deposit/add',
+    method: 'post',
+    data
+  })
+}
+//删除经销商工程机配置
+export function deleDealerDeposit(params) {
+  return request({
+    url: '/customer/deposit/delete',
+    method: 'post',
+    params
+  })
+}
+//修改经销商工程机配置
+export function editDealerDeposit(data) {
+  return request({
+    url: '/customer/deposit/update',
+    method: 'post',
+    data
+  })
+}
+//经销商工程机配置详情
+export function infoDealerDeposit(params) {
+  return request({
+    url: '/customer/deposit/detail',
+    method: 'get',
+    params
+  })
+}
+//经销商申请列表
+export function getDealerApplyList(params) {
+  return request({
+    url: '/customer/apply/list',
+    method: 'get',
+    params
+  })
+}
+
+//字典
+export function getDictionaries(params) {
   return request({
   return request({
-    url: '/admin/user/mch/list',
+    url: '/common/dict/list',
     method: 'get',
     method: 'get',
     params
     params
   })
   })

+ 10 - 1
src/api/basic_data/supplier.js

@@ -2,7 +2,16 @@ import request from '@/utils/request'
 
 
 export function getList(params) {
 export function getList(params) {
   return request({
   return request({
-    url: '/admin/user/mch/list',
+    url: '/supplier/list',
+    method: 'get',
+    params
+  })
+}
+
+//供应商详情
+export function getInfoApi(params) {
+  return request({
+    url: '/supplier/detail',
     method: 'get',
     method: 'get',
     params
     params
   })
   })

+ 74 - 1
src/api/basic_data/taker.js

@@ -1,8 +1,81 @@
 import request from '@/utils/request'
 import request from '@/utils/request'
 
 
+//提货人档案列表
 export function getList(params) {
 export function getList(params) {
   return request({
   return request({
-    url: '/admin/user/mch/list',
+    url: '/taker-record/list',
+    method: 'get',
+    params
+  })
+}
+// 停用提货人档案
+export function stopTaker(params) {
+  return request({
+    url: '/taker-record/stop',
+    method: 'post',
+    params
+  })
+}
+//新增提货人档案
+export function addDataList(data) {
+  return request({
+    url: '/taker-record/add',
+    method: 'POST',
+    data
+  })
+}
+//提货人档案列表导出
+export function exportDataList(params) {
+  return request({
+    url: '/taker-record/export',
+    method: 'get',
+    params
+  })
+}
+//获取验证码
+export function getCodeApi(params) {
+  return request({
+    url: '/taker-record/send/messageCode',
+    method: 'get',
+    params
+  })
+}
+//提货车辆档案列表
+export function getCarList(params) {
+  return request({
+    url: '/take-car-record/list',
+    method: 'get',
+    params
+  })
+}
+//新增提货车辆档案
+export function addDataListApi(data) {
+  return request({
+    url: '/take-car-record/add',
+    method: 'post',
+    data
+  })
+}
+//编辑提货车辆档案
+export function editDataListApi(data) {
+  return request({
+    url: '/take-car-record/edit',
+    method: 'post',
+    data
+  })
+}
+//删除提货车辆档案
+export function delCarFn(params) {
+  return request({
+    url: '/take-car-record/del',
+    method: 'post',
+    params
+  })
+}
+//提货车辆档案列表导出
+export function exportCarList(params) {
+  return request({
+    url: '/take-car-record/export',
     method: 'get',
     method: 'get',
     params
     params
   })
   })

+ 1 - 0
src/store/modules/user.js

@@ -59,6 +59,7 @@ const actions = {
       console.log(state);
       console.log(state);
       getInfo(state.userid).then(response => {
       getInfo(state.userid).then(response => {
         const { data } = response
         const { data } = response
+        console.log(1111111,data);
 
 
         if (!data) {
         if (!data) {
           return reject('Verification failed, please Login again.')
           return reject('Verification failed, please Login again.')

+ 70 - 13
src/views/basic_data/dealer/components/dealer_list-detail.vue

@@ -9,11 +9,15 @@
       </div>
       </div>
       <el-row>
       <el-row>
         <el-col :span="8"
         <el-col :span="8"
-          ><span class="color">创建组织</span><input type="text"
+          ><span class="color">创建组织</span
+          ><input v-model="infoForm.a" type="text"
         /></el-col>
         /></el-col>
-        <el-col :span="8"><span>客户编码</span><input type="text" /></el-col>
         <el-col :span="8"
         <el-col :span="8"
-          ><span class="color">使用组织</span><input type="text"
+          ><span>客户编码</span><input v-model="infoForm.number" type="text"
+        /></el-col>
+        <el-col :span="8"
+          ><span class="color">使用组织</span
+          ><input v-model="infoForm.useOrgId" type="text"
         /></el-col>
         /></el-col>
       </el-row>
       </el-row>
       <el-row>
       <el-row>
@@ -36,12 +40,14 @@
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">地区</span><input type="text"
+              ><span class="marg-r color">地区</span
+              ><input v-model="infoForm.region" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">省份</span><input type="text"
+              ><span class="marg-r color">省份</span
+              ><input v-model="infoForm.province" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
@@ -51,7 +57,8 @@
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">通讯地址</span><input type="text"
+              ><span class="marg-r">通讯地址</span
+              ><input v-model="infoForm.invoiceAddress" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
@@ -72,7 +79,8 @@
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">联系邮箱</span><input type="text"
+              ><span class="marg-r">联系邮箱</span
+              ><input v-model="infoForm.email" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
         </div>
         </div>
@@ -82,7 +90,8 @@
           </div>
           </div>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">联系电话</span><input type="text"
+              ><span class="marg-r">联系电话</span
+              ><input v-model="infoForm.mobile" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
@@ -110,7 +119,8 @@
           </div>
           </div>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">发票抬头</span><input type="text"
+              ><span class="marg-r">发票抬头</span
+              ><input v-model="infoForm.invoiceTitle" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
@@ -120,22 +130,26 @@
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">开户银行</span><input type="text"
+              ><span class="marg-r">开户银行</span
+              ><input v-model="infoForm.bank" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">银行账号</span><input type="text"
+              ><span class="marg-r">银行账号</span
+              ><input v-model="infoForm.bankAccount" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">开票联系电话</span><input type="text"
+              ><span class="marg-r">开票联系电话</span
+              ><input v-model="infoForm.invoicePhone" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">开票通讯地址</span><input type="text"
+              ><span class="marg-r">开票通讯地址</span
+              ><input v-model="infoForm.invoiceAddress" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
         </div>
         </div>
@@ -221,6 +235,49 @@
 
 
 <script>
 <script>
 export default {
 export default {
+  props: {
+    infoList: {
+      type: Object,
+      required: true,
+    },
+  },
+  data() {
+    return {
+      infoForm: {
+        adminUserId: "",
+        bank: "",
+        bankAccount: "",
+        bindUser: true,
+        city: "",
+        createBy: "",
+        createTime: "",
+        creditAmount: 0,
+        email: "",
+        forbidStatus: "",
+        id: "",
+        invoiceAddress: "",
+        invoicePhone: "",
+        invoiceTitle: "",
+        mobile: "",
+        name: "",
+        number: "",
+        province: "",
+        region: "",
+        saleDeptName: "",
+        saleDeptNumber: "",
+        syncTime: "",
+        taxNo: "",
+        updateBy: "",
+        updateTime: "",
+        useOrgId: "",
+        useOrgName: "",
+        useOrgNumber: "",
+      },
+    };
+  },
+  created() {
+    this.infoForm = this.infoList;
+  },
   methods: {
   methods: {
     goBack() {
     goBack() {
       console.log(this.$parent);
       console.log(this.$parent);

+ 74 - 65
src/views/basic_data/dealer/dealer_apply.vue

@@ -3,40 +3,52 @@
     <div v-if="isShow">
     <div v-if="isShow">
       <!-- 筛选条件 -->
       <!-- 筛选条件 -->
       <div>
       <div>
-        <el-form label-width="70px" size="small" label-position="left">
+        <el-form
+          ref="searchForm"
+          :model="searchForm"
+          label-width="70px"
+          size="small"
+          label-position="left"
+        >
           <el-row :gutter="20">
           <el-row :gutter="20">
             <el-col :xs="24" :sm="12" :lg="6">
             <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="企业名称" prop="account">
-                <el-input placeholder="请输入企业名称"></el-input>
+              <el-form-item label="企业名称" prop="customerName">
+                <el-input
+                  v-model="searchForm.customerName"
+                  placeholder="请输入企业名称"
+                ></el-input>
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6">
             <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="联系人" prop="nickname">
-                <el-input placeholder="请输入联系人"></el-input>
+              <el-form-item label="联系人" prop="linkName">
+                <el-input
+                  v-model="searchForm.linkName"
+                  placeholder="请输入联系人"
+                ></el-input>
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6">
             <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="联系电话" prop="phone">
-                <el-input placeholder="请输入联系电话"></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="联系电话" prop="email">
-                <el-input placeholder="请输入联系电话"></el-input>
+              <el-form-item label="联系电话" prop="linkPhone">
+                <el-input
+                  v-model="searchForm.linkPhone"
+                  placeholder="请输入联系电话"
+                ></el-input>
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
+
             <el-col :xs="24" :sm="12" :lg="6">
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="电子邮箱" prop="email">
               <el-form-item label="电子邮箱" prop="email">
-                <el-input placeholder="请输入电子邮箱"></el-input>
+                <el-input
+                  v-model="searchForm.email"
+                  placeholder="请输入电子邮箱"
+                ></el-input>
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
 
 
-            <el-col :xs="24" :sm="12" :lg="18" class="tr">
+            <el-col :xs="24" :sm="12" :lg="24" class="tr">
               <el-form-item label="">
               <el-form-item label="">
-                <el-button size="small" @click="resetScreenForm"
-                  >清空</el-button
-                >
-                <el-button size="small" type="primary" @click="submitScreenForm"
+                <el-button size="small" @click="clearFn">清空</el-button>
+                <el-button size="small" type="primary" @click="searchFn"
                   >搜索</el-button
                   >搜索</el-button
                 >
                 >
               </el-form-item>
               </el-form-item>
@@ -73,21 +85,21 @@
             <el-table-column
             <el-table-column
               align="center"
               align="center"
               label="企业名称"
               label="企业名称"
-              prop="enterprise"
+              prop="customerName"
               min-width="160"
               min-width="160"
               show-overflow-tooltip
               show-overflow-tooltip
             ></el-table-column>
             ></el-table-column>
             <el-table-column
             <el-table-column
               align="center"
               align="center"
               label="联系人"
               label="联系人"
-              prop="friend"
+              prop="linkName"
               min-width="160"
               min-width="160"
               show-overflow-tooltip
               show-overflow-tooltip
             ></el-table-column>
             ></el-table-column>
             <el-table-column
             <el-table-column
               align="center"
               align="center"
               label="联系电话"
               label="联系电话"
-              prop="telephone"
+              prop="linkPhone"
               min-width="160"
               min-width="160"
               show-overflow-tooltip
               show-overflow-tooltip
             ></el-table-column>
             ></el-table-column>
@@ -101,7 +113,7 @@
             <el-table-column
             <el-table-column
               align="center"
               align="center"
               label="联系地址"
               label="联系地址"
-              prop="address"
+              prop="linkAddress"
               min-width="160"
               min-width="160"
               show-overflow-tooltip
               show-overflow-tooltip
             ></el-table-column>
             ></el-table-column>
@@ -115,21 +127,21 @@
             <el-table-column
             <el-table-column
               align="center"
               align="center"
               label="跟进人"
               label="跟进人"
-              prop="person"
+              prop="lastFollowerName"
               min-width="160"
               min-width="160"
               show-overflow-tooltip
               show-overflow-tooltip
             ></el-table-column>
             ></el-table-column>
             <el-table-column
             <el-table-column
               align="center"
               align="center"
               label="跟进时间"
               label="跟进时间"
-              prop="personDate"
+              prop="lastFollowerTime"
               min-width="160"
               min-width="160"
               show-overflow-tooltip
               show-overflow-tooltip
             ></el-table-column>
             ></el-table-column>
             <el-table-column
             <el-table-column
               align="center"
               align="center"
               label="跟进状态"
               label="跟进状态"
-              prop="state"
+              prop="status"
               min-width="160"
               min-width="160"
               show-overflow-tooltip
               show-overflow-tooltip
             ></el-table-column>
             ></el-table-column>
@@ -165,6 +177,7 @@
 </template>
 </template>
 
 
 <script>
 <script>
+import { getDealerApplyList } from "@/api/basic_data/dealer";
 import DealerApplyDetail from "./components/dealer-apply-detail.vue";
 import DealerApplyDetail from "./components/dealer-apply-detail.vue";
 export default {
 export default {
   data() {
   data() {
@@ -174,54 +187,50 @@ export default {
       listTotal: 0, // 列表总数
       listTotal: 0, // 列表总数
       isShow: true,
       isShow: true,
       showDialog: false,
       showDialog: false,
-      dataList: [
-        {
-          enterprise: "佛山市禅城区梁云冷气经营部",
-          friend: "张三",
-          telephone: "17839906442",
-          email: "@163.com",
-          address: "广东深圳市",
-          reqDate: "2022-5-34  12:08",
-          person: "张三",
-          personDate: "2022-5-24   12:09",
-          state: "跟进中",
-        },
-        {
-          enterprise: "佛山市禅城区梁云冷气经营部",
-          friend: "张三",
-          telephone: "17839906442",
-          email: "@163.com",
-          address: "广东深圳市",
-          reqDate: "2022-5-34  12:08",
-          person: "张三",
-          personDate: "2022-5-24   12:09",
-          state: "跟进中",
-        },
-        {
-          enterprise: "佛山市禅城区梁云冷气经营部",
-          friend: "张三",
-          telephone: "17839906442",
-          email: "@163.com",
-          address: "广东深圳市",
-          reqDate: "2022-5-34  12:08",
-          person: "张三",
-          personDate: "2022-5-24   12:09",
-          state: "跟进中",
-        },
-      ],
-      enterprise: {
-        name: "",
-        friend: "",
-        telephone: "",
-        address: "",
+      listLoading: false, // 列表加载loading
+      dataList: [],
+      searchForm: {
+        customerName: "",
         email: "",
         email: "",
+        linkName: "",
+        linkPhone: "",
       },
       },
     };
     };
   },
   },
   components: {
   components: {
     DealerApplyDetail,
     DealerApplyDetail,
   },
   },
+  async created() {
+    await this.getList({ pageNum: 1, pageSize: 10 });
+  },
   methods: {
   methods: {
+    // 更改每页数量
+    handleSizeChange(val) {
+      this.pageSize = val;
+      this.currentPage = 1;
+      this.getList({ pageNum: 1, pageSize: this.pageSize });
+    },
+    // 更改当前页
+    handleCurrentChange(val) {
+      this.currentPage = val;
+      this.getList({ pageNum: val, pageSize: 10 });
+    },
+    //搜索功能
+    async searchFn() {
+      console.log(this.searchForm);
+      await this.getList({ ...this.searchForm, pageNum: 1, pageSize: 10 });
+    },
+    //重置
+    clearFn() {
+      this.$refs.searchForm.resetFields();
+    },
+    //获取列表数据
+    async getList(data) {
+      const res = await getDealerApplyList(data);
+      console.log(res);
+      this.dataList = res.data.records;
+      this.listTotal = res.data.total;
+    },
     editFn() {
     editFn() {
       this.isShow = false;
       this.isShow = false;
     },
     },

+ 222 - 70
src/views/basic_data/dealer/dealer_deposit.vue

@@ -14,18 +14,29 @@
     </el-card> -->
     </el-card> -->
     <!-- 筛选条件 -->
     <!-- 筛选条件 -->
     <div>
     <div>
-      <el-form label-width="100px" size="small" label-position="left">
+      <el-form
+        ref="searchForm"
+        :model="searchForm"
+        label-width="100px"
+        size="small"
+        label-position="left"
+      >
         <el-row :gutter="20">
         <el-row :gutter="20">
           <el-col :xs="24" :sm="12" :lg="6">
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="经销商名称" prop="account">
-              <el-input placeholder="请输入经销商名称"></el-input>
+            <el-form-item label="经销商名称" prop="customerName">
+              <el-input
+                v-model="searchForm.customerName"
+                placeholder="请输入经销商名称"
+              ></el-input>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
 
 
           <el-col :xs="24" :sm="12" :lg="18">
           <el-col :xs="24" :sm="12" :lg="18">
             <el-form-item label="" class="fr">
             <el-form-item label="" class="fr">
-              <el-button size="small">清空</el-button>
-              <el-button size="small" type="primary">搜索</el-button>
+              <el-button size="small" @click="clearFn">清空</el-button>
+              <el-button size="small" type="primary" @click="searchFn"
+                >搜索</el-button
+              >
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
@@ -34,7 +45,7 @@
     <!-- 按钮 -->
     <!-- 按钮 -->
     <div class="btn-group clearfix">
     <div class="btn-group clearfix">
       <div class="fl">
       <div class="fl">
-        <el-button type="primary" size="small">新增</el-button>
+        <el-button type="primary" size="small" @click="addFn">新增</el-button>
         <el-button type="primary" size="small">编辑</el-button>
         <el-button type="primary" size="small">编辑</el-button>
         <el-button type="primary" size="small">删除</el-button>
         <el-button type="primary" size="small">删除</el-button>
       </div>
       </div>
@@ -59,36 +70,35 @@
         >
         >
           <el-table-column
           <el-table-column
             align="center"
             align="center"
-            label="序号"
-            prop="num"
+            type="index"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           />
           />
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="经销商编码"
             label="经销商编码"
-            prop="bianma"
+            prop="customerNumber"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           />
           />
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="经销商名称"
             label="经销商名称"
-            prop="dealerName"
+            prop="customerName"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           />
           />
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="押金比例"
             label="押金比例"
-            prop="yaJin"
+            prop="rate"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           />
           />
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="备注"
             label="备注"
-            prop="beiZhu"
+            prop="remark"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           />
           />
@@ -126,16 +136,30 @@
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           >
           >
-            <el-button type="text" class="textColor" @click="editFn"
-              >编辑</el-button
-            >
-            <el-button type="text" class="textColor">删除</el-button>
+            <template slot-scope="scope">
+              <el-button
+                type="text"
+                class="textColor"
+                @click="editFn(scope.row.id)"
+                >编辑</el-button
+              >
+              <el-popconfirm
+                @onConfirm="deleFn(scope.row.id)"
+                title="这是一段内容确定删除吗?"
+              >
+                <el-button type="text" class="textColor" slot="reference"
+                  >删除</el-button
+                ></el-popconfirm
+              >
+            </template>
           </el-table-column>
           </el-table-column>
         </el-table>
         </el-table>
       </div>
       </div>
       <!-- 分页 -->
       <!-- 分页 -->
       <div class="fr">
       <div class="fr">
         <el-pagination
         <el-pagination
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
           :current-page="currentPage"
           :current-page="currentPage"
           :page-sizes="[10, 20, 30, 50]"
           :page-sizes="[10, 20, 30, 50]"
           :page-size="10"
           :page-size="10"
@@ -148,99 +172,224 @@
 
 
     <!-- 弹窗 -->
     <!-- 弹窗 -->
     <el-dialog
     <el-dialog
-      title="经销商工程机押金比例设置"
+      :title="title"
       :visible.sync="showDialog"
       :visible.sync="showDialog"
       width="30%"
       width="30%"
       :show-close="false"
       :show-close="false"
       :close-on-click-modal="false"
       :close-on-click-modal="false"
     >
     >
-      <el-form :model="dialogForm" label-width="100px" label-position="right">
-        <el-form-item label="经销商编码">
+      <el-form
+        ref="dialogForm"
+        :model="dialogForm"
+        label-width="100px"
+        label-position="right"
+      >
+        <el-form-item label="经销商名称">
           <el-select
           <el-select
-            v-model="dialogForm.bianma"
-            placeholder="请选择活动区域"
             class="inputStyle"
             class="inputStyle"
+            v-model="dialogForm.customerId"
+            placeholder="名称"
           >
           >
-            <el-option label="区域一" value="shanghai"></el-option>
-            <el-option label="区域二" value="beijing"></el-option>
+            <el-option
+              v-for="item in dealerList"
+              :key="item.id"
+              :label="item.name"
+              :value="item.id"
+            >
+            </el-option>
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
-        <el-form-item label="经销商名称">
-          <el-input v-model="dialogForm.name" class="inputStyle"></el-input>
-        </el-form-item>
+
         <el-form-item label="押金比例">
         <el-form-item label="押金比例">
-          <el-input v-model="dialogForm.yaJin" class="inputStyle"></el-input>
+          <el-input v-model="dialogForm.rate" class="inputStyle"></el-input>
+        </el-form-item>
+        <el-form-item label="押金定额金额">
+          <el-input v-model="dialogForm.amount" class="inputStyle"></el-input>
+        </el-form-item>
+        <el-form-item label="开始时间">
+          <el-date-picker
+            class="inputStyle"
+            v-model="dialogForm.startTime"
+            type="datetime"
+            placeholder="选择日期时间"
+            default-time="00:00:00"
+            value-format="yyyy-MM-dd HH:mm:ss"
+          >
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="结束时间">
+          <el-date-picker
+            class="inputStyle"
+            v-model="dialogForm.endTime"
+            type="datetime"
+            placeholder="选择日期时间"
+            default-time="23:59:59"
+            value-format="yyyy-MM-dd HH:mm:ss"
+          >
+          </el-date-picker>
         </el-form-item>
         </el-form-item>
         <el-form-item label="备注">
         <el-form-item label="备注">
           <el-input
           <el-input
             type="textarea"
             type="textarea"
-            v-model="dialogForm.beiZhu"
+            v-model="dialogForm.remark"
             placeholder="请输入备注信息"
             placeholder="请输入备注信息"
             class="inputStyle"
             class="inputStyle"
           ></el-input>
           ></el-input>
         </el-form-item>
         </el-form-item>
       </el-form>
       </el-form>
       <div slot="footer" class="dialog-footer">
       <div slot="footer" class="dialog-footer">
-        <el-button @click="showDialog = false">取 消</el-button>
-        <el-button type="primary" @click="showDialog = false">确 定</el-button>
+        <el-button @click="cancelFn">取 消</el-button>
+        <el-button type="primary" @click="addDataListFn">确 定</el-button>
       </div>
       </div>
     </el-dialog>
     </el-dialog>
   </div>
   </div>
 </template>
 </template>
 
 
 <script>
 <script>
+import {
+  getDealerDepositList,
+  getDealerDepositAdd,
+  getDealerList,
+  deleDealerDeposit,
+  editDealerDeposit,
+  infoDealerDeposit,
+} from "@/api/basic_data/dealer";
+
 export default {
 export default {
   data() {
   data() {
     return {
     return {
+      title: "",
       currentPage: 1, // 当前页码
       currentPage: 1, // 当前页码
       pageSize: 10, // 每页数量
       pageSize: 10, // 每页数量
       listTotal: 0, // 列表
       listTotal: 0, // 列表
+      listLoading: false, // 列表加载loading
+      searchForm: {
+        customerName: "",
+      },
       dialogForm: {
       dialogForm: {
-        bianma: "",
-        name: "",
-        yaJin: "",
-        beiZhu: "",
+        amount: 0,
+        customerId: "",
+        customerName: "",
+        customerNumber: "",
+        endTime: "",
+
+        rate: 0,
+        remark: "",
+        startTime: "",
       },
       },
       showDialog: false,
       showDialog: false,
-      dataList: [
-        {
-          num: "1",
-          bianma: "1002",
-          dealerName: "佛山市禅城区梁云冷气经营部",
-          yaJin: "0.1",
-          beiZhu: "???",
-          createMan: "??",
-          createDate: "2000/01/01",
-          updateMan: "??",
-          updateDate: "2020/01/01",
-        },
-        {
-          num: "1",
-          bianma: "1002",
-          dealerName: "佛山市禅城区梁云冷气经营部",
-          yaJin: "0.1",
-          beiZhu: "???",
-          createMan: "??",
-          createDate: "2000/01/01",
-          updateMan: "??",
-          updateDate: "2020/01/01",
-        },
-        {
-          num: "1",
-          bianma: "1002",
-          dealerName: "佛山市禅城区梁云冷气经营部",
-          yaJin: "0.1",
-          beiZhu: "???",
-          createMan: "??",
-          createDate: "2000/01/01",
-          updateMan: "??",
-          updateDate: "2020/01/01",
-        },
-      ],
+      dataList: [],
+      dealerList: [],
     };
     };
   },
   },
+  async created() {
+    await this.getList({ pageNum: 1, pageSize: 10 });
+    await this.getDealerDataList({ pageNum: 1, pageSize: 10 });
+  },
   methods: {
   methods: {
-    editFn() {
+    //取消
+    cancelFn() {
+      this.dialogForm = {
+        amount: 0,
+        customerId: "",
+        customerName: "",
+        customerNumber: "",
+        endTime: "",
+
+        rate: 0,
+        remark: "",
+        startTime: "",
+      };
+      this.showDialog = false;
+    },
+    //编辑
+    async editFn(id) {
+      console.log(id);
+      this.title = "编辑经销商工程机配置";
+      const res = await infoDealerDeposit({ id });
+      this.dialogForm = res.data;
+      this.showDialog = true;
+    },
+    //删除
+    async deleFn(id) {
+      await deleDealerDeposit({ id });
+      this.$message.success("删除成功");
+      this.getList({ pageNum: 1, pageSize: 10 });
+    },
+    //获取经销商数据
+    async getDealerDataList(data) {
+      const res = await getDealerList(data);
+      this.dealerList = res.data.records;
+    },
+
+    // 更改每页数量
+    handleSizeChange(val) {
+      this.pageSize = val;
+      this.currentPage = 1;
+      this.getList({ pageNum: 1, pageSize: this.pageSize });
+    },
+    // 更改当前页
+    handleCurrentChange(val) {
+      this.currentPage = val;
+      this.getList({ pageNum: val, pageSize: 10 });
+    },
+    //搜索功能
+    async searchFn() {
+      console.log(this.searchForm);
+      await this.getList({
+        keyword: this.searchForm.customerName,
+        pageNum: 1,
+        pageSize: 10,
+      });
+    },
+    //重置
+    clearFn() {
+      console.log(this.$refs.searchForm);
+      this.$refs.searchForm.resetFields();
+    },
+    //获取列表数据
+    async getList(data) {
+      const res = await getDealerDepositList(data);
+      console.log(res);
+      this.dataList = res.data.records;
+      this.listTotal = res.data.total;
+    },
+    async addDataListFn() {
+      let res = this.dealerList.filter(
+        (v) => v.id === this.dialogForm.customerId
+      )[0];
+
+      this.dialogForm.customerName = res.name;
+      this.dialogForm.customerNumber = res.number;
+
+      if (this.dialogForm.id) {
+        await editDealerDeposit({ ...this.dialogForm });
+        this.$message.success("编辑成功");
+      } else {
+        await getDealerDepositAdd({
+          ...this.dialogForm,
+          rate: Number(this.dialogForm.rate),
+          amount: Number(this.dialogForm.amount),
+        });
+        this.$message.success("添加成功");
+      }
+      this.dialogForm = {
+        amount: 0,
+        customerId: "",
+        customerName: "",
+        customerNumber: "",
+        endTime: "",
+
+        rate: 0,
+        remark: "",
+        startTime: "",
+      };
+
+      this.getList({ pageNum: 1, pageSize: 10 });
+      this.showDialog = false;
+    },
+    addFn() {
+      this.title = "新增经销商工程机配置";
       this.showDialog = true;
       this.showDialog = true;
     },
     },
   },
   },
@@ -248,6 +397,9 @@ export default {
 </script>
 </script>
 
 
 <style lang="scss" scoped>
 <style lang="scss" scoped>
+::v-deep .el-textarea__inner {
+  resize: none;
+}
 ::v-deep .el-form {
 ::v-deep .el-form {
   .inputStyle {
   .inputStyle {
     width: 80%;
     width: 80%;

+ 94 - 62
src/views/basic_data/dealer/dealer_list.vue

@@ -3,18 +3,29 @@
     <div v-if="isShow">
     <div v-if="isShow">
       <!-- 筛选条件 -->
       <!-- 筛选条件 -->
       <div>
       <div>
-        <el-form label-width="70px" size="small" label-position="left">
+        <el-form
+          ref="searchForm"
+          :model="searchForm"
+          label-width="70px"
+          size="small"
+          label-position="left"
+        >
           <el-row :gutter="20">
           <el-row :gutter="20">
             <el-col :xs="24" :sm="12" :lg="6">
             <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="关键字" prop="account">
-                <el-input placeholder="请输入关键字"></el-input>
+              <el-form-item label="关键字" prop="keyword">
+                <el-input
+                  v-model="searchForm.keyword"
+                  placeholder="请输入关键字"
+                ></el-input>
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
 
 
             <el-col :xs="24" :sm="12" :lg="18" class="tr">
             <el-col :xs="24" :sm="12" :lg="18" class="tr">
               <el-form-item label="">
               <el-form-item label="">
-                <el-button size="small">清空</el-button>
-                <el-button size="small" type="primary">搜索</el-button>
+                <el-button size="small" @click="clearFn">清空</el-button>
+                <el-button size="small" type="primary" @click="searchFn"
+                  >搜索</el-button
+                >
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
           </el-row>
           </el-row>
@@ -39,7 +50,7 @@
             <el-table-column
             <el-table-column
               align="center"
               align="center"
               label="客户编码"
               label="客户编码"
-              prop="bianMa"
+              prop="number"
               min-width="160"
               min-width="160"
               label-class-name="bianma"
               label-class-name="bianma"
               class-name="fontstyle"
               class-name="fontstyle"
@@ -47,13 +58,13 @@
             <el-table-column
             <el-table-column
               align="center"
               align="center"
               label="客户名称"
               label="客户名称"
-              prop="username"
+              prop="name"
               min-width="160"
               min-width="160"
             ></el-table-column>
             ></el-table-column>
             <el-table-column
             <el-table-column
               align="center"
               align="center"
               label="简称"
               label="简称"
-              prop="jianCheng"
+              prop="shortName"
               min-width="160"
               min-width="160"
             ></el-table-column>
             ></el-table-column>
             <el-table-column
             <el-table-column
@@ -63,15 +74,24 @@
               min-width="160"
               min-width="160"
             ></el-table-column>
             ></el-table-column>
             <el-table-column
             <el-table-column
+              prop="forbidStatus"
               align="center"
               align="center"
               label="禁用状态"
               label="禁用状态"
-              prop="jinYong"
               min-width="160"
               min-width="160"
-            ></el-table-column>
+            >
+              <template slot-scope="scope">
+                <el-tag type="success" v-if="scope.row.forbidStatus === 'A'"
+                  >正常</el-tag
+                >
+                <el-tag type="danger" v-else-if="scope.row.flag === 'B'"
+                  >禁用</el-tag
+                >
+              </template>
+            </el-table-column>
             <el-table-column
             <el-table-column
               align="center"
               align="center"
               label="使用组织"
               label="使用组织"
-              prop="use"
+              prop="useOrgId"
               min-width="160"
               min-width="160"
             ></el-table-column>
             ></el-table-column>
             <el-table-column
             <el-table-column
@@ -99,16 +119,22 @@
               min-width="160"
               min-width="160"
               show-overflow-tooltip
               show-overflow-tooltip
             >
             >
-              <el-button type="text" class="textColor" @click="editFn"
-                >编辑</el-button
-              >
-              <el-button type="text" class="textColor">删除</el-button>
+              <template slot-scope="scope">
+                <el-button
+                  type="text"
+                  class="textColor"
+                  @click="editFn(scope.row.id)"
+                  >详情</el-button
+                >
+              </template>
             </el-table-column>
             </el-table-column>
           </el-table>
           </el-table>
         </div>
         </div>
         <!-- 分页 -->
         <!-- 分页 -->
         <div class="fr">
         <div class="fr">
           <el-pagination
           <el-pagination
+            @size-change="handleSizeChange"
+            @current-change="handleCurrentChange"
             :current-page="currentPage"
             :current-page="currentPage"
             :page-sizes="[10, 20, 30, 50]"
             :page-sizes="[10, 20, 30, 50]"
             :page-size="10"
             :page-size="10"
@@ -119,76 +145,82 @@
         </div>
         </div>
       </div>
       </div>
     </div>
     </div>
-    <DealerListDetail v-else />
+    <DealerListDetail :infoList="inforList" v-else />
   </div>
   </div>
 </template>
 </template>
 
 
 <script>
 <script>
+import { getDealerList, getDealerInfo } from "@/api/basic_data/dealer";
 import DealerListDetail from "./components/dealer_list-detail.vue";
 import DealerListDetail from "./components/dealer_list-detail.vue";
+
 export default {
 export default {
   data() {
   data() {
     return {
     return {
       isShow: true,
       isShow: true,
-      dataList: [
-        {
-          bianMa: "001",
-          username: "张蕙兰",
-          jianCheng: "zhl",
-          danJuZhuangTai: "已审核",
-          jinYong: "否",
-          use: "广州格匠机电工程科技有限公司",
-          shenHeRen: "郑桂茹",
-          shenHeDate: "2020/11/11",
-          keHu: "花都线",
-        },
-        {
-          bianMa: "001",
-          username: "张蕙兰",
-          jianCheng: "zhl",
-          danJuZhuangTai: "已审核",
-          jinYong: "否",
-          use: "广州格匠机电工程科技有限公司",
-          shenHeRen: "郑桂茹",
-          shenHeDate: "2020/11/11",
-          keHu: "花都线",
-        },
-        {
-          bianMa: "001",
-          username: "张蕙兰",
-          jianCheng: "zhl",
-          danJuZhuangTai: "已审核",
-          jinYong: "否",
-          use: "广州格匠机电工程科技有限公司",
-          shenHeRen: "郑桂茹",
-          shenHeDate: "2020/11/11",
-          keHu: "花都线",
-          zip: 200333,
-        },
-      ], // 列表数据
+      dataList: [], // 列表数据
 
 
       listLoading: false, // 列表加载loading
       listLoading: false, // 列表加载loading
-      screenForm: {
-        // 筛选表单数据
-        name: "", // 名称
-      },
+      screenForm: {},
       currentPage: 1, // 当前页码
       currentPage: 1, // 当前页码
       pageSize: 10, // 每页数量
       pageSize: 10, // 每页数量
       listTotal: 0, // 列表总数
       listTotal: 0, // 列表总数
+      searchForm: {
+        keyword: "",
+      },
+      inforList: {},
     };
     };
   },
   },
   components: {
   components: {
     DealerListDetail,
     DealerListDetail,
   },
   },
-  created() {},
+  async created() {
+    await this.getList({ pageNum: 1, pageSize: 10 });
+  },
   computed: {},
   computed: {},
   methods: {
   methods: {
-    handleSizeChange() {},
-    handleCurrentChange() {},
-    handleNodeClick(data) {
-      console.log(data);
+    // 提交筛选表单
+    submitScreenForm() {
+      this.currentPage = 1;
+      this.getList({ pageNum: 1, pageSize: 10 });
+    },
+    // 重置筛选表单
+    resetScreenForm() {
+      this.$refs.screenForm.resetFields();
+      this.currentPage = 1;
+      this.getList({ pageNum: 1, pageSize: 10 });
+    },
+    // 更改每页数量
+    handleSizeChange(val) {
+      this.pageSize = val;
+      this.currentPage = 1;
+      this.getList({ pageNum: 1, pageSize: this.pageSize });
+    },
+    // 更改当前页
+    handleCurrentChange(val) {
+      this.currentPage = val;
+      this.getList({ pageNum: val, pageSize: 10 });
+    },
+    //搜索功能
+    async searchFn() {
+      console.log(this.searchForm);
+      await this.getList({ ...this.searchForm, pageNum: 1, pageSize: 10 });
+    },
+    //重置
+    clearFn() {
+      console.log(this.$refs.searchForm);
+      this.$refs.searchForm.resetFields();
+    },
+    //获取列表数据
+    async getList(data) {
+      const res = await getDealerList(data);
+      console.log(res);
+      this.dataList = res.data.records;
+      this.listTotal = res.data.total;
     },
     },
-    editFn() {
+    async editFn(id) {
       this.isShow = false;
       this.isShow = false;
+      const res = await getDealerInfo({ id });
+      this.inforList = res.data;
     },
     },
   },
   },
 };
 };

+ 210 - 103
src/views/basic_data/dealer/dealer_stock.vue

@@ -2,28 +2,45 @@
   <div class="app-container">
   <div class="app-container">
     <!-- 筛选条件 -->
     <!-- 筛选条件 -->
     <div>
     <div>
-      <el-form label-width="100px" size="small" label-position="left">
+      <el-form
+        ref="searchForm"
+        :model="searchForm"
+        label-width="100px"
+        size="small"
+        label-position="left"
+      >
         <el-row :gutter="20">
         <el-row :gutter="20">
           <el-col :xs="24" :sm="12" :lg="6">
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="经销商名称" prop="account">
-              <el-input placeholder="请输入经销商名称"></el-input>
+            <el-form-item label="经销商名称" prop="customerName">
+              <el-input
+                v-model="searchForm.customerName"
+                placeholder="请输入经销商名称"
+              ></el-input>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="存货分类编码" prop="account">
-              <el-input placeholder="请输入"></el-input>
+            <el-form-item label="存货分类编码" prop="bianMa">
+              <el-input
+                v-model="searchForm.mainId"
+                placeholder="请输入"
+              ></el-input>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="存货分类" prop="account">
-              <el-input placeholder="请输入"></el-input>
+            <el-form-item label="存货分类" prop="mainName">
+              <el-input
+                v-model="searchForm.mainName"
+                placeholder="请输入"
+              ></el-input>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
 
 
           <el-col :xs="24" :sm="12" :lg="6">
           <el-col :xs="24" :sm="12" :lg="6">
             <el-form-item label="" class="fr">
             <el-form-item label="" class="fr">
-              <el-button size="small">清空</el-button>
-              <el-button size="small" type="primary">搜索</el-button>
+              <el-button size="small" @click="clearFn">清空</el-button>
+              <el-button size="small" type="primary" @click="searchFn"
+                >搜索</el-button
+              >
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
@@ -32,9 +49,17 @@
 
 
     <div class="btn-group clearfix">
     <div class="btn-group clearfix">
       <div class="fl">
       <div class="fl">
-        <el-button type="primary" size="small">新增</el-button>
+        <el-button type="primary" size="small" @click="addFn">新增</el-button>
         <el-button type="primary" size="small">编辑</el-button>
         <el-button type="primary" size="small">编辑</el-button>
-        <el-button type="primary" size="small">删除</el-button>
+        <el-popconfirm @onConfirm="deleFn" title="这是一段内容确定删除吗?">
+          <el-button
+            type="primary"
+            size="small"
+            class="textColor"
+            slot="reference"
+            >删除</el-button
+          >
+        </el-popconfirm>
       </div>
       </div>
       <div class="fr">
       <div class="fr">
         <el-button type="primary" size="small">导入</el-button>
         <el-button type="primary" size="small">导入</el-button>
@@ -49,6 +74,8 @@
         <el-table
         <el-table
           v-loading="listLoading"
           v-loading="listLoading"
           :data="dataList"
           :data="dataList"
+          @select="hanleSelect"
+          @select-all="hanleSelect"
           element-loading-text="Loading"
           element-loading-text="Loading"
           border
           border
           fit
           fit
@@ -63,49 +90,49 @@
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="经销商名称"
             label="经销商名称"
-            prop="nname"
+            prop="customerName"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="存货分类编码"
             label="存货分类编码"
-            prop="bianma"
+            prop="mainId"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="存货分类名称"
             label="存货分类名称"
-            prop="selectname"
+            prop="mainName"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="创建人"
             label="创建人"
-            prop="person"
+            prop="createBy"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="创建时间"
             label="创建时间"
-            prop="createdata"
+            prop="createTime"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="更新人"
             label="更新人"
-            prop="updateperson"
+            prop="updateBy"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="更新时间"
             label="更新时间"
-            prop="update"
+            prop="updateTime"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
@@ -116,16 +143,25 @@
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           >
           >
-            <el-button type="text" class="textColor" @click="editFn"
-              >编辑</el-button
-            >
-            <el-button type="text" class="textColor">删除</el-button>
+            <template slot-scope="scope">
+              <el-button type="text" class="textColor">编辑</el-button>
+              <el-popconfirm
+                @onConfirm="deleFn(scope.row.id)"
+                title="这是一段内容确定删除吗?"
+              >
+                <el-button type="text" class="textColor" slot="reference"
+                  >删除</el-button
+                ></el-popconfirm
+              >
+            </template>
           </el-table-column>
           </el-table-column>
         </el-table>
         </el-table>
       </div>
       </div>
       <!-- 分页 -->
       <!-- 分页 -->
       <div class="fr">
       <div class="fr">
         <el-pagination
         <el-pagination
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
           :current-page="currentPage"
           :current-page="currentPage"
           :page-sizes="[10, 20, 30, 50]"
           :page-sizes="[10, 20, 30, 50]"
           :page-size="10"
           :page-size="10"
@@ -144,123 +180,197 @@
       :show-close="false"
       :show-close="false"
       :close-on-click-modal="false"
       :close-on-click-modal="false"
     >
     >
-      <el-form :model="form" label-width="100px" label-position="right">
+      <el-form
+        ref="addForm"
+        :model="addForm"
+        label-width="100px"
+        label-position="right"
+      >
         <el-form-item label="经销商名称">
         <el-form-item label="经销商名称">
-          <el-select v-model="form.name" placeholder="请选择活动区域">
-            <el-option label="区域一" value="shanghai"></el-option>
-            <el-option label="区域二" value="beijing"></el-option>
+          <el-select
+            class="selectStyle"
+            v-model="addForm.customerId"
+            placeholder="名称"
+          >
+            <el-option
+              v-for="item in dealerList"
+              :key="item.id"
+              :label="item.name"
+              :value="item.id"
+            >
+            </el-option>
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
-        <el-form-item label="活动分类">
-          <el-select v-model="form.select" placeholder="请选择活动区域">
-            <el-option label="区域一" value="shanghai"></el-option>
-            <el-option label="区域二" value="beijing"></el-option>
+        <el-form-item label="存货分类">
+          <el-select
+            class="selectStyle"
+            v-model="addForm.mainId"
+            placeholder="请选择"
+          >
+            <el-option
+              v-for="item in selectList"
+              :key="item.value"
+              :label="item.dictValue"
+              :value="item.sysDictId"
+            >
+            </el-option>
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
       </el-form>
       </el-form>
       <div slot="footer" class="dialog-footer">
       <div slot="footer" class="dialog-footer">
         <el-button @click="dialogForm = false">取 消</el-button>
         <el-button @click="dialogForm = false">取 消</el-button>
-        <el-button type="primary" @click="dialogForm = false">确 定</el-button>
+        <el-button type="primary" @click="addDataListFn">确 定</el-button>
       </div>
       </div>
     </el-dialog>
     </el-dialog>
   </div>
   </div>
 </template>
 </template>
 
 
 <script>
 <script>
+import {
+  getDealerStockList,
+  getDealerStockAdd,
+  deleDealerStockList,
+  getDictionaries,
+} from "@/api/basic_data/dealer";
+import { getDealerList } from "@/api/basic_data/dealer";
+import { findElem } from "@/utils/util";
 export default {
 export default {
   data() {
   data() {
     return {
     return {
       dialogForm: false,
       dialogForm: false,
-      form: {
-        name: "",
-        select: "",
+      addForm: {
+        customerName: "",
+        customerId: "",
+        customerNumber: "",
+        mainId: "",
+        mainName: "",
       },
       },
       currentPage: 1, // 当前页码
       currentPage: 1, // 当前页码
       pageSize: 10, // 每页数量
       pageSize: 10, // 每页数量
       listTotal: 0, // 列表总数
       listTotal: 0, // 列表总数
-      dealerForm: {
-        name: "",
-        coding: "",
-        select: "",
+
+      searchForm: {
+        customerName: "",
+        mainId: "",
+        mainName: "",
       },
       },
-      dataList: [
-        {
-          nname: "佛山市禅城区梁云冷气经营部",
-          bianma: "01",
-          selectname: "家用空调",
-          person: "LID",
-          createdata: "2022-05-18 12:00",
-          updateperson: "LID",
-          update: "2022-05-24  12:00",
-        },
-        {
-          nname: "佛山市禅城区梁云冷气经营部",
-          bianma: "01",
-          selectname: "家用空调",
-          person: "LID",
-          createdata: "2022-05-18 12:00",
-          updateperson: "LID",
-          update: "2022-05-24  12:00",
-        },
-        {
-          nname: "佛山市禅城区梁云冷气经营部",
-          bianma: "01",
-          selectname: "家用空调",
-          person: "LID",
-          createdata: "2022-05-18 12:00",
-          updateperson: "LID",
-          update: "2022-05-24  12:00",
-        },
-        {
-          nname: "佛山市禅城区梁云冷气技术部",
-          bianma: "02",
-          selectname: "家用电视",
-          person: "CCC",
-          createdata: "2022-05-18 12:00",
-          updateperson: "CCC",
-          update: "2022-05-24  12:00",
-        },
-      ], // 列表数据
+      dataList: [], // 列表数据
       listLoading: false, // 列表加载loading
       listLoading: false, // 列表加载loading
+      dealerList: [],
+      selectList: [],
+      ids: [],
     };
     };
   },
   },
-  created() {},
+  async created() {
+    this.getList({ pageNum: 1, pageSize: 10 });
+    this.getDealerDataList({ pageNum: 1, pageSize: 10 });
+    this.getSelectList({ sysDictEnum: "PRODUCT_TYPE" });
+  },
   computed: {},
   computed: {},
   methods: {
   methods: {
-    editFn() {
+    // 筛选部分数据或者单个
+    hanleSelect(selection) {
+      // this.ids = selection.map((k) => {
+      //   return k.id;
+      // });
+      console.log(selection);
+      this.ids = selection.map((v) => v.id);
+    },
+    //存货分类
+    async getSelectList(data) {
+      const res = await getDictionaries(data);
+      console.log(res);
+      this.selectList = res.data;
+    },
+    //删除
+    async deleFn(id) {
+      this.ids.push(id);
+      let res = this.ids.toString();
+
+      await deleDealerStockList({ ids: res });
+      this.getList({ pageNum: 1, pageSize: 10 });
+      this.$message.success("删除成功");
+    },
+    addFn() {
       this.dialogForm = true;
       this.dialogForm = true;
     },
     },
-    queryFn() {
-      if (
-        this.dealerForm.name === "" &&
-        this.dealerForm.coding === "" &&
-        this.dealerForm.select === ""
-      ) {
-        return;
-      }
+    async addDataListFn() {
+      console.log(this.dealerList);
+      console.log(this.addForm.customerId);
+      // let id = this.dealerList.filter((i) => {
+      //   return i.id === this.addForm.customerId;
+      // })[0];
+      // console.log(id, "id");
+      // let res = findElem(this.dealerList, "id", this.addForm.customerId);
+      // console.log(11111, res);
+      let res = this.dealerList.filter(
+        (v) => v.id === this.addForm.customerId
+      )[0];
+      console.log(res);
+      this.addForm.customerName = res.name;
+      this.addForm.customerNumber = res.number;
+      let res2 = this.selectList.filter(
+        (v) => v.sysDictId === this.addForm.mainId
+      )[0];
+      console.log(res2);
+      this.addForm.mainName = res2.dictValue;
+      console.log(this.addForm);
 
 
-      let res = this.dataList.filter(
-        (v) =>
-          v.nname === this.dealerForm.name &&
-          v.coding === this.dealerForm.bianma &&
-          v.select === this.dealerForm.selectname
-      );
-      this.dataList = res;
+      await getDealerStockAdd({ ...this.addForm });
+      this.$message.success("添加成功");
+      await this.getList({ pageNum: 1, pageSize: 10 });
+      this.dialogForm = false;
+    },
+    //获取经销商数据
+    async getDealerDataList(data) {
+      const res = await getDealerList(data);
+      this.dealerList = res.data.records;
+    },
+
+    // 更改每页数量
+    handleSizeChange(val) {
+      this.pageSize = val;
+      this.currentPage = 1;
+      this.getList({ pageNum: 1, pageSize: this.pageSize });
+    },
+    // 更改当前页
+    handleCurrentChange(val) {
+      this.currentPage = val;
+      this.getList({ pageNum: val, pageSize: 10 });
     },
     },
-    resetFn() {
-      this.dealerForm.name = "";
-      this.dealerForm.coding = "";
-      this.dealerForm.select = "";
-      console.log(this.dealerForm);
+    //搜索功能
+    async searchFn() {
+      console.log(this.searchForm);
+      await this.getList({
+        cusotmerName: this.searchForm.customerName,
+        pageNum: 1,
+        pageSize: 10,
+      });
+    },
+    //重置
+    clearFn() {
+      console.log(this.$refs.searchForm);
+      this.$refs.searchForm.resetFields();
+    },
+    //获取列表数据
+    async getList(data) {
+      const res = await getDealerStockList(data);
+      console.log(res);
+      this.dataList = res.data.records;
+      this.listTotal = res.data.total;
     },
     },
   },
   },
 };
 };
 </script>
 </script>
 
 
 <style lang="scss" scoped>
 <style lang="scss" scoped>
-.aaa {
-  padding: 10px 0;
+::v-deep .el-popover__reference {
+  margin-left: 10px;
+}
+::v-deep .selectStyle .el-input--suffix {
+  width: 200%;
 }
 }
+
 ::v-deep .el-input--suffix {
 ::v-deep .el-input--suffix {
   width: 300px;
   width: 300px;
 }
 }
@@ -276,7 +386,4 @@ export default {
   width: 70%;
   width: 70%;
   margin-right: 20px;
   margin-right: 20px;
 }
 }
-.right {
-  float: right;
-}
 </style>
 </style>

+ 117 - 31
src/views/basic_data/supplier/components/supplier_list-detail.vue

@@ -9,19 +9,28 @@
       </div>
       </div>
       <el-row>
       <el-row>
         <el-col :span="6"
         <el-col :span="6"
-          ><span class="color">创建组织</span><input type="text"
+          ><span class="color">创建组织</span
+          ><input type="text" v-model="infoForm.createOrgName"
         /></el-col>
         /></el-col>
-        <el-col :span="6"><span>使用组织</span><input type="text" /></el-col>
         <el-col :span="6"
         <el-col :span="6"
-          ><span class="color">注册编码</span><input type="text"
+          ><span>使用组织</span><input type="text" v-model="infoForm.useOrgId"
         /></el-col>
         /></el-col>
         <el-col :span="6"
         <el-col :span="6"
-          ><span class="color">编码</span><input type="text"
+          ><span class="color">注册编码</span
+          ><input v-model="infoForm.regNumber" type="text"
+        /></el-col>
+        <el-col :span="6"
+          ><span class="color">编码</span
+          ><input v-model="infoForm.number" type="text"
         /></el-col>
         /></el-col>
       </el-row>
       </el-row>
       <el-row>
       <el-row>
-        <el-col :span="6"><span>名称</span><input type="text" /></el-col>
-        <el-col :span="6"><span>简称</span><input type="text" /></el-col>
+        <el-col :span="6"
+          ><span>名称</span><input v-model="infoForm.name" type="text"
+        /></el-col>
+        <el-col :span="6"
+          ><span>简称</span><input v-model="infoForm.shortName" type="text"
+        /></el-col>
       </el-row>
       </el-row>
     </el-card>
     </el-card>
     <el-card class="box-card">
     <el-card class="box-card">
@@ -35,18 +44,21 @@
           </div>
           </div>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">国家</span><input type="text"
+              ><span class="marg-r color">国家</span
+              ><input v-model="infoForm.country" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">地区</span><input type="text"
+              ><span class="marg-r color">地区</span
+              ><input v-model="infoForm.provincial" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
               ><span class="marg-r color">通讯地址</span
               ><span class="marg-r color">通讯地址</span
               ><textarea
               ><textarea
+                v-model="infoForm.address"
                 name=""
                 name=""
                 id=""
                 id=""
                 cols="30"
                 cols="30"
@@ -57,18 +69,21 @@
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">邮政编码</span><input type="text"
+              ><span class="marg-r color">邮政编码</span
+              ><input v-model="infoForm.zip" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">语言</span><input type="text"
+              ><span class="marg-r">语言</span
+              ><input v-model="infoForm.language" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
               ><span class="marg-r">公司地址</span
               ><span class="marg-r">公司地址</span
               ><textarea
               ><textarea
+                v-model="infoForm.webSite"
                 class="textareaStyle"
                 class="textareaStyle"
                 name=""
                 name=""
                 id=""
                 id=""
@@ -84,46 +99,51 @@
           </div>
           </div>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">行业</span><input type="text"
+              ><span class="marg-r">行业</span
+              ><input v-model="infoForm.trade" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">创立日期</span><input type="text"
+              ><span class="marg-r">创立日期</span
+              ><input v-model="infoForm.foundDate" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">法人代表</span><input type="text"
+              ><span class="marg-r color">法人代表</span
+              ><input v-model="infoForm.legalPerson" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
               ><span class="marg-r color">注册资金(万元)</span
               ><span class="marg-r color">注册资金(万元)</span
-              ><input type="text"
+              ><input v-model="infoForm.registerFund" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
               ><span class="marg-r color">公司规模工商登记号</span
               ><span class="marg-r color">公司规模工商登记号</span
-              ><input type="text"
+              ><input v-model="infoForm.registerCode" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">生产经许可证</span><input type="text"
+              ><span class="marg-r color">生产经许可证</span
+              ><input v-model="infoForm.tendPermit" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
               ><span class="marg-r color">统一社会信用代码</span
               ><span class="marg-r color">统一社会信用代码</span
-              ><input type="text"
+              ><input v-model="infoForm.socialCreCode" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
               ><span class="marg-r color">注册地址</span
               ><span class="marg-r color">注册地址</span
               ><textarea
               ><textarea
+                v-model="infoForm.registerAddress"
                 name=""
                 name=""
                 id=""
                 id=""
                 cols="30"
                 cols="30"
@@ -139,17 +159,20 @@
           </div>
           </div>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">负责部门</span><input type="text"
+              ><span class="marg-r color">负责部门</span
+              ><input v-model="infoForm.deptName" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">负责人</span><input type="text"
+              ><span class="marg-r color">负责人</span
+              ><input v-model="infoForm.staffName" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">供应商分类</span><input type="text"
+              ><span class="marg-r">供应商分类</span
+              ><input v-model="infoForm.supplierClassify" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
@@ -162,32 +185,38 @@
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">供应商等级</span><input type="text"
+              ><span class="marg-r">供应商等级</span
+              ><input v-model="infoForm.supplierGrade" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">供应商分组</span><input type="text"
+              ><span class="marg-r color">供应商分组</span
+              ><input v-model="infoForm.groupName" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">公司类别</span><input type="text"
+              ><span class="marg-r color">公司类别</span
+              ><input v-model="infoForm.companyClassify" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r color">公司性质</span><input type="text"
+              ><span class="marg-r color">公司性质</span
+              ><input v-model="infoForm.companyNature" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">公司规模</span><input type="text"
+              ><span class="marg-r">公司规模</span
+              ><input v-model="infoForm.companyScale" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
           <el-row>
           <el-row>
             <el-col :span="24"
             <el-col :span="24"
-              ><span class="marg-r">对应组织</span><input type="text"
+              ><span class="marg-r">对应组织</span
+              ><input v-model="infoForm.correspondOrgName" type="text"
             /></el-col>
             /></el-col>
           </el-row>
           </el-row>
         </div>
         </div>
@@ -287,7 +316,7 @@
             id=""
             id=""
             cols="30"
             cols="30"
             rows="10"
             rows="10"
-            style="width: 46%"
+            style="width: 41%"
           ></textarea>
           ></textarea>
         </el-col>
         </el-col>
         <el-col :span="6"
         <el-col :span="6"
@@ -314,6 +343,62 @@
 
 
 <script>
 <script>
 export default {
 export default {
+  props: {
+    infoList: {
+      type: Object,
+      required: true,
+    },
+  },
+  data() {
+    return {
+      infoForm: {
+        address: "",
+        auditName: "",
+        companyClassify: "",
+        companyNature: "",
+        companyScale: "",
+        correspondOrgName: "",
+        country: "",
+        createBy: "",
+        createOrgName: "",
+        createTime: "",
+        deptName: "",
+        forbidStatus: "",
+        foundDate: "",
+        groupName: "",
+        groupNumber: "",
+        id: "",
+        language: "",
+        legalPerson: "",
+        name: "",
+        number: "",
+        provincial: "",
+        regNumber: "",
+        registerAddress: "",
+        registerCode: "",
+        registerFund: 0,
+        shortName: "",
+        socialCreCode: "",
+        staffName: "",
+        supplierClassify: "",
+        supplierGrade: "",
+        supplyClassify: "",
+        syncTime: "",
+        tendPermit: "",
+        trade: "",
+        updateBy: "",
+        updateTime: "",
+        useOrgId: "",
+        useOrgName: "",
+        useOrgNumber: "",
+        webSite: "",
+        zip: "",
+      },
+    };
+  },
+  created() {
+    this.infoForm = this.infoList;
+  },
   methods: {
   methods: {
     goBack() {
     goBack() {
       console.log(this.$parent);
       console.log(this.$parent);
@@ -328,18 +413,19 @@ export default {
   width: 46%;
   width: 46%;
 }
 }
 .inputDate {
 .inputDate {
-  width: 46%;
+  width: 41%;
 }
 }
 .selectStyle2 {
 .selectStyle2 {
-  width: 46%;
+  width: 41%;
 }
 }
 .selectStyle {
 .selectStyle {
-  width: 35%;
+  width: 31%;
 }
 }
+
 .textareaStyle {
 .textareaStyle {
   vertical-align: text-top;
   vertical-align: text-top;
   resize: none;
   resize: none;
-  width: 35%;
+  width: 31%;
   height: 100px;
   height: 100px;
 }
 }
 .color {
 .color {

+ 85 - 84
src/views/basic_data/supplier/supplier_list.vue

@@ -3,18 +3,29 @@
     <div v-if="isShow">
     <div v-if="isShow">
       <!-- 筛选条件 -->
       <!-- 筛选条件 -->
       <div>
       <div>
-        <el-form ref="screenForm" :model="screenForm" label-width="70px" size="small" label-position="left">
+        <el-form
+          ref="searchForm"
+          :model="searchForm"
+          label-width="70px"
+          size="small"
+          label-position="left"
+        >
           <el-row :gutter="20">
           <el-row :gutter="20">
             <el-col :xs="24" :sm="12" :lg="6">
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="关键字" prop="name">
               <el-form-item label="关键字" prop="name">
-                <el-input placeholder="请输入关键字" v-model="screenForm.name" ></el-input>
+                <el-input
+                  v-model="searchForm.name"
+                  placeholder="请输入关键字"
+                ></el-input>
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
 
 
             <el-col :xs="24" :sm="12" :lg="18" class="tr">
             <el-col :xs="24" :sm="12" :lg="18" class="tr">
               <el-form-item label="">
               <el-form-item label="">
-                <el-button size="small" @click="resetScreenForm">清空</el-button>
-                <el-button size="small" type="primary"  @click="submitScreenForm">搜索</el-button>
+                <el-button size="small" @click="clearFn">清空</el-button>
+                <el-button size="small" type="primary" @click="searchFn"
+                  >搜索</el-button
+                >
               </el-form-item>
               </el-form-item>
             </el-col>
             </el-col>
           </el-row>
           </el-row>
@@ -77,130 +88,120 @@
               min-width="160"
               min-width="160"
               show-overflow-tooltip
               show-overflow-tooltip
             >
             >
-              <el-button type="text" class="textColor" @click="editFn"
-                >编辑</el-button
+              <template slot-scope="scope"
+                ><el-button
+                  type="text"
+                  class="textColor"
+                  @click="editFn(scope.row.id)"
+                  >详情</el-button
+                ></template
               >
               >
-              <el-button type="text" class="textColor">删除</el-button>
             </el-table-column>
             </el-table-column>
           </el-table>
           </el-table>
         </div>
         </div>
 
 
         <div class="fr">
         <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>
+          <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>
       </div>
     </div>
     </div>
-    <SupplierListDetail v-else />
+    <SupplierListDetail :infoList="infoList" v-else />
   </div>
   </div>
 </template>
 </template>
 
 
 <script>
 <script>
+import { getList, getInfoApi } from "@/api/basic_data/supplier";
 import SupplierListDetail from "./components/supplier_list-detail.vue";
 import SupplierListDetail from "./components/supplier_list-detail.vue";
-import { getSupplierList } from "@/api/basic_data/supplier";
+
 export default {
 export default {
   data() {
   data() {
     return {
     return {
       currentPage: 1, // 当前页码
       currentPage: 1, // 当前页码
       pageSize: 10, // 每页数量
       pageSize: 10, // 每页数量
       listTotal: 0, // 列表总数
       listTotal: 0, // 列表总数
-      listLoading: false,
+
+      listLoading: false, // 加载
+      screenForm: {}, // 筛选表单数据
+      dataList: [], // 表格数据
+
       isShow: true,
       isShow: true,
-      screenForm: { // 筛选表单数据
-            name:''
+      searchForm: {
+        // 筛选表单数据
+        name: "",
       },
       },
-      dataList: [
-        {
-          bianMa: "DG0001",
-          useZh: "广州格匠机电工程有限公司",
-          name: "东莞市美信机电工程有限公司",
-          jc: "",
-          gongYing: "东莞",
-        },
-        {
-          bianMa: "DG0001",
-          useZh: "广州格匠机电工程有限公司",
-          name: "东莞市美信机电工程有限公司",
-          jc: "",
-          gongYing: "东莞",
-        },
-        {
-          bianMa: "DG0001",
-          useZh: "广州格匠机电工程有限公司",
-          name: "东莞市美信机电工程有限公司",
-          jc: "",
-          gongYing: "东莞",
-        },
-        {
-          bianMa: "DG0001",
-          useZh: "广州格匠机电工程有限公司",
-          name: "东莞市美信机电工程有限公司",
-          jc: "",
-          gongYing: "东莞",
-        },
-      ],
+      dataList: [],
+      infoList: {},
     };
     };
   },
   },
 
 
   components: {
   components: {
     SupplierListDetail,
     SupplierListDetail,
   },
   },
-  created() {
-      this.getList()
+
+  async created() {
+    await this.getList({ pageSize: 10, pageNum: 1 });
   },
   },
   methods: {
   methods: {
-    editFn() {
-      this.isShow = false;
+    async getList(data) {
+      const res = await getList(data);
+      console.log(res);
+      this.dataList = res.data.records;
+      this.listTotal = res.data.total;
     },
     },
-    getList() {
-      this.listLoading = true;
-      let params = {
-        pageNum: this.currentPage,
-        pageSize: this.pageSize,
-        auditName: "",
-        groupName: "",
-        name: this.screenForm.name,
-        number: "",
-        shortName: "",
-        useOrgName: "",
-        useOrgNumber: "",
-      };
-      getSupplierList(params).then((res) => {
-        this.dataList = res.data.records;
-        this.listTotal = res.data.total;
-        this.listLoading = false;
-      });
+    //搜索功能
+    async searchFn() {
+      console.log(this.searchForm);
+      await this.getList({ ...this.searchForm, pageNum: 1, pageSize: 10 });
     },
     },
-    // 提交筛选表单
-    submitScreenForm() {
-      this.currentPage = 1;
-      this.getList();
+    //重置
+    clearFn() {
+      console.log(this.$refs.searchForm);
+      this.$refs.searchForm.resetFields();
     },
     },
-    // 重置筛选表单
-    resetScreenForm() {
-      this.$refs.screenForm.resetFields();
+
+    // 更改每页数量
+    handleSizeChange(val) {
+      this.pageSize = val;
       this.currentPage = 1;
       this.currentPage = 1;
-      this.getList();
+      this.getList({ pageNum: 1, pageSize: this.pageSize });
+    },
+    // 更改当前页
+    handleCurrentChange(val) {
+      this.currentPage = val;
+      this.getList({ pageNum: val, pageSize: 10 });
     },
     },
+    async editFn(id) {
+      this.isShow = false;
+      const res = await getInfoApi({ id });
+      this.infoList = res.data;
+    },
+    async getList(data) {
+      let res = await getList(data);
+      console.log(res);
+      this.dataList = res.data.records;
+      this.listTotal = res.data.total;
+    },
+
     // 更改每页数量
     // 更改每页数量
     handleSizeChange(val) {
     handleSizeChange(val) {
       this.pageSize = val;
       this.pageSize = val;
       this.currentPage = 1;
       this.currentPage = 1;
-      this.getList();
+      this.getList({ pageNum: 1, pageSize: this.pageSize });
     },
     },
     // 更改当前页
     // 更改当前页
     handleCurrentChange(val) {
     handleCurrentChange(val) {
       this.currentPage = val;
       this.currentPage = val;
-      this.getList();
+      this.getList({ pageNum: val, pageSize: 10 });
     },
     },
-
   },
   },
 };
 };
 </script>
 </script>

+ 204 - 61
src/views/basic_data/taker/taker_car.vue

@@ -2,23 +2,35 @@
   <div class="app-container">
   <div class="app-container">
     <!-- 筛选条件 -->
     <!-- 筛选条件 -->
     <div>
     <div>
-      <el-form label-width="100px" size="small" label-position="left">
+      <el-form
+        :model="searchForm"
+        ref="searchForm"
+        label-width="100px"
+        size="small"
+        label-position="left"
+      >
         <el-row :gutter="20">
         <el-row :gutter="20">
           <el-col :xs="24" :sm="12" :lg="6">
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="经销商名称" prop="account">
-              <el-input placeholder="请输入经销商名称"></el-input>
+            <el-form-item label="经销商名称" prop="customerName">
+              <el-input
+                v-model="searchForm.customerName"
+                placeholder="请输入经销商名称"
+              ></el-input>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="提货人" prop="nickname">
-              <el-input placeholder="请输入提货人"></el-input>
+            <el-form-item label="车牌" prop="carBrand">
+              <el-input
+                v-model="searchForm.carBrand"
+                placeholder="请输入车牌"
+              ></el-input>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
 
 
           <el-col :xs="24" :sm="12" :lg="12" class="tr">
           <el-col :xs="24" :sm="12" :lg="12" class="tr">
             <el-form-item label="">
             <el-form-item label="">
-              <el-button size="small" @click="resetScreenForm">清空</el-button>
-              <el-button size="small" type="primary" @click="submitScreenForm"
+              <el-button size="small" @click="clearFn">清空</el-button>
+              <el-button size="small" type="primary" @click="searchFn"
                 >搜索</el-button
                 >搜索</el-button
               >
               >
             </el-form-item>
             </el-form-item>
@@ -29,13 +41,25 @@
     <!-- 按钮 -->
     <!-- 按钮 -->
     <div class="btn-group clearfix">
     <div class="btn-group clearfix">
       <div class="fl">
       <div class="fl">
-        <el-button type="primary" size="small">新增</el-button>
+        <el-button type="primary" size="small" @click="addDataList"
+          >新增</el-button
+        >
         <el-button type="primary" size="small">编辑</el-button>
         <el-button type="primary" size="small">编辑</el-button>
-        <el-button type="primary" size="small">删除</el-button>
+        <el-popconfirm @onConfirm="delFn" title="这是一段内容确定删除吗?">
+          <el-button
+            size="small"
+            type="primary"
+            class="textColor"
+            slot="reference"
+            >删除</el-button
+          >
+        </el-popconfirm>
       </div>
       </div>
       <div class="fr">
       <div class="fr">
         <el-button type="primary" size="small">导入</el-button>
         <el-button type="primary" size="small">导入</el-button>
-        <el-button type="primary" size="small">导出</el-button>
+        <el-button type="primary" size="small" @click="exportFn"
+          >导出</el-button
+        >
       </div>
       </div>
     </div>
     </div>
     <!-- 列表 -->
     <!-- 列表 -->
@@ -45,6 +69,8 @@
           v-loading="listLoading"
           v-loading="listLoading"
           :data="dataList"
           :data="dataList"
           element-loading-text="Loading"
           element-loading-text="Loading"
+          @select="hanleSelect"
+          @select-all="hanleSelect"
           border
           border
           fit
           fit
           highlight-current-row
           highlight-current-row
@@ -58,14 +84,14 @@
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="经销商名称"
             label="经销商名称"
-            prop="name"
+            prop="customerName"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="车辆车牌号"
             label="车辆车牌号"
-            prop="carNumber"
+            prop="carBrand"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
@@ -103,16 +129,30 @@
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           >
           >
-            <el-button type="text" class="textColor" @click="editFn"
-              >编辑</el-button
-            >
-            <el-button type="text" class="textColor">删除</el-button>
+            <template slot-scope="scope">
+              <el-button
+                type="text"
+                class="textColor"
+                @click="editFn(scope.row)"
+                >编辑</el-button
+              >
+              <el-popconfirm
+                @onConfirm="delFn(scope.row.id)"
+                title="这是一段内容确定删除吗?"
+              >
+                <el-button type="text" class="textColor" slot="reference"
+                  >删除</el-button
+                >
+              </el-popconfirm>
+            </template>
           </el-table-column>
           </el-table-column>
         </el-table>
         </el-table>
       </div>
       </div>
       <!-- 分页 -->
       <!-- 分页 -->
       <div class="fr">
       <div class="fr">
         <el-pagination
         <el-pagination
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
           :current-page="currentPage"
           :current-page="currentPage"
           :page-sizes="[10, 20, 30, 50]"
           :page-sizes="[10, 20, 30, 50]"
           :page-size="10"
           :page-size="10"
@@ -133,98 +173,201 @@
     >
     >
       <el-form ref="form" :model="addForm" label-width="120px">
       <el-form ref="form" :model="addForm" label-width="120px">
         <el-form-item label="经销商名称">
         <el-form-item label="经销商名称">
-          <el-select v-model="addForm.name" placeholder="选择名称">
-            <el-option> dsdsds</el-option>
+          <el-select v-model="addForm.customerId" placeholder="名称">
+            <el-option
+              v-for="item in dealerList"
+              :key="item.id"
+              :label="item.name"
+              :value="item.id"
+            >
+            </el-option>
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
         <el-row>
         <el-row>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="车牌号">
             <el-form-item label="车牌号">
-              <el-input v-model="addForm.username"></el-input> </el-form-item
+              <el-input v-model="addForm.carBrand"></el-input> </el-form-item
           ></el-col>
           ></el-col>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="联系电话">
             <el-form-item label="联系电话">
-              <el-input v-model="addForm.userID"></el-input> </el-form-item
+              <el-input v-model="addForm.mobile"></el-input> </el-form-item
           ></el-col>
           ></el-col>
         </el-row>
         </el-row>
         <el-row>
         <el-row>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="车型">
             <el-form-item label="车型">
-              <el-input v-model="addForm.telephone"></el-input> </el-form-item
+              <el-input v-model="addForm.carType"></el-input> </el-form-item
           ></el-col>
           ></el-col>
           <el-col :span="12">
           <el-col :span="12">
             <el-form-item label="体积">
             <el-form-item label="体积">
-              <el-input v-model="addForm.sparePhone"></el-input> </el-form-item
+              <el-input v-model="addForm.volume"></el-input> </el-form-item
           ></el-col>
           ></el-col>
         </el-row>
         </el-row>
       </el-form>
       </el-form>
       <div slot="footer" class="dialog-footer">
       <div slot="footer" class="dialog-footer">
-        <el-button @click="dialogForm = false">取 消</el-button>
-        <el-button type="primary" @click="dialogForm = false">确 定</el-button>
+        <el-button @click="cancelFn">取 消</el-button>
+        <el-button type="primary" @click="addDataListFn">确 定</el-button>
       </div>
       </div>
     </el-dialog>
     </el-dialog>
   </div>
   </div>
 </template>
 </template>
 
 
 <script>
 <script>
+import {
+  getCarList,
+  addDataListApi,
+  delCarFn,
+  editDataListApi,
+} from "@/api/basic_data/taker";
+import { getDealerList } from "@/api/basic_data/dealer";
+import { downloadFiles } from "@/utils/util";
+
 export default {
 export default {
   data() {
   data() {
     return {
     return {
+      listLoading: false, // 列表加载loading
       currentPage: 1, // 当前页码
       currentPage: 1, // 当前页码
       pageSize: 10, // 每页数量
       pageSize: 10, // 每页数量
       listTotal: 0, // 列表总数
       listTotal: 0, // 列表总数
       addForm: {
       addForm: {
-        name: "",
-        username: "",
-        userID: "",
-        telephone: "",
-        sparePhone: "",
-        valid: "",
-        Verification: "",
+        customerId: "",
+        mobile: "",
+        carType: "",
+        volume: "",
+        carBrand: "",
       },
       },
       dialogForm: false,
       dialogForm: false,
-      dataList: [
-        {
-          name: "佛山市禅城区梁云冷气经营部",
-          carNumber: "粤Axxxxx",
-          createUser: "张三",
-          createDate: "2022-01-02 12:12",
-          updateUser: "张三",
-          updateDate: "2022-01-02 12:21",
-        },
-        {
-          name: "佛山市禅城区梁云冷气经营部",
-          carNumber: "粤Axxxxx",
-          createUser: "张三",
-          createDate: "2022-01-02 12:12",
-          updateUser: "张三",
-          updateDate: "2022-01-02 12:21",
-        },
-        {
-          name: "佛山市禅城区梁云冷气经营部",
-          carNumber: "粤Axxxxx",
-          createUser: "张三",
-          createDate: "2022-01-02 12:12",
-          updateUser: "张三",
-          updateDate: "2022-01-02 12:21",
-        },
-      ],
+      dataList: [],
       searchForm: {
       searchForm: {
-        name: "",
-        username: "",
-        telephone: "",
+        customerName: "",
+        carBrand: "",
       },
       },
+      dealerList: [],
+      ids: [],
     };
     };
   },
   },
+  async created() {
+    await this.getDataList({ pageNum: 1, pageSize: 10 });
+    await this.getDealerDataList({ pageNum: 1, pageSize: 10 });
+  },
   methods: {
   methods: {
-    editFn() {
+    // 筛选部分数据或者单个
+    hanleSelect(selection) {
+      // this.ids = selection.map((k) => {
+      //   return k.id;
+      // });
+      console.log(selection);
+      this.ids = selection.map((v) => v.id);
+      console.log(this.ids);
+    },
+    //导出
+    exportFn() {
+      let screenData = {
+        customerName: this.searchForm.customerName,
+        carBrand: this.searchForm.carBrand,
+      };
+      downloadFiles("/take-car-record/export", screenData);
+    },
+    //取消
+    cancelFn() {
+      this.addForm = {
+        customerId: "",
+        mobile: "",
+        carType: "",
+        volume: "",
+        carBrand: "",
+      };
+      this.dialogForm = false;
+    },
+    //编辑
+    editFn(data) {
       this.dialogForm = true;
       this.dialogForm = true;
+      this.addForm = data;
+    },
+    //重置
+    clearFn() {
+      console.log(this.$refs.searchForm);
+      this.$refs.searchForm.resetFields();
+    },
+    //搜索
+    async searchFn() {
+      console.log(this.searchForm);
+      await this.getDataList({
+        ...this.searchForm,
+        pageNum: 1,
+        pageSize: this.pageSize,
+      });
+    },
+    //删除
+    async delFn(ids) {
+      this.ids.push(ids);
+      let res = this.ids.toString();
+      await delCarFn({ ids: res });
+      this.$message.success("删除成功");
+
+      this.getDataList({ pageNum: this.currentPage, pageSize: this.pageSize });
+    },
+    //获取经销商数据
+    async getDealerDataList(data) {
+      const res = await getDealerList(data);
+      this.dealerList = res.data.records;
+    },
+    //新增
+    addDataList() {
+      this.dialogForm = true;
+    },
+    async addDataListFn() {
+      const res = this.dealerList.filter(
+        (v) => v.id === this.addForm.customerId
+      )[0];
+
+      if (this.addForm.id) {
+        await editDataListApi({ ...this.addForm });
+        this.$message.success("编辑成功");
+      } else {
+        await addDataListApi({ ...this.addForm, orgNumber: res.useOrgNumber });
+        this.$message.success("添加成功");
+      }
+
+      // console.log(res);
+      //
+      // this.addForm = {
+      //   customerId: "",
+      //   mobile: "",
+      //   carType: "",
+      //   volume: "",
+      //   carBrand: "",
+      // };
+      this.getDataList({ pageNum: this.currentPage, pageSize: this.pageSize });
+      this.dialogForm = false;
+    },
+    //获取列表数据
+    async getDataList(data) {
+      const res = await getCarList(data);
+      console.log(res);
+      this.dataList = res.data.records;
+      this.listTotal = res.data.total;
+    },
+
+    // 更改每页数量
+    handleSizeChange(val) {
+      this.pageSize = val;
+      this.currentPage = 1;
+      this.getDataList({ pageNum: 1, pageSize: this.pageSize });
+    },
+    // 更改当前页
+    handleCurrentChange(val) {
+      this.currentPage = val;
+      this.getDataList({ pageNum: val, pageSize: this.pageSize });
     },
     },
   },
   },
 };
 };
 </script>
 </script>
 
 
 <style lang="scss" scoped>
 <style lang="scss" scoped>
+::v-deep .el-popover__reference {
+  margin-left: 10px;
+}
 ::v-deep .el-date-editor {
 ::v-deep .el-date-editor {
   width: 100%;
   width: 100%;
 }
 }

+ 185 - 83
src/views/basic_data/taker/taker_list.vue

@@ -2,28 +2,45 @@
   <div class="app-container">
   <div class="app-container">
     <!-- 筛选条件 -->
     <!-- 筛选条件 -->
     <div>
     <div>
-      <el-form label-width="100px" size="small" label-position="left">
+      <el-form
+        ref="searchForm"
+        :model="searchForm"
+        label-width="100px"
+        size="small"
+        label-position="left"
+      >
         <el-row :gutter="20">
         <el-row :gutter="20">
           <el-col :xs="24" :sm="12" :lg="6">
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="经销商名称" prop="account">
-              <el-input placeholder="请输入经销商名称"></el-input>
+            <el-form-item label="经销商名称" prop="customerName">
+              <el-input
+                v-model="searchForm.customerName"
+                placeholder="请输入提货人姓名"
+              ></el-input>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="提货人姓名" prop="nickname">
-              <el-input placeholder="请输入提货人姓名"></el-input>
+            <el-form-item label="提货人姓名" prop="takerName">
+              <el-input
+                v-model="searchForm.takerName"
+                placeholder="请输入提货人姓名"
+              ></el-input>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
           <el-col :xs="24" :sm="12" :lg="6">
-            <el-form-item label="电话" prop="phone">
-              <el-input placeholder="请输入电话"></el-input>
+            <el-form-item label="电话" prop="telephone">
+              <el-input
+                v-model="searchForm.telephone"
+                placeholder="请输入电话"
+              ></el-input>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
 
 
           <el-col :xs="24" :sm="12" :lg="6" class="tr">
           <el-col :xs="24" :sm="12" :lg="6" class="tr">
             <el-form-item label="">
             <el-form-item label="">
-              <el-button size="small">清空</el-button>
-              <el-button size="small" type="primary">搜索</el-button>
+              <el-button size="small" @click="clearFn">清空</el-button>
+              <el-button size="small" type="primary" @click="searchFn"
+                >搜索</el-button
+              >
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
@@ -36,7 +53,9 @@
       </div>
       </div>
       <div class="fr">
       <div class="fr">
         <el-button type="primary" size="small">导入</el-button>
         <el-button type="primary" size="small">导入</el-button>
-        <el-button type="primary" size="small">导出</el-button>
+        <el-button type="primary" size="small" @click="exportFn"
+          >导出</el-button
+        >
         <el-button type="primary" size="small">打印</el-button>
         <el-button type="primary" size="small">打印</el-button>
       </div>
       </div>
     </div>
     </div>
@@ -60,28 +79,28 @@
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="经销商名称"
             label="经销商名称"
-            prop="name"
+            prop="customerName"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="提货人姓名"
             label="提货人姓名"
-            prop="username"
+            prop="takerName"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="身份证"
             label="身份证"
-            prop="userID"
+            prop="identity"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="联系电话"
             label="联系电话"
-            prop="telephone"
+            prop="phone"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
@@ -95,14 +114,14 @@
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="附件"
             label="附件"
-            prop="enclosure"
+            prop="attach"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="有效期"
             label="有效期"
-            prop="valid"
+            prop="expireTime"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
           ></el-table-column>
           ></el-table-column>
@@ -123,15 +142,41 @@
           <el-table-column
           <el-table-column
             align="center"
             align="center"
             label="状态"
             label="状态"
-            prop="state"
+            prop="flag"
             min-width="160"
             min-width="160"
             show-overflow-tooltip
             show-overflow-tooltip
-          ></el-table-column>
+          >
+            <template slot-scope="scope">
+              <el-tag type="success" v-if="scope.row.flag === 1">有效</el-tag>
+              <el-tag type="danger" v-else-if="scope.row.flag === 2"
+                >失效</el-tag
+              >
+            </template>
+          </el-table-column>
+          <el-table-column
+            align="center"
+            label="操作"
+            prop="caozuo"
+            min-width="160"
+            show-overflow-tooltip
+          >
+            <template slot-scope="scope"
+              ><el-button type="text" class="textColor">查看</el-button>
+              <el-button
+                type="text"
+                class="textColor"
+                @click="stopFn(scope.row.id)"
+                >停用</el-button
+              >
+            </template>
+          </el-table-column>
         </el-table>
         </el-table>
       </div>
       </div>
       <!-- 分页 -->
       <!-- 分页 -->
       <div class="fr">
       <div class="fr">
         <el-pagination
         <el-pagination
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
           :current-page="currentPage"
           :current-page="currentPage"
           :page-sizes="[10, 20, 30, 50]"
           :page-sizes="[10, 20, 30, 50]"
           :page-size="10"
           :page-size="10"
@@ -150,132 +195,189 @@
       :show-close="false"
       :show-close="false"
       :close-on-click-modal="false"
       :close-on-click-modal="false"
     >
     >
-      <el-form ref="form" :model="addForm" label-width="120px">
-        <el-form-item label="经销商名称">
-          <el-select v-model="addForm.name" placeholder="名称">
-            <el-option> dsdsds</el-option>
+      <el-form ref="addForm" :model="addForm" label-width="120px">
+        <el-form-item label="经销商名称" prop="customerId">
+          <el-select v-model="addForm.customerId" placeholder="名称">
+            <el-option
+              v-for="item in dealerList"
+              :key="item.id"
+              :label="item.name"
+              :value="item.id"
+            >
+            </el-option>
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
         <el-row>
         <el-row>
           <el-col :span="12">
           <el-col :span="12">
-            <el-form-item label="提货人姓名">
-              <el-input v-model="addForm.username"></el-input> </el-form-item
+            <el-form-item label="提货人姓名" prop="takerName">
+              <el-input v-model="addForm.takerName"></el-input> </el-form-item
           ></el-col>
           ></el-col>
           <el-col :span="12">
           <el-col :span="12">
-            <el-form-item label="身份证号码">
-              <el-input v-model="addForm.userID"></el-input> </el-form-item
+            <el-form-item label="身份证号码" prop="identity">
+              <el-input v-model="addForm.identity"></el-input> </el-form-item
           ></el-col>
           ></el-col>
         </el-row>
         </el-row>
         <el-row>
         <el-row>
           <el-col :span="12">
           <el-col :span="12">
-            <el-form-item label="联系电话">
-              <el-input v-model="addForm.telephone"></el-input> </el-form-item
+            <el-form-item label="联系电话" prop="phone">
+              <el-input v-model="addForm.phone"></el-input> </el-form-item
           ></el-col>
           ></el-col>
           <el-col :span="12">
           <el-col :span="12">
-            <el-form-item label="备用电话">
+            <el-form-item label="备用电话" prop="sparePhone">
               <el-input v-model="addForm.sparePhone"></el-input> </el-form-item
               <el-input v-model="addForm.sparePhone"></el-input> </el-form-item
           ></el-col>
           ></el-col>
         </el-row>
         </el-row>
         <el-row>
         <el-row>
           <el-col :span="12">
           <el-col :span="12">
-            <el-form-item label="有效期">
+            <el-form-item label="有效期" prop="expireTime">
               <el-date-picker
               <el-date-picker
-                v-model="addForm.valid"
+                v-model="addForm.expireTime"
                 type="date"
                 type="date"
                 placeholder="选择日期"
                 placeholder="选择日期"
+                format="yyyy 年 MM 月 dd 日"
+                value-format="yyyy-MM-dd"
               >
               >
               </el-date-picker> </el-form-item
               </el-date-picker> </el-form-item
           ></el-col>
           ></el-col>
           <el-col :span="12">
           <el-col :span="12">
-            <el-form-item label="验证码">
+            <el-form-item label="验证码" prop="code">
               <el-row :gutter="6">
               <el-row :gutter="6">
                 <el-col :span="14">
                 <el-col :span="14">
-                  <el-input v-model="addForm.Verification" />
+                  <el-input v-model="addForm.code" />
                 </el-col>
                 </el-col>
                 <el-col :span="9">
                 <el-col :span="9">
-                  <el-button type="info">获取验证码</el-button>
+                  <el-button type="info" @click="getCodeFn"
+                    >获取验证码</el-button
+                  >
                 </el-col>
                 </el-col>
               </el-row>
               </el-row>
             </el-form-item></el-col
             </el-form-item></el-col
           >
           >
         </el-row>
         </el-row>
-        <el-form-item label="上传提货人附件">
+        <!-- <el-form-item label="上传提货人附件">
           <el-upload class="upload-demo">
           <el-upload class="upload-demo">
             <el-button size="small" type="info">点击上传</el-button>
             <el-button size="small" type="info">点击上传</el-button>
           </el-upload>
           </el-upload>
-        </el-form-item>
+        </el-form-item> -->
       </el-form>
       </el-form>
       <div slot="footer" class="dialog-footer">
       <div slot="footer" class="dialog-footer">
         <el-button @click="dialogForm = false">取 消</el-button>
         <el-button @click="dialogForm = false">取 消</el-button>
-        <el-button type="primary" @click="dialogForm = false">确 定</el-button>
+        <el-button type="primary" @click="addDataFn">确 定</el-button>
       </div>
       </div>
     </el-dialog>
     </el-dialog>
   </div>
   </div>
 </template>
 </template>
 
 
 <script>
 <script>
+import {
+  getList,
+  addDataList,
+  getCodeApi,
+  stopTaker,
+} from "@/api/basic_data/taker";
+import { getDealerList } from "@/api/basic_data/dealer";
+import { downloadFiles } from "@/utils/util";
 export default {
 export default {
   data() {
   data() {
     return {
     return {
+      listLoading: false, // 列表加载loading
       currentPage: 1, // 当前页码
       currentPage: 1, // 当前页码
       pageSize: 10, // 每页数量
       pageSize: 10, // 每页数量
       listTotal: 0, // 列表总数
       listTotal: 0, // 列表总数
       addForm: {
       addForm: {
-        name: "",
-        username: "",
-        userID: "",
-        telephone: "",
+        customerId: "",
+        takerName: "",
+        identity: "",
+        phone: "",
+        sparePhone: "",
         sparePhone: "",
         sparePhone: "",
-        valid: "",
-        Verification: "",
+        expireTime: "",
+        code: "",
       },
       },
       dialogForm: false,
       dialogForm: false,
-      dataList: [
-        {
-          name: "佛山市禅城区梁云冷气经营部",
-          username: "张三",
-          userID: "01234567891234567689",
-          telephone: "01234567891",
-          sparePhone: "1234567890",
-          enclosure: "",
-          valid: "2022-04-30",
-          createUser: "张三",
-          createDate: "2022-01-02 12:21",
-          state: "失效",
-        },
-        {
-          name: "佛山市禅城区梁云冷气经营部",
-          username: "张三",
-          userID: "01234567891234567689",
-          telephone: "01234567891",
-          sparePhone: "1234567890",
-          enclosure: "",
-          valid: "2022-04-30",
-          createUser: "张三",
-          createDate: "2022-01-02 12:21",
-          state: "失效",
-        },
-        {
-          name: "佛山市禅城区梁云冷气经营部",
-          username: "张三",
-          userID: "01234567891234567689",
-          telephone: "01234567891",
-          sparePhone: "1234567890",
-          enclosure: "",
-          valid: "2022-04-30",
-          createUser: "张三",
-          createDate: "2022-01-02 12:21",
-          state: "失效",
-        },
-      ],
+      dataList: [],
       searchForm: {
       searchForm: {
-        name: "",
-        username: "",
+        customerName: "",
+        takerName: "",
         telephone: "",
         telephone: "",
       },
       },
+      dealerList: [],
     };
     };
   },
   },
+  async created() {
+    await this.getDataList({ pageNum: 1, pageSize: 10 });
+    await this.getDealerDataList({ pageNum: 1, pageSize: 10 });
+  },
   methods: {
   methods: {
+    changFn(v) {
+      console.log(v);
+    },
+    //导出
+    exportFn() {
+      let screenData = {
+        customerName: this.searchForm.customerName,
+        takerName: this.searchForm.takerName,
+      };
+      downloadFiles("/taker-record/export", screenData);
+    },
+    //停用提货人档案
+    async stopFn(id) {
+      await stopTaker({ id });
+      this.$message.success("成功");
+      this.getDataList({ pageNum: 1, pageSize: this.pageSize });
+    },
+    //获取验证码
+    async getCodeFn() {
+      const res = await getCodeApi({ mobile: this.addForm.phone });
+      console.log(res);
+    },
+    //获取经销商数据
+    async getDealerDataList(data) {
+      const res = await getDealerList(data);
+      this.dealerList = res.data.records;
+    },
+    //获取列表数据
+    async getDataList(data) {
+      let res = await getList(data);
+      console.log(res);
+      this.dataList = res.data.records;
+      this.listTotal = res.data.total;
+    },
+    //搜索功能
+    async searchFn() {
+      console.log(this.searchForm);
+      await this.getDataList({ ...this.searchForm, pageNum: 1, pageSize: 10 });
+    },
+    //重置
+    clearFn() {
+      console.log(this.$refs.searchForm);
+      this.$refs.searchForm.resetFields();
+    },
+
+    // 更改每页数量
+    handleSizeChange(val) {
+      this.pageSize = val;
+      this.currentPage = 1;
+      this.getDataList({ pageNum: 1, pageSize: this.pageSize });
+    },
+    // 更改当前页
+    handleCurrentChange(val) {
+      this.currentPage = val;
+      this.getDataList({ pageNum: val, pageSize: 10 });
+    },
+    //新增
+    async addDataFn() {
+      console.log(this.addForm);
+      const res = this.dealerList.filter(
+        (v) => v.id === this.addForm.customerId
+      )[0];
+      console.log(res);
+      await addDataList({ ...this.addForm, orgNumber: res.useOrgNumber });
+      this.$message.success("新增成功");
+      this.$refs.addForm.resetFields();
+      this.getDataList({ pageNum: 1, pageSize: 10 });
+      this.dialogForm = false;
+    },
     addFn() {
     addFn() {
       this.dialogForm = true;
       this.dialogForm = true;
     },
     },