david 2 سال پیش
والد
کامیت
8812437da6
4فایلهای تغییر یافته به همراه268 افزوده شده و 29 حذف شده
  1. 28 0
      src/api/finance.js
  2. 6 1
      src/router/index.js
  3. 24 28
      src/views/finance/balance-audit-list.vue
  4. 210 0
      src/views/finance/change-balance-opt.vue

+ 28 - 0
src/api/finance.js

@@ -17,6 +17,34 @@ export function balanceAuditList(query) {
     })
 }
 
+// 导出
+export function balanceAuditListExport(query) {
+    return request({
+      url: '/v1/finance/balance-audit-list-export',
+      method: 'get',
+      data: query,
+      params: query
+    })
+}
+
+// 删除
+export function balanceAuditDelete(query) {
+    return request({
+      url: '/v1/finance/balance-audit-delete',
+      method: 'post',
+      data: query
+    })
+}
+// mult-point
+export function multPoint(query) {
+    return request({
+      url: '/v1/finance/mult-point',
+      method: 'post',
+      data: query
+    })
+}
+
+
 // 删除角色
 export function deleteRole(id) {
   return request({

+ 6 - 1
src/router/index.js

@@ -102,7 +102,12 @@ export const constantRoutes = [
         path: '/finance/balance-audit-list',
         component: () => import('@/views/finance/balance-audit-list'),
         name: 'finance_balance-audit-list',
-      }
+      },
+      {
+        path: '/finance/change-balance-opt',
+        component: () => import('@/views/finance/change-balance-opt'),
+        name: 'finance_change-balance-opt',
+      },
     ]
   },
   {

+ 24 - 28
src/views/finance/balance-audit-list.vue

@@ -156,7 +156,7 @@
     import permission from '@/utils/permission'
     import Pagination from '@/components/Pagination'
     import filterHelper from '@/utils/filterHelper'
-    import { getChangeBalanceType, balanceAuditList } from '@/api/finance'
+    import { getChangeBalanceType, balanceAuditList, balanceAuditListExport, balanceAuditDelete } from '@/api/finance'
   
     export default {
       name: 'leo-balance-audit-table',
@@ -167,11 +167,6 @@
           this.dealTypes = response.data.dealTypes
           this.getData()
         })
-        // network.getData('finance/change-balance-type').then(response => {
-        //   this.type = response.type
-        //   this.dealTypes = response.dealTypes
-        //   this.getData()
-        // })
       },
       data() {
         return {
@@ -374,17 +369,19 @@
             } else {
               selectedIds.push(id)
             }
-            return network.postData(`finance/balance-audit-delete`, {
-              selected: selectedIds
-            })
-          }).then(response => {
-            this.$message({
-              message: response,
-              type: 'success'
-            })
-            obj.getData(obj.currentPage, obj.pageSize)
-          }).catch(response => {
-  
+            balanceAuditDelete({selected: selectedIds}).then(response => {
+              this.$message({
+                message: response.data,
+                type: 'success'
+              })
+              obj.getData(obj.currentPage, obj.pageSize)
+            }).catch(err => {
+              this.$message({
+                message: err,
+                type: 'error'
+              })
+            })  
+            
           })
         },
         handleSelectionChange(val) {
@@ -424,10 +421,6 @@
             console.log('err=============' + err)
             this.loading = false
           })
-          // network.getPageData(this, 'finance/balance-audit-list', page, pageSize, filterData, function (response) {
-          //   vueObj.allData = response
-          //   vueObj.filterTypes = response.filterTypes
-          // })
         },
         handleExport(){
           this.$confirm(this.$t('financial.exportNotice'), this.$t('common.hint'), {//`确定要导出当前数据吗?`, '提示',
@@ -435,14 +428,17 @@
             cancelButtonText: this.$t('common.cancel'),//取消
             type: 'warning'
           }).then(() => {
-            return network.getData(`finance/balance-audit-list-export`, this.filterModel)
-          }).then(response => {
-            this.$message({
-              message: response,
-              type: 'success'
+            balanceAuditListExport(this.filterModel).then(response => {
+              this.$message({
+                message: response.data,
+                type: 'success'
+              })
+            }).catch(error => {
+              this.$message({
+                message: error,
+                type: 'error'
+              })
             })
-          }).catch(response => {
-  
           })
         },
       }

+ 210 - 0
src/views/finance/change-balance-opt.vue

@@ -0,0 +1,210 @@
+<template>
+    <div v-loading="loading">
+      <div class="white-box">
+        <el-tabs v-model="tabActiveName">
+          <el-tab-pane label="Manually add" name="first" v-if="permission.hasPermission(`finance/change-balance`)"><!--手动添加-->
+            <el-form ref="form" :model="form" label-width="250px" class="form-page">
+              <el-form-item label="Member code"><!--会员编号-->
+                <el-input v-model="form.userName" @change="handleChange"></el-input>
+              </el-form-item>
+              <el-form-item label="Member name" v-show="userInfo.REAL_NAME!==null"><!--会员姓名-->
+                <el-input :value="userInfo.REAL_NAME" :disabled="true"></el-input>
+              </el-form-item>
+              <el-form-item label="Member level" v-show="userInfo.REAL_NAME!==null"><!--会员级别-->
+                <el-input :value="userInfo.LEVEL_NAME" :disabled="true"></el-input>
+              </el-form-item>
+              <!--<el-form-item label="报单中心级别" v-show="userInfo.DEC_ROLE_NAME!=='无'">-->
+                <!--<el-input :value="userInfo.DEC_ROLE_NAME" :disabled="true"></el-input>-->
+              <!--</el-form-item>-->
+  
+              <el-form-item :label="item.label" v-show="userInfo.REAL_NAME!==null" v-for="(item,key) in type" :key="key">
+                <el-input :value="userInfo[item.name.toUpperCase()]" :disabled="true"></el-input>
+              </el-form-item>
+  
+              <el-form-item label="Account type"><!--账户类型-->
+                <el-select v-model="form.type" placeholder="select account type"><!--请选择账户类型-->
+                  <el-option v-for="(item,key) in type" :label="item.label" :value="key" :key="key"></el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item label="Adjust amount"><!--调整金额-->
+                <el-input v-model="form.amount"></el-input>
+              </el-form-item>
+              <el-form-item label="Transaction type"><!--交易类型-->
+                <el-select v-model="form.dealType" placeholder="select transaction type"><!--请选择交易类型-->
+                  <el-option v-for="(item,key) in dealTypes" :label="item.TYPE_NAME" :value="item.ID"
+                             :key="item.ID"></el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item label="Remark"><!--备注-->
+                <el-input v-model="form.remark"></el-input>
+              </el-form-item>
+              <el-form-item label="Note on display"><!--备注前台显示-->
+                <el-switch v-model="form.isShow" active-value="1" inactive-value="0">
+                </el-switch>
+              </el-form-item>
+              <el-form-item>
+                <el-button type="primary" :loading="submitButtonStat" :disabled="getCodeStat" @click="onSubmit">Confirm<!-- 提交 --></el-button>
+              </el-form-item>
+            </el-form>
+          </el-tab-pane>
+          <!--<el-tab-pane label="批量导入" name="second"-->
+                       <!--v-if="permission.hasPermission(`finance/import-change-balance-to-excel-table`)&&permission.hasPermission(`finance/import-change-balance`)">-->
+            <!--<el-form ref="form" :model="form" label-width="250px" class="form-page">-->
+              <!--<el-form-item label="Excel文件总行数">-->
+                <!--<el-input v-model="excelForm.rowCount"></el-input>-->
+              <!--</el-form-item>-->
+              <!--<el-form-item label="">-->
+                <!--<el-tag type="info">表格中账户类型要求英文:bonus(会员账户余额)、reconsume_points(复消积分)</el-tag>-->
+              <!--</el-form-item>-->
+              <!--<el-form-item>-->
+                <!--<leo-excel-uploader-->
+                    <!--:request-upload-route="`file/upload-excel`"-->
+                    <!--:request-import-to-excel-table-route="`finance/import-change-balance-to-excel-table`"-->
+                    <!--:request-import-excel-table-to-data-route="`finance/import-change-balance`"-->
+                    <!--:import-row-count="excelForm.rowCount"-->
+                    <!--excel-option="changeBalance"-->
+                    <!--upload-btn-title="Excel导入"-->
+                    <!--style="float: left;"-->
+                <!--&gt;</leo-excel-uploader>-->
+                <!--<el-button type="primary" @click="handleExcel" style="float: left; margin-left: 10px;">下载模板</el-button>-->
+              <!--</el-form-item>-->
+            <!--</el-form>-->
+          <!--</el-tab-pane>-->
+        </el-tabs>
+      </div>
+    </div>
+  </template>
+  
+  <script>
+    import tool from '@/utils/tool'
+    import baseInfo from '@/utils/baseInfo'
+    import { getChangeBalanceType, multPoint, balanceAuditListExport, balanceAuditDelete } from '@/api/finance'
+    // import {CDN_BASE_URL} from '@/utils/config'
+    import permission from '@/utils/permission'
+  
+    export default {
+      name: 'finance_change-balance-opt',
+   
+      mounted() {
+        getChangeBalanceType().then(response => {
+          this.type = response.data.type
+          this.dealTypes = response.data.dealTypes
+          this.loading = false
+          if (permission.hasPermission(`finance/import-change-balance-to-excel-table`) && permission.hasPermission(`finance/import-change-balance`)) {
+            this.tabActiveName = 'second'
+          }
+          if (permission.hasPermission(`finance/change-balance`)) {
+            this.tabActiveName = 'first'
+          }
+        }).catch(err => {
+            console.log(err)
+            this.loading = false
+        })
+        // network.getData('finance/change-balance-type').then(response => {
+        //   this.type = response.type
+        //   this.dealTypes = response.dealTypes
+        //   this.loading = false
+        //   if (permission.hasPermission(`finance/import-change-balance-to-excel-table`) && permission.hasPermission(`finance/import-change-balance`)) {
+        //     this.tabActiveName = 'second'
+        //   }
+        //   if (permission.hasPermission(`finance/change-balance`)) {
+        //     this.tabActiveName = 'first'
+        //   }
+        // })
+        multPoint({opType: 1}).then(response => {
+            this.form.balanceCode = response.data.balanceCode
+            this.getCodeStat = false
+        })
+        // network.postData('finance/mult-point', {opType: 1}).then(response => {
+        //     this.form.balanceCode = response.balanceCode
+        //     this.getCodeStat = false
+        // })
+      },
+      data() {
+        return {
+          form: {
+            userName: null,
+            type: null,
+            amount: 0,
+            remark: '',
+            isShow: '1',
+            dealType: null,
+            balanceCode: '',
+          },
+          userInfo: {
+            REAL_NAME: null,
+            DEC_ROLE_NAME: '',
+            BONUS: 0,
+            BONUS_FREEZE: 0,
+            DEC_LV: 0,
+            DEC_DEC_LV: 0,
+          },
+          baseDecLevels: baseInfo.decLevels(),
+          type: null,
+          dealTypes: null,
+          loading: true,
+          submitButtonStat: false,
+          getCodeStat: true,
+          tool: tool,
+          tabActiveName: 'first',
+          excelForm: {
+            rowCount: 0,
+          },
+          permission: permission,
+        }
+      },
+      methods: {
+        handleChange() {
+        //   this.loading = true
+        //   network.getData('user/full-info', {userName: this.form.userName}).then(response => {
+        //     this.userInfo = response
+        //     this.loading = false
+        //   }).catch(response => {
+        //     this.loading = false
+        //   })
+        },
+        onSubmit() {
+              if (this.form.type === 'bonus') {
+                if ((Number.parseFloat(this.userInfo['BONUS']) + Number.parseFloat(this.form.amount)) < 0) {
+                  this.$confirm(`Ecoin of member is insufficient, whether to continue to submit.`, 'Hint', {// 会员账户余额不足,是否继续提交
+                    confirmButtonText: 'confirm', // 确定
+                    cancelButtonText: 'cancel', // 取消
+                    type: 'warning'
+                  }).then(() => {
+                    this._handleSubmit()
+                  }).catch(() => {
+                    this.submitButtonStat = false
+                    return false
+                  })
+                } else {
+                  this._handleSubmit()
+                }
+              } else {
+                this._handleSubmit()
+              }
+        },
+        _handleSubmit() {
+          this.submitButtonStat = true
+          let path = 'finance/change-balance'
+        //   network.postData(path, this.form).then(response => {
+        //     this.submitButtonStat = false
+        //     this.$message({
+        //       message: response,
+        //       type: 'success'
+        //     })
+        //     this.$router.go(-1)
+        //   }).catch(response => {
+        //     this.submitButtonStat = false
+        //   })
+        },
+        handleExcel() {
+        //   window.open(CDN_BASE_URL + `/files/bonus_change_balance.xlsx`)
+        },
+      }
+    }
+  </script>
+  
+  <style scoped>
+  
+  </style>
+