From 1625f969871fa40da7de9c8f73b974bfc992c436 Mon Sep 17 00:00:00 2001
From: jyy <jyy>
Date: Thu, 22 Jul 2021 18:01:51 +0800
Subject: [PATCH] 1、部分导出功能
---
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java | 50 +++++++++++++++++++++++---------------------------
1 files changed, 23 insertions(+), 27 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
index 8fa0fcb..89e2ca7 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
@@ -484,9 +484,6 @@
//检查交易限制调整
checkSealLimit(pageOrder);
- //交易业绩设置是否合理
- checkAchieveIsOk(pageOrder);
-
// 更新收款时间
pageOrder.setPayTime(new Date());
@@ -558,27 +555,7 @@
}
- /**
- * 交易业绩设置是否合理
- * @param pageOrder
- */
- private void checkAchieveIsOk(SysOrder pageOrder) {
- double huakouSum = pageOrder.getItems().stream()
- .mapToDouble(
- item ->
- item.getAchieveList().stream()
- .filter(achieveNew -> "划扣".equals(achieveNew.getPayMethod()))
- .mapToDouble(achieve -> achieve.getGoodsCash()).sum()
- ).sum();
- double czkPay= pageOrder.getFlows().stream()
- .filter(sysOrderFlow -> "储值卡".equals(sysOrderFlow.getPayMethod()))
- .mapToDouble(sysOrderFlow ->sysOrderFlow.getAmount().doubleValue()).sum();
-
- if(czkPay!=huakouSum){
- throw new GlobleException("划扣业绩不等于储值卡扣款金额,请修改业绩设置!");
- }
- }
/**
* 设置会员消费积分
@@ -1306,7 +1283,7 @@
taocanProjUse.setIsCourse(taocanShoppingGoods.getIsCourse());
taocanProjUse.setIsInfinite(taocanShoppingGoods.getIsInfinite());
// 赠送和打折后金额为0的都视为赠送项目
- if (sysOrderItem.getIsFree().equals(Dictionary.FLAG_NO) && sysOrderItem.getZkPrice() > 0) {
+ if (sysOrderItem.getIsFree().equals(Dictionary.FLAG_NO) && sysOrderItem.getZkPrice() > 0 && !isGiftMoneyPay(order)) {
taocanProjUse.setSource(Dictionary.TAOCAN_SOURCE_GM);
} else {
taocanProjUse.setSource(Dictionary.TAOCAN_SOURCE_ZS);
@@ -1359,8 +1336,10 @@
puse.setProjName(sysOrderItem.getShoppingGoods().getName());
+
+
// 赠送和打折后金额为0的都视为赠送项目
- if (sysOrderItem.getIsFree().equals(Dictionary.FLAG_NO) && sysOrderItem.getZkPrice() > 0) {
+ if (sysOrderItem.getIsFree().equals(Dictionary.FLAG_NO) && sysOrderItem.getZkPrice() > 0 && !isGiftMoneyPay(order)) {
puse.setSource(Dictionary.TAOCAN_SOURCE_GM);
puse.setPrice(sysOrderItem.getZkPrice());
} else {
@@ -1380,6 +1359,23 @@
puse.setFailTime(invalidTime);
puse.setBalance(sysOrderItem.getShoppingGoods().getSealPice()*puse.getSurplusCount());
sysProjUseDao.insert(puse);
+ }
+
+ /**
+ * 全是赠送金额,且配置了赠送金额购买计算为赠送
+ * @param order
+ * @return
+ */
+ private boolean isGiftMoneyPay(SysOrder order) {
+ BusParameterSettings giftiIsfree = busParameterSettingsDao.selectCompanyParamByCode(AppConstance.SHOP_MANAGE_GIFTISFREE, order.getCompanyId());
+ if(giftiIsfree.getParamValue().equals("是")){
+ return order.getFlows().stream().allMatch(item -> SysOrderFlow.IS_GIFT_Y.equals(item.getIsGift())
+ && item.getAmount().doubleValue() >0D);
+ }else{
+ return false;
+ }
+
+
}
@@ -1531,7 +1527,7 @@
sourceOrder.setIsHasRefund(SysOrder.IS_HAS_REFUND_Y);
// sourceOrder.setStatu(Dictionary.ORDER_STATU_TK);
sysOrderDao.update(sourceOrder);
- SysOrder oldOrder=sysOrderDao.selectById( sysOrder.getOldOrderId());
+ SysOrder oldOrder=sysOrderDao.selectById(sysOrder.getOldOrderId());
sysOrder.setId(null);
sysOrder.setStaffId(user.getSuId());
@@ -1704,7 +1700,7 @@
List<SysProjUse> sysProjUses = sysProjUseDao.selectByModel(queryProjUse);
- for (int i = 0; i < item.getCount(); i++) {
+ for (int i = 0; i < sysProjUses.size(); i++) {
SysProjUse sysProjUse = sysProjUses.get(i);
sysProjUse.setIsOver(Dictionary.FLAG_YES_Y);
--
Gitblit v1.9.1