zerp 4 jaren geleden
bovenliggende
commit
c34ca941d8

+ 2 - 2
config/index.js

@@ -9,11 +9,11 @@ module.exports = {
     proxyTable: {
       '/pre': {
         // target: 'http://app.bluefire.top:7999',//后端接口地址
-        target: 'http://192.168.2.130:8081',//后端接口地址
+        // target: 'http://192.168.2.130:8081',//后端接口地址
         // target: 'http://192.168.2.61:8081',//后端接口地址
         // target: 'http://192.168.2.114:8081',//后端接口地址
         // target: 'http://47.106.133.48:8081/',//后端接口地址
-        // target: 'http://127.0.0.1:8081',//后端接口地址
+        target: 'http://127.0.0.1:8081',//后端接口地址
         changeOrigin: true,  //是否跨域
         pathRewrite: {
           '^/pre': '/',//重写,

+ 2 - 2
src/App.vue

@@ -31,8 +31,8 @@ export default {
 
   /* //滚动条 */
 ::-webkit-scrollbar {
-  width: 9px; 
-  height: 10px;
+  width: 11px; 
+  height: 11px;
  
 }
 

+ 8 - 0
src/api/channel.js

@@ -44,6 +44,14 @@ export default {
       // data:data
     })
   },
+  //是否有效
+  supplierValid(data){
+    return request({
+      url:"/supplier/setIsValid",
+      method:"put",
+      data: data
+    })
+  },
 
   // <!-- -->
   //编辑

+ 50 - 0
src/api/channelAdd.js

@@ -0,0 +1,50 @@
+import request from '@/utils/request'
+
+  //列表加款
+  export function  supplierPaymentList(operator) {
+    return request({
+      url: '/supplierPayment/list',
+      method: 'POST',
+      data: operator
+    })
+  }
+  //供应商
+  export function  channelList(operator) {
+    return request({
+      url: '/channel/supplierInfo',
+      method: 'get',
+      data: operator
+    })
+  }
+  //银行卡
+  export function  bankcardList(operator) {
+    return request({
+      url: '/bankcard/list',
+      method: 'get',
+      params: operator
+    })
+  }
+  //供应商加款
+  export function  supplierPaymentAdd(operator) {
+    return request({
+      url: '/supplierPayment/add',
+      method: 'POST',
+      data: operator
+    })
+  }
+  //供应商加款撤销
+  export function  supplierPaymentAnnul(operator) {
+    return request({
+      url: '/supplierPayment/cancel',
+      method: 'POST',
+      data: operator
+    })
+  }
+  //供应商修改
+  export function  supplierPaymentEdit(operator) {
+    return request({
+      url: '/supplierPayment/update',
+      method: 'POST',
+      data: operator
+    })
+  }

+ 44 - 0
src/api/userList.js

@@ -24,6 +24,18 @@ export default {
         data: operator
       })
     },
+    customerDelect(customerId){
+      return request({
+        url:"/customer/del/" + customerId,
+        method:"put",
+      })
+    },
+    customerValid(customerId,status){
+      return request({
+        url:"/customer/valid/" + customerId  + '/'  + status,
+        method:"put",
+      })
+    },
     //产品详情
     paroductDetails(param){
       return request({
@@ -115,6 +127,38 @@ export default {
         method:"post",
         data:data
       })
+   },
+   //加款新增
+   paymentAdd(data){
+      return request({
+        url:"/payment/add",
+        method:"post",
+        data:data
+      })
+   },
+   //加款编辑
+   paymentUpdate(data){
+      return request({
+        url:"/payment/update",
+        method:"post",
+        data:data
+      })
+   },
+   //银行卡
+   bankcard(data){
+      return request({
+        url:"/bankcard/list",
+        method:"get",
+        params:data
+      })
+   },
+   //撤销
+   revocation(data){
+      return request({
+        url:"/payment/cancel",
+        method:"post",
+        data:data
+      })
    }
   }
  

+ 2 - 2
src/components/SvgIcon/index.vue

@@ -34,8 +34,8 @@ export default {
 
 <style scoped>
 .svg-icon {
-  width: 1em;
-  height: 1em;
+  width: 1.1em;
+  height: 1.1em;
   vertical-align: -0.15em;
   fill: currentColor;
   overflow: hidden;

+ 1 - 1
src/icons/svg/订单列表.svg

@@ -1 +1 @@
-<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1622789594511" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="10529" xmlns:xlink="http://www.w3.org/1999/xlink" width="300" height="300"><defs><style type="text/css"></style></defs><path d="M619.085 285.768H400.596c-22.056 0-40-17.944-40-40v-81.995c0-22.056 17.944-40 40-40h218.488c22.056 0 40 17.944 40 40v81.995c0.001 22.056-17.944 40-39.999 40z m-198.489-60h178.488v-41.995H420.596v41.995z" p-id="10530"></path><path d="M773.485 900.228h-522.97c-38.599 0-70-31.401-70-70V257.267c0-38.598 31.401-70 70-70h41.486c16.568 0 30 13.431 30 30 0 16.568-13.432 30-30 30h-41.486c-5.514 0-10 4.486-10 10v572.961c0 5.514 4.486 10 10 10h522.97c5.514 0 10-4.486 10-10V257.267c0-5.514-4.486-10-10-10h-45.806c-16.568 0-30-13.432-30-30 0-16.569 13.432-30 30-30h45.806c38.598 0 70 31.402 70 70v572.961c0 38.598-31.402 70-70 70z" p-id="10531"></path><path d="M660.515 442.511h-297.03c-16.568 0-30-13.432-30-30s13.432-30 30-30h297.03c16.568 0 30 13.432 30 30s-13.431 30-30 30zM563.485 592.031h-200c-16.568 0-30-13.432-30-30s13.432-30 30-30h200c16.568 0 30 13.432 30 30s-13.432 30-30 30zM563.485 741.552h-200c-16.568 0-30-13.432-30-30s13.432-30 30-30h200c16.568 0 30 13.432 30 30s-13.432 30-30 30z" p-id="10532"></path></svg>
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1623382221512" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2160" xmlns:xlink="http://www.w3.org/1999/xlink" width="600" height="600"><defs><style type="text/css"></style></defs><path d="M619.085 285.768H400.596c-22.056 0-40-17.944-40-40v-81.995c0-22.056 17.944-40 40-40h218.488c22.056 0 40 17.944 40 40v81.995c0.001 22.056-17.944 40-39.999 40z m-198.489-60h178.488v-41.995H420.596v41.995z" p-id="2161"></path><path d="M773.485 900.228h-522.97c-38.599 0-70-31.401-70-70V257.267c0-38.598 31.401-70 70-70h41.486c16.568 0 30 13.431 30 30 0 16.568-13.432 30-30 30h-41.486c-5.514 0-10 4.486-10 10v572.961c0 5.514 4.486 10 10 10h522.97c5.514 0 10-4.486 10-10V257.267c0-5.514-4.486-10-10-10h-45.806c-16.568 0-30-13.432-30-30 0-16.569 13.432-30 30-30h45.806c38.598 0 70 31.402 70 70v572.961c0 38.598-31.402 70-70 70z" p-id="2162"></path><path d="M660.515 442.511h-297.03c-16.568 0-30-13.432-30-30s13.432-30 30-30h297.03c16.568 0 30 13.432 30 30s-13.431 30-30 30zM563.485 592.031h-200c-16.568 0-30-13.432-30-30s13.432-30 30-30h200c16.568 0 30 13.432 30 30s-13.432 30-30 30zM563.485 741.552h-200c-16.568 0-30-13.432-30-30s13.432-30 30-30h200c16.568 0 30 13.432 30 30s-13.432 30-30 30z" p-id="2163"></path></svg>

+ 1 - 1
src/router/index.js

@@ -13,7 +13,7 @@ export const constantRoutes = [
     hidden: true,
     children: [
       {
-        path: '/redirect/:path*',//?
+        path: '/redirect/:path*',
         component: () => import('@/views/redirect/index')
       }
     ]

+ 4 - 0
src/views/admin/role.vue

@@ -49,6 +49,8 @@
         </template>
       </el-table-column>
 
+
+
       <el-table-column label="角色介绍" width="200" align="center">
         <template slot-scope="scope">
           <span>{{ scope.row.roleDesc }}</span>
@@ -85,6 +87,7 @@
           <el-input v-model="form.roleDesc" auto-complete="off" placeholder="请输入角色介绍" />
         </el-form-item>
 
+
         <el-form-item label="数据范围" :label-width="formLabelWidth">
           <el-select v-model="form.dsType" placeholder="请选择数据范围" style="width: 100%" @change="changeScope">
             <el-option
@@ -149,6 +152,7 @@ export default {
       dialogFormVisible: false, // 控制弹出框
       formLabelWidth: '120px',
       isEditForm: false,
+   
       dateScopes: [{
         id: 1,
         des: '全部'

+ 32 - 1
src/views/admin/user.vue

@@ -59,6 +59,14 @@
             </template>
           </el-table-column>
 
+       <el-table-column label="用户属性" align="center">
+        <template slot-scope="scope">
+          <span v-if="scope.row.type == 1" >管理员</span>
+          <span v-if="scope.row.type == 2" >客户</span>
+          <span v-if="scope.row.type == 3" >代理商</span>
+        </template>
+      </el-table-column>
+
           <el-table-column label="邮箱" width="180" align="center">
             <template slot-scope="scope">
               <span>{{ scope.row.email }}</span>
@@ -120,6 +128,17 @@
               <el-input v-model="dataForm.phone" auto-complete="off" placeholder="请输入手机" />
             </el-form-item>
 
+          <el-form-item label="用户属性" :label-width="formLabelWidth">
+          <el-select v-model="dataForm.type" placeholder="请选择用户属性" style="width: 100%" >
+            <el-option
+              v-for="item in dateType"
+              :key="item.id"
+              :label="item.name"
+              :value="item.id"
+            />
+          </el-select>
+        </el-form-item>
+
             <el-form-item label="部门" :label-width="formLabelWidth">
               <popup-tree-input
                 :data="deptData"
@@ -201,6 +220,18 @@ export default {
       query: {
         userName: ''
       },
+         dateType:[
+        {
+          id:1,
+          name:"管理员"
+        },{
+          id:2,
+          name:"客户"
+        },{
+          id:3,
+          name:"代理商"
+        }
+      ],
       dataForm: {
         username: '',
         avatar: '',
@@ -393,7 +424,7 @@ export default {
       this.dataForm.roleList = userRoles
 
       console.log(this.dataForm)
-      debugger
+ 
       if (!this.operation) {
         // 编辑用户
         editUser(this.dataForm).then(response => {

+ 443 - 239
src/views/channel/account.vue

@@ -1,177 +1,128 @@
 <template>
   <div class="app-container">
-    <div class="filter-container" style="margin: 10px 0 10px 0">
-      <span class="textSpan">供应商名称:</span>
-      <el-select
-        v-model="select"
-        slot="prepend"
-        placeholder="请选择"
-        filterable
-        clearable
-      >
-        <el-option label="餐厅名" value="1"></el-option>
-        <el-option label="订单号" value="2"></el-option>
-        <el-option label="用户电话" value="3"></el-option>
+      <div class="filter-container" style="margin: 10px 0 10px 0">
+        <span class="textSpan">供应商名称:</span>
+        <el-select v-model="body.relationId" filterable  clearable  placeholder="请选择">
+        <el-option
+          v-for="item in userList"
+          :key="item.relationId"
+          :label="item.supplierName"
+          :value="item.relationId">   
+        </el-option>
       </el-select>
-      <el-button type="primary" plain icon="el-icon-search">搜索</el-button>
-      <el-button
-        type="primary"
-        plain
-        icon="el-icon-plus"
-        @click="dialogFormVisible = true"
-        >加款</el-button
-      >
-    </div>
-    <!-- 列表 -->
-    <el-table :data="tableData" border style="width: 100%" v-loading="loading">
-      <el-table-column
-        align="center"
-        show-overflow-tooltip
-        prop="cardNo"
-        label="银行卡"
-        width="190"
-      ></el-table-column>
-      <el-table-column
-        align="center"
-        show-overflow-tooltip
-        prop="bankDeposit"
-        label="开户行"
-        width="150"
-      ></el-table-column>
-      <el-table-column
-        align="center"
-        show-overflow-tooltip
-        prop="account"
-        label="账户"
-        width="80"
-      ></el-table-column>
-      <!-- 自行添加的供应商名称 -->
-      <el-table-column
-        align="center"
-        show-overflow-tooltip
-        prop="supplierName"
-        label="供应商名称"
-        width="180"
-      ></el-table-column>
-      <el-table-column
-        align="center"
-        show-overflow-tooltip
-        prop="payer"
-        label="加款人"
-      >
-      </el-table-column>
-      <el-table-column
-        align="center"
-        style="padding:0"
-        label="凭证"
-        prop="imgurl"
-        width="100"
-      >
-      <template slot-scope="scope">
-          <img :src="scope.row.imgurl" style="width:100" >
-     </template>
-      
-      </el-table-column> 
-      <el-table-column
-        align="center"
-        show-overflow-tooltip
-        prop="amount"
-        label="加款金额"
-      >
-      </el-table-column>
-      <el-table-column
-        align="center"
-        show-overflow-tooltip
-        prop="time"
-        label="加款时间"
-      >
-      </el-table-column>
-      <el-table-column
-        align="center"
-        show-overflow-tooltip
-        prop="paymentAccount"
-        label="出款账户"
-      >
-      </el-table-column>
-      <el-table-column align="center" fixed="right" label="操作" width="190">
-        <template
-          slot-scope="scope"
-          fixed="right"
-          width="300"
-          style="display:flex"
-        >
-          <el-button
-            @click="handleEdit(scope.row)"
-            size="small"
-            type="warning"
-            plain
-            icon="el-icon-edit"
-            >修改</el-button
-          >
-          <el-button
-            @click="handleEdit(scope.row)"
-            size="small"
-            type="danger"
-            plain
-            icon="el-icon-edit"
-            >撤销</el-button
-          >
-        </template>
-      </el-table-column>
-    </el-table>
-
-    <el-dialog
-      title="新增加款"
-      :visible.sync="dialogFormVisible"
-      width="55%"
-      center
-    >
-      <el-form :model="form">
-        <el-form-item
-          label="银行卡"
-          prop="card_no"
-          :label-width="formLabelWidth"
-        >
-          <el-input
-            v-model="form.cardNo"
-            autocomplete="off"
-            placeholder="请输入银行卡"
-          ></el-input>
-        </el-form-item>
+        <el-button class="filter-item" icon="el-icon-search" type="primary" plain @click="Search">搜索</el-button>
+        <el-button class="classitem" style="marginRight:50px" type="primary" plain icon="el-icon-plus" @click="handlerAdd">加款</el-button>
+      </div>
+      <!-- 列表 -->
+      <el-table v-loading="loading" :data="tableData" border style="width: 100%">
+          <el-table-column label="供应商" width="120" align="center" show-overflow-tooltip>
+                <template slot-scope="scope">
+                  <el-button type="text" @click="hookLook(scope.row)">{{ scope.row.supplierName }}</el-button>
+                </template>
+              </el-table-column>
+           <el-table-column label="加款金额" width="110" align="center" show-overflow-tooltip>
+                <template slot-scope="scope">
+                  <span>{{ scope.row.amount / 10000 }}</span>
+                </template>
+              </el-table-column>
+                <el-table-column label="出款账户" width="110"  align="center" show-overflow-tooltip>
+                <template slot-scope="scope">
+                  <span>{{ scope.row.paymentAccount }}</span>
+                </template>
+              </el-table-column>
+                 <el-table-column label="开户行"  width="170" align="center" show-overflow-tooltip>
+                <template slot-scope="scope">
+                  <span>{{ scope.row.bankDeposit }}</span>
+                </template>
+              </el-table-column>
+              <el-table-column label="全称"  align="center" show-overflow-tooltip>
+                <template slot-scope="scope">
+                  <span>{{ scope.row.account }}</span>
+                </template>
+              </el-table-column>
+              <el-table-column label="银行卡" width="190"  align="center" show-overflow-tooltip>
+                <template slot-scope="scope"> 
+                  <span>{{ scope.row.cardNo }}</span>
+                </template>
+              </el-table-column>
+           
+            
+              <el-table-column label="加款人"  align="center" show-overflow-tooltip>
+                <template slot-scope="scope">
+                  <span>{{ scope.row.payer }}</span>
+                </template>
+              </el-table-column>
+              <el-table-column label="凭证" width="120"  align="center">
+                <template slot-scope="scope">
+                  <el-image 
+                    style="width: 100px; height: 80px"
+                    :src="scope.row.certificate" 
+                    :preview-src-list="new Array(scope.row.certificate)">
+                  </el-image>
+                </template>
+              </el-table-column>
+           
+              
+              <el-table-column label="加款时间" width="120" align="center" show-overflow-tooltip>
+                <template slot-scope="scope">
+                  <span>{{ scope.row.time }}</span>
+                </template>
+              </el-table-column>
+            
 
-        <el-form-item label="供应商账户" :label-width="formLabelWidth">
-          <el-input
-            v-model="form.account"
-            autocomplete="off"
-            placeholder="请输入供应商账户"
-          ></el-input>
-        </el-form-item>
-        <el-form-item label="加款金额" :label-width="formLabelWidth">
-          <el-input
-            v-model="form.amount"
-            autocomplete="off"
-            placeholder="请输入加款金额"
-          ></el-input>
-        </el-form-item>
-        <el-form-item label="出款账户" :label-width="formLabelWidth">
-          <el-input
-            v-model="form.paymentAccount"
-            autocomplete="off"
-            placeholder="请输入出款账户"
-          ></el-input>
-        </el-form-item>
-        <el-form-item label="凭证" :label-width="formLabelWidth">
-          <el-upload
-            ref="upload"
-            action="#"
-            list-type="picture-card"
-            :fileList="fileList"
-            :limit="1"
-            :auto-upload="false"
-            :on-change="handleDownload"
-          >
-            <i slot="default" class="el-icon-plus"></i>
-            <div slot="file" slot-scope="{file}">
+              <el-table-column label="操作" fixed="right" width="200" align="center">
+                <template slot-scope="scope">
+                  <el-button size="small" icon="el-icon-edit" type="warning" plain @click="handleEdit(scope.row)">修改</el-button>
+                  <el-button size="small" icon="el-icon-edit" type="danger" v-if="scope.row.undo == 0" plain @click="handleRevocation(scope.row)">撤销</el-button>
+                </template>
+              </el-table-column>
+      </el-table>
+        <!-- 新增加款 -->
+      <el-dialog :title="operation?'新增加款':'编辑加款'" :visible.sync="dialogFormVisible" width="55%" center>
+        <el-form ref="dataForm" :model="dataForm" :rules="rules2" label-width="80px" size="small" label-position="right">
+              <el-form-item label="供应商" prop="cardNo" :label-width="formLabelWidth"  >
+                <el-select v-model="dataForm.relationId" :disabled="!operation" filterable  @change="onclick(dataForm.relationId)" clearable  placeholder="请选择客户" style="width:100%">
+                  <el-option
+                    v-for="item in userList"
+                    :key="item.relationId"
+                    :label="item.supplierName"
+                    :value="item.relationId">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item label="银行卡" prop="cardNo"  :label-width="formLabelWidth"  >
+                 <el-select v-model="dataForm.cardNo" filterable :disabled="!operation" clearable  placeholder="请选择银行卡" value-key="id" @change="changeSel" style="width:100%">
+                  <el-option
+                    v-for="item in card"
+                    :key="item.id"
+                    :label="item.cardNo"
+                    :value="item">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+                <!-- <el-form-item label="开户行" prop="bankDeposit" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.bankDeposit" placeholder="请输入供应商账户" />
+              </el-form-item> -->
+                <el-form-item label="加款金额" prop="amount" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.amount" :disabled="!operation" placeholder="请输入加款金额" />
+              </el-form-item>
+               <el-form-item label="出款账户" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.paymentAccount" :disabled="!operation" placeholder="请输入出款账户" />
+              </el-form-item>
+                <!-- <el-form-item label="凭证" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.certificate" placeholder="请输入凭证" />
+              </el-form-item> -->
+              <el-form-item label="凭证" prop="imgUrl" :label-width="formLabelWidth">
+                    <el-upload
+                ref = "upload"
+                action="#"
+                list-type="picture-card"       
+                :on-change="handleDownload"
+                :file-list="fileList"
+                :limit="1"
+                :auto-upload="false">
+                    <i slot="default" class="el-icon-plus"></i>
+                    <div slot="file" slot-scope="{file}">
                     <img
                         class="el-upload-list__item-thumbnail"
                         :src="file.url" alt=""
@@ -193,56 +144,310 @@
                      
                     </span>
                     </div>
-          </el-upload>
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button @click="dialogFormVisible = false">取 消</el-button>
-        <el-button type="primary" @click="dialogFormVisible = false"
-          >确 定</el-button
-        >
-      </div>
-    </el-dialog>
+                </el-upload>
+                
+                <el-dialog :visible.sync="dialogDspaly" :modal="false">
+                <img width="100%" :src="dialogImageUrl" >
+                </el-dialog>
+                </el-form-item> 
+               
+                <!-- <el-form-item label="备注" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.distinguish" placeholder="请输入备注" />
+              </el-form-item> -->
+        </el-form>
+        <div slot="footer" class="dialog-footer">
+          <el-button @click="dialogFormVisible = false">取 消</el-button>
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+        </div>
+      </el-dialog>
+        <!-- 详情 -->
+      <el-dialog title="详情" :visible.sync="dataFormVisible" width="55%" center>
+        <el-form ref="dataForm" :model="dataForm" :rules="rules2" label-width="80px" size="small" label-position="right">
+              <el-form-item label="供应商" prop="cardNo" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.supplierName" disabled></el-input>
+              </el-form-item>
+              <el-form-item label="全称" prop="account" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.account" placeholder="请输入" disabled/>
+              </el-form-item>
+              <el-form-item label="银行卡" prop="cardNo" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.cardNo" disabled></el-input>
+              </el-form-item>
+                <el-form-item label="开户行" prop="bankDeposit" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.bankDeposit" disabled placeholder="请输入供应商账户" />
+              </el-form-item>
+                <el-form-item label="加款金额" prop="amount" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.amount" disabled placeholder="请输入加款金额" />
+              </el-form-item>
+               <el-form-item label="出款账户" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.paymentAccount" disabled placeholder="请输入出款账户" />
+              </el-form-item>
+                <el-form-item label="加款人" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.payer" disabled placeholder="加款人" />
+                </el-form-item>
+              <el-form-item label="凭证" prop="imgUrl"  :label-width="formLabelWidth">
+                  <el-image 
+                    style="width: 200px; height: 200px"
+                    :src="dataForm.certificate" 
+                    :preview-src-list="new Array(dataForm.certificate)">
+                  </el-image>
+                </el-form-item> 
+               
+                <!-- <el-form-item label="备注" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.distinguish" placeholder="请输入备注" />
+              </el-form-item> -->
+        </el-form>
+        <div slot="footer" class="dialog-footer">
+          <el-button @click="dataFormVisible = false">取 消</el-button>
+          <el-button type="primary" @click="dataFormVisible = false">确 定</el-button>
+        </div>
+      </el-dialog>
+
+         <!-- 分页 -->
+    <div class="pagination">
+      <el-pagination
+        current-page.sync="body.current"
+        :current-page="body.current"
+        :page-sizes="[10, 20, 30, 50]"
+        :page-size="body.size"
+        layout="total, sizes, prev, pager, next, jumper"
+        background
+        :total="total"
+        @size-change="handleSizeChange"
+        @current-change="handleCurrentChange"
+      />
+    </div>
+
+
   </div>
 </template>
+
 <script>
 import api from '@/api/userList'
+import { supplierPaymentList,channelList,supplierPaymentAdd,supplierPaymentAnnul,supplierPaymentEdit,bankcardList } from '@/api/channelAdd'
 export default {
   data() {
     return {
       loading:false,
-      select: "",
-      dialogFormVisible: false,
-      formLabelWidth: "120px",
-      tableData: [
-        {
-          cardNo: "622823462645264622", //银行卡
-          bankDeposit: "中国农业银行", //开户行
-          account: "供应商", //账户
-          supplierName: "是否包含国际公司", //供应商名称
-          payer: "德赫亚", //加款人
-          //   certificate: "wghhjngfrtyhuuhnunuh", //凭证
-          imgurl: "https://iconfont.alicdn.com/t/1520995303822.jpg@100h_100w.jpg", //凭证
-          amount: "100000", //加款金额
-          time: "2021-06-11", //加款时间
-          paymentAccount: "吃掉你" //出款账户
-        }
-      ],
-      form: {
-        card_no: "", //银行卡
-        account: "", //供应商账户
-        // certificate: "", //凭证
-        imgurl: "", //凭证
-        amount: "", //加款金额
-        paymentAccount: "", //出款账户
+      tableData:[],
+       body:{
+          size:10,
+          current:1,
+          relationId:""
       },
-      fileList:[],//上传的文件列表
-
-    };
+       total:0,
+      dataForm:{
+        distinguish:1,
+        type:"customer"
+      },
+      rules2:{
+            phoneNo: [{ required: true, message: '请输入手机', trigger: 'blur' } ],
+      },
+      userList:[],
+      operation:false,
+      dialogFormVisible:false,
+      formLabelWidth:"120px",
+      dialogImageUrl:"",   //图片地址
+      dialogDspaly:false,
+      // options1: [],
+        // value:[],
+        imgurl:"",
+        // packet:[],
+        // redenvelopesVOS:[],
+        fileList:[],
+        url:"",
+        urlList:[],
+        card:[],
+        cardNo:"",
+        dataFormVisible:false
+    }
+  },
+  created(){
+    this.user()
+    this.reLoad()
+    // this.bankcardURL()
   },
-  methods:{
-      //将凭证上传到服务器
-      handleDownload(event,file, fileList,){
+  methods: {
+      //选择供应商出发银行卡
+    onclick(row){
+      this.bankcardURL(row)
+    },
+    //银行卡
+    bankcardURL(row){
+      let distinguish = {
+        distinguish:1,
+        relationId:row
+        }
+        const params = new URLSearchParams()
+      params.append('distinguish', 1)
+      params.append('relationId', row)
+      bankcardList(params).then((res)=>{
+        this.card = res.data.data
+        console.log(this.card)
+      })
+    },
+    //银行卡下拉选择
+    changeSel(row){
+      this.dataForm.account = row.account
+      this.dataForm.bankDeposit = row.bankDeposit
+      this.dataForm.cardNo = row.cardNo
+    },
+    //名称
+    user(){
+      // let user = "{customerName}"
+      channelList().then((res) => {
+        this.loading =false
+        let userList = res.data.data
+        userList.map((res)=>{
+          // let user = {
+          //   relationId:res.customerId,
+          //   customerName:res.customerName
+          // }
+          res.relationId = res.supplierId.toString()
+          // res.customerName = res.supplierName
+          delete res.supplierId
+          // delete res.supplierName
+          return res
+        })
+        this.userList = userList
+      })
+    },
+    //表格数据
+    reLoad(){
+      this.loading = true
+      supplierPaymentList(this.body).then((res) => {
+        this.loading =false
+        this.tableData = res.data.data.records
+        this.total = res.data.data.total
+      })
+    },
+    //查看
+    hookLook(row){
+      let code = JSON.parse(JSON.stringify(row)) 
+      code.amount = code.amount / 10000
+      this.dataForm = code
+      this.dataFormVisible = true
+    },
+    //新增
+    handlerAdd(){
+      this.operation = true // true:新增, false:编辑
+            this.dialogFormVisible = true // 控制弹出框
+            this.dataForm = {}
+            this.imgurl = ""
+            this.fileList=[]   //图片
+            this.card = []    //银行卡
+            this.cardNo = ""
+            if(this.$refs['dataForm']){
+                 this.$refs['dataForm'].resetFields();
+            }
+    },
+    //编辑
+    handleEdit(row){
+      //图片的判断
+      if(row.certificate){
+            let obj=new Object()
+            obj.url=row.certificate
+            let list=new Array()
+            list.push(obj)
+            this.fileList=list
+        }else{
+            this.fileList=[]
+        }
+      
+    
+      let code = JSON.parse(JSON.stringify(row)) 
+         code.amount = code.amount / 10000
+         
+      this.dataForm = code
+      console.log(row)
+      if(this.$refs['dataForm']){
+            this.$refs['dataForm'].resetFields();
+      }
+      this.operation = false
+      this.dialogFormVisible = true
+    },
+    //撤销
+    handleRevocation(row){
+            row.undo = 1
+            row.type = "supplier"
+            let that = this
+            that.$confirm('是否撤销该数据', '提示', {
+                confirmButtonText: '确定',
+                cancelButtonText: '取消',
+                type: 'warning'
+            })
+            .then(() => {
+                supplierPaymentAnnul(row).then((res)=>{
+                     if (res.status === 200) {
+                        that.$message({
+                            type: 'success',
+                            message: '撤销成功'
+                        })
+                        that.reLoad()
+                     } else {
+                        that.$message({
+                            type: 'error',
+                            message: res.msg
+                        })
+                     }
+                })
+            })    
+    },
+    //新增和修改API
+      submitForm(){
+        this.dataForm.distinguish=1
+        this.dataForm.type="supplier"
+        // this.dataForm.undo = 0
+          let dataForm = this.dataForm
+        this.$refs['dataForm'].validate((valid) => {
+                if (valid) {
+                  if (!this.operation) {
+                    supplierPaymentEdit(dataForm).then(response => {
+                      if (response.status === 200) {
+                        this.$message({
+                          type: 'success',
+                          message: '操作成功'
+                        })
+                        this.dialogFormVisible = false
+                        this.reLoad()
+                      } else {
+                        this.$message({
+                          type: 'error',
+                          message: response.data.msg
+                        })
+                      }
+                    })
+                  } else {
+                    console.log(this.dataForm)
+                  //   // 添加
+                    supplierPaymentAdd(dataForm).then(response => {
+                      if (response.status === 200) {
+                        this.$message({
+                          type: 'success',
+                          message: '操作成功'
+                        })
+                        this.dialogFormVisible = false
+                        this.reLoad()
+                      } else {
+                        this.$message({
+                          type: 'error',
+                          message: response.data.msg
+                        })
+                      }
+                    })
+                  }
+                }
+              })
+      },
+     //清除图片
+     handleRemove(file) {
+        this.$refs.upload.clearFiles()
+      },
+      handlePictureCardPreview(file) {
+        this.dialogImageUrl = file.url;
+        console.log(file)
+        this.dialogDspaly = true;
+      },
+      handleDownload(event, file, fileList) {
         console.log(event)
         console.log(file)
         console.log(fileList)
@@ -250,8 +455,8 @@ export default {
         params.append('file', event.raw)
         api.account.Upload(params).then((res)=>{
           if(res.data.status == 200){
-                let image=res.data.image_url
-                this.dataForm.imgurl=image
+                let image=res.data.data
+                this.dataForm.certificate=image
                 console.log(res)
             }else{
                 this.$notify.error({
@@ -260,32 +465,31 @@ export default {
                 });
             } 
         })
-      }
-  }
-};
-</script>
-<style scoped>
-.avatar-uploader .el-upload {
-  border: 1px dashed #d9d9d9;
-  border-radius: 6px;
-  cursor: pointer;
-  position: relative;
-  overflow: hidden;
-}
-.avatar-uploader .el-upload:hover {
-  border-color: #409eff;
-}
-.avatar-uploader-icon {
-  font-size: 28px;
-  color: #8c939d;
-  width: 178px;
-  height: 178px;
-  line-height: 178px;
-  text-align: center;
+
+
+      },   
+        //搜索
+    Search() {
+      this.body.current = 1
+      this.reLoad()
+    },
+    //页码
+    handleSizeChange(val) {
+      this.body.size = val
+      this.reLoad()
+    },
+    //换页
+    handleCurrentChange(val) {
+      this.body.current = val
+      this.reLoad()
+    }
+  },
+
 }
-.avatar {
-  width: 178px;
-  height: 178px;
-  display: block;
+</script>
+
+<style >
+.el-upload-list__item {
+  transition: none !important;
 }
-</style>
+</style>

+ 9 - 9
src/views/channel/channel.vue

@@ -18,11 +18,11 @@
       <!-- 表格数据 -->
       <el-table v-loading="loading" :data="tableData" border style="width: 100%">
 
-          <el-table-column label="通道ID" align="center" show-overflow-tooltip>
-              <template slot-scope="scope">
-                  <span>{{ scope.row.channelId }}</span>
-              </template>
-          </el-table-column>
+            <el-table-column label="序号" width="60" align="center">
+                <template slot-scope="scope">
+                <span>{{ scope.$index + 1 }}</span>
+                </template>
+            </el-table-column>
 
           <el-table-column label="通道名称" align="center" show-overflow-tooltip>
               <template slot-scope="scope" @click="hookLook(scope.row)">
@@ -39,8 +39,8 @@
           <el-table-column label="运营商"  align="center" show-overflow-tooltip>
               <template slot-scope="scope">
                   <span v-if="scope.row.operator==1">移动</span>
-                  <span v-if="scope.row.operator==2">电信</span>
-                  <span v-if="scope.row.operator==3">联通</span>
+                  <span v-if="scope.row.operator==3">电信</span>
+                  <span v-if="scope.row.operator==2">联通</span>
               </template>
           </el-table-column>
 
@@ -432,8 +432,8 @@ export default {
             },
              mobileOperator:[
                 {id:1,name:"移动"},
-                {id:3,name:"联通"},
-                {id:2,name:"电信"},
+                {id:2,name:"联通"},
+                {id:3,name:"电信"},
             ],
             listSupplier:[],
             rules2:{

+ 39 - 8
src/views/channel/index.vue

@@ -8,7 +8,11 @@
     </div>
     <el-table v-loading="loading" :data="tableData" border style="width: 100%">
 
-
+      <el-table-column label="序号" width="60" align="center">
+          <template slot-scope="scope">
+          <span>{{ scope.$index + 1 }}</span>
+          </template>
+      </el-table-column>
       <el-table-column label="供应商名称" width="100" align="center" show-overflow-tooltip>
         <template slot-scope="scope" @click="handleLook(scope.row)">
            <el-button type="text" @click="handleLook(scope.row)">{{ scope.row.supplierName }}</el-button>
@@ -55,10 +59,8 @@
 
       <el-table-column label="操作" fixed="right" min-width="300" align="center">
         <template slot-scope="scope">
-          <!-- <el-button v-if="scope.row.isValid==0" size="small" icon="el-icon-circle-check" type="success" plain @click="ModifyState(scope.row)">有效</el-button>
-          <el-button v-if="scope.row.isValid==1" size="small" icon="el-icon-circle-close" type="info" plain @click="ModifyState(scope.row)">无效</el-button> -->
-
-          <el-button size="small" type="primary"  icon="el-icon-plus" plain @click="amountAdd(scope.row)">加款</el-button>
+          <el-button v-if="scope.row.isValid==0" size="small" icon="el-icon-circle-check" type="success" plain @click="ModifyState(scope.row,1)">有效</el-button>
+          <el-button v-if="scope.row.isValid==1" size="small" icon="el-icon-circle-close" type="info" plain @click="ModifyState(scope.row,0)">无效</el-button>
           <el-button size="small" icon="el-icon-edit" type="warning" plain  @click="handleEdit(scope.row)">编辑</el-button>
           <el-button size="small" icon="el-icon-delete" type="danger" autofocus plain  @click="ModifyDelete(scope.row,$event)">删除</el-button>
         </template>
@@ -891,9 +893,38 @@ export default {
     },
 
     // 状态
-    ModifyState(data) {
-      console.log(data.isValid)
-      data.isValid ^= 1
+    ModifyState(row,i) {
+      this.$confirm('是否修改 '+row.supplierName+' 的状态', '提示', {
+            confirmButtonText: '确定',
+            cancelButtonText: '取消',
+            type: 'warning'
+          }).then(()=>{
+            let code = JSON.parse(JSON.stringify(row))
+            code.isValid = i   // 2:暂停   1:有效
+            let info = {
+              isValid:code.isValid,
+              supplierId:code.supplierId
+            }
+            api.supplierValid(info).then(response => {
+            if (response.status == "200") {
+              this.$message({
+                type: 'success',
+                message: '操作成功'
+              })
+              this.reLoad()
+            } else {
+              this.$message({
+                type: 'error',
+                message: response.data.msg
+              })
+            }
+            })
+          }).catch(() => {
+            this.$message({
+              type: 'info',
+              message: '已取消'
+            });          
+          });
     },
     // 删除
     ModifyDelete(row,e) {

+ 5 - 5
src/views/orderList/Distribute.vue

@@ -153,10 +153,10 @@
 
       <el-table-column label="运营商" width="70" align="center" show-overflow-tooltip>
         <template slot-scope="scope">
-          <!-- 运营商:1、移动 2、电信 3、联通 -->
+          <!-- 运营商:1、移动 3、电信 2、联通 -->
           <span v-if="scope.row.phoneOperator==1">移动</span>
-          <span v-if="scope.row.phoneOperator==2">电信</span>
-          <span v-if="scope.row.phoneOperator==3">联通</span>
+          <span v-if="scope.row.phoneOperator==3">电信</span>
+          <span v-if="scope.row.phoneOperator==2">联通</span>
         </template>
       </el-table-column>
 
@@ -280,8 +280,8 @@ export default {
       ],
       mobileOperator: [
         { id: 1, name: '移动' },
-        { id: 3, name: '联通' },
-        { id: 2, name: '电信' }
+        { id: 2, name: '联通' },
+        { id: 3, name: '电信' }
       ],
       dealFlag: [
         { id: '0', name: '运营商处理中' },

+ 28 - 21
src/views/orderList/blackList.vue

@@ -170,27 +170,34 @@ export default {
           //删除API
         ModifyDelete(){
             const that = this
-            that.$confirm('此操作将删除该手机号', '提示', {
-                confirmButtonText: '确定',
-                cancelButtonText: '取消',
-                type: 'warning'
-            })
-            .then(() => {
-                api.del(this.phone).then((res)=>{
-                     if (res.status === 200) {
-                        that.$message({
-                            type: 'success',
-                            message: '删除成功'
-                        })
-                        that.reLoad()
-                     } else {
-                        that.$message({
-                            type: 'error',
-                            message: res.msg
-                        })
-                     }
-                })
-            })    
+            if(this.phone.length > 0){
+              that.$confirm('此操作将删除该手机号', '提示', {
+                  confirmButtonText: '确定',
+                  cancelButtonText: '取消',
+                  type: 'warning'
+              })
+              .then(() => {
+                  api.del(this.phone).then((res)=>{
+                       if (res.status === 200) {
+                          that.$message({
+                              type: 'success',
+                              message: '删除成功'
+                          })
+                          that.reLoad()
+                       } else {
+                          that.$message({
+                              type: 'error',
+                              message: res.msg
+                          })
+                       }
+                  })
+              })    
+            }else{
+              that.$message({
+                  type: 'error',
+                  message: "请至少选择一项"
+              })
+            }
         },
         //多选
         handleSelectionChange(row){

+ 4 - 4
src/views/orderList/finance.vue

@@ -331,9 +331,9 @@
         show-overflow-tooltip
       >
         <template slot-scope="scope">
-           <el-tag v-if="scope.row.phoneOperator === 2" size="small">电信</el-tag>
+           <el-tag v-if="scope.row.phoneOperator === 3" size="small">电信</el-tag>
             <el-tag v-if="scope.row.phoneOperator === 1" size="small">移动</el-tag>
-            <el-tag v-if="scope.row.phoneOperator === 3" size="small">联通</el-tag>
+            <el-tag v-if="scope.row.phoneOperator === 2" size="small">联通</el-tag>
         </template>
       </el-table-column>
 
@@ -452,8 +452,8 @@ export default {
       ],
       mobileOperator: [
           {id:1,name:"移动"},
-          {id:3,name:"联通"},
-          {id:2,name:"电信"},
+          {id:2,name:"联通"},
+          {id:3,name:"电信"},
       ],
       dealFlag: [
         { id: '6', name: '成功' },

+ 5 - 5
src/views/orderList/index.vue

@@ -273,9 +273,9 @@
        >
         <template slot-scope="scope">
           <!-- <span>{{ scope.row.phoneOperator }}</span> -->
-          <el-tag v-if="scope.row.phoneOperator === 2" size="small">电信</el-tag>
+          <el-tag v-if="scope.row.phoneOperator === 3" size="small">电信</el-tag>
             <el-tag v-if="scope.row.phoneOperator === 1" size="small">移动</el-tag>
-            <el-tag v-if="scope.row.phoneOperator === 3" size="small">联通</el-tag>
+            <el-tag v-if="scope.row.phoneOperator === 2" size="small">联通</el-tag>
         </template>
       </el-table-column>
       <el-table-column
@@ -442,8 +442,8 @@ export default {
       ],
       mobileOperator:[
           {id:1,name:"移动"},
-          {id:3,name:"联通"},
-          {id:2,name:"电信"},
+          {id:2,name:"联通"},
+          {id:3,name:"电信"},
       ],
       dealFlag:[
         {id:"6",name:"成功"},        
@@ -668,7 +668,7 @@ export default {
  .black-item{
     background: #19191b25;
     color: rgba(22, 22, 22, 0.651);
-    border: 1px solid #2d2d3663;
+    border: 1px solid #2d2d361e;
  }
  .black-item:hover{
     background: #2d2d36d0;

+ 6 - 6
src/views/product/index.vue

@@ -76,10 +76,10 @@
 
         <el-table-column label="运营商" width="100" align="center" show-overflow-tooltip>
           <template slot-scope="scope">
-            <!-- 运营商  1 : 移动  2 : 电信  3 : 联通 -->
+            <!-- 运营商  1 : 移动  3 : 电信  2 : 联通 -->
             <span v-if="scope.row.operator==1">移动</span>
-            <span v-if="scope.row.operator==2">电信</span>
-            <span v-if="scope.row.operator==3">联通</span>
+            <span v-if="scope.row.operator==3">电信</span>
+            <span v-if="scope.row.operator==2">联通</span>
           </template>
         </el-table-column>
 
@@ -133,7 +133,7 @@
             </el-form-item>
             <el-form-item label="产品所属地区" :label-width="formLabelWidth" prop="areaName" >
               <!-- <el-input v-model="dataForm.ZONE" style="width: 90%;" placeholder="请选择产品地区" /> -->
-              <el-select size="small" v-model="dataForm.areaName" clearable placeholder="请选择产品地区" style="width: 90%" >
+              <el-select size="small" v-model="dataForm.areaName" filterable  clearable placeholder="请选择产品地区" style="width: 90%" >
                 <el-option
                 v-for="item in provinceList"
                 :key="item.name"
@@ -197,10 +197,10 @@ export default {
           id:1,
           name:"移动"
       },{  
-          id:2,
+          id:3,
           name:"电信"
       },{  
-          id:3,
+          id:2,
           name:"联通"
       },
       ],

+ 295 - 104
src/views/userList/account.vue

@@ -2,12 +2,12 @@
   <div class="app-container">
       <div class="filter-container" style="margin: 10px 0 10px 0">
         <span class="textSpan">客户名称:</span>
-        <el-select v-model="body.customerId" filterable  clearable  placeholder="请选择">
+        <el-select v-model="body.relationId" filterable  clearable  placeholder="请选择">
         <el-option
           v-for="item in userList"
-          :key="item.customerId"
+          :key="item.relationId"
           :label="item.customerName"
-          :value="item.customerId">
+          :value="item.relationId">   
         </el-option>
       </el-select>
         <el-button class="filter-item" icon="el-icon-search" type="primary" plain @click="Search">搜索</el-button>
@@ -15,81 +15,108 @@
       </div>
       <!-- 列表 -->
       <el-table v-loading="loading" :data="tableData" border style="width: 100%">
-              <el-table-column label="银行卡" width="190"  align="center" show-overflow-tooltip>
-                <template slot-scope="scope"> 
-                  <span>{{ scope.row.cardNo }}</span>
+          <el-table-column label="客户" width="120" align="center" show-overflow-tooltip>
+                <template slot-scope="scope">
+                  <el-button type="text" @click="hookLook(scope.row)">{{ scope.row.customerName }}</el-button>
                 </template>
               </el-table-column>
-              <el-table-column label="开户行"  align="center" show-overflow-tooltip>
+           <el-table-column label="加款金额" width="110" align="center" show-overflow-tooltip>
                 <template slot-scope="scope">
-                  <span>{{ scope.row.bankDeposit }}</span>
+                  <span>{{ scope.row.amount / 10000 }}</span>
                 </template>
               </el-table-column>
-              <el-table-column label="账户"  align="center" show-overflow-tooltip>
+                <el-table-column label="出款账户" width="110"  align="center" show-overflow-tooltip>
                 <template slot-scope="scope">
-                  <span>{{ scope.row.account }}</span>
+                  <span>{{ scope.row.paymentAccount }}</span>
                 </template>
               </el-table-column>
-              <el-table-column label="客户" width="120" align="center" show-overflow-tooltip>
+                 <el-table-column label="开户行"  width="170" align="center" show-overflow-tooltip>
                 <template slot-scope="scope">
-                  <span>{{ scope.row.customerName }}</span>
+                  <span>{{ scope.row.bankDeposit }}</span>
                 </template>
               </el-table-column>
-              <el-table-column label="加款人"  align="center" show-overflow-tooltip>
+              <el-table-column label="全称"  align="center" show-overflow-tooltip>
                 <template slot-scope="scope">
-                  <span>{{ scope.row.payer }}</span>
+                  <span>{{ scope.row.account }}</span>
                 </template>
               </el-table-column>
-              <el-table-column label="凭证"  align="center" show-overflow-tooltip>
-                <template slot-scope="scope">
-                  <span>{{ scope.row.certificate }}</span>
+              <el-table-column label="银行卡" width="190"  align="center" show-overflow-tooltip>
+                <template slot-scope="scope"> 
+                  <span>{{ scope.row.cardNo }}</span>
                 </template>
               </el-table-column>
-              <el-table-column label="加款金额" align="center" show-overflow-tooltip>
+           
+            
+              <el-table-column label="加款人"  align="center" show-overflow-tooltip>
                 <template slot-scope="scope">
-                  <span>{{ scope.row.amount }}</span>
+                  <span>{{ scope.row.payer }}</span>
                 </template>
               </el-table-column>
-              
-              <el-table-column label="加款时间"  align="center" show-overflow-tooltip>
+              <el-table-column label="凭证" width="120"  align="center">
                 <template slot-scope="scope">
-                  <span>{{ scope.row.time }}</span>
+                  <el-image 
+                    style="width: 100px; height: 80px"
+                    :src="scope.row.certificate" 
+                    :preview-src-list="new Array(scope.row.certificate)">
+                  </el-image>
                 </template>
               </el-table-column>
-              <el-table-column label="出款账户"  align="center" show-overflow-tooltip>
+           
+              
+              <el-table-column label="加款时间" width="120" align="center" show-overflow-tooltip>
                 <template slot-scope="scope">
-                  <span>{{ scope.row.paymentAccount }}</span>
+                  <span>{{ scope.row.time }}</span>
                 </template>
               </el-table-column>
+            
 
               <el-table-column label="操作" fixed="right" width="200" align="center">
                 <template slot-scope="scope">
                   <el-button size="small" icon="el-icon-edit" type="warning" plain @click="handleEdit(scope.row)">修改</el-button>
-                  <el-button size="small" icon="el-icon-edit" type="danger" plain @click="handleEdit(scope.row)">撤销</el-button>
+                  <el-button size="small" icon="el-icon-edit" type="danger" v-if="scope.row.undo == 0" plain @click="handleRevocation(scope.row)">撤销</el-button>
                 </template>
               </el-table-column>
       </el-table>
         <!-- 新增加款 -->
       <el-dialog :title="operation?'新增加款':'编辑加款'" :visible.sync="dialogFormVisible" width="55%" center>
-        <el-form ref="AddNewData" :model="dataForm" :rules="rules2" label-width="80px" size="small" label-position="right">
-              <el-form-item label="银行卡" prop="cardNo" :label-width="formLabelWidth"  >
-                <el-input v-model="dataForm.cardNo" placeholder="请输入银行卡" />
+        <el-form ref="dataForm" :model="dataForm" :rules="rules2" label-width="80px" size="small" label-position="right">
+              <el-form-item label="客户" prop="cardNo" :label-width="formLabelWidth"  >
+                <el-select v-model="dataForm.relationId" :disabled="!operation" filterable @change="onclick(dataForm.relationId)"  clearable  placeholder="请选择客户" style="width:100%">
+                  <el-option
+                    v-for="item in userList"
+                    :key="item.relationId"
+                    :label="item.customerName"
+                    :value="item.relationId">
+                  </el-option>
+                </el-select>
               </el-form-item>
-                <el-form-item label="供应商账户" prop="bankDeposit" :label-width="formLabelWidth"  >
-                <el-input v-model="dataForm.bankDeposit" placeholder="请输入供应商账户" />
+              <el-form-item label="银行卡" prop="cardNo"  :label-width="formLabelWidth"  >
+                 <el-select v-model="dataForm.cardNo" filterable :disabled="!operation" clearable  placeholder="请选择银行卡" value-key="id" @change="changeSel" style="width:100%">
+                  <el-option
+                    v-for="item in card"
+                    :key="item.id"
+                    :label="item.cardNo"
+                    :value="item">
+                  </el-option>
+                </el-select>
               </el-form-item>
+                <!-- <el-form-item label="开户行" prop="bankDeposit" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.bankDeposit" placeholder="请输入供应商账户" />
+              </el-form-item> -->
                 <el-form-item label="加款金额" prop="amount" :label-width="formLabelWidth"  >
-                <el-input v-model="dataForm.amount" placeholder="请输入加款金额" />
+                <el-input v-model="dataForm.amount" :disabled="!operation" placeholder="请输入加款金额" />
+              </el-form-item>
+               <el-form-item label="出款账户" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.paymentAccount" :disabled="!operation" placeholder="请输入出款账户" />
               </el-form-item>
                 <!-- <el-form-item label="凭证" :label-width="formLabelWidth"  >
                 <el-input v-model="dataForm.certificate" placeholder="请输入凭证" />
               </el-form-item> -->
               <el-form-item label="凭证" prop="imgUrl" :label-width="formLabelWidth">
-                <el-upload
+                    <el-upload
                 ref = "upload"
                 action="#"
-                list-type="picture-card"
-             
+                list-type="picture-card"       
                 :on-change="handleDownload"
                 :file-list="fileList"
                 :limit="1"
@@ -119,22 +146,77 @@
                     </div>
                 </el-upload>
                 
-                <el-dialog :visible.sync="dialogDspaly" :modal="false">
+                <el-dialog :visible.sync="dialogDspaly" width="75%" :modal="false">
                 <img width="100%" :src="dialogImageUrl" >
                 </el-dialog>
                 </el-form-item> 
-                <el-form-item label="出款账户" :label-width="formLabelWidth"  >
-                <el-input v-model="dataForm.paymentAccount" placeholder="请输入出款账户" />
-              </el-form-item>
-                <el-form-item label="备注" :label-width="formLabelWidth"  >
+               
+                <!-- <el-form-item label="备注" :label-width="formLabelWidth"  >
                 <el-input v-model="dataForm.distinguish" placeholder="请输入备注" />
-              </el-form-item>
+              </el-form-item> -->
         </el-form>
         <div slot="footer" class="dialog-footer">
           <el-button @click="dialogFormVisible = false">取 消</el-button>
           <el-button type="primary" @click="submitForm">确 定</el-button>
         </div>
       </el-dialog>
+        <!-- 详情 -->
+      <el-dialog title="详情" :visible.sync="dataFormVisible" width="55%" center>
+        <el-form ref="dataForm" :model="dataForm" :rules="rules2" label-width="80px" size="small" label-position="right">
+              <el-form-item label="客户" prop="cardNo" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.customerName" disabled></el-input>
+              </el-form-item>
+              <el-form-item label="全称" prop="account" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.account" placeholder="请输入" disabled/>
+              </el-form-item>
+              <el-form-item label="银行卡" prop="cardNo" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.cardNo" disabled></el-input>
+              </el-form-item>
+                <el-form-item label="开户行" prop="bankDeposit" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.bankDeposit" disabled placeholder="请输入供应商账户" />
+              </el-form-item>
+                <el-form-item label="加款金额" prop="amount" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.amount" disabled placeholder="请输入加款金额" />
+              </el-form-item>
+               <el-form-item label="出款账户" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.paymentAccount" disabled placeholder="请输入出款账户" />
+              </el-form-item>
+                <el-form-item label="加款人" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.payer" disabled placeholder="加款人" />
+                </el-form-item>
+              <el-form-item label="凭证" prop="imgUrl"  :label-width="formLabelWidth">
+                  <el-image 
+                    style="width: 200px; height: 200px"
+                    :src="dataForm.certificate" 
+                    :preview-src-list="new Array(dataForm.certificate)">
+                  </el-image>
+                </el-form-item> 
+               
+                <!-- <el-form-item label="备注" :label-width="formLabelWidth"  >
+                <el-input v-model="dataForm.distinguish" placeholder="请输入备注" />
+              </el-form-item> -->
+        </el-form>
+        <div slot="footer" class="dialog-footer">
+          <el-button @click="dataFormVisible = false">取 消</el-button>
+          <el-button type="primary" @click="dataFormVisible = false">确 定</el-button>
+        </div>
+      </el-dialog>
+
+         <!-- 分页 -->
+    <div class="pagination">
+      <el-pagination
+        current-page.sync="body.current"
+        :current-page="body.current"
+        :page-sizes="[10, 20, 30, 50]"
+        :page-size="body.size"
+        layout="total, sizes, prev, pager, next, jumper"
+        background
+        :total="total"
+        @size-change="handleSizeChange"
+        @current-change="handleCurrentChange"
+      />
+    </div>
+
 
   </div>
 </template>
@@ -149,11 +231,13 @@ export default {
        body:{
           size:10,
           current:1,
-          distinguish:2,
           customerId:""
       },
        total:0,
-      dataForm:{},
+      dataForm:{
+        distinguish:2,
+        type:"customer"
+      },
       rules2:{
             phoneNo: [{ required: true, message: '请输入手机', trigger: 'blur' } ],
       },
@@ -170,8 +254,10 @@ export default {
         // redenvelopesVOS:[],
         fileList:[],
         url:"",
-        urlList:[]
-
+        urlList:[],
+        card:[],
+        cardNo:"",
+        dataFormVisible:false
     }
   },
   created(){
@@ -179,13 +265,50 @@ export default {
     this.reLoad()
   },
   methods: {
+    //选择客户出发银行卡
+    onclick(row){
+      this.bankcardURL(row)
+    },
+    //银行卡
+    bankcardURL(row){
+      let distinguish = {
+        distinguish:2,
+        relationId:Number(row)
+        // relationId:row
+        }
+         const params = new URLSearchParams()
+      params.append('distinguish', 2)
+      params.append('relationId', row)
+      api.account.bankcard(params).then((res)=>{
+        this.card = res.data.data
+        console.log(this.card)
+      })
+    },
+    //银行卡下拉选择
+    changeSel(row){
+      this.dataForm.account = row.account
+      this.dataForm.bankDeposit = row.bankDeposit
+      this.dataForm.cardNo = row.cardNo
+    },
+    //客户名称
     user(){
       let user = "{customerName}"
       api.account.userList(user).then((res) => {
         this.loading =false
-        this.userList = res.data.data
+        let userList = res.data.data
+        userList.map((res)=>{
+          // let user = {
+          //   relationId:res.customerId,
+          //   customerName:res.customerName
+          // }
+          res.relationId = res.customerId.toString()
+          delete res.customerId
+          return res
+        })
+        this.userList = userList
       })
     },
+    //表格数据
     reLoad(){
       this.loading = true
       api.account.Search(this.body).then((res) => {
@@ -194,51 +317,126 @@ export default {
         this.total = res.data.data.total
       })
     },
-    Search(){
-      this.body.current = 1
-      this.reLoad()
+    //查看
+    hookLook(row){
+      let code = JSON.parse(JSON.stringify(row)) 
+      code.amount = code.amount / 10000
+      this.dataForm = code
+      this.dataFormVisible = true
     },
     //新增
     handlerAdd(){
       this.operation = true // true:新增, false:编辑
             this.dialogFormVisible = true // 控制弹出框
             this.dataForm = {}
+            this.imgurl = ""
+            this.fileList=[]   //图片
+            this.cardNo = ""
             if(this.$refs['dataForm']){
                  this.$refs['dataForm'].resetFields();
             }
     },
-    //新增和修改API
-        submitForm(){
+    //编辑
+    handleEdit(row){
+      //图片的判断
+      if(row.certificate){
+            let obj=new Object()
+            obj.url=row.certificate
+            let list=new Array()
+            list.push(obj)
+            this.fileList=list
+        }else{
+            this.fileList=[]
+        }
+      
+    
+      let code = JSON.parse(JSON.stringify(row)) 
+         code.amount = code.amount / 10000
          
-          this.$refs['dataForm'].validate((valid) => {
-                  if (valid) {
-                    if (!this.operation) {
-
-                    } else {
-                      console.log(this.dataForm)
-                    //   // 添加
-                    let dataForm = this.dataForm
-                    let list = []
-                    list.push(dataForm)
-                      api.add(list).then(response => {
-                        if (response.status === 200) {
-                          this.$message({
+      this.dataForm = code
+      console.log(row)
+      if(this.$refs['dataForm']){
+            this.$refs['dataForm'].resetFields();
+      }
+      this.operation = false
+      this.dialogFormVisible = true
+    },
+    //撤销
+    handleRevocation(row){
+       let code = JSON.parse(JSON.stringify(row))
+            code.undo = 1
+            code.type = "customer"
+            let that = this
+            that.$confirm('是否撤销该数据', '提示', {
+                confirmButtonText: '确定',
+                cancelButtonText: '取消',
+                type: 'warning'
+            })
+            .then(() => {
+                api.account.revocation(code).then((res)=>{
+                     if (res.status === 200) {
+                        that.$message({
                             type: 'success',
-                            message: '操作成功'
-                          })
-                          this.dialogFormVisible = false
-                          this.reLoad()
-                        } else {
-                          this.$message({
+                            message: '撤销成功'
+                        })
+                        that.reLoad()
+                     } else {
+                        that.$message({
                             type: 'error',
-                            message: response.data.msg
-                          })
-                        }
-                      })
-                    }
-                  }
+                            message: res.msg
+                        })
+                     }
                 })
-        },
+            })    
+    },
+    //新增和修改API
+      submitForm(){
+        this.dataForm.distinguish=2
+        this.dataForm.type="customer"
+        // this.dataForm.undo = 0
+          let dataForm = this.dataForm
+        this.$refs['dataForm'].validate((valid) => {
+                if (valid) {
+                  if (!this.operation) {
+                    api.account.paymentUpdate(dataForm).then(response => {
+                      if (response.status === 200) {
+                        this.$message({
+                          type: 'success',
+                          message: '操作成功'
+                        })
+                        this.dialogFormVisible = false
+                        this.reLoad()
+                      } else {
+                        this.$message({
+                          type: 'error',
+                          message: response.data.msg
+                        })
+                      }
+                    })
+                  } else {
+                    console.log(this.dataForm)
+                  //   // 添加
+                
+
+                    api.account.paymentAdd(dataForm).then(response => {
+                      if (response.status === 200) {
+                        this.$message({
+                          type: 'success',
+                          message: '操作成功'
+                        })
+                        this.dialogFormVisible = false
+                        this.reLoad()
+                      } else {
+                        this.$message({
+                          type: 'error',
+                          message: response.data.msg
+                        })
+                      }
+                    })
+                  }
+                }
+              })
+      },
      //清除图片
      handleRemove(file) {
         this.$refs.upload.clearFiles()
@@ -256,7 +454,7 @@ export default {
         params.append('file', event.raw)
         api.account.Upload(params).then((res)=>{
           if(res.data.status == 200){
-                let image=res.data.image_url
+                let image=res.data.data
                 this.dataForm.certificate=image
                 console.log(res)
             }else{
@@ -266,38 +464,31 @@ export default {
                 });
             } 
         })
-      //   axios({
-      //   method: 'post',
-      //   url: `http://47.108.168.172:6888/up_photo`,
-      //   // headers:{
-      //   //     "Content-Type": "multipart/form-data"
-      //   // },
-      //   data:params
-      // },)
-      //   .then(response => {
-      //       if(response.data.status == 200){
-      //           let image=response.data.image_url
-      //           this.dataForm.imgUrl=image
-      //       }else{
-      //           this.$notify.error({
-      //           title: '错误',
-      //           message: response.msg
-      //           });
-      //       } 
-      //   })
-      //   .catch(error => {
-      //     this.$notify.error({
-      //     title: '错误',
-      //     message: response.msg
-      //   });
-      //   });
+
 
       },   
+        //搜索
+    Search() {
+      this.body.current = 1
+      this.reLoad()
+    },
+    //页码
+    handleSizeChange(val) {
+      this.body.size = val
+      this.reLoad()
+    },
+    //换页
+    handleCurrentChange(val) {
+      this.body.current = val
+      this.reLoad()
+    }
   },
 
 }
 </script>
 
-<style>
-
+<style >
+.el-upload-list__item {
+  transition: none !important;
+}
 </style>

+ 33 - 4
src/views/userList/index.vue

@@ -2,7 +2,15 @@
   <div class="app-container">
     <div class="filter-container" style="margin: 10px 0 10px 0">
       <span class="textSpan">客户名称:</span>
-      <el-input v-model="body.customerName" style="width:200px;" placeholder="客户名称" size="small" clearable />
+      <!-- <el-input v-model="body.customerName" style="width:200px;" placeholder="客户名称" size="small" clearable /> -->
+       <el-select v-model="body.customerName" filterable  clearable  placeholder="请选择">
+        <el-option
+          v-for="item in userList"
+          :key="item.customerName"
+          :label="item.customerName"
+          :value="item.customerName">   
+        </el-option>
+      </el-select>
       <el-button class="filter-item" icon="el-icon-search" type="primary" plain @click="Search">搜索</el-button>
       <el-button class="classitem" style="marginRight:50px" type="primary" plain icon="el-icon-plus" @click="NewUser">新增</el-button>
     </div>
@@ -714,13 +722,34 @@ export default {
       data:[],       
       value:[],
       batch:[],          //批量所选的数据
-      channelProductInfos:[]  //添加产品列表
+      channelProductInfos:[],  //添加产品列表
+      userList:[]
     }
   },
   created() {
     this.getTenantList()
+    this.user()
   },
   methods: {
+    //客户名称
+     //客户名称
+    user(){
+      let user = "{customerName}"
+      api.account.userList(user).then((res) => {
+        this.loading =false
+        let userList = res.data.data
+        // userList.map((res)=>{
+        //   // let user = {
+        //   //   relationId:res.customerId,
+        //   //   customerName:res.customerName
+        //   // }
+        //   res.relationId = res.customerId.toString()
+        //   delete res.customerId
+        //   return res
+        // })
+        this.userList = userList
+      })
+    },
     //新增弹框
     NewUser() {
       this.operation = true
@@ -750,7 +779,7 @@ export default {
         type: 'warning'
       }).then(() => {
         row.isDeleted = 1
-        api.index.update(row).then((resp)=>{
+        api.index.customerDelect(row.customerId).then((resp)=>{
           if (resp.status === 200) {
             this.$message({
               type: 'success',
@@ -1086,7 +1115,7 @@ export default {
       }).then(()=>{
         let code = JSON.parse(JSON.stringify(row))
         code.status = i   // 2:暂停   1:有效
-        api.index.update(code).then(response => {
+        api.index.customerValid(code.customerId,code.status).then(response => {
         if (response.status === 200) {
           this.$message({
             type: 'success',