Browse Source

Merge branch 'develop'

howie 2 năm trước cách đây
mục cha
commit
d8a4e7fc40
39 tập tin đã thay đổi với 462 bổ sung171 xóa
  1. 20 0
      src/api/stock.js
  2. 1 1
      src/components/Common/check-order.vue
  3. 80 4
      src/layout/components/Navbar.vue
  4. 0 1
      src/mixin/index.js
  5. 5 5
      src/mixin/print.js
  6. 1 0
      src/store/getters.js
  7. 6 0
      src/store/modules/user.js
  8. 14 13
      src/views/deposit_home/components/deposit-apply-surrender.vue
  9. 6 6
      src/views/deposit_home/components/deposit_list-detail.vue
  10. 31 15
      src/views/deposit_home/components/refund_list-detail.vue
  11. 2 2
      src/views/deposit_home/deposit_list.vue
  12. 2 2
      src/views/deposit_home/refund_list.vue
  13. 26 26
      src/views/sales_policy/components/AddPolicy.vue
  14. 13 11
      src/views/sales_policy/components/editPolicy.vue
  15. 19 0
      src/views/supply/apply/components/apply_form.vue
  16. 12 0
      src/views/supply/apply/components/engin_form.vue
  17. 1 1
      src/views/supply/apply/engin_list.vue
  18. 1 1
      src/views/supply/deliver/commerce_list.vue
  19. 28 1
      src/views/supply/deliver/sum_list.vue
  20. 4 4
      src/views/supply/direct/direct_list.vue
  21. 10 10
      src/views/supply/engin/commerce_list.vue
  22. 15 7
      src/views/supply/engin/components/commerce_detail.vue
  23. 7 3
      src/views/supply/engin/components/commerce_examine.vue
  24. 27 8
      src/views/supply/engin/components/commerce_form.vue
  25. 16 5
      src/views/supply/engin/components/commerce_return.vue
  26. 8 4
      src/views/supply/engin/components/home_detail.vue
  27. 1 0
      src/views/supply/engin/components/home_examine.vue
  28. 5 1
      src/views/supply/engin/components/home_form.vue
  29. 9 2
      src/views/supply/engin/components/home_return.vue
  30. 4 4
      src/views/supply/engin/engin_list.vue
  31. 11 11
      src/views/supply/engin/home_list.vue
  32. 31 5
      src/views/supply/implement/nsales_list.vue
  33. 6 6
      src/views/supply/pickup/check.vue
  34. 4 4
      src/views/supply/pickup/pickup_list.vue
  35. 1 1
      src/views/supply/policy/components/retail_detail.vue
  36. 1 0
      src/views/supply/policy/components/retail_form.vue
  37. 1 1
      src/views/supply/retail/components/retail_detail.vue
  38. 2 2
      src/views/supply/sales/components/sales_detail.vue
  39. 31 4
      src/views/supply/sales/sales_list.vue

+ 20 - 0
src/api/stock.js

@@ -63,3 +63,23 @@ export function getListStockToDay(params) {
     params
   })
 }
+
+//库存到货访问通知-列表
+export function getNoticeList(params) {
+  return request({
+    url: '/stock/visit/list',
+    method: 'get',
+    params
+  })
+}
+
+
+
+//库存到货访问通知-数量
+export function getNoticeNum(params) {
+  return request({
+    url: '/stock/visit/count',
+    method: 'get',
+    params
+  })
+}

+ 1 - 1
src/components/Common/check-order.vue

@@ -93,7 +93,7 @@ export default {
 
     // 获取详情
     getDetail() {
-      checkOrder({mainOrderId: this.checkOrderId}).then(res => {
+      checkOrder({mainOrderId: this.checkOrderId }).then(res => {
         if(res.data) {
           res.data.forEach(item => {
             item.sums1 = ['refundableQty'];

+ 80 - 4
src/layout/components/Navbar.vue

@@ -16,7 +16,12 @@
           ></i>
         </el-tooltip>
       </div> -->
-
+      <div class="right-menu-item hover-effect" @click="handleNotice"  style="display: flex;">
+        <el-badge value="示">
+          <i class="el-icon-message-solid" style="font-size: 24px; line-height: 50px"></i>
+        </el-badge>
+        <span style="font-size: 16px; margin-left: 15px;">到货通知</span>
+      </div>
       <div class="right-menu-item hover-effect" @click="toEngine">
         <i class="el-icon-s-platform" style="font-size: 18px;"></i>
         <span style="font-size: 16px; margin-left: 6px;">家用工程机登录</span>
@@ -62,6 +67,36 @@
         <el-button type="primary" @click="submitForm">确 定</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog title="到货通知" :modal="false" width="70%" :visible.sync="hasNotice" center @close="handleNotice(false)">
+      <div class="mymain-container">
+      <div class="table">
+      <el-table :data="noticeList" v-loading="listLoading"  border>
+        <el-table-column property="materialOldNumber" align="left" min-width="120" label="产品编号" show-overflow-tooltip ></el-table-column>
+        <el-table-column property="materialNumber" align="left" min-width="100" label="物料编码" show-overflow-tooltip></el-table-column>
+        <el-table-column property="materialName" align="left" min-width="250" label="产品名称" show-overflow-tooltip></el-table-column>
+        <el-table-column property="specification" align="left" min-width="350" label="规格型号" show-overflow-tooltip></el-table-column>
+        <el-table-column property="stockName" align="left" min-width="100" label="到货仓库" show-overflow-tooltip></el-table-column>
+        <el-table-column property="updateTime" align="left" min-width="200" label="到货通知时间" show-overflow-tooltip></el-table-column>
+      </el-table>
+      <div class="flex">
+        <div></div>
+        <div class="fr">
+          <el-pagination
+            @size-change="handleSizeChange"
+            @current-change="handleCurrentChange"
+            :current-page="currentPage"
+            :page-sizes="[10, 20, 30, 50]"
+            :page-size="10"
+            layout="total, prev, pager, next"
+            :total="listTotal"
+          >
+          </el-pagination>
+        </div>
+      </div>
+      </div>
+      </div>
+  </el-dialog>
     <!--    工程机多帐号-->
     <!--    <el-dialog-->
     <!--      title="绑定工程机系统"-->
@@ -120,9 +155,11 @@ import Hamburger from "@/components/Hamburger";
 import Screenfull from "@/components/Screenfull";
 import NavMenu from "@/components/NavMenu";
 import { getNoticeListCount } from "@/api/notice";
+import {getNoticeList} from '@/api/stock'
 import { bindEngineAccount, checkEngineAccount } from "@/api/setting";
-
+import mixin from '@/mixin'
 export default {
+  mixins:[mixin],
   data() {
     return {
       intivalId: "",
@@ -148,6 +185,7 @@ export default {
       wsConnectErrorTime: 1,
       websock: null,
       lockReconnect: false,
+      noticeList:[]
     };
   },
   mounted() {
@@ -188,9 +226,39 @@ export default {
     noticeVisible() {
       return this.noticeCount > 0;
     },
-    ...mapGetters(["sidebar", "avatar", "device", "name"]),
+    hasNotice:{
+      get(){
+        return  this.isNotice
+      },
+      set(e){
+        return e
+      }
+    },
+    ...mapGetters(["sidebar", "avatar", "device", "name","isNotice"]),
+
   },
   methods: {
+    getList(){
+      this.getNoticeList()
+    }
+    ,
+    getNoticeList(){
+      this.listLoading = true
+      getNoticeList({
+        pageNum:this.currentPage,
+        pageSize:this.pageSize
+      }).then(res=>{
+        this.noticeList = res.data.records
+        this.listTotal = res.data.total
+        this.listLoading = false
+      })
+    },
+    handleNotice(flag=true){
+      if (flag) {
+        this.getNoticeList()
+      }
+      this.$store.commit("user/SET_STATUS",!this.hasNotice);
+    },
     toggleSideBar() {
       this.$store.dispatch("app/toggleSideBar");
     },
@@ -418,7 +486,15 @@ export default {
 
 <style lang="scss" scoped>
 @import "~@/styles/variables.scss";
-
+::v-deep .is-fixed{
+  right: 10px !important;
+}
+.flex{
+  margin-top: 30px;
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+}
 .navbar {
   width: 100%;
   height: 50px;

+ 0 - 1
src/mixin/index.js

@@ -23,7 +23,6 @@ export default {
     }
   },
   created() {
-    console.log('缓存了');
     this.getList();
   },
   methods: {

+ 5 - 5
src/mixin/print.js

@@ -109,7 +109,7 @@ export default {
      * 获取需要打印数据详情
      * @param {Array} ids
      */
-    async getDateil(ids, funcType = "getDeliverDetail") {
+    async getDateil(ids, funcType = "getDeliverDetail",check=null) {
       this.$startLoading();
       let loadingLen;
       // 兼容多个打印数据
@@ -142,7 +142,7 @@ export default {
           loadingLen = data.length;
           for (let i = data.length; i > 0; i--) {
             const newData = data[i - 1];
-            await this.setPrintData(newData,funcType);
+            await this.setPrintData(newData,funcType,check);
             loadingLen--;
           }
         } catch (error) {
@@ -273,7 +273,7 @@ export default {
      * @param {object} data
      * this.outputData 打印数据
      */
-    setPrintData(data,funcType) {
+    setPrintData(data,funcType,check) {
       let salesOrderId, invoiceId; //出库单号,发货单号 默认数据中的第一个
       salesOrderId = data.invoicePickBeans[0].salesOrderId;
       invoiceId = data.invoicePickBeans[0].invoiceId;
@@ -352,8 +352,8 @@ export default {
           nowDate: this.nowDate(),
           takerName:
             data.type === 2
-              ? `退货人:${tuiHuoRen || ""}`
-              : `提货人:${data.takerName || ""}`,
+              ? `退货人:${check ==0 ?data.pickLogistics||'':tuiHuoRen || ""}`
+              : `提货人:${check ==0 ?data.pickLogistics||'':data.takerName || ""}`,
           customerName: data.customerName || "",
           correspondName: data.correspondName,
           correspondNames: "",

+ 1 - 0
src/store/getters.js

@@ -7,6 +7,7 @@ const getters = {
   userid: (state) => state.user.userid,
   phone: (state) => state.user.phone,
   name: (state) => state.user.name,
+  isNotice:(state) =>state.user.isNotice,
   menus: (state) => state.user.menus,
   customerId: (state) => state.user.customerId,
   customerName: (state) => state.user.customerName,

+ 6 - 0
src/store/modules/user.js

@@ -20,6 +20,7 @@ const getDefaultState = () => {
     customerName: "", //经销商名称
     customerNumber: "", //经销商编码
     showMessages: null, //
+    isNotice:false
   };
 };
 
@@ -29,6 +30,9 @@ const mutations = {
   RESET_STATE: (state) => {
     Object.assign(state, getDefaultState());
   },
+  SET_STATUS(state,status){
+    state.isNotice = status
+  },
   SET_USERID: (state, userid) => {
     state.userid = userid;
   },
@@ -58,6 +62,8 @@ const mutations = {
       state.showMessages = true;
     } else {
       state.showMessages = false;
+      state.isNotice = true
+
     }
   },
 };

+ 14 - 13
src/views/deposit_home/components/deposit-apply-surrender.vue

@@ -164,9 +164,9 @@
             min-width="160"
             show-overflow-tooltip
           />
-          <!-- <el-table-column align="left" label="实装物料编号" prop="realMaterialNumber" min-width="150" show-overflow-tooltip></el-table-column>
+          <el-table-column align="left" label="实装物料编号" prop="realMaterialNumber" min-width="150" show-overflow-tooltip></el-table-column>
             <el-table-column align="left" label="实装厂产品编码" prop="realMaterialOldNumber" min-width="200" show-overflow-tooltip></el-table-column>
-            <el-table-column align="left" label="实装规格型号" prop="realSpecification" min-width="300" show-overflow-tooltip></el-table-column> -->
+            <el-table-column align="left" label="实装规格型号" prop="realSpecification" min-width="300" show-overflow-tooltip></el-table-column>
           <el-table-column
             align="center"
             label="单价"
@@ -206,7 +206,7 @@
             min-width="160"
             show-overflow-tooltip
           />
-          <!-- <el-table-column
+          <el-table-column
               align="right"
               label="合同数量"
               prop="contractQty"
@@ -255,7 +255,7 @@
                   {{comTotal(scope.row.contractQty,scope.row.contractPrice)}}
                 </div>
               </template>
-            </el-table-column> -->
+            </el-table-column>
             <el-table-column
               align="right"
               label="押金金额"
@@ -267,7 +267,7 @@
                 {{ scope.row.depositAmount | numToFixed }}
               </template>
             </el-table-column>
-          <!-- <el-table-column
+          <el-table-column
             align="center"
             label="上交资料"
             prop="dataQty"
@@ -305,7 +305,7 @@
               <template slot-scope="scope">
                 {{ scope.row.diffPolicyPrice | numToFixed }}
               </template>
-            </el-table-column> -->
+            </el-table-column>
         </el-table>
       </div>
     </div>
@@ -584,7 +584,8 @@ export default {
       row.saleTypeId = this.details.saleTypeId
       computeDiff(row).then(res=>{
         row.diffAmount = res.data.diffAmount
-      this.$successMsg('已计算收差金额')
+        row.diffPolicyPrice = res.data.diffPolicyPrice
+      // this.$successMsg('已计算收差金额')
       })
     }
     ,
@@ -598,13 +599,13 @@ export default {
         return
       }
 
-      // for (let i = 0; i < this.details.length; i++) {
-      //       this.details.items[i].contractAmount = this.details.items[i].contractQty * this.details.items[i].contractPrice
-      //         if (this.details.items[i].contractAmount) {
-      //           return this.$errorMsg('合同单价、合同数量不能为空')
-      //         }
+      for (let i = 0; i < this.details.items.length; i++) {
+            this.details.items[i].contractAmount = this.details.items[i].contractQty * this.details.items[i].contractPrice
+              if (!this.details.items[i].contractAmount) {
+                return this.$errorMsg('合同单价、合同数量不能为空')
+              }
 
-      //     }
+          }
 
       this.fileList.forEach((el) => {
 

+ 6 - 6
src/views/deposit_home/components/deposit_list-detail.vue

@@ -221,9 +221,9 @@
                 <span>{{ scope.row.specification }}</span>
               </template>
             </el-table-column>
-            <!-- <el-table-column align="left" label="实装物料编号" prop="realMaterialNumber" min-width="150" show-overflow-tooltip></el-table-column>
+            <el-table-column align="left" label="实装物料编号" prop="realMaterialNumber" min-width="150" show-overflow-tooltip></el-table-column>
             <el-table-column align="left" label="实装厂产品编码" prop="realMaterialOldNumber" min-width="200" show-overflow-tooltip></el-table-column>
-            <el-table-column align="left" label="实装规格型号" prop="realSpecification" min-width="300" show-overflow-tooltip></el-table-column> -->
+            <el-table-column align="left" label="实装规格型号" prop="realSpecification" min-width="300" show-overflow-tooltip></el-table-column>
             <el-table-column
               align="right"
               label="单价"
@@ -278,7 +278,7 @@
                 {{ scope.row.depositAmount | numToFixed }}
               </template>
             </el-table-column> -->
-            <!-- <el-table-column
+            <el-table-column
               align="right"
               label="合同数量"
               prop="contractQty"
@@ -310,7 +310,7 @@
               <template slot-scope="scope">
                   {{ scope.row.contractAmount }}
               </template>
-            </el-table-column> -->
+            </el-table-column>
             <el-table-column
               align="right"
               label="押金金额"
@@ -322,7 +322,7 @@
                 {{ scope.row.depositAmount | numToFixed }}
               </template>
             </el-table-column>
-            <!-- <el-table-column
+            <el-table-column
               align="right"
               label="上交资料"
               prop="dataQty"
@@ -350,7 +350,7 @@
               <template slot-scope="scope">
                 {{ scope.row.diffPolicyPrice | numToFixed }}
               </template>
-            </el-table-column> -->
+            </el-table-column>
 
 
           </el-table>

+ 31 - 15
src/views/deposit_home/components/refund_list-detail.vue

@@ -473,9 +473,9 @@
                 <span>{{ scope.row.specification }}</span>
               </template>
             </el-table-column>
-            <!-- <el-table-column align="left" label="实装物料编号" prop="realMaterialNumber" min-width="150" show-overflow-tooltip></el-table-column>
+            <el-table-column align="left" label="实装物料编号" prop="realMaterialNumber" min-width="150" show-overflow-tooltip></el-table-column>
             <el-table-column align="left" label="实装厂产品编码" prop="realMaterialOldNumber" min-width="200" show-overflow-tooltip></el-table-column>
-            <el-table-column align="left" label="实装规格型号" prop="realSpecification" min-width="300" show-overflow-tooltip></el-table-column> -->
+            <el-table-column align="left" label="实装规格型号" prop="realSpecification" min-width="300" show-overflow-tooltip></el-table-column>
             <el-table-column
               align="right"
               label="单价"
@@ -530,7 +530,7 @@
                 {{ scope.row.depositAmount | numToFixed }}
               </template>
             </el-table-column>
-            <!-- <el-table-column
+            <el-table-column
               align="right"
               label="合同数量"
               prop="contractQty"
@@ -602,6 +602,8 @@
                   class="inpt"
                   v-model.number="scope.row.dataQty"
                   size="mini"
+                  @blur="setDataQty($event,scope.row)"
+
                   clearable
                 ></el-input>
                 <div v-else>
@@ -630,7 +632,7 @@
               <template slot-scope="scope">
                 {{ scope.row.diffPolicyPrice | numToFixed }}
               </template>
-            </el-table-column> -->
+            </el-table-column>
 
           </el-table>
         </div>
@@ -992,6 +994,8 @@ import {
   getDepositManageEdit,
   getCommonFileGetStream,
 } from "@/api/engin_deposit/refund_list";
+import { computeDiff } from '@/api/engin_deposit.js'
+
 import ret from "bluebird/js/release/util";
 export default {
   props: {
@@ -1091,6 +1095,17 @@ export default {
         return "";
       }
     },
+        // 计算收差金额
+        setDataQty(e,row){
+        if(!row.dataQty) return
+      row.saleTypeId = this.detailList.saleTypeId
+      computeDiff(row).then(res=>{
+        row.diffAmount = res.data.diffAmount
+        row.diffPolicyPrice = res.data.diffPolicyPrice
+      // this.$successMsg('已计算收差金额')
+      })
+    }
+    ,
     //审批驳回
     async rejectFn() {
       this.$confirm("此操作将审批订单, 是否继续?", "提示", {
@@ -1104,13 +1119,13 @@ export default {
             return;
           }
 
-          // for (let i = 0; i < this.detailList.items.length; i++) {
-          //   this.detailList.items[i].contractAmount = this.detailList.items[i].contractQty * this.detailList.items[i].contractPrice
-          //     if (this.detailList.items[i].contractAmount) {
-          //       return this.$errorMsg('合同单价、合同数量不能为空')
-          //     }
+          for (let i = 0; i < this.detailList.items.length; i++) {
+            this.detailList.items[i].contractAmount = this.detailList.items[i].contractQty * this.detailList.items[i].contractPrice
+              if (!this.detailList.items[i].contractAmount) {
+                return this.$errorMsg('合同单价、合同数量不能为空')
+              }
 
-          // }
+          }
 
       //     this.detailList.items.map(e=>{
       //     e.contractAmount = e.contractQty * e.contractPrice
@@ -1180,12 +1195,13 @@ export default {
             this.$message.error("请选择安装时间");
             return;
           }
-      //     this.detailList.items.map(e=>{
-      //     if (!e.contractAmount) {
-      //       return this.$errorMsg('合同单价、合同数量不能为空')
-      //     }
-      // })
+          for (let i = 0; i < this.detailList.items.length; i++) {
+            this.detailList.items[i].contractAmount = this.detailList.items[i].contractQty * this.detailList.items[i].contractPrice
+              if (!this.detailList.items[i].contractAmount) {
+                return this.$errorMsg('合同单价、合同数量不能为空')
+              }
 
+          }
           let data = {
             ...this.detailList,
             checkBy: this.checkBy,

+ 2 - 2
src/views/deposit_home/deposit_list.vue

@@ -396,9 +396,9 @@
                 <span>{{ scope.row.specification }}</span>
               </template>
             </el-table-column>
-            <!-- <el-table-column align="left" label="实装物料编号" prop="realMaterialNumber" min-width="150" show-overflow-tooltip></el-table-column>
+            <el-table-column align="left" label="实装物料编号" prop="realMaterialNumber" min-width="150" show-overflow-tooltip></el-table-column>
             <el-table-column align="left" label="实装厂产品编码" prop="realMaterialOldNumber" min-width="200" show-overflow-tooltip></el-table-column>
-            <el-table-column align="left" label="实装规格型号" prop="realSpecification" min-width="300" show-overflow-tooltip></el-table-column> -->
+            <el-table-column align="left" label="实装规格型号" prop="realSpecification" min-width="300" show-overflow-tooltip></el-table-column>
             <el-table-column
               align="left"
               label="是否退押"

+ 2 - 2
src/views/deposit_home/refund_list.vue

@@ -572,9 +572,9 @@
                 <span>{{ scope.row.specification }}</span>
               </template>
             </el-table-column>
-            <!-- <el-table-column align="left" label="实装物料编号" prop="realMaterialNumber" min-width="150" show-overflow-tooltip></el-table-column>
+            <el-table-column align="left" label="实装物料编号" prop="realMaterialNumber" min-width="150" show-overflow-tooltip></el-table-column>
             <el-table-column align="left" label="实装厂产品编码" prop="realMaterialOldNumber" min-width="200" show-overflow-tooltip></el-table-column>
-            <el-table-column align="left" label="实装规格型号" prop="realSpecification" min-width="300" show-overflow-tooltip></el-table-column> -->
+            <el-table-column align="left" label="实装规格型号" prop="realSpecification" min-width="300" show-overflow-tooltip></el-table-column>
             <el-table-column
               align="left"
               label="是否退押"

+ 26 - 26
src/views/sales_policy/components/AddPolicy.vue

@@ -153,6 +153,7 @@
             </el-row>
             <el-divider />
           </el-row>
+          <!-- v-el-select-loadmore="loadmore2" -->
           <el-table
             v-loading="listLoading"
             :data="dataList"
@@ -162,7 +163,6 @@
             fit
             highlight-current-row
             stripe
-            v-el-select-loadmore="loadmore2"
 
           >
             <el-table-column
@@ -650,7 +650,7 @@ export default {
         let total = Math.floor(this.listTotal/10)
           if (this.dcurrentPage<=total) {
             this.dcurrentPage++
-           this.handletwoList()
+             this.handletwoList()
           }
         }
     },
@@ -845,20 +845,20 @@ export default {
       this.handletwoList();
     },
     // 获取货品信息
-    handletwoList() {
+   async  handletwoList() {
       // this.searchForm.type
       this.listLoading = true;
 
       const paramss = {
-        pageNum: this.dcurrentPage,
-        pageSize: 10,
+        pageNum: 1,
+        pageSize: -1,
         policyId: this.comCode,
         saleTypeCode: "",
       };
-
-      getMaterialList(paramss)
-        .then((result) => {
-          result.data.records.forEach((k) => {
+      try {
+        const {data}  =  await getMaterialList(paramss)
+      this.dataList = data.records
+          data.records.forEach((k) => {
             k.walletIds = [];
             k.rebateWalletIds = [];
             if (!k.specification) {
@@ -866,27 +866,24 @@ export default {
               k.specification = k.materialId;
             }
 
-            k.walletRelaList.forEach((l) => {
-              l.id = l.walletId;
-              l.name = l.walletName;
-              if (l.type === "REBATE") {
-                k.rebateWalletIds = [...k.rebateWalletIds, l.walletId];
+            for (let i = 0; i < k.walletRelaList.length; i++) {
+              const d =  k.walletRelaList[i];
+              d.id = d.walletId;
+              d.name = d.walletName;
+              if (d.type === "REBATE") {
+                k.rebateWalletIds = [...k.rebateWalletIds, d.walletId];
               } else {
-                k.walletIds = [...k.walletIds, l.walletId];
+                k.walletIds = [...k.walletIds, d.walletId];
               }
-              // k.walletIds = [...k.walletIds, l.walletId]
-            });
+            }
+
           });
-          // this.dataList=[]
-          console.log();
-          this.dataList = [...this.dataList,...result.data.records];
-          this.listTotal = result.data.total;
+          this.listTotal = data.total;
           this.listLoading = false;
-        })
-        .catch((err) => {
-          console.error(err);
-          // this.listLoading = false
-        });
+      } catch (error) {
+          console.error(error);
+      }
+
     },
     // 提交审核
     handleAddPolicy(policyCustomers,region) {
@@ -1022,10 +1019,13 @@ export default {
         }
       }
 
+
       savePolicy(this.dataList).then((res) => {
         this.dataList = [];
+        this.dcurrentPage = 1
         this.sleectBox.currentPage = 1;
         this.$successMsg("保存成功");
+
         this.handletwoList();
       });
     },

+ 13 - 11
src/views/sales_policy/components/editPolicy.vue

@@ -145,6 +145,7 @@
             <el-divider />
           </el-row>
           <div class="table">
+            <!-- v-el-select-loadmore="loadmore2" -->
           <el-table
             v-loading="listLoading"
             :data="dataList"
@@ -154,7 +155,7 @@
             fit
             highlight-current-row
             stripe
-            v-el-select-loadmore="loadmore2"
+
           >
             <el-table-column
               type="index"
@@ -875,8 +876,8 @@ export default {
       // this.searchForm.type
       this.listLoading = true
       const paramss = {
-        pageNum: this.dcurrentPage,
-        pageSize: 10,
+        pageNum: 1,
+        pageSize: -1,
          policyId: this.searchForm.code,
         saleTypeCode: ''
       }
@@ -890,18 +891,19 @@ export default {
               k.specification = k.materialId
             }
 
-            k.walletRelaList.forEach((l) => {
-              l.id = l.walletId
-              l.name = l.walletName
-              if (l.type === 'REBATE') {
-                k.rebateWalletIds = [...k.rebateWalletIds, l.walletId]
+            for (let i = 0; i < k.walletRelaList.length; i++) {
+              const d =  k.walletRelaList[i];
+              d.id = d.walletId;
+              d.name = d.walletName;
+              if (d.type === "REBATE") {
+                k.rebateWalletIds = [...k.rebateWalletIds, d.walletId];
               } else {
-                k.walletIds = [...k.walletIds, l.walletId]
+                k.walletIds = [...k.walletIds, d.walletId];
               }
-            })
+            }
           })
 
-          this.dataList = [...this.dataList,...result.data.records]
+          this.dataList = result.data.records
           this.listTotal = result.data.total
           this.listLoading = false
         })

+ 19 - 0
src/views/supply/apply/components/apply_form.vue

@@ -158,6 +158,12 @@
 
       <div class="table">
         <el-table :data="tableGoodsList" element-loading-text="Loading" border fit highlight-current-row stripe height="400">
+          <el-table-column align="center" label="新旧单标识" prop="mainOrderId" min-width="140" show-overflow-tooltip>
+            <template slot-scope="scope">
+              {{scope.row.orderBase==1?"新单":"旧单"}}
+            </template>
+          </el-table-column>
+
           <el-table-column align="center" label="订单号" prop="mainOrderId" min-width="140" show-overflow-tooltip></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="categoryName" min-width="100" show-overflow-tooltip></el-table-column>
@@ -442,13 +448,26 @@ export default {
     // 确定 添加产品
     submitAddGoods() {
       let tableSelection = [];
+
       this.tableGoodsList.forEach(item => {
+
+
+
         if((item.invoiceNum || item.invoiceNum === 0) && !item.selected) {
           tableSelection.push(item);
         }
       });
 
       for(let i=0; i<tableSelection.length; i++) {
+
+        for (let j = i+1; j < tableSelection.length; j++) {
+
+            if (tableSelection[i].orderBase !== tableSelection[j].orderBase) {
+              return this.$errorMsg('只能选择新单或旧单');
+            }
+        }
+
+
         if(tableSelection[i].invoiceNum < 1) {
           this.$errorMsg('申请数量要大于0');
           return;

+ 12 - 0
src/views/supply/apply/components/engin_form.vue

@@ -260,6 +260,11 @@
       <div class="table">
         <el-table :data="tableGoodsList" element-loading-text="Loading" border fit highlight-current-row stripe height="400" @selection-change="tableSelectionChange">
           <el-table-column align="center" type="selection" width="55" :selectable='checkboxSelect'></el-table-column>
+          <el-table-column align="center" label="新旧单标识" prop="mainOrderId" min-width="140" show-overflow-tooltip>
+            <template slot-scope="scope">
+              {{scope.row.orderBase==1?"新单":"旧单"}}
+            </template>
+          </el-table-column>
           <el-table-column align="center" label="订单类型" prop="orderType" min-width="180" show-overflow-tooltip>
             <template slot-scope="scope">
               {{scope.row.orderType | orderTypeFilter}}
@@ -662,6 +667,13 @@ export default {
       }
 
       for(let i=0; i<this.tableSelection.length; i++) {
+        for (let j = i+1; j < this.tableSelection.length; j++) {
+
+if (this.tableSelection[i].orderBase !== this.tableSelection[j].orderBase) {
+  return this.$errorMsg('只能选择新单或旧单');
+}
+}
+
         if(this.tableSelection[i].invoiceNum === '') {
           this.$errorMsg('请输入申请数量');
           return;

+ 1 - 1
src/views/supply/apply/engin_list.vue

@@ -322,7 +322,7 @@
                   style="margin-left: 10px;"
                   title="确定删除吗?"
                   @onConfirm="handleDelete(scope.row.id)"
-                  v-if="$checkBtnRole('del', $route.meta.roles)">
+                  v-if="scope.row.examineStatus !== 'OK'">
                   <el-button slot="reference" type="text" style="color: #f56c6c;">删除</el-button>
                 </el-popconfirm>
               </template>

+ 1 - 1
src/views/supply/deliver/commerce_list.vue

@@ -122,7 +122,7 @@
             :summary-method="$getSummaries">
           <el-table-column align="left" label="订单类型" prop="type" min-width="100" show-overflow-tooltip>
               <template slot-scope="scope">
-                {{scope.row.type | orderTypeFilter}}
+                {{scope.row.type =="1"?"申请发货单":scope.row.type =="2"?"退货单":"直调发货单" }}
               </template>
             </el-table-column>
             <el-table-column align="left" label="发货申请单" prop="id" min-width="130" show-overflow-tooltip>

+ 28 - 1
src/views/supply/deliver/sum_list.vue

@@ -212,6 +212,29 @@
                 </el-select>
               </el-form-item>
             </el-col>
+            <el-col :xs="24" :sm="12" :lg="6">
+              <el-form-item label="打印状态" prop="printStatus">
+                <el-select
+                  v-model="screenForm.printStatus"
+                  placeholder="选择打印状态"
+                  clearable
+                  filterable
+                  style="width: 100%"
+                >
+                 <el-option
+                    label="是"
+                    :value="1"
+                  />
+                  <el-option
+                    label="否"
+                    :value="0"
+                  />
+
+                </el-select>
+              </el-form-item>
+            </el-col>
+
+
             <el-col :xs="24" :sm="24" :lg="24" class="tr">
               <el-form-item label="">
                 <el-button @click="resetScreenForm">清空</el-button>
@@ -898,7 +921,8 @@ export default {
         k3ServiceId: "",
         mainOrderId: "",
         approvaTime: "",
-        types:''
+        types:'',
+        printStatus:''
       },
       invoiceList:[
         {
@@ -972,6 +996,7 @@ export default {
         serviceId: this.screenForm.salesMan,
         k3ServiceId: this.screenForm.k3ServiceId,
         mainOrderId: this.screenForm.mainOrderId,
+        printStatus:this.screenForm.printStatus,
         approvalEndTime: this.screenForm.approvaTime
           ? this.screenForm.approvaTime[1]
           : "",
@@ -1082,6 +1107,8 @@ export default {
         materialNumber: this.screenForm.goodsCode,
         materialOldNumber: this.screenForm.goodsOldCode,
         specification: this.screenForm.model,
+        printStatus:this.screenForm.printStatus,
+
         createStartTime: this.screenForm.createDate
           ? this.screenForm.createDate[0]
           : "",

+ 4 - 4
src/views/supply/direct/direct_list.vue

@@ -152,15 +152,15 @@
               show-overflow-tooltip
             >
               <template slot-scope="scope">
-                <CopyButton :copyText='scope.row.orderType === "TRADE" ||
+                <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' />
+                ==="REQUISITION_HOME")? scope.row.enginOrderNo:scope.row.mainOrderId' />
                 <span>{{
-                  scope.row.orderType === "TRADE" ||
+                 ( scope.row.orderType === "TRADE" ||
                   scope.row.orderType === "HOME" ||
                   scope.row.orderType === "REQUISITION_TRADE" ||
-                  scope.row.orderType === "REQUISITION_HOME"
+                  scope.row.orderType === "REQUISITION_HOME")
                     ? scope.row.enginOrderNo
                     : scope.row.mainOrderId
                 }}</span>

+ 10 - 10
src/views/supply/engin/commerce_list.vue

@@ -239,21 +239,21 @@
                 <el-popconfirm
                   style="margin-right: 10px;"
                   title="确定申请吗?"
-                  @onConfirm="handleSubmit(scope.row.parentId)"
+                  @onConfirm="handleSubmit(scope.row.parentId,scope.row)"
                   v-if="$checkBtnRole('apply', $route.meta.roles) && scope.row.examineStatus === 'SAVE'" >
                   <el-button slot="reference" type="text">申请</el-button>
                 </el-popconfirm>
                 <el-popconfirm
                   style="margin-right: 10px;"
                   title="确定撤回吗?"
-                  @onConfirm="handleWithdraw(scope.row.parentId)"
+                  @onConfirm="handleWithdraw(scope.row.parentId,scope.row)"
                   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.parentId)"
+                  @onConfirm="handleAbandon(scope.row.parentId,scope.row)"
                   v-if="$checkBtnRole('examine', $route.meta.roles) && scope.row.examineStatus === 'OK'" >
                   <el-button slot="reference" type="text">弃审</el-button>
                 </el-popconfirm>
@@ -283,7 +283,7 @@
                 <el-popconfirm
                   style="margin-left: 10px;"
                   title="确定删除吗?"
-                  @onConfirm="handleDelete(scope.row.parentId)"
+                  @onConfirm="handleDelete(scope.row.parentId,scope.row)"
                   v-if="$checkBtnRole('del', $route.meta.roles) && scope.row.examineStatus !== 'OK'">
                   <el-button slot="reference" type="text" style="color: #f56c6c;">删除</el-button>
                 </el-popconfirm>
@@ -552,24 +552,24 @@ export default {
     },
 
     // 申请
-    handleSubmit(id) {
-      applyCom({id}).then(res => {
+    handleSubmit(id,row) {
+      applyCom({id,refEnginRecordNo:row.refEnginRecordNo}).then(res => {
         this.$successMsg();
         this.getList();
       })
     },
 
     // 撤回
-    handleWithdraw(id) {
-      withdrawCom({id}).then(res => {
+    handleWithdraw(id,row) {
+      withdrawCom({id,refEnginRecordNo:row.refEnginRecordNo}).then(res => {
         this.$successMsg();
         this.getList();
       })
     },
 
     // 弃审
-    handleAbandon(id) {
-      abandonCom({id}).then(res => {
+    handleAbandon(id,row) {
+      abandonCom({id,refEnginRecordNo:row.refEnginRecordNo}).then(res => {
         this.$successMsg();
         this.getList();
       })

+ 15 - 7
src/views/supply/engin/components/commerce_detail.vue

@@ -13,7 +13,7 @@
         <div class="diy-table-1">
           <el-row>
             <el-col :span="8" class="item">
-              <div class="label">工程登录编号</div>
+              <div class="label">工程订单号</div>
               <div class="value">{{detailData.enginOrderNo}}</div>
             </el-col>
             <el-col :span="8" class="item">
@@ -28,12 +28,16 @@
               <div class="label">经销商编码</div>
               <div class="value">{{detailData.customerNumber}}</div>
             </el-col>
-            <el-col :span="16" class="item">
+            <el-col :span="8" class="item">
               <div class="label">经销商名称</div>
               <div class="value">{{detailData.customerName}}</div>
             </el-col>
             <el-col :span="8" class="item">
-              <div class="label">工程信息单号</div>
+              <div class="label">机型类别</div>
+              <div class="value">{{detailData.refMachineType}}</div>
+            </el-col>
+            <el-col :span="8" class="item">
+              <div class="label">工程登录编号</div>
               <div class="value">{{detailData.refEnginRecordNo}}</div>
             </el-col>
             <el-col :span="8" class="item">
@@ -217,7 +221,7 @@
         <div class="footer">
           <el-button type="success" @click="toCheckOrder">联查单据</el-button>
           <el-button type="danger" @click="closeData" v-if="detailData.examineStatus === 'SAVE' || detailData.examineStatus === 'WAIT'">关闭订单</el-button>
-          <el-button type="primary" @click="openDirectDialog" v-if="!isDealer">提前开票</el-button>
+          <!-- <el-button type="primary" @click="openDirectDialog" v-if="!isDealer">提前开票</el-button> -->
           <el-button type="primary" @click="overData" v-if="!isDealer">直调完结</el-button>
           <el-button type="primary" @click="openDeliverDialog" :disabled="detailData.directTransferStatus" v-if="!isDealer">直调发货</el-button>
           <el-button @click="goBack">返回列表</el-button>
@@ -503,7 +507,8 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        closeCom({id: this.listItem.parentId}).then(res => {
+        closeCom({id: this.listItem.parentId, refEnginRecordNo: this.detailData.refEnginRecordNo || '',
+}).then(res => {
           this.$successMsg();
           this.getDetail();
         })
@@ -517,7 +522,7 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        overOrder({id: this.listItem.parentId}).then(res => {
+        overOrder({id: this.listItem.parentId, refEnginRecordNo: this.detailData.refEnginRecordNo || '',}).then(res => {
           this.$successMsg();
           this.getDetail();
         })
@@ -569,7 +574,8 @@ export default {
             deliverDate: this.deliverForm.date + ' 00:00:00',
             correspondId: this.deliverForm.position,
             remark:this.deliverForm.remark,
-            items: this.deliverGoodsList
+            items: this.deliverGoodsList,
+            refEnginRecordNo: this.detailData.refEnginRecordNo || '',
           }
           deliverOrder(params).then(res => {
             this.$successMsg();
@@ -649,6 +655,8 @@ export default {
             inCorrespondName: warehouseItem2.name,
             inStockId: this.directForm.position2,
             inStockName: positionItem2.name,
+            refEnginRecordNo: this.detailData.refEnginRecordNo || '',
+
           }
           directOrder(params).then(res => {
             this.$successMsg();

+ 7 - 3
src/views/supply/engin/components/commerce_examine.vue

@@ -9,7 +9,7 @@
     <div class="diy-table-1">
       <el-row>
         <el-col :span="8" class="item">
-          <div class="label">工程登录编号</div>
+          <div class="label">工程订单号</div>
           <div class="value">{{detailData.enginOrderNo}}</div>
         </el-col>
         <el-col :span="8" class="item">
@@ -24,12 +24,16 @@
           <div class="label">经销商编码</div>
           <div class="value">{{detailData.customerNumber}}</div>
         </el-col>
-        <el-col :span="16" class="item">
+        <el-col :span="8" class="item">
           <div class="label">经销商名称</div>
           <div class="value">{{detailData.customerName}}</div>
         </el-col>
         <el-col :span="8" class="item">
-          <div class="label">工程信息编号</div>
+              <div class="label">机型类别</div>
+              <div class="value">{{detailData.refMachineType}}</div>
+            </el-col>
+        <el-col :span="8" class="item">
+          <div class="label">工程登录编号</div>
           <div class="value">{{detailData.refEnginRecordNo}}</div>
         </el-col>
         <el-col :span="8" class="item">

+ 27 - 8
src/views/supply/engin/components/commerce_form.vue

@@ -9,7 +9,7 @@
     <el-form ref="mainForm" :model="mainForm" :rules="mainFormRules" label-width="110px" size="small" label-position="right">
       <el-row :gutter="20">
         <el-col :xs="24" :sm="12" :lg="8">
-          <el-form-item label="工程订单" prop="orderNum">
+          <el-form-item label="工程订单" prop="orderNum">
             <el-input v-model="mainForm.orderNum" placeholder="系统自动生成" disabled></el-input>
           </el-form-item>
         </el-col>
@@ -179,7 +179,7 @@
     <div class="main-title">
       <div class="title">货品信息</div>
       <div>
-        <el-select v-model="warehouseValue" placeholder="请选择发货仓库" size="small" style="margin-right: 10px">
+        <el-select v-model="warehouseValue" placeholder="请选择发货仓库" size="small" style="margin-right: 10px"  @change="setStock" :disabled="!flag">
           <el-option :label="item.name" :value="item.id" v-for="(item, index) in warehouseList" :key="index"></el-option>
         </el-select>
         <el-button type="primary" size="small" icon="el-icon-search" @click="checkStock">检查库存</el-button>
@@ -273,11 +273,8 @@
           </template>
         </el-table-column>
         <el-table-column align="center" label="税率" prop="tax" min-width="100" show-overflow-tooltip></el-table-column>
-        <!-- <el-table-column align="center" label="总仓库" prop="status1" min-width="100" show-overflow-tooltip>
-          <template slot-scope="scope">
-            <div>{{ scope.row.status1 | status1Filter }}</div>
-          </template>
-        </el-table-column> -->
+        <el-table-column align="center" label="仓库" prop="correspondName" min-width="100" show-overflow-tooltip>
+        </el-table-column>
         <el-table-column align="center" label="仓库状态" prop="status2" min-width="100" show-overflow-tooltip>
           <template slot-scope="scope">
             <div>{{ status2Filter(scope.row) }}</div>
@@ -440,6 +437,7 @@ export default {
         createDate: '',
         fileNo: '',
         salesMan: '',
+
         examineRemark: '',
       },
       mainFormRules: {
@@ -477,7 +475,7 @@ export default {
 
       warehouseList: [],
       warehouseValue: '',
-
+      flag:false,
       isFirst: false,
       salesmanList: [],
     }
@@ -516,12 +514,15 @@ export default {
     goodsList: {
       handler(newValue, oldValue) {
         if(this.goodsList && this.goodsList.length) {
+            this.flag = true
           if(this.isFirst) {
             this.isFirst = false;
           }else {
             // this.mainForm.salesMan = this.goodsList[0].serviceId;
           }
+          return newValue
         }else {
+          this.flag = false
           this.mainForm.salesMan = '';
         }
       },
@@ -557,7 +558,16 @@ export default {
     goBack() {
       this.$emit('backListFormDetail');
     },
+    setStock(id){
+      if (this.goodsList.length) {
+        const item = this.warehouseList.find(e=>e.id === id)
+          this.goodsList.forEach(k=>{
+            this.$set(k,'correspondName',item.name)
+            this.$set(k,'correspondId',item.id)
+          })
+      }
 
+    },
     getDate() {
       var date = new Date();
       var seperator1 = "-";
@@ -699,6 +709,9 @@ export default {
       this.isFirst = true;
       this.isShowDialog = true;
       this.dialogTable_currentPage = 1;
+      this.screenForm.correspondName = ''
+      this.screenForm.correspondId = ''
+      this.warehouseValue = ''
       this.getComLoginList();
     },
 
@@ -901,6 +914,10 @@ export default {
               this.$errorMsg('数量不能大于工程信息数量');
               return;
             }
+            if(!this.multipleSelection[i].correspondId){
+              this.$errorMsg('请选择仓库');
+              return;
+            }
           }
 
           let goodsList = JSON.parse(JSON.stringify(this.multipleSelection));
@@ -935,6 +952,8 @@ export default {
             remark: this.mainForm.remark || '',
             fileNo: this.mainForm.fileNo || '',
             serviceId: this.mainForm.salesMan,
+            correspondId:goodsList[0].correspondId,
+            correspondName:goodsList[0].correspondName,
             serviceName: saleManItem ? saleManItem.nickName : goodsList[0].serviceName,
             items: goodsList,
           }

+ 16 - 5
src/views/supply/engin/components/commerce_return.vue

@@ -9,7 +9,7 @@
     <div class="diy-table-1">
       <el-row>
         <el-col :span="8" class="item">
-          <div class="label">工程登录编号</div>
+          <div class="label">工程订单号</div>
           <div class="value">{{detailData.enginOrderNo}}</div>
         </el-col>
         <el-col :span="8" class="item">
@@ -24,12 +24,16 @@
           <div class="label">经销商编码</div>
           <div class="value">{{detailData.customerNumber}}</div>
         </el-col>
-        <el-col :span="16" class="item">
+        <el-col :span="8" class="item">
           <div class="label">经销商名称</div>
           <div class="value">{{detailData.customerName}}</div>
         </el-col>
         <el-col :span="8" class="item">
-          <div class="label">工程信息编号</div>
+              <div class="label">机型类别</div>
+              <div class="value">{{detailData.refMachineType}}</div>
+            </el-col>
+        <el-col :span="8" class="item">
+          <div class="label">工程登录编号</div>
           <div class="value">{{detailData.refEnginRecordNo}}</div>
         </el-col>
         <el-col :span="8" class="item">
@@ -176,7 +180,7 @@
         <el-table-column align="right" label="可退数量" prop="refundableQty" min-width="100" show-overflow-tooltip></el-table-column>
         <el-table-column align="right" label="退订数量" prop="tdQty" min-width="100" show-overflow-tooltip>
           <template slot-scope="scope">
-            <el-input v-model="scope.row.tdQty" size="mini"></el-input>
+            <el-input v-model="scope.row.tdQty" size="mini" @blur="hasTdQty" type="number" @mousewheel.native.prevent></el-input>
           </template>
         </el-table-column>
         <el-table-column align="left" label="备注" prop="remark" min-width="160" show-overflow-tooltip></el-table-column>
@@ -273,7 +277,13 @@ export default {
     goBack() {
       this.$emit('backListFormDetail');
     },
+    hasTdQty(row){
+      if (row.tdQty<0) {
+          row.tdQty = 0
+          this.$errorMsg('不能填负数')
+        }
 
+    },
     // 获取详情
     getDetail() {
       getOrderDetail({id: this.listItem.parentId}).then(res => {
@@ -298,7 +308,8 @@ export default {
         let params = {
           enginOrderId: this.detailData.enginOrderId,
           items: this.detailData.items,
-          refundNote: this.returnForm.remark
+          refundNote: this.returnForm.remark,
+          refEnginRecordNo:this.detailData.refEnginRecordNo,
         };
         returnCom(params).then(res => {
           this.$successMsg();

+ 8 - 4
src/views/supply/engin/components/home_detail.vue

@@ -16,6 +16,7 @@
               <div class="label">工程订单号</div>
               <div class="value">{{detailData.enginOrderNo}}</div>
             </el-col>
+
             <el-col :span="8" class="item">
               <div class="label">订单日期</div>
               <div class="value">{{detailData.orderDate}}</div>
@@ -253,7 +254,7 @@
         <div class="footer">
           <el-button type="success" @click="toCheckOrder">联查单据</el-button>
           <el-button type="danger" @click="closeData" v-if="!isDealer && (detailData.examineStatus === 'SAVE' || detailData.examineStatus === 'WAIT')">关闭订单</el-button>
-          <el-button type="primary" @click="openDirectDialog" v-if="!isDealer">提前开票</el-button>
+          <!-- <el-button type="primary" @click="openDirectDialog" v-if="!isDealer">提前开票</el-button> -->
           <el-button type="primary" @click="overData" v-if="!isDealer">直调完结</el-button>
           <el-button type="primary" @click="openDeliverDialog" :disabled="detailData.directTransferStatus" v-if="!isDealer">直调发货</el-button>
           <el-button @click="goBack">返回列表</el-button>
@@ -530,7 +531,7 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        closeHome({id: this.listItem.parentId}).then(res => {
+        closeHome({id: this.listItem.parentId, refEnginRecordNo:this.detailData.refEnginRecordNo,}).then(res => {
           this.$successMsg();
           this.getDetail();
         })
@@ -544,7 +545,7 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        overOrder({id: this.listItem.parentId}).then(res => {
+        overOrder({id: this.listItem.parentId, refEnginRecordNo:this.detailData.refEnginRecordNo,}).then(res => {
           this.$successMsg();
           this.getDetail();
         })
@@ -596,7 +597,7 @@ export default {
             deliverDate: this.deliverForm.date + ' 00:00:00',
             correspondId: this.deliverForm.position,
             remark:this.deliverForm.remark,
-
+            refEnginRecordNo:this.detailData.refEnginRecordNo,
             items: this.deliverGoodsList
           }
           this.formLoading = true;
@@ -680,6 +681,8 @@ export default {
             inCorrespondName: warehouseItem2.name,
             inStockId: this.directForm.position2,
             inStockName: positionItem2.name,
+            refEnginRecordNo: this.detailData.refEnginRecordNo || '',
+
           }
           this.formLoading = true;
           directOrder(params).then(res => {
@@ -704,6 +707,7 @@ export default {
       editRemarkHome({
         enginOrderId: this.detailData.enginOrderId,
         geLiInerNote: this.detailData.geLiInerNote,
+        refEnginRecordNo:this.detailData.refEnginRecordNo,
       }).then(res => {
         this.$successMsg('编辑成功');
         this.getDetail();

+ 1 - 0
src/views/supply/engin/components/home_examine.vue

@@ -518,6 +518,7 @@ export default {
         let params = JSON.parse(JSON.stringify(this.detailData));
         params.examineNote = this.examineForm.remark;
         params.examineResult = val;
+        params.refEnginRecordNo=this.detailData.refEnginRecordNo,
         params.saleTypeId = this.detailData.saleTypeId;
         params.saleTypeCode = saleTypeItem.saleCode;
         params.saleTypeName = saleTypeItem.saleName;

+ 5 - 1
src/views/supply/engin/components/home_form.vue

@@ -843,6 +843,7 @@ export default {
         recordNo: this.screenForm.loginNum,
         projectName: this.screenForm.enginName,
         useUnit: this.screenForm.company,
+        refEnginRecordNo:this.mainForm.loginNum,
         examineStatus: 'OK'
       }).then(res => {
         this.dialogTable_dataList = res.data.records;
@@ -893,7 +894,9 @@ export default {
         saleTypeId: this.mainForm.saleType,
         userId: uid,
         enginOrderId: this.mainForm.orderNum,
-        customerId: customerId
+        customerId: customerId,
+        refEnginRecordNo:this.mainForm.loginNum,
+
       }).then(async res => {
         // 复制当前明细数据
         let copyGoodsList = JSON.parse(JSON.stringify(this.goodsList));
@@ -1050,6 +1053,7 @@ export default {
         specification: this.goodsScreenForm.proModel,
         price1: this.goodsScreenForm.price1,
         price2: this.goodsScreenForm.price2,
+        refEnginRecordNo:this.mainForm.loginNum,
         customerId:this.listItem ?this.listItem.customerId :'' ,
       }).then(res => {
         let oldGoodsList = this.goodsList;

+ 9 - 2
src/views/supply/engin/components/home_return.vue

@@ -208,7 +208,7 @@
         <el-table-column align="right" label="可退数量" prop="refundableQty" min-width="100" show-overflow-tooltip></el-table-column>
         <el-table-column align="right" label="退订数量" prop="tdQty" min-width="100" show-overflow-tooltip>
           <template slot-scope="scope">
-            <el-input v-model="scope.row.tdQty" size="mini" type="number" @mousewheel.native.prevent></el-input>
+            <el-input v-model="scope.row.tdQty" size="mini" @blur="hasTdQty(scope.row)" type="number" @mousewheel.native.prevent></el-input>
           </template>
         </el-table-column>
         <el-table-column align="left" label="备注" prop="remark" min-width="160" show-overflow-tooltip></el-table-column>
@@ -304,7 +304,13 @@ export default {
       var currentdate = year + seperator1 + month + seperator1 + strDate;
       return currentdate;
     },
+    hasTdQty(row){
+      if (row.tdQty<0) {
+          row.tdQty = 0
+          this.$errorMsg('不能填负数')
+        }
 
+    },
     // 返回列表
     goBack() {
       this.$emit('backListFormDetail');
@@ -333,7 +339,8 @@ export default {
         let params = {
           enginOrderId: this.detailData.enginOrderId,
           items: this.detailData.items,
-          refundNote: this.returnForm.remark
+          refundNote: this.returnForm.remark,
+          refEnginRecordNo:this.detailData.refEnginRecordNo,
         };
         returnHome(params).then(res => {
           this.$successMsg();

+ 4 - 4
src/views/supply/engin/engin_list.vue

@@ -13,8 +13,8 @@
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="工程信息单号" prop="orderNum">
-                <el-input v-model="screenForm.orderNum" placeholder="请输入工程信息单号"></el-input>
+              <el-form-item label="工程登录编号" prop="orderNum">
+                <el-input v-model="screenForm.orderNum" placeholder="请输入工程登录编号"></el-input>
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6">
@@ -22,11 +22,11 @@
                 <el-input v-model="screenForm.enginNum" placeholder="请输入工程编码"></el-input>
               </el-form-item>
             </el-col>
-            <el-col :xs="24" :sm="12" :lg="6">
+            <!-- <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="工程登录编号" prop="loginNum">
                 <el-input v-model="screenForm.loginNum" placeholder="请输入工程登录编号"></el-input>
               </el-form-item>
-            </el-col>
+            </el-col> -->
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="项目名称" prop="enginName">
                 <el-input v-model="screenForm.enginName" placeholder="请输入项目名称"></el-input>

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

@@ -310,21 +310,21 @@
                 <el-popconfirm
                   style="margin-right: 10px;"
                   title="确定申请吗?"
-                  @onConfirm="handleSubmit(scope.row.parentId)"
+                  @onConfirm="handleSubmit(scope.row.parentId,scope.row)"
                   v-if="scope.row.examineStatus === 'SAVE'" >
                   <el-button slot="reference" type="text">申请</el-button>
                 </el-popconfirm>
                 <el-popconfirm
                   style="margin-right: 10px;"
                   title="确定撤回吗?"
-                  @onConfirm="handleWithdraw(scope.row.parentId)"
+                  @onConfirm="handleWithdraw(scope.row.parentId,scope.row)"
                   v-if="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.parentId)"
+                  @onConfirm="handleAbandon(scope.row.parentId,scope.row)"
                   v-if="$checkBtnRole('examine', $route.meta.roles) && scope.row.examineStatus === 'OK'" >
                   <el-button slot="reference" type="text">弃审</el-button>
                 </el-popconfirm>
@@ -354,7 +354,7 @@
                 <el-popconfirm
                   style="margin-left: 10px;"
                   title="确定删除吗?"
-                  @onConfirm="handleDelete(scope.row.parentId)"
+                  @onConfirm="handleDelete(scope.row.parentId,scope.row)"
                   v-if="$checkBtnRole('del', $route.meta.roles) && scope.row.examineStatus !== 'OK'">
                   <el-button slot="reference" type="text" style="color: #f56c6c;">删除</el-button>
                 </el-popconfirm>
@@ -653,31 +653,31 @@ export default {
     },
 
     // 申请
-    handleSubmit(id) {
-      applyHome({id}).then(res => {
+    handleSubmit(id,row) {
+      applyHome({id,refEnginRecordNo:row.refEnginRecordNo}).then(res => {
         this.$successMsg();
         this.getList();
       })
     },
 
     // 撤回
-    handleWithdraw(id) {
-      withdrawHome({id}).then(res => {
+    handleWithdraw(id,row) {
+      withdrawHome({id,refEnginRecordNo:row.refEnginRecordNo}).then(res => {
         this.$successMsg();
         this.getList();
       })
     },
 
     // 弃审
-    handleAbandon(id) {
-      abandonHome({id}).then(res => {
+    handleAbandon(id,row) {
+      abandonHome({id,refEnginRecordNo:row.refEnginRecordNo}).then(res => {
         this.$successMsg();
         this.getList();
       })
     },
 
     // 删除
-    handleDelete(id) {
+    handleDelete(id,row) {
       deleteHome({ids: id}).then(res => {
         this.$successMsg();
         this.getList();

+ 31 - 5
src/views/supply/implement/nsales_list.vue

@@ -146,7 +146,17 @@
                 ></el-input>
               </el-form-item>
             </el-col>
-            <el-col :xs="24" :sm="12" :lg="18" class="tr">
+            <el-col :xs="24" :sm="12" :lg="6">
+              <el-form-item label="金蝶推送状态" prop="syncStatus">
+                <el-select v-model="screenForm.syncStatus" clearable filterable>
+                  <el-option label="未推送" :value="0"> </el-option>
+                  <el-option label="推送成功" :value="1"> </el-option>
+                  <el-option label="失败推送" :value="-1"> </el-option>
+
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="12" :lg="24" class="tr">
               <el-form-item label="">
                 <el-button @click="resetScreenForm">清空</el-button>
                 <el-button type="primary" @click="submitScreenForm"
@@ -184,6 +194,18 @@
             <!-- <el-table-column align="center" type="selection" width="55"></el-table-column>-->
             <el-table-column
               align="left"
+              label="金蝶推送状态"
+              prop="syncStatus"
+              min-width="100"
+              show-overflow-tooltip
+              sortable
+            >
+              <template slot-scope="scope">
+                {{ scope.row.syncStatus ==0 ?"未推送": scope.row.syncStatus ==1 ?"推送成功": "失败推送" }}
+              </template>
+            </el-table-column>
+            <el-table-column
+              align="left"
               label="状态"
               prop="examineStatus"
               min-width="100"
@@ -259,15 +281,15 @@
               show-overflow-tooltip
             >
               <template slot-scope="scope">
-                <CopyButton :copyText='scope.row.orderType === "TRADE" ||
+                <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' />
+                ==="REQUISITION_HOME")? scope.row.enginOrderNo:scope.row.mainOrderId' />
                 <span>{{
-                  scope.row.orderType === "TRADE" ||
+                  (scope.row.orderType === "TRADE" ||
                   scope.row.orderType === "HOME" ||
                   scope.row.orderType === "REQUISITION_TRADE" ||
-                  scope.row.orderType === "REQUISITION_HOME"
+                  scope.row.orderType === "REQUISITION_HOME")
                     ? scope.row.enginOrderNo
                     : scope.row.mainOrderId
                 }}</span>
@@ -551,6 +573,7 @@ export default {
         printTime: "",
         mainOrderId: "",
         printDesc: null,
+        syncStatus:'',
         id: "",
       },
       statusList: [
@@ -616,6 +639,7 @@ export default {
         correspondName: this.screenForm.warehouse,
         startTime: this.screenForm.date ? this.screenForm.date[0] : "",
         endTime: this.screenForm.date ? this.screenForm.date[1] : "",
+        syncStatus:this.screenForm.syncStatus,
         approvalStartTime: this.screenForm.approval
           ? this.screenForm.approval[0]
           : "",
@@ -659,6 +683,8 @@ export default {
         materialNumber: this.screenForm.chNum,
         specification: this.screenForm.model,
         correspondName: this.screenForm.warehouse,
+        syncStatus:this.screenForm.syncStatus,
+
         startTime: this.screenForm.date ? this.screenForm.date[0] : "",
         endTime: this.screenForm.date ? this.screenForm.date[1] : "",
         approvalStartTime: this.screenForm.approval

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

@@ -316,19 +316,19 @@
               <template slot-scope="scope">
                 <CopyButton
                   :copyText="
-                    scope.row.orderType === 'TRADE' ||
+                    (scope.row.orderType === 'TRADE' ||
                     scope.row.orderType === 'HOME' ||
                     scope.row.orderType === 'REQUISITION_TRADE' ||
-                    scope.row.orderType === 'REQUISITION_HOME'
+                    scope.row.orderType === 'REQUISITION_HOME')
                       ? scope.row.enginOrderNo
                       : scope.row.mainOrderId
                   "
                 />
                 <span>{{
-                  scope.row.orderType === "TRADE" ||
+                  (scope.row.orderType === "TRADE" ||
                   scope.row.orderType === "HOME" ||
                   scope.row.orderType === "REQUISITION_TRADE" ||
-                  scope.row.orderType === "REQUISITION_HOME"
+                  scope.row.orderType === "REQUISITION_HOME")
                     ? scope.row.enginOrderNo
                     : scope.row.mainOrderId
                 }}</span>
@@ -864,7 +864,7 @@ export default {
           }
         });
       } else {
-        this.getDateil(this.tableSelection, "getDtailPrintDis").then((res) => {
+        this.getDateil(this.tableSelection, "getDtailPrintDis",this.check).then((res) => {
           this.$endLoading();
           this.$refs.preView.show(this.hiprintTemplate, this.outputData);
         });
@@ -886,7 +886,7 @@ export default {
             password: this.dialogForm.password,
           };
           checkPassword(params).then((res) => {
-            this.getDateil(this.tableSelection, "getDtailPrintDis").then(
+            this.getDateil(this.tableSelection, "getDtailPrintDis",this.check).then(
               (res) => {
                 this.$endLoading();
                 this.$refs.preView.show(this.hiprintTemplate, this.outputData);

+ 4 - 4
src/views/supply/pickup/pickup_list.vue

@@ -206,15 +206,15 @@
               show-overflow-tooltip
             >
               <template slot-scope="scope">
-                <CopyButton :copyText='scope.row.orderType === "TRADE" ||
+                <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' />
+                ==="REQUISITION_HOME")? scope.row.enginOrderNo:scope.row.mainOrderId' />
                 <span>{{
-                  scope.row.orderType === "TRADE" ||
+                  (scope.row.orderType === "TRADE" ||
                   scope.row.orderType === "HOME" ||
                   scope.row.orderType === "REQUISITION_TRADE" ||
-                  scope.row.orderType === "REQUISITION_HOME"
+                  scope.row.orderType === "REQUISITION_HOME")
                     ? scope.row.enginOrderNo
                     : scope.row.mainOrderId
                 }}</span>

+ 1 - 1
src/views/supply/policy/components/retail_detail.vue

@@ -325,7 +325,7 @@
     <div class="page-footer">
       <div class="footer" :class="classObj">
         <el-button type="success" @click="toCheckOrder">联查单据</el-button>
-        <el-button v-if="isCustomer" type="primary" :disabled="detailData.examineStatus !== 'OK'" @click="openDirectDialog">提前开票</el-button>
+        <!-- <el-button v-if="isCustomer" type="primary" :disabled="detailData.examineStatus !== 'OK'" @click="openDirectDialog">提前开票</el-button> -->
 
         <el-button
           v-if="isCustomer"

+ 1 - 0
src/views/supply/policy/components/retail_form.vue

@@ -1351,6 +1351,7 @@ export default {
         this.listLoading2 = false;
         this.popDataArr = [];
         this.popArr = [];
+        this.factor = []
         // // consloe(this.dataList, "kkkk");
       });
     },

+ 1 - 1
src/views/supply/retail/components/retail_detail.vue

@@ -156,7 +156,7 @@
       <div class="page-footer">
         <div class="footer">
           <el-button type="success" @click="toCheckOrder">联查单据</el-button>
-          <el-button type="primary" @click="openDirectDialog" :disabled="detailData.examineStatus !== 'OK'" v-if="!isDealer">提前开票</el-button>
+          <!-- <el-button type="primary" @click="openDirectDialog" :disabled="detailData.examineStatus !== 'OK'" v-if="!isDealer">提前开票</el-button> -->
           <el-button type="primary" @click="openDeliverDialog" :disabled="detailData.examineStatus !== 'OK' || detailData.directTransferStatus === true" v-if="!isDealer">直调发货</el-button>
           <el-button type="primary" @click="handleFinish" :disabled="detailData.examineStatus !== 'OK'" v-if="!isDealer">直调完成</el-button>
           <el-button @click="goBack">返回列表</el-button>

+ 2 - 2
src/views/supply/sales/components/sales_detail.vue

@@ -71,10 +71,10 @@
           >
             <template slot-scope="scope">
               {{
-                scope.row.orderType === "TRADE" ||
+                (scope.row.orderType === "TRADE" ||
                   scope.row.orderType === "HOME" ||
                   scope.row.orderType === "REQUISITION_TRADE" ||
-                  scope.row.orderType === "REQUISITION_HOME"
+                  scope.row.orderType === "REQUISITION_HOME")
                     ? scope.row.enginOrderNo
                     : scope.row.mainOrderId
               }}

+ 31 - 4
src/views/supply/sales/sales_list.vue

@@ -158,6 +158,16 @@
                 ></el-input>
               </el-form-item>
             </el-col>
+            <el-col :xs="24" :sm="12" :lg="6">
+              <el-form-item label="金蝶推送状态" prop="syncStatus">
+                <el-select v-model="screenForm.syncStatus" clearable filterable>
+                  <el-option label="未推送" :value="0"> </el-option>
+                  <el-option label="推送成功" :value="1"> </el-option>
+                  <el-option label="失败推送" :value="-1"> </el-option>
+
+                </el-select>
+              </el-form-item>
+            </el-col>
             <el-col :xs="24" :sm="12" :lg="24" class="tr">
               <el-form-item label="">
                 <el-button @click="resetScreenForm">清空</el-button>
@@ -218,6 +228,18 @@
             ></el-table-column>
             <el-table-column
               align="left"
+              label="金蝶推送状态"
+              prop="syncStatus"
+              min-width="100"
+              show-overflow-tooltip
+              sortable
+            >
+              <template slot-scope="scope">
+                {{ scope.row.syncStatus ==0 ?"未推送": scope.row.syncStatus ==1 ?"推送成功": "失败推送" }}
+              </template>
+            </el-table-column>
+            <el-table-column
+              align="left"
               label="状态"
               prop="examineStatus"
               min-width="100"
@@ -295,14 +317,14 @@
               sortable
             >
               <template slot-scope="scope">
-                <CopyButton :copyText='scope.row.orderType === "TRADE" ||
+                <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" ||
+                ==="REQUISITION_HOME")? scope.row.enginOrderNo:scope.row.mainOrderId' />                <span>{{
+                  (scope.row.orderType === "TRADE" ||
                   scope.row.orderType === "HOME" ||
                   scope.row.orderType === "REQUISITION_TRADE" ||
-                  scope.row.orderType === "REQUISITION_HOME"
+                  scope.row.orderType === "REQUISITION_HOME")
                     ? scope.row.enginOrderNo
                     : scope.row.mainOrderId
                 }}</span>
@@ -594,6 +616,7 @@ export default {
         approval: "",
         printTime: "",
         printDesc: null,
+        syncStatus:'',
         id: "",
       },
       statusList: [
@@ -664,6 +687,8 @@ export default {
         correspondId: this.screenForm.warehouse.join(","),
         startTime: this.screenForm.date ? this.screenForm.date[0] : "",
         endTime: this.screenForm.date ? this.screenForm.date[1] : "",
+        syncStatus:this.screenForm.syncStatus,
+
         approvalStartTime: this.screenForm.approval
           ? this.screenForm.approval[0]
           : "",
@@ -719,6 +744,8 @@ export default {
         materialNumber: this.screenForm.chNum,
         specification: this.screenForm.model,
         correspondId: this.screenForm.warehouse.join(","),
+        syncStatus:this.screenForm.syncStatus,
+
         startTime: this.screenForm.date ? this.screenForm.date[0] : "",
         endTime: this.screenForm.date ? this.screenForm.date[1] : "",
         approvalStartTime: this.screenForm.approval