瀏覽代碼

修改禅道1894

Qukatie 1 年之前
父節點
當前提交
8dc5152ec7

+ 19 - 5
src/components/bill/config/mainLists.json

@@ -48,7 +48,7 @@
       "overHidden": true,
       "search": true,
       "width": 150,
-      "index": 2
+      "index": 1
     }, {
       "label": "结算单位",
       "prop": "customerName",
@@ -60,14 +60,28 @@
       "prop": "goodsTotalNum",
       "overHidden": true,
       "width": 150,
-      "index": 7
+      "index": 3
     },
     {
       "label": "金额",
       "prop": "totalMoney",
       "overHidden": true,
       "width": 150,
-      "index": 7
+      "index": 4
+    },
+    {
+      "label": "退货数量",
+      "prop": "returnsNumber",
+      "overHidden": true,
+      "width": 150,
+      "index": 5
+    },
+    {
+      "label": "退货金额",
+      "prop": "returnsAmount",
+      "overHidden": true,
+      "width": 150,
+      "index":6
     },
     {
       "label": "业务日期",
@@ -80,7 +94,7 @@
       "format": "yyyy-MM-dd",
       "valueFormat": "yyyy-MM-dd HH:mm:ss",
       "overHidden": true,
-      "index": 14,
+      "index": 7,
       "width": 250
     },
     {
@@ -94,7 +108,7 @@
       "format": "yyyy-MM-dd",
       "valueFormat": "yyyy-MM-dd HH:mm:ss",
       "overHidden": true,
-      "index": 14,
+      "index": 8,
       "width": 250
     }
   ]

+ 19 - 5
src/components/bill/config/mainListsCG.json

@@ -48,7 +48,7 @@
       "overHidden": true,
       "search": true,
       "width": 150,
-      "index": 2
+      "index": 1
     }, {
       "label": "结算单位",
       "prop": "customerName",
@@ -60,14 +60,28 @@
       "prop": "goodsTotalNum",
       "overHidden": true,
       "width": 150,
-      "index": 7
+      "index": 3
     },
     {
       "label": "金额",
       "prop": "totalMoney",
       "overHidden": true,
       "width": 150,
-      "index": 7
+      "index": 4
+    },
+    {
+      "label": "退货数量",
+      "prop": "returnsNumber",
+      "overHidden": true,
+      "width": 150,
+      "index": 5
+    },
+    {
+      "label": "退货金额",
+      "prop": "returnsAmount",
+      "overHidden": true,
+      "width": 150,
+      "index":6
     },
     {
       "label": "业务日期",
@@ -80,7 +94,7 @@
       "format": "yyyy-MM-dd",
       "valueFormat": "yyyy-MM-dd HH:mm:ss",
       "overHidden": true,
-      "index": 14,
+      "index": 7,
       "width": 250
     },
     {
@@ -94,7 +108,7 @@
       "format": "yyyy-MM-dd",
       "valueFormat": "yyyy-MM-dd HH:mm:ss",
       "overHidden": true,
-      "index": 14,
+      "index": 8,
       "width": 250
     }
   ]

+ 105 - 52
src/views/tirePartsMall/financialManagement/collectionSettlement/detailsPage.vue

@@ -24,24 +24,24 @@
     <div style="margin-top: 50px">
       <trade-card title="基础信息">
         <avue-form :option="optionForm" v-model="form" ref="form">
-            <!--<template slot-scope="scope" slot="corpId">-->
-            <!--    <el-select v-model="form.corpId" placeholder="请选择">-->
-            <!--        <el-option-->
-            <!--            v-for="item in corpIdData"-->
-            <!--            :key="item.id"-->
-            <!--            :label="item.cname"-->
-            <!--            :value="item.id">-->
-            <!--        </el-option>-->
-            <!--    </el-select>-->
-            <!--</template>-->
-            <!--<template slot-scope="scope" slot="settlementDate">-->
-            <!--    <el-date-picker-->
-            <!--        v-model="value1"-->
-            <!--        type="date"-->
-            <!--        format="yyyy-MM-dd",-->
-            <!--        placeholder="选择日期">-->
-            <!--    </el-date-picker>-->
-            <!--</template>-->
+          <!--<template slot-scope="scope" slot="corpId">-->
+          <!--    <el-select v-model="form.corpId" placeholder="请选择">-->
+          <!--        <el-option-->
+          <!--            v-for="item in corpIdData"-->
+          <!--            :key="item.id"-->
+          <!--            :label="item.cname"-->
+          <!--            :value="item.id">-->
+          <!--        </el-option>-->
+          <!--    </el-select>-->
+          <!--</template>-->
+          <!--<template slot-scope="scope" slot="settlementDate">-->
+          <!--    <el-date-picker-->
+          <!--        v-model="value1"-->
+          <!--        type="date"-->
+          <!--        format="yyyy-MM-dd",-->
+          <!--        placeholder="选择日期">-->
+          <!--    </el-date-picker>-->
+          <!--</template>-->
         </avue-form>
       </trade-card>
       <trade-card title="明细信息">
@@ -57,6 +57,16 @@
             <span style="color: #409EFF;cursor: pointer" @click.stop="viewDocuments(row)">{{ row.contractNumber }}
             </span>
           </template>
+          <template slot-scope="{ row, index }" slot="thisAmount">
+            <el-input-number size="small" v-model="row.thisAmount" :precision="2" :controls="false"
+              v-if="row.$cellEdit && row.businesType == 'XS'" @change="thisAmountChange(row)"></el-input-number>
+            <span v-else>{{ row.thisAmount }}</span>
+          </template>
+          <template slot-scope="{ row, index }" slot="thisRefundAmount">
+            <el-input-number size="small" width="100" v-model="row.thisRefundAmount" :precision="2" :controls="false"
+              v-if="row.$cellEdit && row.businesType == 'TKXS'" @change="thisReAmountChange(row)"></el-input-number>
+            <span v-else>{{ row.thisRefundAmount }}</span>
+          </template>
           <template slot-scope="{type,size,row,index,disabled}" slot="menu">
             <el-button :size="size" :disabled="form.financeStatus == '已收款' || isMenu" :type="type"
               :icon="row.$cellEdit ? 'el-icon-plus' : 'el-icon-edit'" @click="$refs.formContacts.rowCell(row, index)">{{
@@ -69,10 +79,10 @@
         </avue-crud>
       </trade-card>
 
-        <containerTitle title="上传附件"></containerTitle>
-        <c-upload v-loading="loadingBtn" typeUpload="LT" :disabled="isMenu"
-                  deleteUrl="/api/trade-purchase/woodHarvestingCloud/removeByFileId" :data="filesList" display
-                  :enumerationValue="35.1"></c-upload>
+      <containerTitle title="上传附件"></containerTitle>
+      <c-upload v-loading="loadingBtn" typeUpload="LT" :disabled="isMenu"
+        deleteUrl="/api/trade-purchase/woodHarvestingCloud/removeByFileId" :data="filesList" display
+        :enumerationValue="35.1"></c-upload>
     </div>
     <el-dialog title="导入订单" v-if="billDetailDialog" append-to-body class="el-dialogDeep" :visible.sync="billDetailDialog"
       width="80%" :close-on-click-modal="false" :destroy-on-close="true" :close-on-press-escape="false" top="10vh"
@@ -88,7 +98,7 @@
 import billDetail from "@/components/bill/selectOrderDetailList";
 import { saveSubmit, collectionAndPayment, revokeCollectionAndPayment, detail, removeItems, getFinanceList, remove } from '@/api/accountingManagement/index.js';
 import { getList } from "@/api/collectionSettlement/index.js";
-import {skgetKh} from "@/api/tirePartsMall/salesManagement/saleOrder";
+import { skgetKh } from "@/api/tirePartsMall/salesManagement/saleOrder";
 
 
 export default {
@@ -98,11 +108,11 @@ export default {
   },
   data() {
     return {
-        // 上传附件的需要参数
-        loadingBtn:false,
-        filesList:[],
+      // 上传附件的需要参数
+      loadingBtn: false,
+      filesList: [],
 
-        corpIdData:[],
+      corpIdData: [],
 
       // 经办人list
       financeList: [],
@@ -187,11 +197,11 @@ export default {
           format: "yyyy-MM-dd",
           valueFormat: "yyyy-MM-dd HH:mm:ss",
           value: '',
-            rules: [{
-                required: true,
-                message: " ",
-                trigger: "blur"
-            }]
+          rules: [{
+            required: true,
+            message: " ",
+            trigger: "blur"
+          }]
         }, {
           label: '单据编号',
           prop: "sysNo",
@@ -244,13 +254,16 @@ export default {
           }, {
             label: '本次金额',
             prop: 'thisAmount',
-            cell: true
+            width: 140,
+          }, {
+            label: '本次退货金额',
+            prop: 'thisRefundAmount',
+            width: 140,
           }, {
             label: '来源主表id',
             hide: true,
             showColumn: false,
             prop: 'srcParentId',
-            cell: true
           }, {
             label: '来源单据编号',
             prop: 'srcBillNo',
@@ -339,24 +352,55 @@ export default {
     }
 
     // 先处理时间在赋值哦 防止数据渲染不上页面
-      let thisAmountSum = 0
-      this.optionContacts = await this.getColumnData(this.getColumnName(267.1), this.optionContactsBack);
-      this.findObject(this.optionContacts.column, "thisAmount").change = ({ value, column }) => {
-          thisAmountSum = 0
-          for (let item of this.form.settlementItemsList) {
-              thisAmountSum += item.thisAmount;
-          }
-          this.form.amount = Number(thisAmountSum)
-      }
+    // let thisAmountSum = 0
+    this.optionContacts = await this.getColumnData(this.getColumnName(267.1), this.optionContactsBack);
+    // this.findObject(this.optionContacts.column, "thisAmount").change = ({ value, column }) => {
+    //   thisAmountSum = 0
+    //   for (let item of this.form.settlementItemsList) {
+    //     thisAmountSum += item.thisAmount;
+    //   }
+    //   for (let item of this.form.settlementItemsList) {
+    //     thisAmountSum += item.thisAmount;
+    //   }
+    //   this.form.amount = Number(thisAmountSum)
+    // }
 
     // 获取客户的数据
-      skgetKh().then(res=>{
-        console.log(res,330)
-          this.corpIdData = res.data.data
+    skgetKh().then(res => {
+      console.log(res, 330)
+      this.corpIdData = res.data.data
     })
     // this.corpIdData
   },
   methods: {
+    thisAmountChange(row){
+      let num=Number(row.totalMoney)-Number(row.paymentAmountTl)
+      if(row.thisAmount>num){
+        this.$message.error("请正确输入本次金额!");
+        this.$set(row,'thisAmount',0)
+      }
+      let sum1=0
+      let sum2=0
+      this.form.settlementItemsList.forEach(e=>{
+        sum1+=e.thisAmount;
+        sum2+=e.thisRefundAmount;
+        this.$set(this.form,'amount',sum1-sum2)
+      })
+    },
+    thisReAmountChange(row){
+      let num=Number(row.totalMoney)-Number(row.paymentAmountTl)
+      if(row.thisRefundAmount>num){
+        this.$message.error("请正确输入本次金额!");
+        this.$set(row,'thisRefundAmount',0)
+      }
+      let sum1=0
+      let sum2=0
+      this.form.settlementItemsList.forEach(e=>{
+        sum1+=e.thisAmount;
+        sum2+=e.thisRefundAmount;
+        this.$set(this.form,'amount',sum1-sum2)
+      })
+    },
     rowDelBox(row, index) {
       this.$confirm("确定将选择数据删除?", {
         confirmButtonText: "确定",
@@ -392,7 +436,7 @@ export default {
       })
       detail({ id: id }).then(res => {
         this.form = res.data.data
-          this.filesList = res.data.data.filesList
+        this.filesList = res.data.data.filesList
         // if (res.data.data.financeStatus == '已收款') {
         //   console.log('已收款');
         //   this.$set(this.optionForm, 'disabled', true)
@@ -433,11 +477,17 @@ export default {
       //     }
       //   }
       // }
+      let sum1=0
+      let sum2=0
       list.forEach((item, index) => {
         item.contractNumber = item.ordNo;
         item.accountsAmount = item.totalMoney
         item.settlmentAmount = item.paymentAmountTl
-        item.thisAmount = (Number(item.totalMoney) - Number(item.paymentAmountTl))
+        item.businesType=item.bsType
+        this.$set(item,'thisAmount',item.bsType=="XS"?(Number(item.totalMoney) - Number(item.paymentAmountTl)):0)
+        this.$set(item,'thisRefundAmount',item.bsType=="TKXS"?(Number(item.totalMoney) - Number(item.paymentAmountTl)):0)
+        // item.thisAmount =item.bsType=="XS"?(Number(item.totalMoney) - Number(item.paymentAmountTl)):0
+        // item.thisRefundAmount =item.bsType=="TKXS"? (Number(item.totalMoney) - Number(item.paymentAmountTl)):0
         item.srcParentId = item.id
         item.srcBillNo = item.ordNo
         item.salesCompanyId = item.salesCompanyId
@@ -445,15 +495,18 @@ export default {
         item.id = null
         delete item.ordNo;
         this.$refs.formContacts.rowCellAdd(item);
+        //计算主表金额
+        sum1+=item.bsType=="XS"?(Number(item.totalMoney) - Number(item.paymentAmountTl)):0
+        sum2+=item.bsType=="TKXS"? (Number(item.totalMoney) - Number(item.paymentAmountTl)):0
+        this.form.amount=sum1-sum2
       })
       //明细列表所有合同号 去重 加, 为主表合同号
       // this.$set(this.form,'srcOrderno',Array.from(new Set(this.dataList.map(item =>{ return item.srcOrderno}))).join(','))
-
       this.billDetailDialog = false;
     },
     //保存数据
     editCustomer() {
-      console.log(this.form,441)
+      console.log(this.form, 441)
       this.$refs["form"].validate((valid, done) => {
         done()
         if (valid) {
@@ -463,7 +516,7 @@ export default {
             billType: 'SK',
             corpName: this.form.$corpId,
             accountName: this.form.$accountId,
-              filesList:this.filesList
+            filesList: this.filesList
           }
           const loading = this.$loading({
             lock: true,
@@ -515,7 +568,7 @@ export default {
                 corpName: this.form.$corpId
               }
               saveSubmit(data).then(res => {
-                  loading.close()
+                loading.close()
                 collectionAndPayment(data).then((res => {
                   this.refresh(res.data.data.id)
                   this.$set(this.optionForm, 'disabled', true)

+ 108 - 59
src/views/tirePartsMall/financialManagement/paymentSettlement/detailsPage.vue

@@ -38,6 +38,16 @@
             <span style="color: #409EFF;cursor: pointer" @click.stop="payBtn(row)">{{ row.contractNumber }}
             </span>
           </template>
+          <template slot-scope="{ row, index }" slot="thisAmount">
+            <el-input-number size="small" v-model="row.thisAmount" :precision="2" :controls="false"
+              v-if="row.$cellEdit && row.businesType == 'CG'" @change="thisAmountChange(row)"></el-input-number>
+            <span v-else>{{ row.thisAmount }}</span>
+          </template>
+          <template slot-scope="{ row, index }" slot="thisRefundAmount">
+            <el-input-number size="small" width="100" v-model="row.thisRefundAmount" :precision="2" :controls="false"
+              v-if="row.$cellEdit && row.businesType == 'TKCG'" @change="thisReAmountChange(row)"></el-input-number>
+            <span v-else>{{ row.thisRefundAmount }}</span>
+          </template>
           <template slot-scope="{type,size,row,index,disabled}" slot="menu">
             <el-button :size="size" :type="type" :disabled="form.financeStatus == '已付款' || isMenu"
               :icon="row.$cellEdit ? 'el-icon-plus' : 'el-icon-edit'" @click="$refs.formContacts.rowCell(row, index)">{{
@@ -50,10 +60,9 @@
         </avue-crud>
       </trade-card>
 
-        <containerTitle title="上传附件"></containerTitle>
-        <c-upload v-loading="loadingBtn" typeUpload="LT"
-                  deleteUrl="/api/trade-purchase/woodHarvestingCloud/removeByFileId" :data="filesList" display
-                  :enumerationValue="35.1"></c-upload>
+      <containerTitle title="上传附件"></containerTitle>
+      <c-upload v-loading="loadingBtn" typeUpload="LT" deleteUrl="/api/trade-purchase/woodHarvestingCloud/removeByFileId"
+        :data="filesList" display :enumerationValue="35.1"></c-upload>
 
     </div>
     <el-dialog title="导入订单" append-to-body class="el-dialogDeep" :visible.sync="billDetailDialog" width="80%"
@@ -77,10 +86,10 @@ export default {
   },
   data() {
     return {
-        // 上传附件的需要参数
-        loadingBtn:false,
-        filesList:[],
-        params:{},
+      // 上传附件的需要参数
+      loadingBtn: false,
+      filesList: [],
+      params: {},
       // 经办人list
       financeList: [],
       billDetailDialog: false,
@@ -167,11 +176,11 @@ export default {
           format: "yyyy-MM-dd",
           valueFormat: "yyyy-MM-dd HH:mm:ss",
           value: '',
-            rules: [{
-                required: true,
-                message: " ",
-                trigger: "blur"
-            }]
+          rules: [{
+            required: true,
+            message: " ",
+            trigger: "blur"
+          }]
         }, {
           label: '单据编号',
           prop: "sysNo",
@@ -222,7 +231,11 @@ export default {
           }, {
             label: '本次金额',
             prop: 'thisAmount',
-            cell: true
+            width: 140,
+          }, {
+            label: '本次退货金额',
+            prop: 'thisRefundAmount',
+            width: 140,
           }, {
             label: '业务日期',
             prop: "businesDate",
@@ -250,43 +263,43 @@ export default {
     detailData: Object
   },
   async created() {
-      //  获取今天的日期
-      var today = new Date();
-      var year = today.getFullYear();
-      var month = String(today.getMonth() + 1).padStart(2, '0');
-      var day = String(today.getDate()).padStart(2, '0');
-      var hours = String(today.getHours()).padStart(2, '0');
-      var minutes = String(today.getMinutes()).padStart(2, '0');
-      var seconds = String(today.getSeconds()).padStart(2, '0');
+    //  获取今天的日期
+    var today = new Date();
+    var year = today.getFullYear();
+    var month = String(today.getMonth() + 1).padStart(2, '0');
+    var day = String(today.getDate()).padStart(2, '0');
+    var hours = String(today.getHours()).padStart(2, '0');
+    var minutes = String(today.getMinutes()).padStart(2, '0');
+    var seconds = String(today.getSeconds()).padStart(2, '0');
 
-      // 查询经办人
-      getFinanceList().then(res => {
-        this.financeList = res.data.data
-        const logInUser = JSON.parse(localStorage.getItem('saber-userInfo'));
-        if (logInUser.content.role_name.includes('财务')) {
-          for (let finance of res.data.data) {
-            if (finance.name === logInUser.content.nick_name) {
-              console.log(finance.name)
-              this.form.handledByName = finance.name;
-              break;
-            }
+    // 查询经办人
+    getFinanceList().then(res => {
+      this.financeList = res.data.data
+      const logInUser = JSON.parse(localStorage.getItem('saber-userInfo'));
+      if (logInUser.content.role_name.includes('财务')) {
+        for (let finance of res.data.data) {
+          if (finance.name === logInUser.content.nick_name) {
+            console.log(finance.name)
+            this.form.handledByName = finance.name;
+            break;
           }
         }
-      })
-
-      // 构建今天的日期时间字符串
-      var todayDateTime = year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds;
-      if (this.onLoad.id) {
-          this.refresh(this.onLoad.id)
-          this.$set(this.optionForm, 'disabled', true)
-          this.$set(this.optionContactsBack, 'disabled', true)
-          this.isSaveBtn = true
-          this.isFinanceBtn = true
-          this.isMenu = true
-      } else {
-          this.findObject(this.optionForm.column, 'settlementDate').value = todayDateTime
-          this.editButton = true
       }
+    })
+
+    // 构建今天的日期时间字符串
+    var todayDateTime = year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds;
+    if (this.onLoad.id) {
+      this.refresh(this.onLoad.id)
+      this.$set(this.optionForm, 'disabled', true)
+      this.$set(this.optionContactsBack, 'disabled', true)
+      this.isSaveBtn = true
+      this.isFinanceBtn = true
+      this.isMenu = true
+    } else {
+      this.findObject(this.optionForm.column, 'settlementDate').value = todayDateTime
+      this.editButton = true
+    }
 
     this.optionContacts = await this.getColumnData(this.getColumnName(266.1), this.optionContactsBack);
     // let thisAmountSum = 0
@@ -301,6 +314,34 @@ export default {
 
   },
   methods: {
+    thisAmountChange(row) {
+      let num = Number(row.totalMoney) - Number(row.paymentAmountTl)
+      if (row.thisAmount > num) {
+        this.$message.error("请正确输入本次金额!");
+        this.$set(row, 'thisAmount', 0)
+      }
+      let sum1 = 0
+      let sum2 = 0
+      this.form.settlementItemsList.forEach(e => {
+        sum1 += e.thisAmount;
+        sum2 += e.thisRefundAmount;
+        this.$set(this.form, 'amount', sum1 - sum2)
+      })
+    },
+    thisReAmountChange(row) {
+      let num = Number(row.totalMoney) - Number(row.paymentAmountTl)
+      if (row.thisRefundAmount > num) {
+        this.$message.error("请正确输入本次金额!");
+        this.$set(row, 'thisRefundAmount', 0)
+      }
+      let sum1 = 0
+      let sum2 = 0
+      this.form.settlementItemsList.forEach(e => {
+        sum1 += e.thisAmount;
+        sum2 += e.thisRefundAmount;
+        this.$set(this.form, 'amount', sum1 - sum2)
+      })
+    },
     rowDelBox(row, index) {
       this.$confirm("确定将选择数据删除?", {
         confirmButtonText: "确定",
@@ -330,7 +371,7 @@ export default {
       })
       detail({ id: id }).then(res => {
         this.form = res.data.data
-          this.filesList = res.data.data.filesList
+        this.filesList = res.data.data.filesList
         loading.close();
       }).catch(() => {
         loading.close();
@@ -341,23 +382,23 @@ export default {
         this.$message.warning("请先选择客户!")
         return
       }
-        console.log(this.form,329)
+      console.log(this.form, 329)
       this.params = {
         customerId: this.form.corpId,
         status: '待确认',
         bsType: 'CG,TKCG',
         actualPaymentStatus: '2'
       }
-        this.billDetailDialog = true;
+      this.billDetailDialog = true;
 
       // 调用一次弹窗的方法,防止不刷新数据
-        let page = {
-            pageSize: 20,
-            pagerCount: 1,
-            total: 0,
-            pageSizes: [20, 200, 300, 500, 700, 1000]
-        }
-        this.$refs.billDetailRef.onLoad(page,this.params)
+      let page = {
+        pageSize: 20,
+        pagerCount: 1,
+        total: 0,
+        pageSizes: [20, 200, 300, 500, 700, 1000]
+      }
+      this.$refs.billDetailRef.onLoad(page, this.params)
 
 
     },
@@ -389,7 +430,7 @@ export default {
             dc: 'c',
             billType: 'FK',
             corpName: this.form.$corpId,
-              filesList:this.filesList
+            filesList: this.filesList
           }
           const loading = this.$loading({
             lock: true,
@@ -425,11 +466,15 @@ export default {
       //     }
       //   }
       // }
+      let sum1 = 0
+      let sum2 = 0
       list.forEach((item, index) => {
         item.contractNumber = item.ordNo;
         item.accountsAmount = item.totalMoney
         item.settlmentAmount = item.paymentAmountTl
-        item.thisAmount = (Number(item.totalMoney) - Number(item.paymentAmountTl))
+        item.businesType = item.bsType
+        this.$set(item, 'thisAmount', item.bsType == "CG" ? (Number(item.totalMoney) - Number(item.paymentAmountTl)) : 0)
+        this.$set(item, 'thisRefundAmount', item.bsType == "TKCG" ? (Number(item.totalMoney) - Number(item.paymentAmountTl)) : 0)
         item.srcParentId = item.id
         item.srcBillNo = item.ordNo
         item.salesCompanyId = item.salesCompanyId
@@ -437,6 +482,10 @@ export default {
         item.id = null
         delete item.ordNo;
         this.$refs.formContacts.rowCellAdd(item);
+        //计算主表金额
+        sum1 += item.bsType == "CG" ? (Number(item.totalMoney) - Number(item.paymentAmountTl)) : 0
+        sum2 += item.bsType == "TKCG" ? (Number(item.totalMoney) - Number(item.paymentAmountTl)) : 0
+        this.form.amount = sum1 - sum2
       })
       //明细列表所有合同号 去重 加, 为主表合同号
       // this.$set(this.form,'srcOrderno',Array.from(new Set(this.dataList.map(item =>{ return item.srcOrderno}))).join(','))

+ 2 - 2
src/views/tirePartsMall/inventory/index.vue

@@ -137,14 +137,14 @@ export default {
             overHidden: true,
           }, {
             label: '品牌',
-            prop: "brandId",
+            prop: "brandName",
             // searchProp: "brandId",
             search: true,
             overHidden: true,
             type: 'select',
             props: {
               label: 'cname',
-              value: 'id'
+              value: 'cname'
             },
             dicUrl: '/api/blade-sales-part/brandDesc/listAllV1?type=PP&enableOrNot=1',
             width: 100

+ 3 - 3
src/views/tirePartsMall/purchaseService/outStorage/detailsPage.vue

@@ -172,7 +172,7 @@ export default {
           ]
         },
         {
-          label: '库单号',
+          label: '库单号',
           disabled: false,
           prop: "billno",
           rules: [
@@ -335,11 +335,11 @@ export default {
           },
           dicUrl: "/api/blade-sales-part/stockDesc/dotList",
         },{
-          label: '出库数量',
+          label: '采购数量',
           prop: 'goodsNum',
           disabled: false,
         }, {
-          label: '货数量',
+          label: '退货数量',
           prop: 'sendNum',
             cell:true,
           disabled: false,

+ 17 - 13
src/views/tirePartsMall/purchaseService/returns/detailsPage.vue

@@ -93,15 +93,15 @@
                                 <span v-else>{{ row.returnsNumber }}</span>
                             </template>
                             <template slot-scope="{type,size,row,index,disabled}" slot="menu">
-                                <el-button v-if="mingxibaocun" :size="size" :disabled="form.status != '录入'" :type="type"
-                                    :icon="row.$cellEdit ? 'el-icon-plus' : 'el-icon-edit'"
+                                <el-button v-if="mingxibaocun" :size="size" :disabled="form.status != '录入' || editButton"
+                                    :type="type" :icon="row.$cellEdit ? 'el-icon-plus' : 'el-icon-edit'"
                                     @click="hangeditBtn(row, index)">编辑
                                 </el-button>
                                 <el-button v-else :size="size" :disabled="disabled" :type="type"
                                     :icon="row.$cellEdit ? 'el-icon-plus' : 'el-icon-edit'" @click="inSave(row, index)">保存
                                 </el-button>
-                                <el-button icon="el-icon-delete" :size="size" :disabled="form.status != '录入'" :type="type"
-                                    @click="rowDelBox(row, index, 'orderItemsList')">删除
+                                <el-button icon="el-icon-delete" :size="size" :disabled="form.status != '录入' || editButton"
+                                    :type="type" @click="rowDelBox(row, index, 'orderItemsList')">删除
                                 </el-button>
                             </template>
                         </avue-crud>
@@ -484,14 +484,14 @@ export default {
                         width: 100
                     },
                     {
-                        label: '库存',
+                        label: '实际库存',
                         prop: 'inventory',
                         width: 100,
                         disabled: false,
                         remote: true,
                         overHidden: true,
                     }, {
-                        label: '数量',
+                        label: '采购数量',
                         prop: 'goodsNum',
                         width: 100,
                         disabled: false,
@@ -616,7 +616,7 @@ export default {
         retuNumChange(row, num) {
             if (num > row.goodsNum) {
                 row.returnsNumber = 0
-                this.$message.error("退货数量不能超过数量");
+                this.$message.error("退货数量不能超过采购数量");
             }
             row.returnsAmount = _.round(_.multiply(row.returnsNumber, row.price), 2)
         },
@@ -686,6 +686,10 @@ export default {
         //表头编辑
         inEdit() {
             this.editButton = false
+            if (this.form.status == '录入') {
+                this.findObject(this.optionForm.column, 'businesDate').disabled = false
+                this.findObject(this.optionForm.column, 'remarks').disabled = false
+            }
         },
         //联系人change
         contactsChange(e) {
@@ -721,8 +725,6 @@ export default {
                         loading.close();
                     }).finally(() => {
                         loading.close();
-                        this.findObject(this.optionForm.column, 'businesDate').disabled = true
-                        this.findObject(this.optionForm.column, 'remarks').disabled = true
                     });
                 } else {
                     return false;
@@ -738,8 +740,10 @@ export default {
             })
             getDetails({ id: id }).then(res => {
                 this.form = res.data.data
-                this.findObject(this.optionForm.column, 'businesDate').disabled = true
-                this.findObject(this.optionForm.column, 'remarks').disabled = true
+                if (res.data.data.status != '录入'||this.editButton) {
+                    this.findObject(this.optionForm.column, 'businesDate').disabled = true
+                    this.findObject(this.optionForm.column, 'remarks').disabled = true
+                }
                 loading.close();
             }).catch(() => {
                 loading.close();
@@ -899,8 +903,8 @@ export default {
             }
             );
         },
-        selectionContacts(list){
-            this.selectionMultilist=list
+        selectionContacts(list) {
+            this.selectionMultilist = list
         },
         // 一键删除
         batchDelete() {

+ 18 - 18
src/views/tirePartsMall/purchaseService/returns/index.vue

@@ -118,24 +118,24 @@ export default {
             },
             dicUrl: '/api/blade-sales-part/corpsDesc/listAll?corpType=GYS&cname={{key}}',
           },
-          {
-            label: '业务员',
-            disabled: false,
-            prop: "salerId",
-            search: true,
-            type: "select",
-            props: {
-              label: "name",
-              value: "id"
-            },
-            dicUrl: "/api/blade-user/client/getUserByRole",
-            filterable: true,
-            rules: [{
-              required: true,
-              message: " ",
-              trigger: "blur"
-            }]
-          },
+          // {
+          //   label: '业务员',
+          //   disabled: false,
+          //   prop: "salerId",
+          //   search: true,
+          //   type: "select",
+          //   props: {
+          //     label: "name",
+          //     value: "id"
+          //   },
+          //   dicUrl: "/api/blade-user/client/getUserByRole",
+          //   filterable: true,
+          //   rules: [{
+          //     required: true,
+          //     message: " ",
+          //     trigger: "blur"
+          //   }]
+          // },
           {
             label: '仓库',
             prop: "storageId",

+ 34 - 3
src/views/tirePartsMall/salesManagement/purchaseOrder/detailsPage.vue

@@ -96,7 +96,7 @@
                                 </el-button>
                                 <el-button type="primary" icon="el-icon-printer" size="small"
                                     @click="handlePrint">打印</el-button>
-                                <el-button type="danger" plain size="small" @click="batchDelete">一键删除</el-button>
+                                <el-button type="danger" plain size="small" @click="batchDelete" :disabled="form.status != '录入' || editButton">一键删除</el-button>
                             </template>
                             <template slot="goodsId" slot-scope="{ row }">
                                 <!--<el-select v-if="row.$cellEdit" v-model="row.goodsId" allow-create filterable default-first-option >-->
@@ -655,6 +655,14 @@ export default {
                     label: '单据编号',
                     prop: "ordNo",
                     disabled: true
+                }, {
+                    label: '退货数量',
+                    prop: "returnsNumber",
+                    disabled: true
+                }, {
+                    label: '退货金额',
+                    prop: "returnsAmount",
+                    disabled: true
                 },
                 {
                     label: '备注',
@@ -708,6 +716,12 @@ export default {
                     name: "subTotalMoney",
                     type: "sum",
                     decimals: 2
+                }, {
+                    name: "returnsNumber",
+                    type: "sum"
+                }, {
+                    name: "returnsAmount",
+                    type: "sum"
                 }],
                 column: [{
                     label: '商品名称',
@@ -858,13 +872,26 @@ export default {
                 {
                     label: '收货数量',
                     prop: 'sendNum',
-                    disabled: false,
                     overHidden: true,
                     width: 100,
                     disabled: true,
                     editDisplay: false,
                     addDisplay: false
                 },
+                {
+                    label: '退货数量',
+                    prop: "returnsNumber",
+                    overHidden: true,
+                    width: 100,
+                    disabled: true,
+                },
+                {
+                    label: '退货金额',
+                    prop: "returnsAmount",
+                    overHidden: true,
+                    width: 100,
+                    disabled: true,
+                },
                 // {
                 //     label: '利润',
                 //     prop: 'profit',
@@ -1349,7 +1376,7 @@ export default {
                 page.goodsId = item.id
                 dotList(page).then(res => {
                     console.log(res.data, '获取到的数据')
-                    let obj = {}
+                    var obj = {}
                     if (res.data.data.length > 0) {
                         obj.inventory = res.data.data[0].balanceQuantity
                         if (item.dot) {
@@ -1358,6 +1385,7 @@ export default {
                             obj.dot = ''
                         }
                     }
+                    console.log(obj)
                     this.form.orderItemsList.push({
                         ...obj,
                         price: item.price,
@@ -1380,6 +1408,8 @@ export default {
                         // sendNum:res.data.data[0],
                         // 小计
                         subTotalMoney: item.goodsNum * item.price,
+                        //
+                        // inventory:item.balanceQuantity,
                         // 备注
                         remarks: item.remarks,
                         // 判断批次号是否可以编辑
@@ -1393,6 +1423,7 @@ export default {
                         // 是否是编辑状态
                         mingxibaocun: true
                     })
+                    console.log(this.form.orderItemsList)
                 })
             }
             this.dialogVisible = false

+ 28 - 1
src/views/tirePartsMall/salesManagement/saleOrder/detailsPage.vue

@@ -648,6 +648,14 @@ export default {
                     label: '来源单号',
                     prop: "srcOrdNo",
                     disabled: true
+                }, {
+                    label: '退货数量',
+                    prop: "returnsNumber",
+                    disabled: true
+                }, {
+                    label: '退货金额',
+                    prop: "returnsAmount",
+                    disabled: true
                 },{
                     label: '备注',
                     prop: "remarks",
@@ -704,6 +712,12 @@ export default {
                 }, {
                     name: "grossProfit",
                     type: "sum"
+                }, {
+                    name: "returnsNumber",
+                    type: "sum"
+                }, {
+                    name: "returnsAmount",
+                    type: "sum"
                 }],
                 column: [{
                     label: '商品名称',
@@ -861,7 +875,6 @@ export default {
                 {
                     label: '发货数量',
                     prop: 'sendNum',
-                    disabled: false,
                     overHidden: true,
                     width: 100,
                     disabled: true,
@@ -909,6 +922,20 @@ export default {
                     addDisplay: false
                 },
                 {
+                    label: '退货数量',
+                    prop: "returnsNumber",
+                    overHidden: true,
+                    width: 100,
+                    disabled: true,
+                },
+                {
+                    label: '退货金额',
+                    prop: "returnsAmount",
+                    overHidden: true,
+                    width: 100,
+                    disabled: true,
+                },
+                {
                     label: '备注',
                     prop: "remarks",
                     overHidden: true,

+ 13 - 9
src/views/tirePartsMall/salesService/returns/detailsPage.vue

@@ -93,14 +93,14 @@
                                 <span v-else>{{ row.returnsNumber }}</span>
                             </template>
                             <template slot-scope="{type,size,row,index,disabled}" slot="menu">
-                                <el-button v-if="mingxibaocun" :size="size" :disabled="form.status != '录入'" :type="type"
+                                <el-button v-if="mingxibaocun" :size="size" :disabled="form.status != '录入'|| editButton" :type="type"
                                     :icon="row.$cellEdit ? 'el-icon-plus' : 'el-icon-edit'"
                                     @click="hangeditBtn(row, index)">编辑
                                 </el-button>
                                 <el-button v-else :size="size" :disabled="disabled" :type="type"
                                     :icon="row.$cellEdit ? 'el-icon-plus' : 'el-icon-edit'" @click="inSave(row, index)">保存
                                 </el-button>
-                                <el-button icon="el-icon-delete" :size="size" :disabled="form.status != '录入'" :type="type"
+                                <el-button icon="el-icon-delete" :size="size" :disabled="form.status != '录入'|| editButton" :type="type"
                                     @click="rowDelBox(row, index, 'orderItemsList')">删除
                                 </el-button>
                             </template>
@@ -484,14 +484,14 @@ export default {
                         width: 100
                     },
                     {
-                        label: '库存',
+                        label: '实际库存',
                         prop: 'inventory',
                         width: 100,
                         disabled: false,
                         remote: true,
                         overHidden: true,
                     }, {
-                        label: '数量',
+                        label: '采购数量',
                         prop: 'goodsNum',
                         width: 100,
                         disabled: false,
@@ -616,7 +616,7 @@ export default {
         retuNumChange(row, num) {
             if (num > row.goodsNum) {
                 row.returnsNumber = 0
-                this.$message.error("退货数量不能超过数量");
+                this.$message.error("退货数量不能超过销售数量");
             }
             row.returnsAmount = _.round(_.multiply(row.returnsNumber, row.price), 2)
         },
@@ -686,6 +686,10 @@ export default {
         //表头编辑
         inEdit() {
             this.editButton = false
+            if (this.form.status == '录入') {
+                this.findObject(this.optionForm.column, 'businesDate').disabled = false
+                this.findObject(this.optionForm.column, 'remarks').disabled = false
+            }
         },
         //联系人change
         contactsChange(e) {
@@ -718,8 +722,6 @@ export default {
                         loading.close();
                     }).finally(() => {
                         loading.close();
-                        this.findObject(this.optionForm.column, 'businesDate').disabled = true
-                        this.findObject(this.optionForm.column, 'remarks').disabled = true
                     });
                 } else {
                     return false;
@@ -735,8 +737,10 @@ export default {
             })
             getDetails({ id: id }).then(res => {
                 this.form = res.data.data
-                this.findObject(this.optionForm.column, 'businesDate').disabled = true
-                this.findObject(this.optionForm.column, 'remarks').disabled = true
+                if (res.data.data.status != '录入'||this.editButton) {
+                    this.findObject(this.optionForm.column, 'businesDate').disabled = true
+                    this.findObject(this.optionForm.column, 'remarks').disabled = true
+                }
                 loading.close();
             }).catch(() => {
                 loading.close();