Parcourir la source

【新增】零售单-删除,撤回

莫绍宝 il y a 3 ans
Parent
commit
9b1448a4b3

+ 18 - 0
src/api/supply/retail.js

@@ -35,6 +35,15 @@ export function closeData(params) {
   });
 }
 
+// 删除
+export function deleteData(params) {
+  return request({
+    url: "/retail/delete",
+    method: "post",
+    params,
+  });
+}
+
 // 弃审
 export function abandonData(params) {
   return request({
@@ -62,6 +71,15 @@ export function submitData(params) {
   });
 }
 
+// 撤回
+export function withdrawData(params) {
+  return request({
+    url: "/retail/submit/cancel",
+    method: "post",
+    params,
+  });
+}
+
 // 新增
 export function addData(params) {
   return request({

+ 2 - 1
src/views/supply/retail/components/retail_form.vue

@@ -305,7 +305,7 @@ export default {
       let STOCK_ORDER_HAVE_END = that.stockList.find(o => o.dictCode == 'STOCK_ORDER_HAVE_END').dictValue;
       let STOCK_ORDER_ALL_NUM = that.stockList.find(o => o.dictCode == 'STOCK_ORDER_ALL_NUM').dictValue;
       if (val === '' || val === null || val === undefined) return '未检查';
-      else if (val === 0) return '无货';
+      else if (val <= 0) return '无货';
       else if (val > STOCK_ORDER_START && val <= STOCK_ORDER_END) return val;
       else if (val >= STOCK_ORDER_HAVE_START && val <= STOCK_ORDER_HAVE_END) return '有货';
       else if (val > STOCK_ORDER_ALL_NUM) return '充足';
@@ -667,6 +667,7 @@ export default {
 
     status2Filter(item) {
       if (item.status2 === '' || item.status2 === null || item.status2 === undefined) return '未检查';
+      else if (item.status2 <= 0) return '无货';
       else if (item.status2 >= item.qty) return '可用';
       else return '短缺';
     },

+ 53 - 6
src/views/supply/retail/retail_list.vue

@@ -77,7 +77,16 @@
           </div>
         </div>
         <div class="table">
-          <el-table v-loading="listLoading" :data="dataList" element-loading-text="Loading" border fit highlight-current-row stripe>
+          <el-table
+            v-loading="listLoading"
+            :data="dataList" 
+            element-loading-text="Loading" 
+            border 
+            fit 
+            highlight-current-row 
+            stripe
+            show-summary
+            :summary-method="$getSummaries">
             <!-- <el-table-column align="center" label="提货进度" min-width="120" show-overflow-tooltip>
               <template slot-scope="scope">
                 <el-progress :text-inside="true" :stroke-width="26" :percentage="((scope.row.hasSendQty * 100) / (scope.row.totalQty * 100)) || 0"></el-progress>
@@ -93,7 +102,7 @@
                 {{scope.row.isInvoicing ? '已开票':'未开票'}}
               </template>
             </el-table-column>
-            <el-table-column align="center" label="订单号" prop="id" min-width="200" show-overflow-tooltip></el-table-column>
+            <el-table-column align="center" label="订单号" prop="id" min-width="140" show-overflow-tooltip></el-table-column>
             <el-table-column align="center" label="订单日期" prop="theTime" min-width="120" show-overflow-tooltip>
               <template slot-scope="scope">
                 <div>
@@ -104,7 +113,7 @@
             </el-table-column>
             <el-table-column align="center" label="销售类型" prop="saleTypeName" min-width="100" show-overflow-tooltip></el-table-column>
             <el-table-column align="center" label="货品名称" prop="materialName" min-width="160" show-overflow-tooltip></el-table-column>
-            <el-table-column align="center" label="规格型号" prop="specification" min-width="160" show-overflow-tooltip></el-table-column>
+            <el-table-column align="center" label="规格型号" prop="specification" min-width="200" show-overflow-tooltip></el-table-column>
             <el-table-column align="center" label="计量单位" prop="unit" min-width="100" show-overflow-tooltip></el-table-column>
             <el-table-column align="center" label="是否直调" prop="isDirectTransfer" min-width="100" show-overflow-tooltip>
               <template slot-scope="scope">
@@ -129,7 +138,11 @@
             <el-table-column align="right" label="返利金额" prop="rebateAmount" min-width="100" show-overflow-tooltip>
               <template slot-scope="scope">
                 <div>{{scope.row.rebateAmount | numToFixed}}</div>
-                <div>(实际:{{scope.row.payRebateAmount | numToFixed}})</div>
+              </template>
+            </el-table-column>
+            <el-table-column align="right" label="实际返利金额" prop="payRebateAmount" min-width="110" show-overflow-tooltip>
+              <template slot-scope="scope">
+                <div>{{scope.row.payRebateAmount | numToFixed}}</div>
               </template>
             </el-table-column>
             <el-table-column align="right" label="格力折扣" prop="totalDiscAmount" min-width="100" show-overflow-tooltip>
@@ -141,7 +154,7 @@
             <el-table-column align="center" label="制表日期" prop="createTime" min-width="160" show-overflow-tooltip></el-table-column>
             <el-table-column align="center" label="审核人" prop="examineName" min-width="100" show-overflow-tooltip></el-table-column>
             <el-table-column align="center" label="审核日期" prop="examineTime" min-width="160" show-overflow-tooltip></el-table-column>
-            <el-table-column align="center" label="操作" width="180" fixed="right">
+            <el-table-column align="center" label="操作" width="220" fixed="right">
               <template slot-scope="scope">
                 <el-button 
                   type="text" 
@@ -158,6 +171,13 @@
                 </el-popconfirm>
                 <el-popconfirm 
                   style="margin-right: 10px;" 
+                  title="确定撤回吗?" 
+                  @onConfirm="handleWithdraw(scope.row.id)" 
+                  v-if="$checkBtnRole('apply', $route.meta.roles) && scope.row.examineStatus === 'WAIT'" >
+                  <el-button slot="reference" type="text">撤回</el-button>
+                </el-popconfirm>
+                <el-popconfirm 
+                  style="margin-right: 10px;" 
                   title="确定弃审吗?" 
                   @onConfirm="handleAbandon(scope.row.id)" 
                   v-if="$checkBtnRole('examine', $route.meta.roles) && scope.row.examineStatus === 'OK'" >
@@ -187,6 +207,13 @@
                   v-if="$checkBtnRole('examine', $route.meta.roles) && !scope.row.closeTime && (scope.row.examineStatus === 'SAVE' || scope.row.examineStatus === 'WAIT')" >
                   <el-button slot="reference" type="text">关闭</el-button>
                 </el-popconfirm>
+                <el-popconfirm 
+                  style="margin-left: 10px;" 
+                  title="确定删除吗?" 
+                  @onConfirm="handleDelete(scope.row.id)" 
+                  v-if="$checkBtnRole('del', $route.meta.roles) && scope.row.examineStatus === 'SAVE'" >
+                  <el-button slot="reference" type="text">删除</el-button>
+                </el-popconfirm>
               </template>
             </el-table-column>
           </el-table>
@@ -218,7 +245,7 @@
 </template>
 
 <script>
-import { getList, closeData, submitData, editData, abandonData } from "@/api/supply/retail";
+import { getList, closeData, submitData, editData, abandonData, deleteData, withdrawData } from "@/api/supply/retail";
 import RetailDetail from "@/views/supply/retail/components/retail_detail";
 import RetailForm from "@/views/supply/retail/components/retail_form";
 import RetailExamine from "@/views/supply/retail/components/retail_examine";
@@ -323,6 +350,10 @@ export default {
         type: 1, // 1:普通零售单,2:政策零售单
       };
       getList(params).then((res) => {
+        res.data.records.forEach(item => {
+          item.sums1 = ['qty', 'directTransferQty', 'hasSendQty', 'refundableQty'];
+          item.sums2 = ['price', 'payAmount', 'rebateAmount', 'payRebateAmount', 'totalDiscAmount'];
+        })
         this.dataList = res.data.records;
         this.listTotal = res.data.total;
         this.listLoading = false;
@@ -398,6 +429,14 @@ export default {
       })
     },
 
+    // 删除
+    handleDelete(id) {
+      deleteData({id}).then(res => {
+        this.$successMsg();
+        this.getList();
+      })
+    },
+
     // 弃审
     handleAbandon(id) {
       abandonData({id}).then(res => {
@@ -414,6 +453,14 @@ export default {
       })
     },
 
+    // 撤回
+    handleWithdraw(id) {
+      withdrawData({id}).then(res => {
+        this.$successMsg();
+        this.getList();
+      })
+    },
+
     // 打开 修改订单日期
     editDate(item) {
       this.editId = item.id;