浏览代码

轮胎额度修改和历史记录 2024-3-22

caojunjie 1 年之前
父节点
当前提交
0d0b993b37

+ 0 - 9
src/api/tirePartsMall/basicData/customerInformation/limitrecord.js

@@ -39,12 +39,3 @@ export const limitrecordSubmit = (row) => {
     data: row
   })
 }
-
-export const update = (row) => {
-  return request({
-    url: '/api/blade-sales-part/limitrecord/submit',
-    method: 'post',
-    data: row
-  })
-}
-

+ 4 - 0
src/enums/column-name.js

@@ -1591,6 +1591,10 @@ const columnName = [{
     code: 339.1,
     name: '轮胎商城-基础资料-活动详情'
   },
+  {
+    code: 340,
+    name: '轮胎商城-基础资料-额度历史记录'
+  },
 ]
 export const getColumnName = (key) => {
   for (let index = 0; index < columnName.length; index++) {

+ 8 - 1
src/views/iosBasicData/UnpaidPaymentsDetails/index.vue

@@ -105,6 +105,7 @@ export default {
             query: {
                 dc:'D',
                 isBusinessDate:1,
+                isToExamineDate:0,
                 etdStart:defaultDate3()[0],
                 etdEnd:defaultDate3()[1],
             },
@@ -447,7 +448,13 @@ export default {
         },
         // 清空搜索回调方法
         searchReset() {
-            this.query = {};
+            this.query = {
+                dc:'D',
+                isBusinessDate:1,
+                isToExamineDate:0,
+                etdStart:defaultDate3()[0],
+                etdEnd:defaultDate3()[1],
+            };
             this.onLoad(this.page);
         },
         // 搜索

+ 9 - 1
src/views/iosBasicData/financeProfit/index.vue

@@ -732,7 +732,15 @@
             },
             // 清空搜索回调方法
             searchReset() {
-                this.query = {};
+                this.query = {
+                    billType:'SE,SI',
+                    costMerge:1,
+                    statisticsDateStart:defaultDate3()[0],
+                    statisticsDateEnd:defaultDate3()[1],
+                    mergeAmendFee:0,
+                    examine:0,
+                    examineDate:0
+                };
                 this.onLoad(this.page);
             },
             // 搜索

+ 9 - 1
src/views/iosBasicData/paymentDetail/index.vue

@@ -125,6 +125,7 @@ export default {
             query: {
                 dc:'D',
                 isBusinessDate:1,
+                isToExamineDate:0,
                 type:'1',
                 etdStart:defaultDate3()[0],
                 etdEnd:defaultDate3()[1],
@@ -518,7 +519,14 @@ export default {
         },
         // 清空搜索回调方法
         searchReset() {
-            this.query = {};
+            this.query = {
+                dc:'D',
+                isBusinessDate:1,
+                isToExamineDate:0,
+                type:'1',
+                etdStart:defaultDate3()[0],
+                etdEnd:defaultDate3()[1],
+            }
             this.onLoad(this.page);
         },
         // 搜索

+ 9 - 1
src/views/iosBasicData/paymentSummary/index.vue

@@ -138,6 +138,7 @@
                 query: {
                     dc:'D',
                     isBusinessDate:1,
+                    isToExamineDate:0,
                     type:'1',
                     etdStart:defaultDate3()[0],
                     etdEnd:defaultDate3()[1],
@@ -507,7 +508,14 @@
             },
             // 清空搜索回调方法
             searchReset() {
-                this.query = {};
+                this.query = {
+                    dc:'D',
+                    isBusinessDate:1,
+                    isToExamineDate:0,
+                    type:'1',
+                    etdStart:defaultDate3()[0],
+                    etdEnd:defaultDate3()[1],
+                };
                 this.onLoad(this.page);
             },
             // 搜索

+ 151 - 140
src/views/tirePartsMall/basicData/customerInformation/components/limitrecord.vue

@@ -1,43 +1,101 @@
 <template>
   <basic-container>
-    <avue-crud :option="option"
-               :table-loading="loading"
-               :data="data"
-               :page.sync="page"
-               :permission="permissionList"
-               :before-open="beforeOpen"
-               v-model="form"
-               ref="crud"
-               @row-update="rowUpdate"
-               @row-save="rowSave"
-               @row-del="rowDel"
-               @search-change="searchChange"
-               @search-reset="searchReset"
-               @selection-change="selectionChange"
-               @current-change="currentChange"
-               @size-change="sizeChange"
-               @refresh-change="refreshChange"
-               @on-load="onLoad">
-      <template slot="menuLeft">
-        <el-button type="danger"
-                   size="small"
-                   icon="el-icon-delete"
-                   plain
-                   v-if="permission.limitrecord_delete"
-                   @click="handleDelete">删 除
-        </el-button>
-      </template>
-    </avue-crud>
+    <el-tabs v-model="tabData" type="card" @tab-click="handleClick">
+        <el-tab-pane label="修改额度" name="XGED">
+            <avue-form ref="formEditRef" v-model="formEidt" :option="optionEidt">
+                <template slot="amountUpdate">
+                    <el-input v-model="formEidt.amountUpdate" size="small" clearable
+                              placeholder="请输入修改额度" @input="amountInput" ></el-input>
+                </template>
+            </avue-form>
+        </el-tab-pane>
+        <el-tab-pane label="历史记录" name="LSJL">
+            <avue-crud :option="option"
+                       :table-loading="loading"
+                       :data="data"
+                       :page.sync="page"
+                       :permission="permissionList"
+                       :before-open="beforeOpen"
+                       v-model="form"
+                       ref="crud"
+                       @row-update="rowUpdate"
+                       @row-save="rowSave"
+                       @row-del="rowDel"
+                       @search-change="searchChange"
+                       @search-reset="searchReset"
+                       @selection-change="selectionChange"
+                       @current-change="currentChange"
+                       @size-change="sizeChange"
+                       @refresh-change="refreshChange"
+                       @on-load="onLoad"
+                       @resetColumn="resetColumnTwo('crud', 'option', 'optionList', 340)"
+                       @saveColumn="saveColumnTwo('crud', 'option', 'optionList', 340)" >
+                <template slot="menuLeft">
+                    <el-button type="danger"
+                               size="small"
+                               icon="el-icon-delete"
+                               plain
+                               @click="handleDelete">删 除
+                    </el-button>
+                </template>
+            </avue-crud>
+        </el-tab-pane>
+    </el-tabs>
   </basic-container>
 </template>
 
 <script>
   import {limitrecordList, limitrecordDetail, limitrecordSubmit, limitrecordRemove} from "@/api/tirePartsMall/basicData/customerInformation/limitrecord";
   import {mapGetters} from "vuex";
+  import {regularBurdenfloating, regularInteger} from "@/util/regularJudgment";
 
   export default {
     data() {
       return {
+          tabData:'XGED', // tab切换
+          // 表单的配置项
+          optionEidt:{
+              menuBtn: false,
+              column: [
+                  {
+                      label: "原额度",
+                      prop: "amountOld",
+                      disabled:true,
+                      rules: [{
+                          required: true,
+                          message: "请输入原额度",
+                          trigger: "blur"
+                      }],
+                  },
+                  {
+                      label: "修改额度",
+                      prop: "amountUpdate",
+                      rules: [{
+                          required: true,
+                          message: "请输入本次修改额度",
+                          trigger: "blur"
+                      }]
+                  },
+                  {
+                      label: "修改后额度",
+                      prop: "amountNew",
+                      disabled:true,
+                      rules: [{
+                          required: true,
+                          message: "请输入修改后额度",
+                          trigger: "blur"
+                      }]
+                  },
+                  {
+                      label: "备注",
+                      prop: "remarks",
+                      span:24,
+                      type: 'textarea',
+                      minRows: 3,
+                  },
+              ]
+          },
+          formEidt:{}, // 表单数据
         form: {},
         query: {},
         loading: true,
@@ -47,8 +105,10 @@
           total: 0
         },
         selectionList: [],
-        option: {
+        option:{},
+        optionList: {
           height:'auto',
+          maxHeight:'200',
           calcHeight: 30,
           tip: false,
           searchShow: true,
@@ -58,121 +118,23 @@
           viewBtn: true,
           selection: true,
           dialogClickModal: false,
+          menu:false,
           column: [
             {
-              label: "",
-              prop: "id",
-              rules: [{
-                required: true,
-                message: "请输入",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "创建人",
-              prop: "createUser",
-              rules: [{
-                required: true,
-                message: "请输入创建人",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "创建部门",
-              prop: "createDept",
-              rules: [{
-                required: true,
-                message: "请输入创建部门",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "创建时间",
-              prop: "createTime",
-              rules: [{
-                required: true,
-                message: "请输入创建时间",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "修改人",
-              prop: "updateUser",
-              rules: [{
-                required: true,
-                message: "请输入修改人",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "修改时间",
-              prop: "updateTime",
-              rules: [{
-                required: true,
-                message: "请输入修改时间",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "是否已删除(0 否 1是)",
-              prop: "isDeleted",
-              rules: [{
-                required: true,
-                message: "请输入是否已删除(0 否 1是)",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "备注",
-              prop: "remarks",
-              rules: [{
-                required: true,
-                message: "请输入备注",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "活动状态(0录入 1已发布 2已失效)",
-              prop: "status",
-              rules: [{
-                required: true,
-                message: "请输入活动状态(0录入 1已发布 2已失效)",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "所属公司id",
-              prop: "salesCompanyId",
-              rules: [{
-                required: true,
-                message: "请输入所属公司id",
-                trigger: "blur"
-              }]
-            },
-            {
-              label: "所属公司名称",
-              prop: "salesCompanyName",
-              rules: [{
-                required: true,
-                message: "请输入所属公司名称",
-                trigger: "blur"
-              }]
-            },
-            {
               label: "原额度",
               prop: "amountOld",
               rules: [{
                 required: true,
                 message: "请输入原额度",
                 trigger: "blur"
-              }]
+              }],
             },
             {
               label: "本次修改额度",
               prop: "amountUpdate",
               rules: [{
                 required: true,
-                message: "请输入本次修改额度",
+                message: "本次修改额度",
                 trigger: "blur"
               }]
             },
@@ -181,24 +143,29 @@
               prop: "amountNew",
               rules: [{
                 required: true,
-                message: "请输入修改后额度",
+                message: "修改后额度",
                 trigger: "blur"
               }]
             },
             {
-              label: "客户id",
-              prop: "pid",
-              rules: [{
-                required: true,
-                message: "请输入客户id",
-                trigger: "blur"
-              }]
+                label: "备注",
+                prop: "remarks",
             },
           ]
         },
         data: []
       };
     },
+    props:{
+        amountOld:{
+            type:Number,
+            default:0
+        },
+        pid:{
+            type:String,
+            default: ''
+        }
+    },
     computed: {
       ...mapGetters(["permission"]),
       permissionList() {
@@ -217,7 +184,24 @@
         return ids.join(",");
       }
     },
+    async created() {
+        this.option = await this.getColumnData(this.getColumnName(340), this.optionList);
+        this.$set(this.formEidt,'amountOld',this.amountOld?this.amountOld:0)
+    },
     methods: {
+        // tabs 切换
+        handleClick(){
+            if (this.tabData == 'LSJL') {
+                this.query = {}
+                this.page.currentPage = 1;
+                this.onLoad(this.page, this.query);
+            }
+        },
+      // 修改额度input 监听
+      amountInput(value){
+          this.$set(this.formEidt,'amountUpdate',regularBurdenfloating(value))
+          this.$set(this.formEidt,'amountNew',Number(this.formEidt.amountOld) - Number(this.formEidt.amountUpdate))
+      },
       rowSave(row, done, loading) {
         limitrecordSubmit(row).then(() => {
           this.onLoad(this.page);
@@ -319,14 +303,41 @@
       },
       onLoad(page, params = {}) {
         this.loading = true;
-        limitrecordList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {
+        limitrecordList(page.currentPage, page.pageSize, {
+            ...Object.assign(params, this.query),
+            pid:this.pid
+        }).then(res => {
           const data = res.data.data;
           this.page.total = data.total;
           this.data = data.records;
           this.loading = false;
           this.selectionClear();
         });
-      }
+      },
+      //自定义列保存
+      async saveColumnTwo(ref, option, optionBack, code) {
+          /**
+           * 已定义全局方法,直接使用,saveColumnData保存列数据方法,参数传值(表格名称,当前表格的option数据)
+           * 已定义全局方法,直接使用,getColumnName方法用来获取枚举值,参数根据自己定义的code值获取中文名
+           * 一定要执行异步操作,要等接口成功返回,才能执行下一行代码
+           */
+          const inSave = await this.saveColumnData(this.getColumnName(code), this[option]);
+          if (inSave) {
+              this.$message.success("保存成功");
+              //关闭窗口
+              this.$refs[ref].$refs.dialogColumn.columnBox = false;
+          }
+      },
+      //自定义列重置
+      async resetColumnTwo(ref, option, optionBack, code) {
+          this[option] = this[optionBack];
+          const inSave = await this.delColumnData(this.getColumnName(code), this[optionBack]);
+          if (inSave) {
+              this.$message.success("重置成功");
+              this.$refs[ref].$refs.dialogColumn.columnBox = false;
+          }
+      },
+
     }
   };
 </script>

+ 32 - 1
src/views/tirePartsMall/basicData/customerInformation/detailsPage.vue

@@ -129,7 +129,11 @@
     </el-dialog>
 
     <el-dialog title="额度修改记录" :visible.sync="dialogVisibleED" append-to-body width="60%">
-        <limitrecord></limitrecord>
+        <limitrecord ref="limitrecord" :amountOld="form.creditLimit" :pid="form.id" ></limitrecord>
+        <span slot="footer" class="dialog-footer">
+            <el-button @click="cancellationEDfun">取 消</el-button>
+            <el-button type="primary" @click="limitrecordSubmitfun">确 定</el-button>
+        </span>
     </el-dialog>
   </div>
 </template>
@@ -157,6 +161,7 @@ import {
   customerListAll
 } from "@/api/tirePartsMall/basicData/warehouse";
 import limitrecord from "@/views/tirePartsMall/basicData/customerInformation/components/limitrecord.vue";
+import {limitrecordSubmit} from "@/api/tirePartsMall/basicData/customerInformation/limitrecord";
 
 export default {
   name: "index",
@@ -626,6 +631,32 @@ export default {
     }, 100)
   },
   methods: {
+      // 额度弹窗确认
+    limitrecordSubmitfun(){
+        if (this.$refs.limitrecord.tabData == 'XGED') {
+            this.$refs.limitrecord.$refs.formEditRef.validate((valid, done) => {
+                done()
+                if (valid) {
+                    limitrecordSubmit({
+                        ...this.$refs.limitrecord.formEidt,
+                        pid:this.form.id
+                    }).then(res=>{
+                        this.$message.success('修改成功')
+                        this.$set(this.$refs.limitrecord,'formEidt',{})
+                        this.dialogVisibleED = false
+                    })
+                }
+            })
+        }else {
+            this.$set(this.$refs.limitrecord,'formEidt',{})
+            this.dialogVisibleED = false
+        }
+    },
+    // 额度弹窗取消
+    cancellationEDfun(){
+        this.$set(this.$refs.limitrecord,'formEidt',{})
+        this.dialogVisibleED = false
+    },
     // 额度弹窗开启
     limitPopupfun(){
         this.dialogVisibleED = true