Просмотр исходного кода

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

changhaoning 1 год назад
Родитель
Сommit
f9d7be9c4c

+ 2 - 0
src/api/pages/report/detail-report.js

@@ -63,6 +63,8 @@ export default {
     getOrderSummary:'get_order_summary',
     // 销售汇总明细
     getOrderSummaryItem:'get_order_summary_item',
+    //资金日记账
+    getFundReportWeb:'get_fund_report_web',
   }
 }
 

+ 6 - 0
src/locale/lang/zh-CN.js

@@ -715,6 +715,12 @@ export const columns = {
   salesQty: '销售数量',
   salesAmt: '销售金额',
   flgGift:'赠品标识',
+  initAmt:'期初',
+  amtInflow:'期间',
+  amtBalance:'期末',
+  amtRes:'发生额',
+  macCusDetail:'资金日记账',
+  macRpDetail:'账款详情',
 }
 
 /**

+ 5 - 0
src/mixins/index.js

@@ -313,6 +313,7 @@ export const indexMixin = {
       // 查询数据
       this._getData(params).then(res => {
         if (res && res.code === this.$config.SUCCESS_CODE) {
+          let isDataDetail = false;
           this.searchInfo = res.data;   // 记录返回的实体,返回较多的数据,可能会用到
           this.tableData = res.data.list;
           // 如果list没有值,可能就是data返回
@@ -321,9 +322,13 @@ export const indexMixin = {
           }
           if (!this.tableData && res.data && Array.isArray(res.data.detail)) {
             this.tableData = res.data.detail;
+            isDataDetail = true;
           }
           if (params.currentPage == 1) {
             this.pageInfo.total = res.data.total
+            if (isDataDetail){
+              this.pageInfo.total = res.data.detail.length;
+            }
             this.pageInfo.currentPage = 1;
           }
           this.loading = false

+ 129 - 7
src/view/fin/fund-report/index.vue

@@ -18,10 +18,12 @@
       </div>
       <!--  表格部分  -->
       <div slot="top">
+        <DkTabs v-model="detailModel" :options="detailOptions" @on-click="detailTabsClick"></DkTabs>
         <!--  表格部分  -->
+        <div v-show="isMacFlag">
         <DkTable :data="tableData"
-                 :page-flag="false"
-                 :page-total-flag="false"
+                 :page-flag="true"
+                 :page-total-flag="true"
                  :height="tableHeight-30"
                  primaryKey="itemId"
                  :pageFlag="true"
@@ -32,12 +34,37 @@
                  :sortable="false"
                  :showCheckboxHeader="false"
                  :choose-flag="false">
-          <DkTableColumn field="macname"></DkTableColumn>
-          <DkTableColumn field="accdate" :title="$t('accDate')"/>
-          <DkTableColumn field="amtinflow" data-type="number"/>
-          <DkTableColumn field="balance" data-type="number"></DkTableColumn>
+          <DkTableColumn field="macName" :title="$t('macname')"></DkTableColumn>
+          <DkTableColumn field="initAmt" :digits="2" dataType="number"></DkTableColumn>
+          <DkTableColumn field="amtInflow" :digits="2" dataType="number"></DkTableColumn>
+          <DkTableColumn field="balance" :title="$t('amtBalance')" :digits="2" dataType="number"></DkTableColumn>
+          <DkTableColumn field="cusName" :tree-node="true"></DkTableColumn>
+          <DkTableColumn field="cusPhone" :tree-node="true"></DkTableColumn>
+          <DkTableColumn field="accDate" :title="$t('accDate')"/>
+          <DkTableColumn field="amtRes" dataType="number" :digits="2" type="link" @on-link="currentIntoRights()"
+                         sum/>
         </DkTable>
       </div>
+        <div v-show="isMacDetailFlag">
+          <DkTable :id="'table-'+$options.name" ref="detail-select" :data="macDetailData" showFooter
+                   :height="this.tableHeight -35"
+                   primaryKey="invId"
+                   @pageChange="pageSizeChange"
+                   :page-total="pageInfo.total"
+                   :current-page="pageInfo.currentPage"
+                   :choose-flag="false"
+                   :page-size-opts="pageSizeOpts"
+                   :page-size="pageInfo.pageSize"
+                   name="table">
+            <DkTableColumn field="macName" :title="$t('macname')"></DkTableColumn>
+            <DkTableColumn field="accDate" :title="$t('accDate')"/>
+            <DkTableColumn field="amtPay" dataType="number" :digits="2"/>
+            <DkTableColumn field="amtRec" dataType="number" :digits="2"/>
+            <DkTableColumn field="makeTime" data-type="dateTime"/>
+            <DkTableColumn field="remarks"/>
+          </DkTable>
+        </div>
+      </div>
     </div>
   </div>
 </template>
@@ -51,8 +78,29 @@ export default {
   data() {
     let self = this
     return {
+      detailModel: 'macCusDetail',
+      detailOptions: [
+        {label: self.$t('macCusDetail'), name: 'macCusDetail'}, //资金日记账
+        {label: self.$t('macRpDetail'), name: 'macRpDetail'}, //账款详情
+      ],
+      tableData: [],         // 资金账户
+      macDetailData: [],    // 账款明细
+      isMacFlag: true,
+      isMacDetailFlag: false,
       searchContent: [
         {
+          itemCode: '资金账户-下拉',
+          itemName: 'macname',
+          valueFormat: {
+            code: 'macIds',
+            data: [],
+            valueKey: 'macId',
+            labelKey: 'macName',
+          },
+          required: true,
+          valueKind: 'M-CHOICE'
+        },
+        {
           itemCode: '账务日期-时间',
           itemName: 'accDate',
           valueFormat: {
@@ -66,13 +114,87 @@ export default {
   },
   methods: {
     /**
+     * @desc   : 加载数据
+     * @author : 姜宁
+     * @date   : 2024/7/19 16:10
+     */
+    initData() {
+      this.getMacData();
+    },
+    /**
      * @desc   : 查询数据
      * @author : 常皓宁
      * @date   : 2024/4/25 13:09
      */
     getData(params) {
+      // 清空数据
+      this.tableData = [];
+      this.macDetailData = [];
+      // 自动显示收发存数据
+      this.detailModel = 'macCusDetail'
+      this.isMacFlag = true
+      this.isMacDetailFlag = false
       params.cpId = this.$store.state.user.cpId
-      return this.excute(this.$service.detailReportService, this.$service.detailReportService.getFundReport, params)
+      return this.excute(this.$service.detailReportService, this.$service.detailReportService.getFundReportWeb, params)
+    },
+
+    /**
+     * @desc   : 点击Tab进行切换
+     * @author : 姜宁
+     * @date   : 2024/7/19 16:40
+     */
+    detailTabsClick(val) {
+      if (val === 'macCusDetail') {
+        this.detailModel = val
+        this.isMacFlag = true
+        this.isMacDetailFlag = false
+      } else if (val === 'macRpDetail' && this.macDetailData.length > 0) {
+        this.detailModel = val
+        this.isMacFlag = false
+        this.isMacDetailFlag = true
+      }
+    },
+
+    /**
+     * @desc   : 获取资金账户
+     * @author : 姜宁
+     * @date   : 2024/7/19 16:08
+     */
+    getMacData() {
+      let params = {
+        'dictCode': this.$config.kindCode.basicIncome,
+      }
+      this.excute(this.$service.commonService, this.$service.commonService.getMac, params, false).then(res => {
+        if (res.code === this.$config.SUCCESS_CODE) {
+          let list = this.searchContent.filter(it =>  it.valueFormat && it.valueFormat.code == 'macIds')
+          if (list.length > 0) {
+            list[0].valueFormat.data = res.data
+          }
+        }
+      })
+    },
+    /**
+     * @desc   : 获取发生明细
+     * @author : 姜宁
+     * @date   : 2024/7/19 16:16
+     */
+    currentIntoRights(row) {
+      this.macDetailData = [];
+      if (!row) {
+        row = [this.$refs['table-select'].getCurrentRow()]
+      }
+      this.excuteNoParam(this.$service.paymentService, this.$service.paymentService.selectRpInfoById, [row[0].rpId], false).then(res => {
+        if (res.code === this.$config.SUCCESS_CODE) {
+          // 显示入库明细信息页面
+          this.detailModel = 'macRpDetail'
+          this.isMacFlag = false
+          this.isMacDetailFlag = true
+          this.macDetailData = res.data.recPayItem;
+          // this.tableDataDetail_rpItem = res.data.recPayItem;
+          // this.tableDataDetail_recPayHandleItem = res.data.recPayHandleItem;
+        }
+        this.loading = false
+      })
     },
   },
   created() {

+ 5 - 20
src/view/sale/order-sum-report/index.vue

@@ -183,14 +183,6 @@ export default {
           {
             itemCode: 'nonStdCode',
           },
-          // {
-          //   itemCode: 'whName',
-          //   valueFormat: {
-          //     code: 'whList',
-          //   },
-          //   magnifierType: Config.MagnifierType.warehouse,
-          //   valueKind: 'M-SEARCH'
-          // },
           {
             itemCode: 'accDate',
             valueFormat: {
@@ -281,15 +273,11 @@ export default {
       let searchParams = {...this.searchParams};
       let params = {}
       if (row != null) {
-        // 赋值查询条件
-        params = {
+        let sku = {
           skuId: row[0].skuId,
           skuModel:row[0].skuModel,
-          accDateStart: searchParams.accDateStart,
-          accDateEnd: searchParams.accDateEnd,
-          currentPage: searchParams.currentPage,
-          pageSize: searchParams.pageSize
         }
+        params = Object.assign(params,searchParams,sku)
         // 赋值JSON查询条件
         let skuQuerystr = JSON.stringify(params);
         if (skuQuerystr && skuQuerystr != '{}') {
@@ -321,14 +309,11 @@ export default {
       let searchParams = {...this.searchParams};
       let params = {}
       if (row != null) {
-        // 赋值查询条件
-        params = {
+        let sku = {
           cusId: row[0].cusId,
-          accDateStart: searchParams.accDateStart,
-          accDateEnd: searchParams.accDateEnd,
-          currentPage: searchParams.currentPage,
-          pageSize: searchParams.pageSize
+          skuModel:row[0].skuModel,
         }
+        params = Object.assign(params,searchParams,sku)
         // 赋值JSON查询条件
         let skuQuerystr = JSON.stringify(params);
         if (skuQuerystr && skuQuerystr != '{}') {