Переглянути джерело

【修改】押金计算收差金额

howie 2 роки тому
батько
коміт
7cb5869f07

+ 10 - 0
src/api/engin_deposit.js

@@ -70,3 +70,13 @@ export function applyDeposit(params) {
     data:params
   })
 }
+
+// 在线计算收差金额
+export function computeDiff(params) {
+  return request({
+    url: '/deposit-manage/online-compute-diff',
+    method: 'post',
+    data:params
+  })
+}
+

+ 1 - 0
src/main.js

@@ -73,6 +73,7 @@ if (process.env.NODE_ENV === 'production') {
 Vue.use(ElementUI)
 // register global utility filters
 Object.keys(filters).forEach(key => {
+  // console.log(key)
   Vue.filter(key, filters[key])
 })
 

+ 11 - 11
src/views/basic_data/logistics/logistics_list.vue

@@ -233,12 +233,12 @@
         <el-form-item label="物流公司代码" prop="logisticsNumber">
           <el-input v-model="diaLogForm.logisticsNumber"></el-input>
         </el-form-item>
-        <el-form-item label="提货人" prop="pickName">
+        <!-- <el-form-item label="提货人" prop="pickName">
           <el-input v-model="diaLogForm.pickName"></el-input>
         </el-form-item>
         <el-form-item label="提货人电话" prop="pickTel">
           <el-input v-model="diaLogForm.pickTel"></el-input>
-        </el-form-item>
+        </el-form-item> -->
         <el-form-item label="客服电话" prop="customerTel">
           <el-input v-model="diaLogForm.customerTel"></el-input>
         </el-form-item>
@@ -285,15 +285,15 @@ export default {
         logisticsNumber: [
           { required: true, message: "请输入物流公司代码", trigger: "blur" },
         ],
-        pickName: [
-          { required: true, message: "请输入提货人", trigger: "blur" },
-        ],
-        pickTel: [
-          { required: true, message: "请输入提货人电话", trigger: "blur" },
-        ],
-        customerTel: [
-          { required: true, message: "请输入客服电话", trigger: "blur" },
-        ],
+        // pickName: [
+        //   { required: true, message: "请输入提货人", trigger: "blur" },
+        // ],
+        // pickTel: [
+        //   { required: true, message: "请输入提货人电话", trigger: "blur" },
+        // ],
+        // customerTel: [
+        //   { required: true, message: "请输入客服电话", trigger: "blur" },
+        // ],
       },
     };
   },

+ 1 - 1
src/views/basic_data/stock/customer_product_list.vue

@@ -261,7 +261,7 @@ export default {
     filterNumber() {
       return (num) => {
         num = Number(num);
-        if (num === 0) {
+        if (num <= 0) {
           return "无货";
         } else if (num >= 1 && num <= 50) {
           return num;

+ 63 - 24
src/views/deposit_home/components/deposit-apply-surrender.vue

@@ -182,12 +182,16 @@
             show-overflow-tooltip
           />
           <el-table-column
-            align="center"
-            label="金额"
-            prop="totalAmount"
-            min-width="160"
-            show-overflow-tooltip
-          />
+              align="right"
+              label="金额"
+              prop="totalAmount"
+              min-width="160"
+              show-overflow-tooltip
+            >
+              <template slot-scope="scope">
+                {{ scope.row.totalAmount | numToFixed }}
+              </template>
+            </el-table-column>
           <el-table-column
             align="center"
             label="押金数量"
@@ -253,13 +257,17 @@
 
               </template>
             </el-table-column>
-          <el-table-column
-            align="center"
-            label="押金金额"
-            prop="depositAmount"
-            min-width="160"
-            show-overflow-tooltip
-          />
+            <el-table-column
+              align="right"
+              label="押金金额"
+              prop="depositAmount"
+              min-width="160"
+              show-overflow-tooltip
+            >
+              <template slot-scope="scope">
+                {{ scope.row.depositAmount | numToFixed }}
+              </template>
+            </el-table-column>
           <el-table-column
             align="center"
             label="上交资料"
@@ -269,21 +277,37 @@
           >
             <template slot-scope="scope">
                 <el-input
-
+             
                   class="inpt"
                   v-model.number="scope.row.dataQty"
                   size="mini"
+                  @blur="setDataQty($event,scope.row)"
                   clearable
                 ></el-input>
               </template>
         </el-table-column>
+        <el-table-column
+              align="right"
+              label="收差金额"
+              prop="diffAmount"
+              min-width="160"
+              show-overflow-tooltip
+            >
+              <template slot-scope="scope">
+                {{ scope.row.diffAmount | numToFixed }}
+              </template>
+            </el-table-column>
           <el-table-column
-            align="center"
-            label="收差全额"
-            prop="diffAmount"
-            min-width="160"
-            show-overflow-tooltip
-          />
+              align="right"
+              label="收差政策价格"
+              prop="diffPolicyPrice"
+              min-width="200"
+              show-overflow-tooltip
+            >
+              <template slot-scope="scope">
+                {{ scope.row.diffPolicyPrice | numToFixed }}
+              </template>
+            </el-table-column>
         </el-table>
       </div>
     </div>
@@ -482,7 +506,7 @@
 </template>
 
 <script>
-import { applyDeposit, geDetail } from '@/api/engin_deposit.js'
+import { applyDeposit, geDetail,computeDiff } from '@/api/engin_deposit.js'
 
 import imageUpload from '@/components/Common/image-upload.vue'
 import { downloadFiles, downloadPdf } from '@/utils/util'
@@ -534,7 +558,12 @@ export default {
   },
   created() {
     this.imageURL = this.$imageUrl
-    geDetail({ id: this.$parent.depositManageId }).then((res) => {
+    this.geDetail()
+  },
+  methods: {
+
+    geDetail(){
+      geDetail({ id: this.$parent.depositManageId }).then((res) => {
       let arr = []
       res.data.items.forEach((item) => {
         if (Number(item.qty)>0) {
@@ -549,8 +578,18 @@ export default {
       this.details = res.data
 
     })
-  },
-  methods: {
+    },
+
+    // 计算收差金额
+    setDataQty(e,row){
+        if(!row.dataQty) return
+      row.saleTypeId = this.details.saleTypeId
+      computeDiff(row).then(res=>{
+        row.diffAmount = res.data.diffAmount
+      this.$successMsg('已计算收差金额')
+      })
+    }
+    ,
     goBack() {
       this.$parent.showPage = 1
     },

+ 14 - 1
src/views/deposit_home/components/deposit_list-detail.vue

@@ -340,6 +340,19 @@
                 {{ scope.row.diffAmount | numToFixed }}
               </template>
             </el-table-column>
+            <el-table-column
+              align="right"
+              label="收差政策价格"
+              prop="diffPolicyPrice"
+              min-width="200"
+              show-overflow-tooltip
+            >
+              <template slot-scope="scope">
+                {{ scope.row.diffPolicyPrice | numToFixed }}
+              </template>
+            </el-table-column>
+
+            
           </el-table>
         </div>
       </div>
@@ -907,7 +920,7 @@
 </template>
 
 <script>
-import {editInfo, geDetail, geOrderInfo, getListProject} from '@/api/engin_deposit.js'
+import {editInfo, geDetail, geOrderInfo, getListProject,} from '@/api/engin_deposit.js'
 import {getList} from '@/api/supply/adjust'
 import {downloadFiles, downloadPdf} from '@/utils/util'
 import {getFileUrl} from '@/api/common'

+ 13 - 3
src/views/deposit_home/components/refund_list-detail.vue

@@ -540,12 +540,16 @@
               <template slot-scope="scope">
 
                 <el-input
-                :readonly="title == '详情'"
+                v-if="title !== '详情'"
+               
                   class="inpt"
                   v-model.number="scope.row.contractQty"
                   size="mini"
                   clearable
                 ></el-input>
+                <div v-else>
+                  {{scope.row.contractQty}}
+                </div>
               </template>
             </el-table-column>
             <el-table-column
@@ -558,12 +562,15 @@
               <template slot-scope="scope">
 
                 <el-input
-                :readonly="title == '详情'"
+                v-if="title !== '详情'"
                   class="inpt"
                   v-model.number="scope.row.contractPrice"
                   size="mini"
                   clearable
                 ></el-input>
+                <div v-else>
+                  {{scope.row.contractPrice}}
+                </div>
               </template>
             </el-table-column>
               <el-table-column
@@ -598,12 +605,15 @@
             <template slot-scope="scope">
 
                 <el-input
-                :readonly="title == '详情'"
+                v-if="title !== '详情'"
                   class="inpt"
                   v-model.number="scope.row.dataQty"
                   size="mini"
                   clearable
                 ></el-input>
+                <div v-else>
+                  {{scope.row.dataQty}}
+                </div>
               </template>
           </el-table-column>
             <el-table-column

+ 1 - 1
src/views/supply/engin/home_list.vue

@@ -33,7 +33,7 @@
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="单日期" prop="date">
+              <el-form-item label="单日期" prop="date">
                 <el-date-picker
                   v-model="screenForm.date"
                   type="datetimerange"

+ 78 - 6
src/views/supply/pickup/check.vue

@@ -14,6 +14,65 @@
           label-position="right"
         >
           <el-row :gutter="20">
+            <el-col :xs="24" :sm="24" :lg="24">
+              <el-form-item label="提货方式">
+                <el-radio-group v-model="radio" @change="handleReset">
+                  <el-radio :label="0">物流公司</el-radio>
+                  <el-radio :label="1">商家自提</el-radio>
+                </el-radio-group>
+              </el-form-item>
+            </el-col>
+          </el-row>
+
+          <template v-if="!radio">
+            <el-row :gutter="20">
+            <el-col :xs="24" :sm="8" :lg="6">
+              <el-form-item label="物流公司">
+                <el-select v-model="screenForm.logistics"  placeholder="选择物流公司" clearable filterable >
+                  <el-option v-for="item in logisticsArr"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value">
+                  </el-option>
+                </el-select>
+
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="8" :lg="6">
+              <el-form-item label="经销商">
+                <el-select v-model="screenForm.customerId"  placeholder="选择经销商" clearable filterable >
+                  <el-option v-for="item in dealerList"
+                    :key="item.id"
+                    :label="item.name"
+                    :value="item.id">
+                  </el-option>
+                </el-select>
+
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="8" :lg="6">
+              <el-form-item label="仓库">
+                <el-select v-model="screenForm.warehouse"  placeholder="选择仓库" clearable filterable >
+                  <el-option v-for="item in warehouseList"
+                    :key="item.id"
+                    :label="item.name"
+                    :value="item.id">
+                  </el-option>
+                </el-select>
+
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="8" :lg="6">
+              <el-button size="mini" type="primary" @click="getList"
+                >查 询</el-button
+              >
+            </el-col>
+
+          </el-row>
+
+          </template>
+          <template v-else>
+            <el-row :gutter="20">
             <el-col :xs="24" :sm="8" :lg="6">
               <el-form-item label="提货人手机号" prop="phone">
                 <el-input
@@ -135,6 +194,7 @@
               </el-form-item>
             </el-col>
           </el-row>
+          </template>
         </el-form>
       </div>
 
@@ -248,10 +308,16 @@
               show-overflow-tooltip
             >
               <template slot-scope="scope">
-                <CopyButton :copyText='scope.row.orderType === "TRADE" ||
-                scope.row.orderType === "HOME" || scope.row.orderType
-                ==="REQUISITION_TRADE" || scope.row.orderType
-                ==="REQUISITION_HOME"? scope.row.enginOrderNo:scope.row.mainOrderId' />
+                <CopyButton
+                  :copyText="
+                    scope.row.orderType === 'TRADE' ||
+                    scope.row.orderType === 'HOME' ||
+                    scope.row.orderType === 'REQUISITION_TRADE' ||
+                    scope.row.orderType === 'REQUISITION_HOME'
+                      ? scope.row.enginOrderNo
+                      : scope.row.mainOrderId
+                  "
+                />
                 <span>{{
                   scope.row.orderType === "TRADE" ||
                   scope.row.orderType === "HOME" ||
@@ -505,6 +571,8 @@ export default {
         customerName: "",
         warehouse: "",
         customerId: "",
+        logistics:"",
+        storeId:""
       },
       statusList: [
         { label: "未打单", value: 0 },
@@ -532,6 +600,8 @@ export default {
       },
       userList: [],
       isShowDialog: false,
+      radio: 0,
+      logisticsArr:[]
     };
   },
 
@@ -545,7 +615,7 @@ export default {
   },
 
   created() {
-    // this.getDealerList()
+    this.getDealerList()
     this.getWarehouseList();
   },
   // activated(){
@@ -555,6 +625,9 @@ export default {
     this.initPrint();
   },
   methods: {
+    handleReset(){
+      this.$refs.screenForm.resetFields()
+    },
     getDate() {
       var date = new Date();
       var seperator1 = "-";
@@ -570,7 +643,6 @@ export default {
       var currentdate = year + seperator1 + month + seperator1 + strDate;
       return currentdate;
     },
-
     async getDealerList() {
       const res = await getDealerList({ pageNum: 1, pageSize: -1 });
       this.dealerList = res.data.records;