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

Merge branch 'master' of http://s.dev01.dkiboss.com:9001/iBOSS-2.0-Mini/iboss_wx_app

liuyao 1 год назад
Родитель
Сommit
dea123facc
29 измененных файлов с 1740 добавлено и 237 удалено
  1. 7 1
      api/pages/mac/supReceiptPayment.js
  2. 2 1
      app.json
  3. 2 0
      i18n/zh-CN.js
  4. 3 0
      mixins/index.js
  5. 31 3
      package-base-select/pages/select-collection_confirm/select-collection_confirm.js
  6. 222 0
      package-business-analysis/pages/business-overview-experience/business-overview-experience.js
  7. 3 0
      package-business-analysis/pages/business-overview-experience/business-overview-experience.json
  8. 90 0
      package-business-analysis/pages/business-overview-experience/business-overview-experience.wxml
  9. 118 0
      package-business-analysis/pages/business-overview-experience/business-overview-experience.wxss
  10. 5 1
      package-business-analysis/pages/business-overview/business-overview.js
  11. 28 2
      package-business-analysis/pages/cus-rec-pay-report/cus-rec-pay-report.js
  12. 36 4
      package-business-analysis/pages/profit-report/profit-report.js
  13. 40 15
      package-inventory/pages/cost-check/cost-check.js
  14. 5 1
      package-inventory/pages/ivt-detail-report/ivt-detail-report.wxml
  15. 23 1
      package-inventory/pages/ivt-sum-report/ivt-sum-report.js
  16. 0 7
      package-purchase/pages/pur-receipt/pur-receipt.js
  17. 350 44
      package-purchase/pages/pur-refund/add/add.js
  18. 2 1
      package-purchase/pages/pur-refund/add/add.json
  19. 14 2
      package-purchase/pages/pur-refund/add/add.wxml
  20. 315 43
      package-purchase/pages/pur-refund/detail/detail.js
  21. 2 1
      package-purchase/pages/pur-refund/detail/detail.json
  22. 71 2
      package-purchase/pages/pur-refund/detail/detail.wxml
  23. 42 1
      package-purchase/pages/pur-refund/detail/detail.wxss
  24. 128 58
      package-purchase/pages/pur-refund/pur-refund.js
  25. 18 2
      package-purchase/pages/pur-refund/pur-refund.wxml
  26. 14 15
      package-purchase/pages/purchase-order/purchase-order-detail/purchase-order-detail.wxml
  27. 55 32
      package-purchase/pages/purchase-return/add/add.js
  28. 19 0
      pages/shopping/shopping.js
  29. 95 0
      utils/data.js

+ 7 - 1
api/pages/mac/supReceiptPayment.js

@@ -32,7 +32,13 @@ module.exports = {
 			edit: { key: 'edit', url: '/package-purchase/pages/pur-receipt/add/add' },
 			detail: {
 				key: 'detail', url: '/package-purchase/pages/pur-receipt/detail/detail', idKey: 'rpId' 
-			},
+      },
+      
+			refund: { key: 'refund', url: '/package-purchase/pages/pur-refund/add/add' },
+      editRefund: { key: 'edit', url: '/package-purchase/pages/pur-refund/add/add' },
+      detailRefund: {
+				key: 'detail', url: '/package-purchase/pages/pur-refund/detail/detail', idKey: 'rpId' 
+      },
       selectCollectionConfirm: { key: 'selectCollectionConfirm', url: '/package-base-select/pages/select-collection_confirm/select-collection_confirm' },
 			chooseSupplier: { key: 'chooseSupplier', url: '/package-base-select/pages/select-data/select-data', type: 'supplier' },
 			chooseStaff: { key: 'chooseStaff', url: '/package-base-select/pages/select-data/select-data', type: 'staff' },

+ 2 - 1
app.json

@@ -216,7 +216,8 @@
                 "pages/profit-report/org-rank/org-rank",
                 "pages/profit-report/staff-rank/staff-rank",
                 "pages/profit-report/sku-rank/sku-rank",
-                "pages/business-overview/business-overview"
+                "pages/business-overview/business-overview",
+                "pages/business-overview-experience/business-overview-experience"
             ]
         },
         {

+ 2 - 0
i18n/zh-CN.js

@@ -670,6 +670,8 @@ const pur = {
   sumTotalAmount: "合计金额",
   receivingDate: "收货日期",
   orderQty: "订单数量",
+  orderAmount: "订单金额",
+  returnAmt: "退货金额",
   inventoryQty: "入库数量",
   inventory: "入库",
   returnQty: "退货数量",

+ 3 - 0
mixins/index.js

@@ -1332,6 +1332,9 @@ module.exports = {
    * @date : 2022/5/24 12:16
    */
   onReachBottom: function () {
+    console.log('this.data.pageFlag ',this.data.pageFlag )
+    console.log('this.data.loading ',this.data.loading )
+    console.log('this.data.noMore ',this.data.noMore )
     // 不分页也不能进行下翻
     if (!this.data.pageFlag || this.data.loading || this.data.noMore) {
       return;

+ 31 - 3
package-base-select/pages/select-collection_confirm/select-collection_confirm.js

@@ -652,6 +652,28 @@ Page({
       params.returnAddress = form.returnAddress
       params.rpType = Constants.rpType.payment
       params.objectId = form.objectId
+    }else if (this.data.formType == 13) { //供应商 退付款
+      tableData.forEach(item => {
+        itemList.push({
+          amtPay: item.sumAmount,
+          balance: item.balance,
+          macCode: item.macCode,
+          macId: item.macId,
+          macName: item.macName,
+          makeStaff: item.makeStaff ? item.makeStaff : form.makeStaff,
+          accDate: utils.formatDayTime(new Date())
+        })
+      })
+      // }
+      //客户收款保存参数
+      params.sumAmtPay = Number(itemList.sum('amtPay'))
+      params.accDate = params.accDate ? params.accDate : utils.formatDayTime(new Date())
+      params.supName = form.objInfo.supName
+      params.contactName = form.contactName
+      params.contactPhone = form.contactPhone
+      params.returnAddress = form.returnAddress
+      params.rpType = Constants.rpType.returnPayment
+      params.objectId = form.objectId
     }
 
     if (this.data.formType !== 8) {
@@ -708,6 +730,12 @@ Page({
       } else {
         return this.excute(this.data.supReceiptPaymentService, this.data.supReceiptPaymentService.insertSupReceipt, this.data.params);
       }
+    } else if (this.data.formType == 13) { //供应商 退付款
+      if (this.data.form.editFlag) {
+        return this.excute(this.data.supReceiptPaymentService, this.data.supReceiptPaymentService.updateSupReceipt, this.data.params);
+      } else {
+        return this.excute(this.data.supReceiptPaymentService, this.data.supReceiptPaymentService.insertSupRefund, this.data.params);
+      }
     }
 
     
@@ -718,14 +746,14 @@ Page({
    * @author : 姜永辉
    */
   handleData() {
-    if (this.data.formType == 3 || this.data.formType == 4  || this.data.formType == 12) { //客户/供应商收款/退款 
+    if (this.data.formType == 3 || this.data.formType == 4  || this.data.formType == 12 || this.data.formType == 13) { //客户/供应商收款/退款 
       let pages = getCurrentPages();
       if (this.data.formReturnMode == 'customer') {
         let prevPage = pages[pages.length - 4]; //上三页
         prevPage.setData({
           refreshByAdd: true
         })
-      } else if(this.data.formReturnMode == 'customer-collection' || this.data.formReturnMode == 'refund-detail'|| this.data.formReturnMode =='pur-receipt-detail'){ //客户/供应商收款/退款详情进入
+      } else if(this.data.formReturnMode == 'customer-collection' || this.data.formReturnMode == 'refund-detail'|| this.data.formReturnMode =='pur-refund-detail' || this.data.formReturnMode =='pur-refund-detail'){ //客户/供应商收款/退款详情进入
         this.setData({
           navigateBackFlag:true
         })
@@ -748,7 +776,7 @@ Page({
           delta: 2
         })
       }
-      if (this.data.formReturnMode == 'customer-collection' || this.data.formReturnMode == 'refund-detail' ||  this.data.formReturnMode =='pur-receipt-detail') { //客户收款/退款详情进入详情进入
+      if (this.data.formReturnMode == 'customer-collection' || this.data.formReturnMode == 'refund-detail' ||  this.data.formReturnMode =='pur-receipt-detail' ||  this.data.formReturnMode =='pur-refund-detail') { //客户收款/退款详情进入详情进入
         wx.navigateBack({
           delta: 2
         })

+ 222 - 0
package-business-analysis/pages/business-overview-experience/business-overview-experience.js

@@ -0,0 +1,222 @@
+const Constants = require('@/utils/Constants.js');
+const mixins = require('@/mixins/index.js');
+const config = require('@/config/config.js');
+const app = getApp()
+
+Page({
+    mixins: [mixins],
+    /**
+     * 页面的初始数据
+     */
+    data: {
+        userEndDateString: '',
+        funData: [],
+        userEndDate: null,
+        userEndDateFlg: false,
+        userEndDateString: '',
+    },
+
+    /**
+     * 生命周期函数--监听页面加载
+     */
+    onLoad(options) {
+        // 查询活动
+        this.getActivity()
+        setTimeout(() => {
+            // 用户到期日期
+            if (app.globalData.company.userEndDate) {
+                this.setData({
+                    userEndDate: app.globalData.company.userEndDate
+                })
+            } else {
+                //获取服务器的最新时间
+                this.getCurrentDate()
+            }
+        }, 200)
+    },
+
+    /**
+     * @desc : 服务器的日期
+     * @author : 姜永辉
+     * @date : 2024/4/1
+     */
+    getCurrentDate() {
+        let _this = this
+        let service = app.globalData['commonService']
+        _this.excute(service, service.getCurrentDate, {}).then(res => {
+            if (res.data.code == Constants.SUCESS_CODE) {
+                //服务器的时间  
+                let nowDate = res.data.data.currentDate
+                let endDate = new Date(nowDate).addMonths(12).addDays(-1).toDateStr()
+                // 用户到期日期
+                if (_this.data.userEndDate == null || !_this.data.userEndDate) {
+                    this.setData({
+                        userEndDate: endDate,
+                        userEndDateFlg: true,
+                        userEndDateString: _this.data.funData.wxPrice + '元/年(' + _this.data.funData.activityItemDescribe + ')',
+                        factAmt: _this.data.funData.wxPrice,
+                        extendDays: 365,
+                        nowDate,
+                    })
+                } else {
+                    // 和 服务器的时间一致
+                    if (_this.data.userEndDate == endDate) {
+                        this.setData({
+                            userEndDateFlg: true,
+                            userEndDateString: _this.data.funData.wxPrice + '元/年(' + _this.data.funData.activityItemDescribe + ')',
+                            factAmt: _this.data.funData.wxPrice,
+                            extendDays: 365,
+                            nowDate,
+                        })
+                    } else {
+                        let extendDays = Math.ceil(new Date(_this.data.userEndDate).dayDiff(new Date(nowDate)) + 1);
+
+                        let price = (Math.round((_this.data.funData.wxPrice / 365 + Number.EPSILON) * 100) / 100).toFixed(2)
+                        console.log(price);
+                        let factAmt = (Number(price) * extendDays).toFixed(2)
+                        this.setData({
+                            userEndDateFlg: false,
+                            userEndDateString: price + '元/天(' + _this.data.funData.activityItemDescribe + ')* ' + extendDays + '天=' + factAmt + '元',
+                            factAmt: factAmt,
+                            extendDays,
+                            nowDate,
+                        })
+                    }
+
+                }
+            }
+        });
+    },
+
+    /**
+     * @desc : 查询活动
+     * @author : 周兴
+     * @date : 2024/4/1
+     */
+    getActivity() {
+        let params = {
+            appCode: Constants.APP_CODE,
+            activityStatus: Constants.kindCode.activityStatus,
+            cpId: app.globalData.company.cpId,
+            gradeCode: this.data.gradeCode,
+            activityTypeList: [Constants.kindCode.activityFunc],
+        }
+
+        let service = app.globalData['activityService']
+        this.excute(service, service.selectActivityItems, params).then(res => {
+            if (res.data.code == Constants.SUCESS_CODE) {
+                if (res.data && res.data.data) {
+                    let funData = []
+                    let data = res.data.data
+                    data.forEach(it => {
+                        if (it.activityItemDescribe == '报表功能包') {
+                            funData = it
+                        }
+                    })
+                    this.setData({
+                        funData: funData
+                    })
+                }
+            }
+        });
+    },
+
+        /**
+    * @desc : 设置保存参数
+    * @author : 周兴
+    * @date : 2024/4/1
+    */
+    setParams(params) { 
+        let funPackage = app.globalData.company.funPackage || []
+        params.endDate = app.globalData.company.endDate
+        params.userEndDate = this.data.userEndDate
+        params.gradeCode = app.globalData.company.gradeCode
+        params.cpId = app.globalData.company.cpId
+        params.tradeNo = this.generateRandomNo();
+        params.wxUserId = app.globalData.user.userId
+        params.tradeAmount = Number(this.data.factAmt)
+        params.buyBeginDate = this.data.nowDate;
+        params.buyEndDate = this.data.userEndDate
+        params.extendDays = 0;
+        params.wxMaxNum = app.globalData.company.wxMaxNum
+        params.webMaxNum = app.globalData.company.webMaxNum
+        funPackage.push({
+            funUuids: this.data.funData.funUuids,
+            activityId: this.data.funData.activityId,
+        })
+        params.funPackage = funPackage
+        if (app.globalData.company.vip) {
+            params.vip = true;
+        }
+        params.buyLong = this.data.extendDays + '天'
+        console.log(params);
+        return params;
+    },
+
+    /**
+     * @desc : 保存数据
+     * @author : 周兴
+     * @date : 2024/5/17
+     */
+    saveData(params) {
+        let service = app.globalData['companyService']
+        return this.excute(service, service.saveFunc, this.data.params).then(res => {
+            if (res.data.code == Constants.SUCESS_CODE) {
+                // 成功后跳转支付
+                this.toPay(res.data.data);
+            }
+        })
+    },
+
+    /**
+     * @desc : 体验跳转
+     * @author : 常皓宁
+     * @date : 2024/7/4 13:16
+     */
+    handleTitleBtn(e) {
+        let type = e.currentTarget.dataset.item
+        //收发存汇总表
+        if (type == 'INT') {
+            wx.navigateTo({
+                url: '/package-inventory/pages/ivt-sum-report/ivt-sum-report',
+                success: function (res) {
+                    let params = {
+                        testFlag: true
+                    }
+                    res.eventChannel.emit('params', {
+                        params: params
+                    });
+                }
+            })
+        }
+        //客户收支表
+        else if (type == 'CUS') {
+            wx.navigateTo({
+                url: '/package-business-analysis/pages/cus-rec-pay-report/cus-rec-pay-report',
+                success: function (res) {
+                    let params = {
+                        testFlag: true
+                    }
+                    res.eventChannel.emit('params', {
+                        params: params
+                    });
+                }
+            })
+        }
+        //利润表
+        else {
+            let this_ = this
+            wx.navigateTo({
+                url: '/package-business-analysis/pages/profit-report/profit-report',
+                success: function (res) {
+                    let params = {
+                        testFlag: true
+                    }
+                    res.eventChannel.emit('params', {
+                        params: params
+                    });
+                }
+            })
+        }
+    },
+})

+ 3 - 0
package-business-analysis/pages/business-overview-experience/business-overview-experience.json

@@ -0,0 +1,3 @@
+{
+    "usingComponents": {}
+}

+ 90 - 0
package-business-analysis/pages/business-overview-experience/business-overview-experience.wxml

@@ -0,0 +1,90 @@
+<view>
+	<view class="content">
+		<view class="item-card">
+			<view class="card-title">
+				<view class="name-title">
+					<view class="name"> 库存资产明细</view>
+				</view>
+			</view>
+			<view class="card-content">
+				<view class="list-item">
+					<view class="title">从入库到出库,全程透明</view>
+					<view class="title">收发存汇总,助力企业精准运营每一步。</view>
+					<view class="video-title">
+						<view style="font-size: 20px;text-align: center;width: 100%;">视频介绍</view>
+						<view style="width: 20%;color: blue;font-size: 14px;" data-item="INT" catchtap="handleTitleBtn">体验一下</view>
+					</view>
+					<view style="font-size: 100px;">视频</view>
+				</view>
+			</view>
+		</view>
+
+		<view class="item-card">
+			<view class="card-title">
+				<view class="name-title">
+					<view class="name"> 客户欠款明细</view>
+				</view>
+			</view>
+			<view class="card-content">
+				<view class="list-item">
+					<view class="title">洞悉欠款,控财财务未来</view>
+					<view class="title">精准数据,智慧决策,共创辉煌!</view>
+					<view class="video-title">
+						<view style="font-size: 20px;text-align: center;width: 100%;">视频介绍</view>
+						<view style="width: 20%;color: blue;font-size: 14px;" data-item="CUS" catchtap="handleTitleBtn">体验一下</view>
+					</view>
+					<view style="font-size: 100px;">视频</view>
+				</view>
+			</view>
+		</view>
+
+		<view class="item-card">
+			<view class="card-title">
+				<view class="name-title">
+					<view class="name">销售利润明细</view>
+				</view>
+			</view>
+			<view class="card-content">
+				<view class="list-item">
+					<view class="title">用数据赋能,以利润证明</view>
+					<view class="title">专业报表,见证每一次成功背后的智慧决策!</view>
+					<view class="video-title">
+						<view style="font-size: 20px;text-align: center;width: 100%;">视频介绍</view>
+						<view style="width: 20%;color: blue;font-size: 14px;" data-item="SAL" catchtap="handleTitleBtn">体验一下</view>
+					</view>
+					<view style="font-size: 100px;">视频</view>
+				</view>
+			</view>
+		</view>
+	</view>
+
+</view>
+<view style="height: 300rpx;"></view>
+
+<view class="bottom-class">
+	<view class="view-margin">
+		<view style="display: flex;justify-content: space-between;align-items: center;">
+			<view>订单详情 <van-icon slot="label-icon" name="question-o" data-item="{{item}}" catchtap="showTip" /></view>
+			<view>{{userEndDateString}}</view>
+		</view>
+	</view>
+	<view wx:if="{{false}}" class="view-margin" style="text-align: right;margin-top: 35rpx;">
+		减少100积分<van-icon slot="label-icon" name="question-o" data-item="{{item}}" catchtap="showTip" />
+	</view>
+	<view class="view-margin" style="display: flex;justify-content:space-between; align-items:center;   ">
+		<view style="display: flex;justify-content: center;align-items: center;">
+			<view>截止日期:</view>
+			<dk-cell fontSize="16" amount="{{false}}" contentColor="#FF1810" content="{{userEndDate}}"></dk-cell>
+		</view>
+
+		<view style="display: flex;justify-content: center;align-items: center;">
+			<view>实付款:</view>
+			<dk-cell fontSize="16" contentColor="#FF7B1A" content="{{factAmt}}"></dk-cell>
+		</view>
+	</view>
+
+	<view class="bottom-class-button">
+		<van-button color="#FF7B1A" custom-style="width:95%;border-radius: 15rpx;" loading="{{loading}}" bind:click="save" type="info">购买
+		</van-button>
+	</view>
+</view>

+ 118 - 0
package-business-analysis/pages/business-overview-experience/business-overview-experience.wxss

@@ -0,0 +1,118 @@
+.content {
+	padding: 0 16rpx;
+}
+
+.card-title {
+	background: linear-gradient(95.33deg, #ADC6FF -2.27%, #F0F5FF 60.66%),
+		linear-gradient(0deg, #F4F8FF, #F4F8FF),
+		radial-gradient(58.28% 235.72% at 10.78% 50%, rgba(191, 213, 255, 0.6) 0%, rgba(216, 229, 255, 0) 56.69%);
+	padding: 30rpx 20rpx;
+	border-radius: 15rpx 15rpx 0 0;
+	display: flex;
+	justify-content: space-between;
+}
+
+.item-card {
+	border-radius: 16rpx;
+	margin-top: 32rpx;
+	background: white;
+	box-shadow: 0px 10px 20px 0px #0000000D;
+	box-shadow: 0px -6px 20px 0px #0000000D;
+	padding: 32rpx 32rpx 40rpx 32rpx;
+	position: relative;
+}
+
+.name-title {
+	width: 100%;
+	display: flex;
+	color: #1B365D;
+	font-weight: 600;
+	flex-direction: row;
+	font-size: 28rpx;
+	text-align: center;
+	justify-content: start;
+	align-content: center;
+}
+
+.name-title .name {
+	width: 100%;
+	font-size: 34rpx;
+	text-align: center;
+}
+
+.littleName {
+	font-size: 20rpx;
+	padding-top: 14rpx;
+}
+
+.card-content {
+	width: 100%;
+	display: flex;
+	flex-direction: column;
+	justify-content: center;
+	align-content: center;
+	padding-top: 20rpx;
+}
+
+.card-content .list-item {
+	padding: 15rpx 20rpx;
+	text-align: center;
+	height: 200px;
+}
+
+.title {
+	width: 100%;
+	font-size: 14px;
+	color: #95A8CB;
+	padding-right: 32rpx;
+	text-align: center;
+}
+
+.video-title {
+	width: 100%;
+	padding-top: 10px;
+	font-size: 20px;
+	color: #95A8CB;
+	text-align: center;
+	display: flex;
+}
+
+.scan-class {
+	width: auto;
+	display: flex;
+	align-items: center;
+	/* margin-right: 12rpx; */
+	color: #1B365D;
+}
+
+.date-class {
+	width: 200rpx;
+	position: absolute;
+	right: -10px;
+	top: 130rpx;
+}
+
+.bottom-class {
+	background: #fff;
+	position: fixed;
+	bottom: 0;
+	width: 100%;
+	height: 302rpx;
+	border-top: 1px solid #efefef;
+	padding: 20rpx;
+	z-index: 7;
+}
+
+.bottom-class-button {
+	background: #fff;
+	position: fixed;
+	bottom: 0;
+	width: 100%;
+	z-index: 2;
+	margin-bottom: 45rpx;
+}
+.view-margin{
+	margin: 15rpx 0;
+	margin-right: 35rpx;
+	font-size: 13px;
+}

+ 5 - 1
package-business-analysis/pages/business-overview/business-overview.js

@@ -133,7 +133,11 @@ Page({
       let menuList = app.globalData.menus
       let filters = menuList.filter(it => it.objectCode == 'ivt-sum-report');
       //只要一个没有就都没有 需要购买 跳转购买页面
-      if (!filters || filters.length == 0) {
+      // if (!filters || filters.length == 0) {
+        if (true) {
+          wx.navigateTo({
+            url: '/package-business-analysis/pages/business-overview-experience/business-overview-experience',
+          })
         //跳转购买
         return
       }

+ 28 - 2
package-business-analysis/pages/cus-rec-pay-report/cus-rec-pay-report.js

@@ -11,6 +11,7 @@ const Constants = require('@/utils/Constants.js');
 const util = require('@/utils/util.js')
 const app = getApp()
 const mixins = require('@/mixins/index.js')
+const Data = require('@/utils/data.js');
 
 Page({
   mixins: [mixins],
@@ -18,6 +19,7 @@ Page({
    * 页面的初始数据
    */
   data: {
+    initSearchFlag:false,
     placeholder: "请输入客户名称/电话/地址",
     searchContent: [],
     sortMenuObject: {
@@ -63,7 +65,11 @@ Page({
    * @author : 刘尧
    */
   getData(params) {
-    return this.excute(this.data.service, this.data.service.getCusRecPayReportItem, params);
+    if(this.data.params && this.data.params.testFlag){
+      return
+    }else{
+      return this.excute(this.data.service, this.data.service.getCusRecPayReportItem, params);
+    }
   },
     /**
    * @desc : 处理接口返回数据
@@ -130,5 +136,25 @@ Page({
         res.eventChannel.emit('params', { id: cusId, formMode: Constants.formMode.edit })
       }
     })
-  }
+  },
+
+  /**
+   * @desc : 初始加载
+   * @date : 2024/7/5 15:49
+   * @author : 常皓宁
+   */
+  loadInit(){
+    console.log('ttt',this.data.params);
+    if(this.data.params && this.data.params.testFlag){
+      console.log('sasss',Data.falseCusRecPayReportData)
+      this.setData({
+        tableData:Data.falseCusRecPayReportData
+      })
+      this.handleSearchData(this.data.tableData)
+      console.log('tableData',this.data.tableData)
+    }else{
+      this.searchData();
+    }
+  },
+  
 })

+ 36 - 4
package-business-analysis/pages/profit-report/profit-report.js

@@ -4,6 +4,7 @@ const app = getApp()
 const Constants = require('../../../utils/Constants.js');
 const util = require('../../../utils/util.js')
 const mixins = require('@/mixins/index.js')
+const Data = require('@/utils/data.js');
 
 Page({
   mixins: [mixins],
@@ -11,6 +12,7 @@ Page({
    * 页面的初始数据
    */
   data: {
+    initSearchFlag:false,
     service: app.globalData['reportService'],
     // 查询条件
     searchContent: [{
@@ -28,10 +30,10 @@ Page({
   /**
    * 生命周期函数--监听页面加载
    */
-  onLoad: function (options) {
-    // 报表查询数据
-    this.getSaleProfit()
-  },
+  // onLoad: function (options) {
+  //   // 报表查询数据
+  //   this.getSaleProfit()
+  // },
 
 
   /**
@@ -97,6 +99,10 @@ Page({
   /** 查询所有报表信息 */
   /** 查询页面展示的所有 */
   getSaleProfit() {
+    //体验不走查询
+    if(this.data.params && this.data.params.testFlag){
+      return
+    }else{
     //如果是跳转过来的star
     if(this.data.item){
       this.setData({
@@ -138,6 +144,7 @@ Page({
         loading: false
       })
     })
+    }
   },
 
    /**
@@ -149,5 +156,30 @@ Page({
         util.showToast(item);
       }
     },
+
+  /**
+   * @desc : 初始加载
+   * @date : 2024/7/5 15:49
+   * @author : 常皓宁
+   */
+  loadInit(){
+    console.log('ttt',this.data.params);
+    if(this.data.params && this.data.params.testFlag){
+      let data = Data.falseProfitReportData
+      this.setData({
+        profit:data.profit,
+      })
+      console.log('sasss',data)
+      /** 图形重新渲染 */
+      setTimeout(() => {
+        this.setEcharts('echartsProfitDate', { data: data.dateProfit, labelKey: 'accDate', valueKey: 'profit', type: 1 })
+        this.setEcharts('echartsProfitOrg', { data: data.orgProfit, labelKey: 'orgName', valueKey: 'profit', type: 3 })
+        this.setEcharts('echartsProfitStaff', { data: data.staffProfit, labelKey: 'staffName', valueKey: 'profit', type: 3 })
+        this.setEcharts('echartsProfitSku', { data: data.skuProfit, labelKey: 'skuName', valueKey: 'profit', type: 3 })
+      }, 1000)
+    }else{
+      this.getSaleProfit()
+    }
+  },
 })
 

+ 40 - 15
package-inventory/pages/cost-check/cost-check.js

@@ -25,10 +25,17 @@ Page({
     choosedGoodsList: [],
     commonService: app.globalData['commonService'],
     inboundItemService: app.globalData['inboundItemService'],
+    skuIdFlag:false,
     typeList: [{
-      brandName: '全部品牌'
-    }],
-    dataDefaultSearch:  util.getCurrentMonth(),
+      brandName: '全部品牌',
+
+    },
+    {
+      brandName: '外协品',
+      skuIdFlag:true
+    }
+    ],
+    dataDefaultSearch: util.getCurrentMonth(),
     brandId: null,
     active: 0,
     // 确定按钮
@@ -46,7 +53,7 @@ Page({
     navigateBackFlag: true,
     topTitle: '1.本功能只更新选定时间内没成本价格的商品;2.核对对应单据成本',
 
-    clickFlag:false,
+    clickFlag: false,
   },
 
   /**
@@ -55,9 +62,9 @@ Page({
    * @date : 2024/1/26 12:16
    */
   dateCommit(e) {
-    if(this.data.clickFlag){
+    if (this.data.clickFlag) {
       this.setData({
-        clickFlag:false
+        clickFlag: false
       })
       return;
     }
@@ -79,8 +86,8 @@ Page({
       formData: JSON.stringify(formData),
     })
     if (!this.data.createtimeShow) {
-    // 调取查询
-    this.doSearch();
+      // 调取查询
+      this.doSearch();
     }
 
   },
@@ -92,7 +99,7 @@ Page({
   openCreatetime() {
     this.setData({
       createtimeShow: !this.data.createtimeShow,
-      clickFlag:true
+      clickFlag: true
     })
   },
   openTitle() {
@@ -204,7 +211,23 @@ Page({
     })
   },
 
-
+  /**
+     * @desc : 页面上拉触底事件的处理函数
+     * @author : 周兴
+     * @date : 2022/8/1 12:16
+     */
+    scrollToLower() {
+        if (this.data.loading || this.data.noMore) {
+            return;
+        }
+        this.setData({
+            pageInfo: {
+                pageSize: this.data.pageInfo.pageSize,
+                currentPage: this.data.pageInfo.currentPage + 1
+            }
+        })
+        this.searchData('more')
+    },
 
   /**
    * @desc : 左侧分类切换
@@ -215,7 +238,8 @@ Page({
     let index = e.detail
     let typeList = this.data.typeList
     this.setData({
-      brandId: typeList[index].brandId
+      brandId: typeList[index].brandId,
+      skuIdFlag: typeList[index].skuIdFlag
     })
     this.searchData()
   },
@@ -235,12 +259,13 @@ Page({
    */
   setSearchParams(params) {
     let formData = JSON.parse(this.data.formData)
+    params.skuIdFlag = this.data.skuIdFlag
     params.intoDateStart = formData.intoDateStart ? formData.intoDateStart : this.data.dataDefaultSearch[0]
     params.intoDateEnd = formData.intoDateEnd ? formData.intoDateEnd : this.data.dataDefaultSearch[1]
-    if(params.intoDateStart.indexOf('/') != -1){
+    if (params.intoDateStart.indexOf('/') != -1) {
       params.intoDateStart = params.intoDateStart.replace(/\//g, "-")
     }
-    if(params.intoDateEnd.indexOf('/') != -1){
+    if (params.intoDateEnd.indexOf('/') != -1) {
       params.intoDateEnd = params.intoDateEnd.replace(/\//g, "-")
     }
     params.brandId = this.data.brandId ? this.data.brandId : null
@@ -264,7 +289,7 @@ Page({
     if (tableData && tableData.length > 0) {
       tableData.forEach(res => {
         //处理具体明细
-        if (res.itemList) {
+        if (res.itemList && res.itemList.value) {
           res.itemList = JSON.parse(res.itemList.value)
         }
 
@@ -385,7 +410,7 @@ Page({
    * @author : 于继渤
    */
   onLoad() {
-    
+
     this.getGoodsBrandNoPage()
     let _this = this;
     wx.getSystemInfo({

+ 5 - 1
package-inventory/pages/ivt-detail-report/ivt-detail-report.wxml

@@ -58,8 +58,12 @@
 <!-- 仓库 -->
 <dk-muti-dropdown-item show="{{whFlag}}" content="{{form.whName}}" id='warehouse' typeName='warehouse' bind:commit='mutiSearchAll' bind:muticlose='mutiCloseAll'></dk-muti-dropdown-item>
 
-<view style="position: fixed;bottom: 230rpx;right: 30rpx;">
+<!-- <view style="position: fixed;bottom: 230rpx;right: 30rpx;">
   <view bind:tap="export" class="btn-add-class">
     <van-icon name="share" color="#FFFFFF" size="60rpx" />
   </view>
+</view> -->
+
+<view  style="position: fixed;bottom: 230rpx;right: 30rpx;z-index: 99;" bindtap="export">
+  <image src="{{imageUrl + 'excel.png'}} " class="edit-class" />
 </view>

+ 23 - 1
package-inventory/pages/ivt-sum-report/ivt-sum-report.js

@@ -9,6 +9,7 @@
  *******************************************************************************/
 const mixins = require('@/mixins/index.js')
 const Constants = require('@/utils/Constants.js');
+const Data = require('@/utils/data.js');
 const config = require('@/config/config.js')
 const app = getApp()
 Page({
@@ -17,6 +18,7 @@ Page({
    * 页面的初始数据
    */
   data: {
+    initSearchFlag:false,
     // 路由
     routeObjName: 'report',
     // 查询条件
@@ -138,7 +140,27 @@ Page({
    * @author : 姜永辉
    */
   getData(params) {
-    return this.excute(this.data.service, this.data.service.getIvtSumReport, params);
+    if(this.data.params && this.data.params.testFlag){
+      return
+    }else{
+      return this.excute(this.data.service, this.data.service.getIvtSumReport, params);
+    }
+  },
+
+  /**
+   * @desc : 初始加载
+   * @date : 2024/7/5 15:49
+   * @author : 常皓宁
+   */
+  loadInit(){
+    console.log('ttt',this.data.params);
+    if(this.data.params && this.data.params.testFlag){
+      this.setData({
+        tableData:Data.falseIvtSumReportData
+      })
+    }else{
+      this.searchData();
+    }
   },
 
   /**

+ 0 - 7
package-purchase/pages/pur-receipt/pur-receipt.js

@@ -29,13 +29,6 @@ Page({
       dropType: 'staff'
     },
 
-    {
-      code: 'rpType', key: 'valueList', title: '类型', searchType: Constants.searchType.switch,
-
-      list: [
-        { code: 1, title: '收款', value: '收付款类型-付款', checked: true },
-        { code: 2, title: '退款', value: '收付款类型-退付款' }]
-    }
     ],
 
     // 列表区(内容)

+ 350 - 44
package-purchase/pages/pur-refund/add/add.js

@@ -1,66 +1,372 @@
-// package-purchase/pages/pur-refund/add/add.js
+/*******************************************************************************
+ * Copyright(c) 2021 dongke All rights reserved. / Confidential
+ * 类的信息: 
+ *		1.程序名称:
+ *		2.功能描述:客户收款新建
+ * 编辑履历:
+ *		作者				日期					版本				修改内容
+ *		于继渤		        2022-5-25		        1.00		   	    新建
+ *******************************************************************************/
+
+const Constants = require('@/utils/Constants.js');
+import Dialog from '@/dist/dialog/dialog.js';
+const mixins = require('@/mixins/index.js')
+const app = getApp()
 Page({
+  mixins: [mixins],
+  /**
+   * 页面的初始数据
+   */
+  data: {
+    amountArr: [{
+      title: mixins.$t('payAmount'),
+      code: 'payableResidue'
+    }
+    ],
+    cardList: [{
+      name: 'main'
+    },],
+    contentObj: {
+      main: [
+
 
-    /**
-     * 页面的初始数据
-     */
-    data: {
+        {
+          code: 'staffId',
+          name: 'staffName',
+          title: mixins.$t('staffId'),
+          type: 'choose',
+          required: true,
+          urlKey: 'chooseStaff'
+        }, {
+          code: 'orgId',
+          name: 'orgName',
+          title: mixins.$t('orgId'),
+          type: 'choose',
+          required: true,
+          urlKey: 'chooseOrg'
+        },
+        {
+          code: 'sumAmtPay',
+          type: 'number',
+          negative: true, min: Constants.MIN_VALUE, maxFlag: false,
+          title: mixins.$t("paymentAmount"),
+          readonly: false,
+          required: true,
+        },
+        {
+          code: 'remarks',
+          type: 'textarea',
+          title: mixins.$t("remarks"),
+          readonly: false
+        },
+        {
+          code: 'file',
+          type: 'uploader',
+          title: mixins.$t("uploader")
+        }
+      ],
 
     },
+    objInfo: {},
+    buttonSaveList: [{
+      code: 'add',
+      title: mixins.$t("collection")
+    }],
+    contentSaveList: [{
+      code: 'need',
+      title: mixins.$t("paymentAmount"),
+      type: 'str'
+    }, {
+      code: 'amount',
+      content: 0,
+      type: 'number'
+    }],
+    routeObjName: 'supReceiptPayment',
+    accountService: app.globalData['accountService'],
+  },
+  /**
+   * @desc : 计算需收款
+   * @date : 2024/2/1 15:49
+   * @author : 于继渤
+   */
+  changeNumberBlur(e) {
+    let formData = JSON.parse(this.data.formData)
+    let contentSaveList = this.data.contentSaveList
+    contentSaveList[1].content = formData.sumAmtPay ? formData.sumAmtPay : 0
+    this.setData({
+      contentSaveList: contentSaveList
+    })
+  },
 
-    /**
-     * 生命周期函数--监听页面加载
-     */
-    onLoad(options) {
+  /**
+   * @desc   : 非空校验
+   * @author : 周兴
+   * @date   : 2024/2/20 11:46
+   */
+  validDatas(formData) {
+    let flag = true;
+    let contentObj = this.data.contentObj;
+    contentObj['main'].forEach(item => {
+      let title = item.title ? item.title : item.code
+      // 如果必须输入,就要进行判断 
+      if (item.required && formData[item.code] == null) {
+        item.errMsg = title + '不为空'
+        flag = false;
+      }
+      if (item.code == 'cusPhone') {
+        let myreg = Constants.Mobile_Phone_Number_Regular_Expression
+        if (!myreg.test(formData[item.code])) {
+          item.errMsg = title + '格式错误'
+          flag = false;
+        }
+      }
 
-    },
+    })
+    this.setData({
+      contentObj: contentObj
+    })
+    return flag;
+  },
 
-    /**
-     * 生命周期函数--监听页面初次渲染完成
-     */
-    onReady() {
+  /**
+   * @desc : 保存数据服务-跳转收款页面
+   * @date : 2024/2/1 15:49
+   * @author : 于继渤
+   */
+  open(e) {
+    let _this = this
+    let data = JSON.parse(_this.data.formData)
+    if (!_this.validDatas(data)) {
+      return
+    }
+    if (!data.sumAmtPay || data.sumAmtPay == 0) {
+      // 是否弹出询问框
+      Dialog.confirm({
+        message: '请输入金额',
+        showCancelButton: false,
+      }).then(() => {
+      }).catch(() => { })
+      return
+    }
+    wx.navigateTo({
+      url: this.data.route.selectCollectionConfirm.url,
+      events: {
+        // 回调后
+        refresh: function (data) {
+          //销售订单跳转
+          if (_this.data.formType == Constants.formMode.add) {
+            _this.setData({
+              loading: true,
+              isrefresh: true
+            })
+          } else {
+            let formData = {}
+            formData.orgId = _this.data.orgStaffInfo.orgId
+            formData.orgName = _this.data.orgStaffInfo.orgName
+            formData.staffId = _this.data.orgStaffInfo.staffId
+            formData.staffName = _this.data.orgStaffInfo.staffName
+            // 需收款
+            let contentSaveList = _this.data.contentSaveList
+            contentSaveList.forEach(item => {
+              if (item.code == 'amount') {
+                item.content = 0
+              }
+            })
+            _this.setData({
+              formData: JSON.stringify(formData),
+              contentSaveList
+            })
+          }
+        }
+      },
+      success: function (res) {
+        //设置参数
+        let item = _this.setSaveData()
+        res.eventChannel.emit('params', {
+          item: item,
+          formType: 13,
+          formReturnMode: _this.data.formReturnMode
+        })
+      }
+    })
+  },
+  onShow() {
+    if (this.data.isrefresh) {
+      this.handleNavBack()
+    }
+  },
+  /**
+   * @desc : 处理保存参数
+   * @date : 2024/2/1 15:49
+   * @author : 于继渤
+   */
+  setSaveData() {
+    let formData = JSON.parse(this.data.formData)
+    let param = formData
+    param.cusName = formData.cusName
+    param.objInfo = {}
+    param.objInfo['supPhone'] = formData.supPhone
+    param.objInfo['supName'] = formData.supName
+    param.objInfo['objectId'] = formData.supId
+    param.objInfo['returnAddress'] = formData.returnAddress
+    param.supName = formData.supName
+    param.returnAddress = formData.returnAddress
+    if (this.data.formMode !== Constants.formMode.other) {
+      param.orgId = formData.orgId ? formData.orgId : app.globalData.user.orgId
+      param.orgName = formData.orgName ? formData.orgName : app.globalData.user.orgName
+      param.staffId = formData.staffId ? formData.staffId : app.globalData.user.staffId
+      param.staffName = formData.staffName ? formData.staffName : app.globalData.user.staffName
+      param.objectId = formData.supId
+    } else {
+      //编辑退款
+      param.editFlag = true
+      this.data.dataItem.forEach(res => {
+        res.checked = true
+        res.sumAmount = Number(res.amtPay).toFixed(2)
+      })
+      param.dataItem = this.data.dataItem
+    }
+    param.annexPaths = formData.annexPaths
+    param.rpType = '收付款类型-退付款'
+    param.sumAmtPay = formData.sumAmtPay
+    param.sumAmount = formData.sumAmtPay
+    // 设定当前多业务部门业务员
+    this.setData({
+      orgStaffInfo: {
+        orgId: param.orgId ? param.orgId : app.globalData.user.orgId,
+        staffId: param.staffId ? param.staffId : app.globalData.user.staffId,
+        orgName: param.orgName,
+        staffName: param.staffName,
+      }
+    })
+    return JSON.stringify(param)
+  },
 
-    },
+  /**
+   * @desc   : 选择回调
+   * @author : 于继渤
+   * @date   : 2024/1/26 11:46
+   */
+  chooseData(e) {
+    let item = e.detail.data
+    let code = e.detail.code
+    console.log('chooseData', e)
+    let formData = JSON.parse(this.data.formData)
+    if (code == "staffId") { //员工
+      formData.staffId = item.data.id
+      formData.staffName = item.data.name
+      formData.orgId = item.data.orgId
+      formData.orgName = item.data.orgName
+    }
+    if (code == "orgId") { //部门
+      formData.orgId = item.data.id
+      formData.orgName = item.data.name
+    }
 
-    /**
-     * 生命周期函数--监听页面显示
-     */
-    onShow() {
+    this.setData({
+      formData: JSON.stringify(formData)
+    })
 
-    },
+  },
 
-    /**
-     * 生命周期函数--监听页面隐藏
-     */
-    onHide() {
 
-    },
 
-    /**
-     * 生命周期函数--监听页面卸载
-     */
-    onUnload() {
 
-    },
+  chooseObjTypeData(e) {
+    console.log('chooseObjTypeData', e.detail.data.objInfo)
+    let objInfo = e.detail.data.objInfo
+    let formData = JSON.parse(this.data.formData)
+    formData.contactName = objInfo.contactName
+    formData.contactPhone = objInfo.contactPhone
+    formData.returnAddress = objInfo.returnAddress
+    formData.supName = objInfo.supName
+    formData.supId = objInfo.supId
+    this.setData({
+      formData: JSON.stringify(formData)
+    })
+  },
 
-    /**
-     * 页面相关事件处理函数--监听用户下拉动作
-     */
-    onPullDownRefresh() {
+  /**
+   * @desc : 编辑用
+   * @date : 2024/2/1 15:49
+   * @author : 于继渤
+   */
+  getRpForUpdate(id) {
+    return this.excute(this.data.service, this.data.service.getRpForUpdate + '/' + id, {}).then(res => {
+      if (res.data.code == 200) {
+        let data = res.data.data.data
+        data.objInfo = {
+          supId: data.supId,
+          supName: data.supName,
+          supPhone: data.supPhone,
+          supCode: data.supCode,
+          payableResidue: data.payableResidue
+        }
 
-    },
+        
 
-    /**
-     * 页面上拉触底事件的处理函数
-     */
-    onReachBottom() {
+        this.setData({
+          formData: JSON.stringify(data),
+          dataItem: res.data.data.dataItem
+        })
+        // 获取当前客户的账款信息
+        this.getAccount(data.objectId)
+        this.changeNumberBlur()
+      }
+    });
+  },
 
-    },
+  /**
+  * @desc : 获取当前客户的账款信息
+  * @date : 2024/2/1 15:49
+  * @author : 姜永辉
+  */
+  getAccount(id) {
+    return this.excute(this.data.accountService, this.data.accountService.getAccount + id, {}).then(res => {
+      if (res.data.code == 200) {
+        let formData = JSON.parse(this.data.formData)
+        if (res.data.data) {
+          let data = res.data.data
+          if (data != null) {
+            data.receivableResidue = data.receivableResidue ? Number(data.receivableResidue) : 0
+            data.receiptResidue = data.receiptResidue ? Number(data.receiptResidue) : 0
+            formData.cusDebt = Number(data.receivableResidue - data.receiptResidue) > 0 ? Number(data.receivableResidue - data.receiptResidue) : 0
+
+          } else {
+            formData.cusDebt = 0
+          }
+        } else {
+          formData.cusDebt = 0
+        }
+        this.setData({
+          formData: JSON.stringify(formData)
+        })
+      }
+    });
+  },
 
-    /**
-     * 用户点击右上角分享
-     */
-    onShareAppMessage() {
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  loadInit() {
+    let formData = JSON.parse(this.data.formData)
+    formData.staffId = app.globalData.user.staffId
+    formData.staffName = app.globalData.user.staffName
+    formData.orgId = app.globalData.user.orgId
+    formData.orgName = app.globalData.user.orgName
 
+    //编辑收款
+    if (this.data.formMode == Constants.formMode.other) {
+      wx.setNavigationBarTitle({
+        title: '编辑供应商退付款',
+      })
+      this.getRpForUpdate(this.data.id)
     }
+    this.setData({
+      formData: JSON.stringify(formData)
+    })
+
+  },
+
+
 })

+ 2 - 1
package-purchase/pages/pur-refund/add/add.json

@@ -1,3 +1,4 @@
 {
-    "usingComponents": {}
+  "usingComponents": {},
+  "navigationBarTitleText":"新建供应商退付款"
 }

+ 14 - 2
package-purchase/pages/pur-refund/add/add.wxml

@@ -1,2 +1,14 @@
-<!--package-purchase/pages/pur-refund/add/add.wxml-->
-<text>package-purchase/pages/pur-refund/add/add.wxml</text>
+<van-dialog id="van-dialog" />
+<loading wx:if="{{loading}}"></loading>
+<!-- 添加模版 -->
+<!-- <import src="/utils/template.wxml" />
+<template is="myTemplate" /> -->
+<dk-form-bill type="sale" id="{{formName}}" routeObjName="{{routeObjName}}" cardList="{{cardList}}" titleCol="skuCode" descCol="skuModel" priceCol="priceStandard" quantityCol="itemQty" sumAmountCol="sumAmount"  amountTitle="应付金额" amountCol="payableResidue"
+objIdCol="supId" objTitle="supName"   objCol="supId" objLabel="{{$t['supName']}}" objType="supplier" cardList="{{cardList}}" discountStandardCol="saleDiscount" contentObj="{{contentObj}}" model:value="{{formData}}" popContent="{{popContent}}" saleStaffAndOrgFlag="{{false}}" bind:chooseData="chooseData" popType="sale" staff="staff" org="org" bind:changeNumberBlur="changeNumberBlur" bind:chooseObjTypeData="chooseObjTypeData" bind:clickAttach="clickAttach" bind:uploadSucess="uploadSucess" bind:uploadError="uploadError"
+saleStaffAndOrgFlag="{{false}}" 
+>
+</dk-form-bill>
+
+<view style="height: 200rpx;"></view>
+
+<dk-save-button model:value="{{btnFormData}}" btnAutoWidthFlag="{{true}}" btnRightFlag="{{true}}" buttonList="{{buttonSaveList}}" contentList="{{contentSaveList}}" bind:open="open"></dk-save-button>

+ 315 - 43
package-purchase/pages/pur-refund/detail/detail.js

@@ -1,66 +1,338 @@
-// package-purchase/pages/pur-refund/detail/detail.js
-Page({
+/*******************************************************************************
+ * Copyright(c) 2021 dongke All rights reserved. / Confidential
+ * 类的信息: 
+ *		1.程序名称:
+ *		2.功能描述:客户收款新建
+ * 编辑履历:
+ *		作者				日期					版本				修改内容
+ *		于继渤		        2022-5-25		        1.00		   	    新建
+ *******************************************************************************/
 
-    /**
-     * 页面的初始数据
-     */
-    data: {
+const Constants = require('@/utils/Constants.js');
+import Dialog from '@/dist/dialog/dialog.js';
+const mixins = require('@/mixins/index.js')
+const app = getApp()
+Page({
+  mixins: [mixins],
+  /**
+   * 页面的初始数据
+   */
+  data: {
+    // 预存金额 预收金额
+    amountArr: [{
+      title: mixins.$t('receivableAmount'),
+      code: 'receivableResidue'
+    },
+    {
+      title: mixins.$t('advancePaymentAmount'),
+      code: 'receiptResidue'
+    }
+    ],
+    cardList: [{
+      name: 'main'
+    },],
+    contentObj: {
+      main: [
+        {
+          code: 'staffId',
+          name: 'staffName',
+          title: mixins.$t('staffId'),
+          type: 'choose',
+          required: false,
+          urlKey: 'chooseStaff'
+        }, {
+          code: 'orgId',
+          name: 'orgName',
+          title: mixins.$t('orgId'),
+          type: 'choose',
+          required: false,
+          urlKey: 'chooseOrg'
+        },
+        {
+          code: 'sumAmtPay',
+          type: 'number',
+          negative: true, min: Constants.MIN_VALUE, maxFlag: false,
+          title: mixins.$t("paymentAmount"),
+          readonly: true,
+          required: false,
+        },
+        {
+          code: 'remarks',
+          type: 'textarea',
+          title: mixins.$t("remarks"),
+          readonly: true
+        },
+        {
+          code: 'file',
+          type: 'uploader',
+          title: mixins.$t("uploader"),
+          readonly: true
+        }
+      ],
 
     },
+    objInfo: {},
+    buttonSaveList: [{ code: 'add', title: mixins.$t("receiptDetail")}],
+    recPayItem:[],
+    refreshByAdd:true,
+    routeObjName: 'supReceiptPayment',
+    accountService: app.globalData['accountService'],
+  },
 
-    /**
-     * 生命周期函数--监听页面加载
-     */
-    onLoad(options) {
+  /**
+   * @desc : 跳转明细
+   * @date : 2024/2/1 15:49
+   * @author : 于继渤
+   */
+  toDetail(e) {
+    let url = this.data.route.editRefund.url
+    let _this = this;
+    wx.navigateTo({
+      url: url,
+      events: {
+        // 保存成功后刷新页面
+        refresh: function (data) {
+          // 刷新一览界面
+          _this.searchData();
+        }
+      },
+      success: function (res) {
+        let data = {
+          id: _this.data.id,
+          formMode: Constants.formMode.other,
+          formReturnMode: _this.data.formReturnMode ? _this.data.formReturnMode : 'pur-refund-detail'
+        }
+        res.eventChannel.emit('params', data);
+      }
+    })
+  },
+  /**
+  * @desc : 保存数据服务-跳转收款页面
+  * @date : 2024/2/1 15:49
+  * @author : 于继渤
+  */
+  open(e) {
+    let _this = this
+    wx.navigateTo({
+      url: this.data.route.selectCollectionConfirm.url,
+      events: {
+        // 回调后
+        bindData: function (data) {
+          // 保存成功后 回调
+          wx.navigateBack({
+            data: 1
+          })
+        }
+      },
+      success: function (res) {
+        //设置参数
+        let item = _this.setSaveData()
+        res.eventChannel.emit('params', { item: item, formType: 3 })
+      }
+    })
+  },
 
-    },
+  /**
+    * @desc : 处理保存参数
+    * @date : 2024/2/1 15:49
+    * @author : 于继渤
+    */
+  setSaveData() {
+    let formData = JSON.parse(this.data.formData)
+    let param = formData
+    param.cusName = formData.cusName
+    param.objInfo = {}
+    param.objInfo['cusPhone'] = formData.cusPhone
+    param.objInfo['cusName'] = formData.cusName
+    param.objInfo['objectId'] = formData.cusId
+    param.objInfo['addressFull'] = formData.addressFull
+    param.cusName = formData.cusName
+    param.cusPhone = formData.cusPhone
 
-    /**
-     * 生命周期函数--监听页面初次渲染完成
-     */
-    onReady() {
+    param.addressFull = formData.addressFull
 
-    },
+    if (this.data.formMode !== Constants.formMode.other) {
+      param.orgId = app.globalData.user.orgId
+      param.orgName = app.globalData.user.orgName
+      param.staffId = app.globalData.user.staffId
+      param.staffName = app.globalData.user.staffName
+      param.objectId = formData.cusId
+    } else {
+      //编辑退款
+      param.editFlag = true
+      this.data.dataItem.forEach(res => {
+        res.checked = true
+        res.sumAmount = Number(res.amtRec).toFixed(2)
+      })
+      param.dataItem = this.data.dataItem
+    }
+    param.annexPaths = formData.annexPaths
+    param.rpType = '收付款类型-收款'
+    param.sumAmtRec = formData.sumAmtRec
+    param.sumAmount = formData.sumAmtRec
 
-    /**
-     * 生命周期函数--监听页面显示
-     */
-    onShow() {
+    return JSON.stringify(param)
+  },
 
-    },
+  /**
+    * @desc   : 选择回调
+    * @author : 于继渤
+    * @date   : 2024/1/26 11:46
+    */
+  chooseData(e) {
+    let item = e.detail.data
+    let code = e.detail.code
+    let formData = JSON.parse(this.data.formData)
+    //设置客户信息
+    if (code == 'cusName') {
+      formData.cusCode = item.cusCode
+      formData.cusId = item.cusId
+      formData.cusName = item.cusName
+      formData.cusPhone = item.cusPhone
+      formData.cusFromName = item.cusFromName
+      formData.cusFrom = item.cusFrom
+      //处理地址
+      formData.address = {
+        address: item.addressFull,
+        addressFull: item.addressFull,
+        addressArea: item.addressArea,
+        addressGcj02: item.addressGcj02,
+        addressName: item.addressName,
+      }
+      formData.addressArea = item.addressArea
+      formData.addressFull = item.addressFull
+      formData.addressGcj02 = item.addressGcj02
+      formData.addressName = item.addressName
+      formData.addressNo = item.addressNo
+      //订单销售渠道 ,默认取的客户的渠道
+      formData.salesChannel = item.channelId
+      formData.channelId = item.channelId
+      formData.channelName = item.channelName
+      formData.contactPhone = item.contactPhone
+      formData.contactPhone = item.contactPhone
+    }
+    ///设置主从业务员
+    if (code == 'staff') {
+      formData.staff = item.staffItem
+      formData['staffId'] = item.staffMain.staffId
+      formData['staffName'] = item.staffMain.staffName
+      formData['staffList'] = item.staffList
+    }
+    ///设置主从业务部门
+    if (code == 'org') {
+      formData.org = item.orgItem
+      formData['orgId'] = item.orgMain.orgId
+      formData['orgName'] = item.orgMain.orgName
+      formData['orgList'] = item.orgList
+    }
+    this.setData({
+      formData: JSON.stringify(formData)
+    })
 
-    /**
-     * 生命周期函数--监听页面隐藏
-     */
-    onHide() {
+  },
 
-    },
 
-    /**
-     * 生命周期函数--监听页面卸载
-     */
-    onUnload() {
 
-    },
 
-    /**
-     * 页面相关事件处理函数--监听用户下拉动作
+  /**
+     * @desc : 编辑用
+     * @date : 2024/2/1 15:49
+     * @author : 于继渤
      */
-    onPullDownRefresh() {
+  getRpForUpdate(id) {
+    return this.excute(this.data.service, this.data.service.getRpForUpdate + '/' + id, {}).then(res => {
+      if (res.data.code == 200) {
+        let data = res.data.data.data
+        data.objInfo = {
+          supId: data.supId,
+          supName: data.supName,
+          payableResidue: data.payableResidue,
+          contactPhone: data.contactPhone,
+          contactName: data.contactName
+        }
+      
+        this.selectRpInfoById(data.rpId)
+        this.setData({
+          formData: JSON.stringify(data),
+          dataItem: res.data.data.dataItem
+        })
 
-    },
+      }
+    });
+  },
 
-    /**
-     * 页面上拉触底事件的处理函数
+  /**
+     * @desc : 查询收款明细
+     * @date : 2024/2/1 15:49
+     * @author : 于继渤
      */
-    onReachBottom() {
+  selectRpInfoById(rpId){
+    return this.excute(this.data.service, this.data.service.selectRpInfoById + '/' + rpId, {}).then(res => {
+      if (res.data.code == 200) {
+        this.setData({
+          recPayItem:res.data.data.recPayItem
+        })
+        
+      }
+    });
+  },
+  /**
+  * 生命周期函数--监听页面加载
+  */
+  loadInit() {
+    let pages = getCurrentPages();
+    let prevPage = pages[pages.length - 2]; //上三页
+    prevPage.setData({
+      refreshByAdd: true
+    })
+    let formData = JSON.parse(this.data.formData)
 
-    },
+    //编辑收款
+    if (this.data.formMode == Constants.formMode.other) {
+      this.getRpForUpdate(this.data.id)
+    }
+    //销售订单跳转
+    if(this.data.formType == Constants.formMode.add){
+      formData.cusCode = this.data.item.cusCode
+      formData.cusId = this.data.item.cusId
+      formData.cusName = this.data.item.cusName
+      formData.cusPhone = this.data.item.cusPhone
+      formData.cusFromName = this.data.item.cusFromName
+      formData.cusFrom = this.data.item.cusFrom
+      //处理地址
+      formData.address = {
+        address: this.data.item.addressFull,
+        addressFull: this.data.item.addressFull,
+        addressArea: this.data.item.addressArea,
+        addressGcj02: this.data.item.addressGcj02,
+        addressName: this.data.item.addressName,
+      }
+      formData.addressArea = this.data.item.addressArea
+      formData.addressFull = this.data.item.addressFull
+      formData.addressGcj02 = this.data.item.addressGcj02
+      formData.addressName = this.data.item.addressName
+      formData.addressNo = this.data.item.addressNo
+      //订单销售渠道 ,默认取的客户的渠道
+      formData.salesChannel = this.data.item.channelId
+      formData.channelId = this.data.item.channelId
+      formData.channelName = this.data.item.channelName
+      formData.contactPhone = this.data.item.contactPhone
+      formData.contactPhone = this.data.item.contactPhone
+    }
 
-    /**
-     * 用户点击右上角分享
-     */
-    onShareAppMessage() {
+    this.setData({
+      formData: JSON.stringify(formData)
+    })
 
+  },
+  /**
+     * @desc : 自定义查询
+     * @date : 2024/2/1 15:49
+     * @author : 于继渤
+     */
+  customQuery(){
+    if (this.data.formMode == Constants.formMode.other) {
+      this.getRpForUpdate(this.data.id)
     }
+  },
 })

+ 2 - 1
package-purchase/pages/pur-refund/detail/detail.json

@@ -1,3 +1,4 @@
 {
-    "usingComponents": {}
+  "usingComponents": {},
+  "navigationBarTitleText":"供应商退付款详情"
 }

+ 71 - 2
package-purchase/pages/pur-refund/detail/detail.wxml

@@ -1,2 +1,71 @@
-<!--package-purchase/pages/pur-refund/detail/detail.wxml-->
-<text>package-purchase/pages/pur-refund/detail/detail.wxml</text>
+<van-dialog id="van-dialog" />
+<loading wx:if="{{loading}}"></loading>
+<!-- 添加模版 -->
+<!-- <import src="/utils/template.wxml" />
+<template is="myTemplate" /> -->
+
+<dk-form-bill type="sale" id="{{formName}}" routeObjName="{{routeObjName}}" cardList="{{cardList}}" titleCol="skuCode" descCol="skuModel" priceCol="priceStandard" quantityCol="itemQty" sumAmountCol="sumAmount"    amountTitle="应付金额" amountCol="payableResidue"
+objIdCol="supId" objTitle="supName"   objCol="supId" objLabel="{{$t['supName']}}" objType="supplier" cardList="{{cardList}}" discountStandardCol="saleDiscount" contentObj="{{contentObj}}" model:value="{{formData}}" popContent="{{popContent}}" saleStaffAndOrgFlag="{{false}}" bind:chooseData="chooseData" popType="sale" staff="staff" org="org" bind:changeNumberBlur="changeNumberBlur" bind:chooseObjTypeData="chooseObjTypeData" readonly="{{true}}" 
+saleStaffAndOrgFlag="{{false}}" 
+>
+</dk-form-bill>
+
+<view class="dk-card-outer-class">
+  <view class="dk-card-class">
+    <view class="item-class">
+
+      <view class="item-title-class">收款详情</view>
+    </view>
+    <view wx:for="{{recPayItem}}" wx:for-item="item" data-item="{{item}}" wx:for-index="cardIndex">
+    <view style="margin-bottom: 10px;">
+      <view class="table-content-row">
+        <view style="display: flex;">
+          <view class="table-content-row-font">
+            <dk-text fontSize="14px" color="#95A8CB" fontWeight="nomal" value="账户名称" copyValue="{{item.macName}}"></dk-text>
+          </view>
+          <view class="table-content-class">
+            {{item.macName}}
+          </view>
+        </view>
+      </view>
+
+      <view class="table-content-row">
+        <view style="display: flex;">
+          <view class="table-content-row-font">
+            <dk-text fontSize="14px" color="#95A8CB" fontWeight="nomal" value="收款金额" copyValue="{{item.amtRec}}"></dk-text>
+          </view>
+          <view class="table-content-class" >
+            <!-- {{item.amtRec}} -->
+            <dk-cell height="40rpx" contentRight="{{false}}" left="0rpx" center="left" fontSize="14" contentColor="#FF7B1A" spaceWidth="0rpx" content="{{item.amtPay}}"></dk-cell>
+          </view>
+        </view>
+      </view>
+
+      <view class="table-content-row">
+        <view style="display: flex;">
+          <view class="table-content-row-font">
+            <dk-text fontSize="14px" color="#95A8CB" fontWeight="nomal" value="备注" copyValue="{{item.remarks}}"></dk-text>
+          </view>
+          <view class="table-content-class">
+            {{item.remarks ? item.remarks : ''}}
+          </view>
+        </view>
+      </view>
+    </view>
+     
+    </view>
+  </view>
+
+
+
+</view>
+
+<!-- <view style="position: fixed;bottom: 230rpx;right: 30rpx;">
+  <view bind:tap="toDetail" class="btn-add-class">
+    <van-icon name="edit" color="#FFFFFF" size="60rpx" />
+  </view>
+</view> -->
+<!-- 编辑  -->
+<view style="position: fixed;bottom: 230rpx;right: 30rpx;z-index: 99;" bindtap="toDetail">
+  <image src="{{imageUrl + 'edit.png'}} " class="edit-class"  />
+</view>

+ 42 - 1
package-purchase/pages/pur-refund/detail/detail.wxss

@@ -1 +1,42 @@
-/* package-purchase/pages/pur-refund/detail/detail.wxss */
+.item-class {
+  display: flex;
+  font-size: 30rpx;
+  padding: 20rpx;
+  justify-content: space-between;
+  align-items: center;
+}
+
+.item-title-class {
+  margin-left: 14rpx;
+  font-size: 15px;
+  color: #1B365D;
+  font-weight: 600;
+  width: 26%;
+}
+/**card的外部样式*/
+.dk-card-outer-class {
+  margin: 10px 32rpx 10px 32rpx;
+  margin-top: 10px;
+  border-radius: 15rpx;
+  /* box-shadow: 2px 2px 5px #e5e5e6; */
+}
+
+/**card的样式*/
+.dk-card-class {
+  background: #FFFFFF;
+  border-radius: 16rpx;
+  padding: 5rpx;
+  margin-bottom: 20rpx;
+  box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.08);
+  /* box-shadow: 0px -6px 20px 0px rgba(0, 0, 0, 0.08); */
+
+}
+.btn-add-class {
+  background: #8091A9;
+  border-radius: 50%;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  padding: 20rpx;
+  box-shadow: 0px 17px 22px 0px #1B365D33;
+}

+ 128 - 58
package-purchase/pages/pur-refund/pur-refund.js

@@ -1,66 +1,136 @@
-// package-purchase/pages/pur-refund/pur-refund.js
+/*******************************************************************************
+ * Copyright(c) 2022 dongke All rights reserved. / Confidential
+ * 类的信息:
+ *		1.程序名称:选品
+ * 编辑履历:
+ *		作者				日期					版本				修改内容
+ *		于继渤		 2024-1-23			1.00		    选品
+ *******************************************************************************/
+const Constants = require('@/utils/Constants.js');
+const mixins = require('@/mixins/index.js')
+import Dialog from '@/dist/dialog/dialog.js';
 Page({
-
-    /**
-     * 页面的初始数据
-     */
-    data: {
-
+  mixins: [mixins],
+  /**
+   * 页面的初始数据
+   */
+  data: {
+    navigationBarTitle: '',
+    primaryKey: 'rpId',
+    // 查询条件
+    searchContent: [{
+      code: 'createtime',
+      title: '近30天',
+      defaultValue: 5,
+      searchType: Constants.searchType.date
+    }, {
+      code: 'staff',
+      title: '业务员',
+      dropType: 'staff'
     },
 
-    /**
-     * 生命周期函数--监听页面加载
-     */
-    onLoad(options) {
-
-    },
+    
+    ],
 
-    /**
-     * 生命周期函数--监听页面初次渲染完成
-     */
-    onReady() {
+    // 列表区(内容)
+    contentList: [
+      { name: 'rpNo', title: '付款单号' },
+      { name: [{ name: 'orgName', title: '' }, { name: 'staffName', title: '业务员' }], title: '门店/业务员' },
+      { name: 'accDate', title: '付款时间' },
 
+    ],
+    // 列表区(脚部金额)
+    footerAmount: {
+      name: 'sumAmtPay',
+      title: mixins.$t('totalAmount')
     },
-
+    footerInfo: [{ name: 'sumAmtPay', }],
+    buttonSaveList: [],
+    // 路由
+    routeObjName: 'supReceiptPayment',
+    refreshByAdd: false,
+    // 弹出按钮
+    buttonList: [
+      { name: 'invalid', title: mixins.$t("invaidOrder") },//作废 
+      { name: 'printedBill', title: mixins.$t("printedBill") }, //打印
+    ],
+  },
+ /**
+   * @desc :   作废
+   * @date : 2024年3月8日
+   * @author : 于继渤
+   */
+  invalid(e) {
+    let that = this
+    // 是否弹出询问框
+    Dialog.confirm({
+      message: mixins.$t('isInvalidDetail'),
+    }).then(() => {
+      that.setData({
+        loading:true
+      })
+      return this.excute(this.data.service, this.data.service.invalidSup + '/' + e.rpId, {}).then(res => {
+        if (res.data.code == 200) {
+          that.searchData()
+          wx.showToast({
+            title: mixins.$t('invalidSuccessfully'),
+            image: '/static/image/success.png',
+            duration: 1000
+          })
+        }
+      })
+    }).catch(() => {
+    })
+  },
+  /**
+   * @desc : 设置查询参数
+   * @date : 2024/2/1 15:49
+   * @author : 于继渤
+   */
+  setSearchParams(params) {
+    params.objectId = this.data.id ? this.data.id : null
+    params.rpTypeList = ['收付款类型-退付款']
+    params.flgValidList = [true]
+    return params;
+  },
+  /**
+   * @desc : 加载数据
+   * @author : 于继渤
+   * @date : 2024/1/23 9:16
+   */
+  getData(params) {
+    return this.excute(this.data.service, this.data.service.getRpSupList, params);
+  },
+  loadInit() {
+    this.setData({
+      navigationBarTitle: '供应商退款',
+      buttonSaveList: [{ code: 'add', title: mixins.$t("add"), customUrl: this.data.route.refund.url }]
+    })
+  },
     /**
-     * 生命周期函数--监听页面显示
-     */
-    onShow() {
-
-    },
-
-    /**
-     * 生命周期函数--监听页面隐藏
-     */
-    onHide() {
-
-    },
-
-    /**
-     * 生命周期函数--监听页面卸载
-     */
-    onUnload() {
-
-    },
-
-    /**
-     * 页面相关事件处理函数--监听用户下拉动作
-     */
-    onPullDownRefresh() {
-
-    },
-
-    /**
-     * 页面上拉触底事件的处理函数
-     */
-    onReachBottom() {
-
-    },
-
-    /**
-     * 用户点击右上角分享
-     */
-    onShareAppMessage() {
-
-    }
+   * @desc : 跳转明细
+   * @date : 2024/2/1 15:49
+   * @author : 于继渤
+   */
+  toDetail(e) {
+    let url = this.data.route.detailRefund.url
+    let _this = this;
+    wx.navigateTo({
+      url: url,
+      events: {
+        // 保存成功后刷新页面
+        refresh: function (data) {
+          // 刷新一览界面
+          _this.searchData();
+        }
+      },
+      success: function (res) {
+        let data = {
+          id: e.detail.item.rpId,
+          formMode: Constants.formMode.other
+        }
+        res.eventChannel.emit('params', data);
+      }
+    })
+  },
 })

+ 18 - 2
package-purchase/pages/pur-refund/pur-refund.wxml

@@ -1,2 +1,18 @@
-<!--package-purchase/pages/pur-refund/pur-refund.wxml-->
-<text>package-purchase/pages/pur-refund/pur-refund.wxml</text>
+<!-- 前台导入wxmlUtil.wxs -->
+<wxs src='/utils/wxmlUtil.wxs' module="wxmlUtil"></wxs>
+<loading wx:if="{{loading}}" loadingName="{{$t['loading']}}" backgroundColor="#f2f2f2;" opacity="0.8"></loading>
+<van-sticky scroll-top="0">
+  <!-- 自定义导航 -->
+  <dk-navbar titleFontColor="#000000" navbarTitle="{{navigationBarTitle}}" bind:clickBack="handleNavBack" operateShow="{{ guideUrl ? true: false}}" operateUrl="{{guideUrl}}" bind:getNavbarHeight="getNavbarHeight"/>
+  <!-- 查询条件 -->
+  <dk-dropdown-menu model:value="{{searchForm}}" menuList="{{searchContent}}" pullMenuList="{{pullMenuList}}" navBarHeight="{{navBarHeight}}" bind:search="searchData" searchTextPlaceholder="{{wxmlUtil.setSearchPlaceholder($t,['customerName','orderNo','telephone','adddress'])}}">
+  </dk-dropdown-menu>
+</van-sticky>
+
+<!-- 列表区 -->
+<dk-list list="{{tableData}}" flgSubFormatDate="{{true}}" titleCorner="channelName" title="supName" status="rpTypeName"  content="{{contentList}}" collectCol="collectStatus" collectCol="sumAmtPay" contentObj="{{contentObj}}" contentCol="" footerAmount="{{footerAmount}}" footerInfo="{{footerInfo}}" bind:toDetail="toDetail" bind:toTitle="toTitle" bind:toStatus="toStatus" bind:toPoint="toPoint"  collectName="收款"   routeObjName="{{routeObjName}}" buttonList="{{buttonList}}" bind:open="open"></dk-list>
+<view style="height: 200rpx;"></view>
+
+<van-dialog id="van-dialog" />  
+<!-- 新建按钮 -->
+<dk-save-button model:value="{{btnFormData}}" btnAutoWidthFlag="{{true}}" btnRightFlag="{{true}}" buttonList="{{buttonSaveList}}" contentList="{{contentSaveList}}" bind:open="open"></dk-save-button>

+ 14 - 15
package-purchase/pages/purchase-order/purchase-order-detail/purchase-order-detail.wxml

@@ -65,29 +65,28 @@
   <!--对象-->
   <view class="dk-card-class">
     <view style="display: flex;padding:10rpx;">
-    <!-- 订单数量 -->
+    <!-- 订单金额 -->
       <view style="background-color:#F4F9FF;width:50%;padding:10rpx;border-radius: 16rpx;">
-        <view style="font-size:13px;text-align: center;margin-top: 10rpx;">{{$t['orderQty']}}</view>
-        <dk-cell left="0rpx" center="center" fontSize="13" contentFontSize="18" contentColor="#1B365D" spaceWidth="0" contentFontWeight="700" content="{{item.sumQuantity}}"percentSignFlag="{{true}}"amount="{{false}}"></dk-cell>
+        <view style="font-size:13px;text-align: center;margin-top: 10rpx;">{{$t['orderAmount']}}</view>
+        <dk-cell left="0rpx" center="center" fontSize="13" contentFontSize="18" contentColor="#1B365D" spaceWidth="0" contentFontWeight="700" content="{{item.sumAmount}}"percentSignFlag="{{true}}"amount="{{true}}"></dk-cell>
       </view>
-      <!-- 入库数量 -->
-      <view style="background-color:#F4F9FF;width: 50%;padding:10rpx;border-radius: 16rpx;margin-left: 20rpx;"data-quantity="{{item.sumWarehousing ? item.sumWarehousing: 0}}" data-type="inventoryQty" data-item="{{item}}" bind:tap="toJumpPage">
-        <view style="font-size:13px;text-align: center;margin-top: 10rpx;">{{$t['inventoryQty']}}</view>
-        <dk-cell left="0rpx" center="center" fontSize="15" contentFontSize="18" contentColor="#1B365D" spaceWidth="0" contentFontWeight="700" content="{{item.sumWarehousing ? item.sumWarehousing: 0}}"percentSignFlag="{{true}}"amount="{{false}}"></dk-cell>
+      <!-- 退货金额 -->
+      <view style="background-color:#F4F9FF;width: 50%;padding:10rpx;border-radius: 16rpx;margin-left: 20rpx;"data-quantity="{{item.returnAmt ? item.returnAmt: 0}}" data-type="inventoryQty" data-item="{{item}}" bind:tap="toJumpPage">
+        <view style="font-size:13px;text-align: center;margin-top: 10rpx;">{{$t['returnAmt']}}</view>
+        <dk-cell left="0rpx" center="center" fontSize="15" contentFontSize="18" contentColor="#1B365D" spaceWidth="0" contentFontWeight="700" content="{{item.returnAmt ? item.returnAmt: 0}}"percentSignFlag="{{true}}"amount="{{true}}"></dk-cell>
       </view>
     </view>
 
 
     <view style="display: flex;padding:10rpx;">
-    <!-- 退货数量 -->
+    <!-- 合计 -->
       <view style="background-color:#F4F9FF;width:50%;padding:10rpx;border-radius: 16rpx;" data-quantity="{{item.returnQty ? item.returnQty: 0}}" data-type="returnQty" data-item="{{item}}" bind:tap="toJumpPage">
-        <view style="font-size:13px;text-align: center;margin-top: 10rpx;">{{$t['returnQty']}}</view>
-        <dk-cell left="0rpx" center="center" fontSize="13" contentFontSize="18" contentColor="#1B365D" spaceWidth="0" contentFontWeight="700" content="{{item.returnQty ? item.returnQty  : 0}}"percentSignFlag="{{true}}"amount="{{false}}"></dk-cell>
+        <view style="font-size:13px;text-align: center;margin-top: 10rpx;">{{$t['totalAmount']}}</view>
+        <dk-cell left="0rpx" center="center" fontSize="13" contentFontSize="18" contentColor="#1B365D" spaceWidth="0" contentFontWeight="700" content="{{item.sumAmount - item.returnAmt   }}"percentSignFlag="{{true}}"amount="{{true}}"></dk-cell>
       </view>
-      <!-- 退货数量 -->
-      <view style="background-color:#F4F9FF;width: 50%;padding:10rpx;border-radius: 16rpx;margin-left: 20rpx;"data-quantity="{{item.inboundReturnQty ? item.inboundReturnQty: 0}}" data-type="returnAndOutbound" data-item="{{item}}" bind:tap="toJumpPage">
-        <view style="font-size:13px;text-align: center;margin-top: 10rpx;">{{$t['returnAndOutbound']}}</view>
-        <dk-cell left="0rpx" center="center" fontSize="15" contentFontSize="18" contentColor="#1B365D" spaceWidth="0" contentFontWeight="700" content="{{item.inboundReturnQty ? item.inboundReturnQty : 0}}"percentSignFlag="{{true}}"amount="{{false}}"></dk-cell>
+      <!-- 空格 -->
+      <view style="background-color:#ffffff;width: 50%;padding:10rpx;border-radius: 16rpx;margin-left: 20rpx;"data-quantity="{{item.inboundReturnQty ? item.inboundReturnQty: 0}}" data-type="returnAndOutbound" data-item="{{item}}"  >
+        
       </view>
     </view>
   </view>
@@ -100,7 +99,7 @@
 <view style="height: 200rpx;"></view>
 
 <!-- 新建按钮 -->
-<dk-save-button btnAutoWidthFlag="{{false}}" btnRightFlag="{{true}}" buttonList="{{buttonList}}" contentList="{{contentList}}" bind:open="open"></dk-save-button>
+<!-- <dk-save-button btnAutoWidthFlag="{{false}}" btnRightFlag="{{true}}" buttonList="{{buttonList}}" contentList="{{contentList}}" bind:open="open"></dk-save-button> -->
 
 
 <!-- 底部编辑 以后要做 todo......... -->

+ 55 - 32
package-purchase/pages/purchase-return/add/add.js

@@ -36,14 +36,17 @@ Page({
         { code: 'address', type: 'address', title: mixins.$t('returnAddress'), required: true },
         { code: 'intoDate', type: 'date', required: false, title: mixins.$t("returnDate"), required: false },
       ],
-      relation: [{
-        code: 'fromNo',
-        name: 'fromNo',
-        type: 'choose',
-        controlChooseFlag: true,
-        title: mixins.$t("sourceOrder"),//'关联源单'
-        urlKey: 'selectSourcePurchaseOrder'
-      }],
+      relation:
+        [
+          // {
+          //   code: 'fromNo',
+          //   name: 'fromNo',
+          //   type: 'choose',
+          //   controlChooseFlag: true,
+          //   title: mixins.$t("sourceOrder"),//'关联源单'
+          //   urlKey: 'selectSourcePurchaseOrder'
+          // }
+        ],
       other: [{
         code: 'remarks',
         type: 'textarea',
@@ -211,19 +214,19 @@ Page({
      * @author : 于继渤
      */
   setGoods(e) {
-    let contentObj = this.data.contentObj
-    contentObj.relation = [{
-      code: 'fromNo',
-      name: 'fromNo',
-      type: 'choose',
-      controlChooseFlag: true,
-      readonlyReturn: true,
-      title: mixins.$t("sourceOrder"),//'关联源单'
-      urlKey: 'selectSourcePurchaseOrder'
-    }]
-    this.setData({
-      contentObj: contentObj
-    })
+    // let contentObj = this.data.contentObj
+    // contentObj.relation = [{
+    //   code: 'fromNo',
+    //   name: 'fromNo',
+    //   type: 'choose',
+    //   controlChooseFlag: true,
+    //   readonlyReturn: true,
+    //   title: mixins.$t("sourceOrder"),//'关联源单'
+    //   urlKey: 'selectSourcePurchaseOrder'
+    // }]
+    // this.setData({
+    //   contentObj: contentObj
+    // })
     this.calculateTotal()
   },
 
@@ -236,15 +239,19 @@ Page({
     let formData = JSON.parse(this.data.formData)
     if (formData.goodsList.length == 0) {
       let contentObj = this.data.contentObj
-      contentObj.relation = [{
-        code: 'fromNo',
-        name: 'fromNo',
-        type: 'choose',
-        controlChooseFlag: true,
-        readonlyReturn: false,
-        title: mixins.$t("sourceOrder"),//'关联源单'
-        urlKey: 'selectSourcePurchaseOrder'
-      }]
+      if (this.data.gradeCode == Constants.gradeCode.STD) {
+        contentObj.relation = []
+      } else {
+        contentObj.relation = [{
+          code: 'fromNo',
+          name: 'fromNo',
+          type: 'choose',
+          controlChooseFlag: true,
+          readonlyReturn: false,
+          title: mixins.$t("sourceOrder"),//'关联源单'
+          urlKey: 'selectSourcePurchaseOrder'
+        }]
+      }
       this.setData({
         contentObj: contentObj
       })
@@ -279,7 +286,7 @@ Page({
       cardList[0].sumReturnAmt = sumReturnAmt.toFixed(2)
     }
     if (contentList.length > 0) {
-      contentList[2].content = sumReturnAmt.toFixed(2)
+      contentList[contentList.length-1].content = sumReturnAmt.toFixed(2)
     }
     let beforeSumAmount = this.data.beforeSumAmount
     let afterSumAmount = beforeSumAmount - sumReturnAmt
@@ -489,7 +496,23 @@ Page({
         formData: JSON.stringify(formData)
       })
     }
-
+    let contentObj = this.data.contentObj
+    if (this.data.gradeCode == Constants.gradeCode.STD) {
+      contentObj.relation = []
+    } else {
+      contentObj.relation = [{
+        code: 'fromNo',
+        name: 'fromNo',
+        type: 'choose',
+        controlChooseFlag: true,
+        readonlyReturn: false,
+        title: mixins.$t("sourceOrder"),//'关联源单'
+        urlKey: 'selectSourcePurchaseOrder'
+      }]
+    }
+    this.setData({
+      contentObj: contentObj
+    })
   }
 
 })

+ 19 - 0
pages/shopping/shopping.js

@@ -616,4 +616,23 @@ Page({
       }
     })
   },
+
+
+    /**
+     * @desc : 页面上拉触底事件的处理函数
+     * @author : 周兴
+     * @date : 2022/8/1 12:16
+     */
+    scrollToLower() {
+      if (this.data.loading || this.data.noMore) {
+          return;
+      }
+      this.setData({
+          pageInfo: {
+              pageSize: this.data.pageInfo.pageSize,
+              currentPage: this.data.pageInfo.currentPage + 1
+          }
+      })
+      this.searchData('more')
+  },
 })

+ 95 - 0
utils/data.js

@@ -0,0 +1,95 @@
+module.exports = {
+  falseIvtSumReportData: [{
+    brandName: "测试",
+    currentIntoAmt: 100,
+    currentIntoQty: 100,
+    currentOutAmt: 100,
+    currentOutQty: 100,
+    decimalPlaces: 0,
+    endingIvtAmt: 104501,
+    endingIvtQty: 100,
+    imagesUrl: "https://s.dev01.dkiboss.com:7000/file/dc91014c58d4d/t_mst_goods_sku/2024-06/27/aa556141-2f8a-49fe-b7a7-b45b44760b32.png",
+    invId: "10112024-0625-0000-0000-000460f23129",
+    nonStdCode: "-",
+    openingIvtAmt: 104501,
+    openingIvtQty: 88,
+    packBox: 8,
+    seriesName: "测试数据",
+    shortName: "测试",
+    skuImages: [{
+      createTime: "2024-06-27T14:54:13.398",
+      name: "2N8O15Jzd35910ab61066bb6311ee8e5baa140bc0a9f.png",
+      path: "/dc91014c58d4d/t_mst_goods_sku/2024-06/27/aa556141-2f8a-49fe-b7a7-b45b44760b32.png",
+      type: "image",
+      url: "https://s.dev01.dkiboss.com:7000/file/dc91014c58d4d/t_mst_goods_sku/2024-06/27/aa556141-2f8a-49fe-b7a7-b45b44760b32.png",
+    }],
+    skuModel: "测试数据",
+    skuName: "测试数据",
+    skuSpec: "测试数据",
+    subUnitName: "箱",
+    unitName: "个",
+    whName: "主仓",
+  }],
+  falseCusRecPayReportData: [{
+    facAmt: 99999
+  }, {
+    arrears: 99999
+  }, {
+    outAmt: 99999
+  }, {
+    arrears: 99,
+    cusName: "张萌萌",
+    cusPhone: "1388888888",
+    objectId: "10112024-0622-0000-0000-0004529ba002",
+  }, {
+    arrears: 99,
+    cusName: "王萌萌",
+    cusPhone: "1399999999",
+    objectId: "10112024-0622-0000-0000-00045369aaff"
+  }],
+  falseProfitReportData: {
+    profit: {
+      inbound: -45321,
+      outbound: 765432,
+      profit: 77884,
+      profitRate: 106.17,
+    },
+    dateProfit: [{
+        accDate: "2024-06",
+        profit: 123123,
+        profitRate: 177.33,
+      },
+      {
+        accDate: "2024-07",
+        profit: 44232,
+        profitRate: 106.17,
+      }
+    ],
+    orgProfit: [{
+      orgName: "测试中心",
+      profitRate: 106.17,
+      profit: 77804
+    }],
+    staffProfit: [{
+        staffName: "145555555",
+        profitRate: 107.06,
+        profit: 32322
+      },
+      {
+        staffName: "4223333",
+        profitRate: 100.2,
+        profit: 9519
+      }
+    ],
+    skuProfit: [{
+      skuName: "P001",
+      profitRate: 111.01,
+      profit: 12345
+    }, {
+      skuName: "U001(U001)",
+      profitRate: 23,
+      profit: 23233
+    }]
+  },
+
+}