Forráskód Böngészése

Merge branch 'master' of http://git.dongkesoft.com:9001/iBOSS-2.0-Mini/iboss-mini-web

# Conflicts:
#	src/api/pages/report/detail-report.js
#	src/locale/lang/zh-CN.js
koushanshan 1 éve
szülő
commit
2b2bdffa74

+ 11 - 7
src/api/pages/report/detail-report.js

@@ -8,21 +8,25 @@ export default {
     // 前缀
     prefix: '/mdm-server/mst/report/',
     // 采购明细报表
-    getPurDetailReport:'pur_detail_report',
+    getPurDetailReport:'get_pur_detail_report',
     // 库存查询
     getIvtDetailReport: 'get_ivt_detail_report',
     // 销售明细报表
-    getOrderDetailReport: 'order_detail_report',
+    getOrderDetailReport: 'get_order_detail_report',
     // 出库明细报表
-    getOutboundDetailReport: 'outbound_detail_report',
+    getOutboundDetailReport: 'get_outbound_detail_report',
     // 入库明细报表
-    getInboundDetailReport: 'inbound_detail_report',
+    getInboundDetailReport: 'get_inbound_detail_report',
     // 客户收款明细表
-    getRecPayDetailReport: 'rec_pay_detail_report',
+    getRecPayDetailReport: 'get_rec_pay_detail_report',
     // 收发存汇总表
-    getIvtSumReport: "ivt_sum_report",
+    getIvtSumReport: "get_ivt_sum_report",
     // 收发存汇总表-明细
-    getIvtItemReport: "ivt_item_report",
+    getIvtItemReport: "get_ivt_item_report",
+    // 供应商往来余额表
+    getSupAccount: 'get_sup_account',
+    // 供应商往来余额表明细
+    getSupAccountItem: 'get_sup_account_item',
     // 日结对账表
     getDailyReconciliationReport: "get_daily_reconciliation_report",
     // 日结对账表

+ 1 - 1
src/config/index.js

@@ -479,7 +479,7 @@ export default {
   outTypeBySql: {
     other: '出库类型-其他出库',
     order: '出库类型-销售出库',
-    purchaseReturn: '出库类型-销退出库'
+    saleReturn: '出库类型-销退回库'
   },
 
   /**

+ 5 - 2
src/locale/lang/zh-CN.js

@@ -108,6 +108,7 @@ export const button = {
   transferPrice:'调整单价',
   transferAmt:'调整金额',
   layoutSetting: '模板设置',
+  accItemTypeName:'账款类型',
 }
 
 /**
@@ -615,15 +616,17 @@ export const columns = {
   invGoodsDetail:'收发存数据',
   intoDetail:'入库明细',
   outDetail:'出库明细',
-  accData:'账务日期',
   purchase:'采购订单',
   purEnter:'采购入库单',
   purReturn:'采购退货单',
-  purPay:'收款单',
+  purPay:'付款单',
+  BillInformation:'账单信息',
   orderTrack:'销售跟踪',
   totalOrderAmount:'订货总额',
   amtShould:'应收总额',
   amtRecTotal:'收款总额',
+  ordchase:'销售订单',
+  outbound:'出库单',
 }
 
 /**

+ 1 - 0
src/mixins/index.js

@@ -475,6 +475,7 @@ export const indexMixin = {
      * @date   : 2022年12月13日10:13:23
      */
     edit(rows) {
+      console.log('rows',rows,this.primaryKey)
       this.modalTitle = this.setTitle(this.$config.formMode.edit, this.$route.meta.title)  // 给modal标题赋值
       this.modalParams = {
         button: this.$config.formMode.edit,

+ 159 - 0
src/view/fin/supplier-account-report/index.vue

@@ -0,0 +1,159 @@
+<template>
+  <div class="main-div">
+    <BaseIndexButtonGroup id="BaseIndexButtonGroup">
+      <template #left>
+        <BaseIndexButton ref="search" name="search"></BaseIndexButton>
+        <BaseIndexButton ref="clear" name="clear"></BaseIndexButton>
+      </template>
+    </BaseIndexButtonGroup>
+
+    <!--  查询条件区域  -->
+    <div id="search-cond-div" ref="search-cond-div" style="margin-top: 1px;padding: 0">
+      <SearchCond ref="searchCond" v-model="searchCond"
+                  @collapse-change="collapseChange" :setFlag="false"
+                  :searchContent="searchContent"></SearchCond>
+    </div>
+    <!--  表格部分  -->
+    <div slot="top" style="margin-left: 5px;">
+      <DkTabs v-model="tabsModel" :options="tabsOptions" @on-click="tabsClick"></DkTabs>
+      <!--  表格部分  -->
+      <DkTable :data="tableData"
+               :page-flag="false"
+               :page-total-flag="false"
+               :height="tableHeight"
+               primaryKey="objectId"
+               :pageFlag="true"
+               @pageChange="pageSizeChange"
+               :page-total="pageInfo.total"
+               :current-page="pageInfo.currentPage"
+               ref="table-select"
+               :showCheckboxHeader="false"
+               :choose-flag="false"
+               v-show="!this.detailFlag">
+        <DkTableColumn field="supName" type="link"
+                       @on-link="tabsClick"></DkTableColumn>
+        <DkTableColumn field="sumAmtPay" data-type="number"/>
+        <DkTableColumn field="sumAmtHandle" data-type="number"/>
+        <DkTableColumn field="remarks" width="auto"></DkTableColumn>
+      </DkTable>
+
+      <!--明细-->
+      <DkTable :id="'table-'+$options.name"
+               ref="table-select-detail"
+               :data="itemData"
+               :height="tableHeight"
+               primaryKey="itemId"
+               :multiple="false"
+               :choose-flag="false"
+               v-show="this.detailFlag">
+        <DkTableColumn field="accItemTypeName"/>
+        <DkTableColumn field="orgName"/>
+        <DkTableColumn field="staffName"/>
+        <DkTableColumn field="amtPay" data-type="number"/>
+        <DkTableColumn field="amtHandle" data-type="number"/>
+        <!--备注-->
+        <DkTableColumn field="remarks"></DkTableColumn>
+      </DkTable>
+    </div>
+  </div>
+</template>
+
+<script>
+import {indexMixin} from "@/mixins";
+
+export default {
+  name: 'supplier-account-report',
+  mixins: [indexMixin],
+  data() {
+    let self = this
+    return {
+      detailFlag:false,
+      itemData:[],
+      // 模式切换值
+      tabsModel: 'totalOrder',
+      tabsOptions: [{label: self.$t('totalOrder'), name: 'totalOrder'}, //总单
+        {label: self.$t('details'), name: 'details'}, //明细
+      ],
+      searchContent: [
+        {
+          itemCode: '供应商-文本',
+          itemName: 'supplierName',
+          valueFormat: {code: 'supId'},
+          valueKind: 'S-SEARCH',
+          magnifierType: self.$config.MagnifierType.supplier,
+        },
+        {
+          itemCode: '账务日期-时间',
+          itemName: 'accDate',
+          valueFormat: {
+            code: 'accDate',
+            default: [new Date().addMonths(-1).format('yyyy-MM-dd'), new Date().format('yyyy-MM-dd')]
+          },
+          valueKind: 'DATE_RANGE'
+        },
+      ],
+    }
+  },
+  methods: {
+    /**
+    * @desc   : 总单tab切换
+    * @author : 常皓宁
+    * @date   : 2024/4/25 13:04
+    */
+    tabsClick(val) {
+      let rows = [this.$refs['table-select'].getCurrentRow()]
+      //如果切换的tab存在就去根据条件查询
+      if (val == 'totalOrder') {
+        this.detailFlag = false
+        this.searchData()
+      }else{
+        this.tabsModel = 'details'
+        setTimeout(() => {
+          this.detailFlag = true
+        }, 100)
+        this.getDetail(rows)
+      }
+    },
+    /**
+    * @desc   : 查询数据
+    * @author : 常皓宁
+    * @date   : 2024/4/25 13:09
+    */
+    getData(params) {
+      params.cpId = this.$store.state.user.cpId
+      return this.excute(this.$service.detailReportService, this.$service.detailReportService.getSupAccount, params)
+    },
+
+    /**
+    * @desc   : 获取明细
+    * @author : 常皓宁
+    * @date   : 2024/4/25 15:07
+    */
+    getDetail(rows){
+      if(!rows){
+        this.itemData = []
+        return
+      } else {
+        let params = {
+          objectId :rows[0].objectId
+        }
+        this.excute(this.$service.detailReportService, this.$service.detailReportService.getSupAccountItem, params).then(res =>{
+          if(res.code === this.$config.SUCCESS_CODE){
+            this.itemData = res.data
+          } else {
+            this.$Message.error(res.message)
+          }
+        })
+      }
+    },
+  },
+  created() {
+    this.primaryKey = 'objectId'  // 设置主键Id
+    this.routeObjName = 'detailReport'  // 设置路由名称
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 1 - 1
src/view/ivt/ivt-sum-report/index.vue

@@ -185,7 +185,7 @@ export default {
             valueKind: 'M-SEARCH'
           },
           {
-            itemCode: 'accData',
+            itemCode: 'accDate',
             valueFormat: {
               code: 'accDate',
               default: [new Date().addMonths(-1).format('yyyy-MM-dd'), new Date().format('yyyy-MM-dd')]

+ 1 - 1
src/view/ivt/out-handle/index.vue

@@ -657,7 +657,7 @@ export default {
         name = 'outHandleOther'
       }
       //销售出库
-      else if (row[0].outType === this.$config.outTypeBySql.purchaseReturn) {
+      else if (row[0].outType === this.$config.outTypeBySql.saleReturn) {
         name = 'outHandleOrder'
       }
       //销售退货出库

+ 40 - 29
src/view/mst/print-layout/index.vue

@@ -98,6 +98,11 @@ export default {
     }
   },
   methods:{
+    /**
+     * @desc   : 停用启用
+     * @author : 周兴
+     * @date   : 2024/4/23 13:27
+     */
     onSwitchChange(param) {
       if (param.flgValid) {
         this.excuteNoParam(this.$service.printLayoutService, this.$service.printLayoutService.enable, [param.layoutId])
@@ -105,12 +110,22 @@ export default {
         this.excuteNoParam(this.$service.printLayoutService, this.$service.printLayoutService.disable, [param.layoutId])
       }
     },
+    /**
+     * @desc   : 查询数据
+     * @author : 周兴
+     * @date   : 2024/4/23 13:27
+     */
     getData(params) {
       return this.excute(this.$service.printLayoutService, this.$service.printLayoutService.selectByCond, params);
     },
     searchSet() {
       this.showSetTemplate = true
     },
+    /**
+     * @desc   : 清空
+     * @author : 周兴
+     * @date   : 2024/4/23 13:27
+     */
     clear() {
       this.formData = {
         layoutName: '',
@@ -119,39 +134,38 @@ export default {
         remarks: ''
       }
     },
+    /**
+     * @desc   : 保存数据
+     * @author : 周兴
+     * @date   : 2024/4/23 13:27
+     */
     saveData() {
       return this.modalParams.button === this.$config.formMode.add
         ? this.excute(this.$service.printLayoutService, this.$service.printLayoutService.insert, this.params)
         : this.excute(this.$service.printLayoutService, this.$service.printLayoutService.update, this.params)
     },
-    add() {
-      this.modalTitle = this.setTitle(this.$config.formMode.add, this.titleItem)
-      this.modalParams = {
-        button: this.$config.formMode.add,
-      }
-      this.clear()
-      this.editAddModal = true
-    },
-    edit(rows) {
-      this.modalParams = {
-        button: this.$config.formMode.edit,
-        closeFlag: true
-      }
-      this.modalTitle = this.setTitle(this.$config.formMode.edit, this.titleItem)
-      if (rows.length > 0) {
-        this.detail(rows[0].layoutId)
-      }
-      this.editAddModal = true
-    },
-
+    /**
+     * @desc   : 查询明细
+     * @author : 周兴
+     * @date   : 2024/4/23 13:27
+     */
     detail(id) {
-      this.excuteNoParam(this.$service.printLayoutService, this.$service.printLayoutService.selectById,
-        [id], false).then(res => {//调用api查询方法
-        if (res.code === this.$config.SUCCESS_CODE) {
-          this.formData = res.data
-        }
-      })
+      return this.excuteNoParam(this.$service.printLayoutService, this.$service.printLayoutService.selectById,
+        [id], false)
     },
+    /**
+     * @desc   : 加载初始数据
+     * @author : 周兴
+     * @date   : 2024/4/23 13:29
+     */
+    initData(){
+      this.getDoc();
+    },
+    /**
+     * @desc   : 查询单据类型
+     * @author : 周兴
+     * @date   : 2024/4/23 13:29
+     */
     getDoc(){
       this.excute(this.$service.commonService, this.$service.commonService.getDoc, {flgPrint:true}).then(res => {
         if (res.code === this.$config.SUCCESS_CODE) {
@@ -163,10 +177,7 @@ export default {
   created() {
     this.primaryKey = 'layoutId'  // 设置主键Id
     this.routeObjName = 'printLayout'  // 设置路由名称
-    this.getDoc()
   }
-
-
 }
 </script>
 

+ 4 - 3
src/view/pur/pur-enter/index.vue

@@ -108,7 +108,7 @@
       </div>
       <div slot="bottom">
         <DkTabs v-model="tabsModel" :options="detailTabsOptions" @on-click="tabsClick"></DkTabs>
-        <!-- 货物明细-->
+        <!-- 待入库货物明细-->
         <div v-show="standardGoodsFlag">
           <DkTable ref="standardGoodsFlag"
                    primaryKey="itemId"
@@ -123,7 +123,7 @@
                    :pageTotalFlag="false"
                    v-if="this.tableModel === 'waitEntry'">
             <!-- 来源单号-->
-            <DkTableColumn field="fromNo"></DkTableColumn>
+            <DkTableColumn field="purNo" :title="$t('fromNo')"></DkTableColumn>
             <!-- 商品型号-->
             <DkTableColumn field="skuModel" :filter="false"></DkTableColumn>
             <!-- 商品名称-->
@@ -144,6 +144,7 @@
             <DkTableColumn field="remarks"></DkTableColumn>
           </DkTable>
 
+          <!-- 已入库货物明细-->
           <DkTable ref="standardGoodsFlag"
                    primaryKey="itemId"
                    :showCheckboxHeader="false"
@@ -157,7 +158,7 @@
                    :pageTotalFlag="false"
                    v-if="this.tableModel === 'ingEntry'">
             <!-- 来源单号-->
-            <DkTableColumn field="fromNo"></DkTableColumn>
+            <DkTableColumn field="purNo" :title="$t('fromNo')"></DkTableColumn>
             <!-- 商品型号-->
             <DkTableColumn field="skuModel" :filter="false"></DkTableColumn>
             <!-- 商品名称-->

+ 2 - 2
src/view/pur/pur-return/index.vue

@@ -341,7 +341,7 @@ export default {
           }
           //已入库已付款不可以作废
           if (rows[0].intoStatus == this.$config.intoStatus.yiRuKu && rows[0].paymentFlag) {
-            this.$Message.warning(this.$t('W_007', {'param': this.$t('系统自动办理参数开启,已付款单据不能作废')}));
+            this.$Message.warning(this.$t('W_007', {'param': this.$t('W_112')}));
             return
           }
         }
@@ -466,7 +466,7 @@ export default {
         if (this.$store.state.user.setting[this.$config.settingCode.IVT001] == 1) {
           //入库中的不能编辑
           if (rows[0].intoStatus == this.$config.intoStatus.ruKuZhong) {
-            this.$Message.warning(this.$t('W_007', {'param': this.$t('系统自动办理参数开启,入库中单据不能编辑')}));
+            this.$Message.warning(this.$t('W_007', {'param': this.$t('W_110')}));
             return false;
           }
         }

+ 39 - 10
src/view/pur/pur-track-report/index.vue

@@ -36,9 +36,9 @@
             <InputPop :telephone="true" ref="contactPhone" :readonly="true" v-model="purData.contactPhone"/>
           </DkFormItem>
           <!--备注-->
-          <DkFormItem prop="remarks">
+          <DkFormItem prop="remarks" :span="12">
             <InputPop ref="remarks" v-model="purData.remarks"
-                      maxlength=500 textareaFlag :readonly="true"/>
+                      maxlength=500 :readonly="true"/>
           </DkFormItem>
         </DkForm>
       </DkPanel>
@@ -93,9 +93,9 @@
                            type="date" :short-cut-flag="true" :readonly="true"/>
           </DkFormItem>
           <!--备注-->
-          <DkFormItem prop="remarks">
+          <DkFormItem prop="remarks" :span="12">
             <InputPop ref="remarks" v-model="purEntryData.remarks"
-                      maxlength=500 textareaFlag :readonly="true"/>
+                      maxlength=500 :readonly="true"/>
           </DkFormItem>
         </DkForm>
       </DkPanel>
@@ -118,7 +118,7 @@
     </DkCollapse>
     <!--    采购退货单-->
     <DkCollapse @on-change="changeCollapse" ref="collapse" v-if="this.tabsModel ==='purReturn' ">
-      <DkTabs v-model="tabsModel2" :options="tabsOptions2" @on-click="tabsClick2" v-if="tabFlag"></DkTabs>
+      <DkTabs v-model="tabsModel2" :options="tabsOptions2" @on-click="tabsClick2" v-if="tabFlag1"></DkTabs>
       <DkPanel prop="essentialInformation">
         <!--  单据信息  -->
         <DkForm slot="content" ref="formInline" v-model="purReturnData"
@@ -150,9 +150,9 @@
                            type="date" :short-cut-flag="true" :readonly="true"/>
           </DkFormItem>
           <!--备注-->
-          <DkFormItem prop="remarks">
+          <DkFormItem prop="remarks" :span="12">
             <InputPop ref="remarks" v-model="purReturnData.remarks"
-                      maxlength=500 textareaFlag :readonly="true"/>
+                      maxlength=500 :readonly="true"/>
           </DkFormItem>
         </DkForm>
       </DkPanel>
@@ -173,10 +173,10 @@
         </div>
       </DkPanel>
     </DkCollapse>
-    <!--    订单款-->
+    <!--    订单款-->
     <DkCollapse @on-change="changeCollapse" ref="collapse" v-if="this.tabsModel ==='purPay'">
       <!--商品信息-->
-      <DkPanel prop="goodsInformation">
+      <DkPanel prop="BillInformation">
         <div id="pur-pay" ref="pur-pay" slot="content">
           <EditTable v-if="purPayFlag"
                      ref="purReturnable"
@@ -382,7 +382,24 @@ export default {
       ],
 
       purPayData:[],//订单收款
-      purPayColumns:[],
+      purPayColumns:[
+        {
+          field: 'intoNo',
+          type: 'disabled',
+        },//入库单号
+        {
+          field: 'amtPayableHandle',
+          type: 'disabled',
+        },//核销金额
+        {
+          field: 'amtWaive',
+          type: 'disabled',
+        },//优惠金额
+        {
+          field: 'accDate',
+          type: 'disabled',
+        },//账务日期
+      ],
 
       purNo: null,//采购订单号
       purEntryVOList: [],//入库
@@ -411,6 +428,7 @@ export default {
     tabsClick(val) {
       this.purEntryFlag = false
       this.purReturnFlag = false
+      this.purPayFlag = false
       //如果切换的tab存在就去根据条件查询
       if (val) {
         this.totalTab = val
@@ -419,6 +437,7 @@ export default {
             this.purFlag = true;
             this.purEntryFlag = false;
             this.purReturnFlag = false;
+            this.purPayFlag = false;
           }, 100)
         }
         else if(val == 'purEnter'){
@@ -426,6 +445,7 @@ export default {
             this.purFlag = false;
             this.purEntryFlag = true;
             this.purReturnFlag = false;
+            this.purPayFlag = false;
           }, 100)
         }
         else if(val == 'purReturn'){
@@ -433,6 +453,15 @@ export default {
             this.purFlag = false;
             this.purEntryFlag = false;
             this.purReturnFlag = true;
+            this.purPayFlag= false;
+          }, 100)
+        }
+        else if(val == 'purPay'){
+          setTimeout(() => {
+            this.purFlag = false;
+            this.purEntryFlag = false;
+            this.purReturnFlag = false;
+            this.purPayFlag= true;
           }, 100)
         }
 

+ 1 - 1
src/view/sale/order-out/index.vue

@@ -263,7 +263,7 @@ export default {
      * @date   : 2024-03-08 14:48
      */
     setSearchParams(params) {
-      params.outType = '出库类型-销售出库'
+      params.outType = this.$config.outTypeBySql.order
       return params;
     },
     /**

+ 2 - 2
src/view/sale/order-return/index.vue

@@ -257,7 +257,7 @@ export default {
      * @date   : 2024-03-08 14:48
      */
     setSearchParams(params) {
-      params.outType = '出库类型-销售出库退货'
+      params.outType = this.$config.outTypeBySql.saleReturn
       return params;
     },
     /**
@@ -325,7 +325,7 @@ export default {
       if (val === 'goodsDetail') {
         this.visGoodsDetailFlag = true
         this.visFilesDetailFlag = false
-      } else if (val === 'collectionDetail') {
+      } else if (val === 'filesDetail') {
         this.visGoodsDetailFlag = false
         this.visFilesDetailFlag = true
       }

+ 290 - 171
src/view/sale/order-track-report/index.vue

@@ -62,19 +62,18 @@
           </DkFormItem>
           <!--备注-->
           <DkFormItem prop="remarks">
-            <InputPop ref="remarks" v-model="ordData.remarks"/>
+            <InputPop ref="remarks" v-model="ordData.remarks":readonly="true"/>
           </DkFormItem>
         </DkForm>
       </DkPanel>
       <!--商品信息-->
       <DkPanel prop="goodsInformation">
-        <div id="pur-order" ref="pur-order" slot="content">
+        <div id="ord-order" ref="ord-order" slot="content">
           <EditTable v-if="ordFlag"
                      ref="orderItemTable"
-                     majorField="ordItemId"
                      :data="orderItemList"
                      :columns="orderItemColumns"
-                     :height="400"
+                     :height=this.tableHeight
                      :freeze="false"
                      :show-footer="true"
                      :delete-flag="false"
@@ -83,55 +82,88 @@
         </div>
       </DkPanel>
     </DkCollapse>
-    <!--    采购入库单-->
-    <DkCollapse @on-change="changeCollapse" ref="collapse" v-if="this.tabsModel ==='purEnter' ">
-      <DkTabs v-model="tabsModel1" :options="tabsOptions1" @on-click="tabsClick1"></DkTabs>
+    <!--    库单-->
+    <DkCollapse @on-change="changeCollapse" ref="collapse" v-if="this.tabsModel ==='outbound' ">
+      <DkTabs v-model="tabsModelOut" :options="tabsOptionsOut" @on-click="tabsClickOut"></DkTabs>
       <DkPanel prop="essentialInformation">
         <!--  单据信息  -->
-        <DkForm slot="content" ref="formInline" v-model="purEntryData"
+        <DkForm slot="content" ref="formInline" v-model="ordOutboundData"
                 style="width:100%" :label-max-words="5">
-          <!--供应商-->
-          <DkFormItem prop="supId" :label="$t('supplierName')" :required="true">
-            <InputPop ref="purNo" v-model="purEntryData.supplierName" :readonly="true"/>
+          <!--出库单号-->
+          <DkFormItem prop="outNo">
+            <InputPop ref="outNo" v-model="ordOutboundData.outNo" :readonly="true"/>
           </DkFormItem>
-          <!--收货仓库-->
-          <DkFormItem prop="whId" :label="$t('wareHouse')" :required="true">
-            <InputPop ref="purNo" v-model="purEntryData.whName" :readonly="true"/>
+          <!--客户电话-->
+          <DkFormItem prop="cusPhone">
+            <InputPop ref="cusPhone" :disabled="true" v-model="ordOutboundData.cusPhone"/>
           </DkFormItem>
-          <!-- 采购人 -->
-          <DkFormItem prop="makingUser" :label="'采购人'">
-            <InputPop ref="purNo" v-model="purEntryData.makeStaffName" :readonly="true"/>
+          <!--客户名称-->
+          <DkFormItem prop="cusName">
+            <InputPop ref="cusName" :disabled="true" v-model="ordOutboundData.cusName"/>
           </DkFormItem>
-          <!--部门-->
-          <DkFormItem prop="orgId" :label="$t('department')">
-            <InputPop ref="purNo" v-model="purEntryData.orgName" :readonly="true"/>
+          <!--客户区域-->
+          <DkFormItem prop="addressName" >
+            <InputPop ref="addressName" v-model="ordData.addressName" :readonly="true"/>
           </DkFormItem>
-          <!--来源单号-->
-          <DkFormItem prop="fromNo" :label="$t('fromNo')">
-            <InputPop ref="fromNo" v-model="purEntryData.fromNo" :readonly="true"/>
+          <!--门牌号-->
+          <DkFormItem prop="addressNo" >
+            <InputPop ref="addressNo" v-model="ordData.addressNo":readonly="true"/>
           </DkFormItem>
-          <!--入库日期-->
-          <DkFormItem prop="intoDate" :label="$t('intoDate')">
-            <DatePickerPop v-model="purEntryData.intoDate"
-                           :placeholder="$t('inputWords',{'search-name':$t('intoDate')})"
-                           type="date" :short-cut-flag="true" :readonly="true"/>
+          <!--详细地址-->
+          <DkFormItem prop="addressFull" >
+            <InputPop ref="addressFull" v-model="ordData.addressFull":readonly="true"/>
           </DkFormItem>
-          <!--备注-->
+          <!--联系人-->
+          <DkFormItem prop="contactName">
+            <InputPop ref="contactName" v-model="ordData.contactName" :readonly="true"/>
+          </DkFormItem>
+          <!--联系电话-->
+          <DkFormItem prop="contactPhone">
+            <InputPop ref="contactPhone" v-model="ordData.contactPhone" :readonly="true"/>
+          </DkFormItem>
+          <!--业务部门-->
+          <DkFormItem prop="orgName" >
+            <InputPop ref="orgName" v-model="ordData.orgName" :readonly="true"/>
+          </DkFormItem>
+          <!--业务员-->
+          <DkFormItem prop="staffName" >
+            <InputPop ref="staffName" v-model="ordData.staffName" :readonly="true"/>
+          </DkFormItem>
+          <!--出库日期-->
+          <DkFormItem prop="outDate" :data-type="$config.dataType.date">
+            <DatePickerPop v-model="ordOutboundData.outDate" :readonly="true"/>
+          </DkFormItem>
+          <!--总出库中数量-->
+          <DkFormItem prop="outingQtySum" >
+            <InputNumber ref="outingQtySum" v-model="ordData.outingQtySum" :readonly="true"/>
+          </DkFormItem>
+          <!--总已出库数量-->
+          <DkFormItem prop="outQtySum">
+            <InputNumber ref="outQtySum" v-model="ordData.outQtySum" :readonly="true"/>
+          </DkFormItem>
+          <!--自动出库标识-->
+          <DkFormItem prop="autoOutFlag" >
+            <template>
+              <i-switch v-model="ordOutboundData.flgAutoHandle" :disabled="true">
+                <span slot="open"></span>
+                <span slot="close"></span>
+              </i-switch>
+            </template>
+          </DkFormItem>
+          <!--单据备注-->
           <DkFormItem prop="remarks">
-            <InputPop ref="remarks" v-model="purEntryData.remarks"
-                      maxlength=500 textareaFlag :readonly="true"/>
+            <InputPop ref="remarks" v-model="ordOutboundData.remarks" :readonly="true"/>
           </DkFormItem>
         </DkForm>
       </DkPanel>
       <!--商品信息-->
       <DkPanel prop="goodsInformation">
-        <div id="pur-enter" ref="pur-enter" slot="content">
-          <EditTable v-if="purEntryFlag"
-                     ref="purEntryTable"
-                     majorField="intoItemId"
-                     :data="purEntryItemList"
-                     :columns="purEntryColumns"
-                     :height="400"
+        <div id="ord-outbound" ref="ord-outbound" slot="content">
+          <EditTable v-if="ordOutboundFlag"
+                     ref="ordOutboundTable"
+                     :data="ordOutboundItemList"
+                     :columns="ordOutboundItemColumns"
+                     :height=this.tableHeight
                      :freeze="false"
                      :show-footer="true"
                      :delete-flag="false"
@@ -140,55 +172,79 @@
         </div>
       </DkPanel>
     </DkCollapse>
-    <!--    采购退货单-->
-    <DkCollapse @on-change="changeCollapse" ref="collapse" v-if="this.tabsModel ==='purReturn' ">
-      <DkTabs v-model="tabsModel2" :options="tabsOptions2" @on-click="tabsClick2"></DkTabs>
+    <!-- 退货单-->
+    <DkCollapse @on-change="changeCollapse" ref="collapse" v-if="this.tabsModel ==='ordOutReturn' ">
+      <DkTabs v-model="tabsModelOutReturn" :options="tabsOptionsOutReturn" @on-click="tabsClickOutReturn"></DkTabs>
       <DkPanel prop="essentialInformation">
         <!--  单据信息  -->
-        <DkForm slot="content" ref="formInline" v-model="purReturnData"
+        <DkForm slot="content" ref="formInline" v-model="ordOutReturnData"
                 style="width:100%" :label-max-words="5">
-          <!--供应商-->
-          <DkFormItem prop="supId" :label="$t('supplierName')" :required="true">
-            <InputPop ref="purNo" v-model="purReturnData.supName" :readonly="true"/>
+          <!--出库单号-->
+          <DkFormItem prop="outNo">
+            <InputPop ref="outNo" v-model="ordOutReturnData.outNo" :readonly="true"/>
           </DkFormItem>
-          <!--收货仓库-->
-          <DkFormItem prop="whId" :label="$t('wareHouse')" :required="true">
-            <InputPop ref="purNo" v-model="purReturnData.whName" :readonly="true"/>
+          <!--客户电话-->
+          <DkFormItem prop="cusPhone">
+            <InputPop ref="cusPhone" :disabled="true" v-model="ordOutReturnData.cusPhone"/>
           </DkFormItem>
-          <!-- 采购人 -->
-          <DkFormItem prop="makingUser" :label="'采购人'">
-            <InputPop ref="purNo" v-model="purReturnData.makeStaffName" :readonly="true"/>
+          <!--客户名称-->
+          <DkFormItem prop="cusName">
+            <InputPop ref="cusName" :disabled="true" v-model="ordOutReturnData.cusName"/>
           </DkFormItem>
-          <!--部门-->
-          <DkFormItem prop="orgId" :label="$t('department')">
-            <InputPop ref="purNo" v-model="purReturnData.orgName" :readonly="true"/>
+          <!--客户区域-->
+          <DkFormItem prop="addressName" >
+            <InputPop ref="addressName" v-model="ordOutReturnData.addressName" :readonly="true"/>
           </DkFormItem>
-          <!--来源单号-->
-          <DkFormItem prop="fromNo" :label="$t('fromNo')">
-            <InputPop ref="fromNo" v-model="purReturnData.fromNo" :readonly="true"/>
+          <!--门牌号-->
+          <DkFormItem prop="addressNo" >
+            <InputPop ref="addressNo" v-model="ordOutReturnData.addressNo":readonly="true"/>
           </DkFormItem>
-          <!--入库日期-->
-          <DkFormItem prop="intoDate" :label="$t('intoDate')">
-            <DatePickerPop v-model="purReturnData.intoDate"
-                           :placeholder="$t('inputWords',{'search-name':$t('intoDate')})"
-                           type="date" :short-cut-flag="true" :readonly="true"/>
+          <!--详细地址-->
+          <DkFormItem prop="addressFull" >
+            <InputPop ref="addressFull" v-model="ordOutReturnData.addressFull":readonly="true"/>
           </DkFormItem>
-          <!--备注-->
+          <!--联系人-->
+          <DkFormItem prop="contactName">
+            <InputPop ref="contactName" v-model="ordOutReturnData.contactName" :readonly="true"/>
+          </DkFormItem>
+          <!--联系电话-->
+          <DkFormItem prop="contactPhone">
+            <InputPop ref="contactPhone" v-model="ordOutReturnData.contactPhone" :readonly="true"/>
+          </DkFormItem>
+          <!--业务部门-->
+          <DkFormItem prop="orgName" >
+            <InputPop ref="orgName" v-model="ordOutReturnData.orgName" :readonly="true"/>
+          </DkFormItem>
+          <!--业务员-->
+          <DkFormItem prop="staffName" >
+            <InputPop ref="staffName" v-model="ordOutReturnData.staffName" :readonly="true"/>
+          </DkFormItem>
+          <!--出库日期-->
+          <DkFormItem prop="outDate" :data-type="$config.dataType.date">
+            <DatePickerPop v-model="ordOutReturnData.outDate" :readonly="true"/>
+          </DkFormItem>
+          <!--总出库中数量-->
+          <DkFormItem prop="outingQtySum" >
+            <InputNumber ref="outingQtySum" v-model="ordOutReturnData.outingQtySum" :readonly="true"/>
+          </DkFormItem>
+          <!--总已出库数量-->
+          <DkFormItem prop="outQtySum">
+            <InputNumber ref="outQtySum" v-model="ordOutReturnData.outQtySum" :readonly="true"/>
+          </DkFormItem>
+          <!--单据备注-->
           <DkFormItem prop="remarks">
-            <InputPop ref="remarks" v-model="purReturnData.remarks"
-                      maxlength=500 textareaFlag :readonly="true"/>
+            <InputPop ref="remarks" v-model="ordOutReturnData.remarks" :readonly="true"/>
           </DkFormItem>
         </DkForm>
       </DkPanel>
       <!--商品信息-->
       <DkPanel prop="goodsInformation">
-        <div id="pur-return" ref="pur-return" slot="content">
-          <EditTable v-if="purReturnFlag"
-                     ref="purReturnable"
-                     majorField="retuenItemId"
-                     :data="purReturnItemList"
-                     :columns="purReturnColumns"
-                     :height="400"
+        <div id="ord-return" ref="ord-return" slot="content">
+          <EditTable v-if="ordOutReturnFlag"
+                     ref="outRetrunTable"
+                     :data="ordOutRetrunItemList"
+                     :columns="ordOutRetrunItemColumns"
+                     :height=this.tableHeight
                      :freeze="false"
                      :show-footer="true"
                      :delete-flag="false"
@@ -197,6 +253,8 @@
         </div>
       </DkPanel>
     </DkCollapse>
+
+
     <!--    订单收款-->
     <DkCollapse @on-change="changeCollapse" ref="collapse" v-if="this.tabsModel ==='purPay'">
       <!--商品信息-->
@@ -231,8 +289,8 @@ export default {
     let self = this
     return {
       ordFlag:true,
-      purEntryFlag: true,
-      purReturnFlag: true,
+      ordOutboundFlag: true,
+      ordReturnFlag: true,
       purPayFlag:true,
       ordData: {},//销售订单
       orderItemList: [],//订单明细
@@ -315,188 +373,247 @@ export default {
           equal: true,
         },
       ],
-      purEntryData: {},//采购入库单
-      purEntryItemList: [],//采购入库单明细
-      //采购入库明细列
-      purEntryColumns: [
+      //销售出库单
+      ordOutboundData: {},
+      //销售出库单明细
+      ordOutboundItemList: [],
+      //出库明细列
+      ordOutboundItemColumns: [
         {
           field: 'skuCode',
           type: 'disabled',
         },
         {
+          field: 'skuModel',
+          type: 'disabled',
+        },
+        {
           field: 'skuName',
           type: 'disabled',
         },
+        //仓库
         {
-          field: 'priceInto',
+          field: 'whName',
           type: 'disabled',
-          digits: 2,
-          number: true,
-          sum: true
-        },//入库价
+        },
+        //非标号
+        {
+          field: 'nonStdCode',
+          type: 'text',
+          equal: true,
+        },
+        //出库状态
+        {
+          field: 'outStatusName',
+          type: 'text',
+          equal: true,
+        },
+        //出库中数量
         {
-          field: 'intoingQty',
+          field: 'outingQty',
           type: 'disabled',
+          digits: 2,
           number: true,
           sum: true
-        },//入库中数量
+        },
+        //出库中金额
         {
-          field: 'intoingAmt',
-          type: 'disabled',
+          field: 'outingAmt',
+          type: 'number',
           digits: 2,
           number: true,
           sum: true
-        },//入库中金额
+        },
+        //已出库数量
         {
-          field: 'intoQty',
+          field: 'outQty',
           type: 'disabled',
+          digits: 2,
           number: true,
           sum: true
-        },//已入库数量
+        },
+        //已出库金额
         {
-          field: 'intoAmt',
-          type: 'disabled',
+          field: 'outAmt',
+          type: 'number',
           digits: 2,
           number: true,
           sum: true
-        },//已入库金额
+        },
         {
-          field: 'intoStatusName',
-          type: 'disabled',
-        },//入库状态
+          field: 'remarks',
+          type: 'text',
+          equal: true,
+        },
       ],
-
-      purReturnData:{},//采购退货
-      purReturnItemList:[],//采购退货明细
-      //采购退货明细列
-      purReturnColumns:[
+      //退货
+      ordOutReturnData:{},
+      //销退货明细
+      ordOutRetrunItemList:[],
+      //退货明细列
+      ordOutRetrunItemColumns:[
         {
           field: 'skuCode',
           type: 'disabled',
         },
         {
+          field: 'skuModel',
+          type: 'disabled',
+        },
+        {
           field: 'skuName',
           type: 'disabled',
         },
         {
-          field: 'intoingQty',
+          field: 'brandName',
           type: 'disabled',
+        },
+        //仓库
+        {
+          field: 'whName',
+          type: 'disabled',
+        },
+        //非标号
+        {
+          field: 'nonStdCode',
+          type: 'text',
+          equal: true,
+        },
+        //数量
+        {
+          field: 'itemQty',
+          type: 'disabled',
+          digits: 2,
           number: true,
           sum: true
-        },//入库中数量
+        },
+        //价格
         {
-          field: 'intoingAmt',
+          field: 'priceSale',
           type: 'disabled',
           digits: 2,
+          number: true
+        },
+        //金额
+        {
+          field: 'itemAmt',
+          type: 'number',
+          digits: 2,
           number: true,
           sum: true
-        },//入库中金额
+        },
+        //商品标价
         {
-          field: 'intoQty',
+          field: 'priceStd',
           type: 'disabled',
           number: true,
-          sum: true
-        },//已入库数量
+          digits: 2,
+        },
+        //标价金额
         {
-          field: 'intoAmt',
+          field: 'amtStd',
           type: 'disabled',
           digits: 2,
-          number: true,
-          sum: true
-        },//已入库金额
+          number: true
+        },
+        //标价折扣
         {
-          field: 'intoStatusName',
+          field: 'priceDiscount',
           type: 'disabled',
-        },//入库状态
+          number: true,
+          digits: 2,
+        },
+        {
+          field: 'remarks',
+          type: 'text',
+          equal: true,
+        },
       ],
-
-      purPayData:[],//订单收款
-      purPayColumns:[],
-
-      orderNo: null,//订单号
-      purEntryVOList: [],//入库
-      purReturnVOList:[],//退货
+      // 出库数据list
+      ordOutboundDataList: [],
+      //退货数据list
+      ordOutReturnDataList:[],
       // 模式切换值
       tabsModel: 'ordchase',
-      tabsOptions: [{label: self.$t('ordchase'), name: 'ordchase'}, //采购订单
-        {label: self.$t('purEnter'), name: 'purEnter'}, //采购入库单
-        {label: self.$t('purReturn'), name: 'purReturn'},//采购退货
+      tabsOptions: [{label: self.$t('ordchase'), name: 'ordchase'}, //销售订单
+        {label: self.$t('outbound'), name: 'outbound'}, //出库单
+        {label: self.$t('ordOutReturn'), name: 'ordOutReturn'},//销售退货
         {label: self.$t('purPay'), name: 'purPay'},//采购退货
       ],
-      tabsModel1: null,
-      tabsModel2: null,
+      tabsModelOut: null,
+      tabsModelOutReturn: null,
       tabsModel3: null,
-      tabsOptions1: [],
-      tabsOptions2: [],
+      tabsOptionsOut: [],
+      tabsOptionsOutReturn: [],
       tabsOptions3: [],
     }
   },
   methods: {
+
     /**
-     * @desc   : tab切换
-     * @author : 常皓宁
-     * @date   : 2024/4/22 13:44
+     * @desc   : 整体tab切换
+     * @author : 宋扬
+     * @date   : 2024/4/25 11:45
      */
     tabsClick(val) {
-      this.purEntryFlag = false
-      this.purReturnFlag = false
+      this.ordOutboundFlag = false;
+      this.ordOutReturnFlag = false;
       //如果切换的tab存在就去根据条件查询
       if (val) {
-        this.totalTab = val
         if(val == 'ordchase'){
           setTimeout(() => {
             this.ordFlag = true;
-            this.purEntryFlag = false;
-            this.purReturnFlag = false;
+            this.ordOutboundFlag = false;
+            this.ordOutReturnFlag = false;
           }, 100)
         }
-        else if(val == 'purEnter'){
+        else if(val == 'outbound'){
           setTimeout(() => {
             this.ordFlag = false;
-            this.purEntryFlag = true;
-            this.purReturnFlag = false;
+            this.ordOutboundFlag = true;
+            this.ordOutReturnFlag = false;
           }, 100)
         }
-        else if(val == 'purReturn'){
+        else if(val == 'ordOutReturn'){
           setTimeout(() => {
             this.ordFlag = false;
-            this.purEntryFlag = false;
-            this.purReturnFlag = true;
+            this.ordOutboundFlag = false;
+            this.ordOutReturnFlag = true;
           }, 100)
         }
 
       }
     },
+
     /**
-     * @desc   : 库tab切换
-     * @author : 常皓宁
-     * @date   : 2024/4/22 13:44
+     * @desc   : 库tab切换
+     * @author : 宋扬
+     * @date   : 2024/4/25 11:46
      */
-    tabsClick1(val) {
+    tabsClickOut(val) {
       //如果切换的tab存在就去根据条件查询
       if (val) {
-        this.totalTab = val
-        this.purEntryVOList.forEach(it => {
-          if (it.intoNo == val) {
-            this.purEntryData = it
-            this.purEntryItemList = it.purEntryItemVOList
+        this.ordOutboundDataList.forEach(it => {
+          if (it.outNo == val) {
+            this.ordOutReturnData = it
+            this.ordOutboundItemList = it.outboundItemList
           }
         })
       }
     },
-    /**
-     * @desc   : 退货tab切换
-     * @author : 常皓宁
-     * @date   : 2024/4/22 13:44
-     */
-    tabsClick2(val) {
+
+   /**
+    * @desc   : 退货tab切换
+    * @author : 宋扬
+    * @date   : 2024/4/25 17:20
+    */
+    tabsClickOutReturn(val) {
       //如果切换的tab存在就去根据条件查询
       if (val) {
-        this.totalTab = val
-        this.purReturnVOList.forEach(it => {
-          if (it.intoNo == val) {
+        this.ordOutReturnDataList.forEach(it => {
+          if (it.outNo == val) {
             this.purReturnData = it
-            this.purReturnItemList = it.purReturnItemVOList
+            this.ordOutRetrunItemList = it.purReturnItemVOList
           }
         })
       }
@@ -512,18 +629,20 @@ export default {
       }
       this.excute(this.$service.orderService, this.$service.orderService.getOrderTrackReport, params).then(res => {
         if (res.code === this.$config.SUCCESS_CODE) {
+          // 赋值订单总表信息
           this.ordData = res.data.list[0]
-          this.ordItemList = res.data.list[0].ordItemList
-          this.purEntryVOList = res.data.list[0].purEntryVOList
-          this.purReturnVOList = res.data.list[0].purReturnVOList
-          let purEntryList = res.data.list[0].purEntryVOList
-          if (purEntryList && purEntryList.length > 0) {
-            this.purEntryData = this.purEntryVOList[0]
-            this.purEntryItemList = res.data.list[0].purEntryVOList[0].purEntryItemVOList
-            this.tabsOptions1 = purEntryList.map(m => {
-              return {label: m.intoNo, name: m.intoNo}
+          // 赋值订单明细信息
+          this.orderItemList = res.data.list[0].ordItemList
+          // 赋值出库单list值
+          this.ordOutboundDataList = res.data.list[0].outboundDataList
+          if (this.ordOutboundDataList && this.ordOutboundDataList.length > 0) {
+            this.ordOutboundData = this.ordOutboundDataList[0]
+            this.ordOutboundItemList = this.ordOutboundDataList[0].outbounditemlist
+            this.tabsOptionsOut = this.ordOutboundDataList.map(m => {
+              return {label: m.outNo, name: m.outNo}
             })
           }
+
           let purReturnList = res.data.list[0].purReturnVOList
           if (purReturnList && purReturnList.length > 0) {
             this.purReturnData = this.purReturnVOList[0]
@@ -538,7 +657,7 @@ export default {
     },
   },
   created() {
-    this.getPur(this.$route.params.row.ordId)
+    this.getPur(this.$route.params.row.orderId)
   },
   activated() {
   },

+ 1 - 2
src/view/wx-print/index.vue

@@ -81,6 +81,7 @@ export default {
       .then((results) => {
         console.log('data',data)
         console.log('layout',layout)
+
         // 在这里执行接下来的操作
         if(results?.[0]?.code === this.$config.SUCCESS_CODE){
           let header =results?.[0]?.data
@@ -93,9 +94,7 @@ export default {
           let hiprintTemplate = new hiprint.PrintTemplate({
             template: layout,
           })
-
           hiprintTemplate.toPdf(printData,'单据打印',{isDownload:false,type:'datauristring'}).then(dataURL=>{
-
             let pdf = this.dataURLtoFile(dataURL, "pdf");
             let formData = new FormData();
             formData.append('file', pdf);