From 59bfd0b8bbbf0ee94ec68e4a3a1a6e536d0ad8fd Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期三, 20 五月 2026 23:10:43 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/gtzxinglijicun
---
server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java | 51 ++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 46 insertions(+), 5 deletions(-)
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java
index e302df5..1c7807f 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java
@@ -19,6 +19,7 @@
import com.doumee.dao.business.MemberMapper;
import com.doumee.dao.business.MultifileMapper;
import com.doumee.dao.business.OrdersMapper;
+import com.doumee.dao.business.OtherOrdersMapper;
import com.doumee.dao.business.PricingRuleMapper;
import com.doumee.dao.business.RevenueMapper;
import com.doumee.dao.business.ShopInfoMapper;
@@ -27,6 +28,7 @@
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.Multifile;
import com.doumee.dao.business.model.Orders;
+import com.doumee.dao.business.model.OtherOrders;
import com.doumee.dao.business.model.PricingRule;
import com.doumee.dao.business.model.Revenue;
import com.doumee.dao.business.model.ShopInfo;
@@ -122,6 +124,9 @@
@Autowired
private CategoryMapper categoryMapper;
+
+ @Autowired
+ private OtherOrdersMapper otherOrdersMapper;
@Override
public Integer create(ShopInfo shopInfo) {
@@ -342,6 +347,8 @@
newChange.setCreateTime(now);
newChange.setUpdateTime(now);
newChange.setRegionMemberId(member.getId());
+ newChange.setRevenueShareConfig(changeVersion.getRevenueShareConfig());
+ newChange.setDeliveryArea(changeVersion.getDeliveryArea());
setDepositAmountFromPricingRule(newChange);
shopInfoMapper.insert(newChange);
@@ -564,6 +571,7 @@
changeVersion.setAuditUserId(auditDTO.getAuditUser());
changeVersion.setRevenueShareConfig(revenueShareConfig);
changeVersion.setUpdateTime(now);
+ setDefaultDeliveryRange(changeVersion);
shopInfoMapper.updateById(changeVersion);
// 鏍囪鍘嗗彶鐨勫彉鏇寸増鏈负鍒犻櫎
@@ -1213,8 +1221,20 @@
vo.setTagId(tag.getId());
vo.setTagName(tag.getName());
vo.setShopCount(count != null ? count.intValue() : 0);
+ vo.setSortnum(tag.getSortnum());
result.add(vo);
}
+
+ // 鎸夐棬搴楁暟閲忓�掑簭锛岀浉鍚屾椂鎸夋帓搴忕爜闄嶅簭
+ result.sort((a, b) -> {
+ int cmp = Integer.compare(
+ b.getShopCount() != null ? b.getShopCount() : 0,
+ a.getShopCount() != null ? a.getShopCount() : 0);
+ if (cmp != 0) return cmp;
+ return Integer.compare(
+ b.getSortnum() != null ? b.getSortnum() : 0,
+ a.getSortnum() != null ? a.getSortnum() : 0);
+ });
// 鎬绘暟鏀惧湪鍒楄〃绗竴涓�
Long totalCount = shopInfoMapper.selectCount(baseQw);
@@ -1396,6 +1416,7 @@
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
ShopCenterVO vo = new ShopCenterVO();
+ vo.setId(shop.getId());
vo.setShopName(shop.getName());
vo.setLinkName(shop.getLinkName());
vo.setCompanyType(shop.getCompanyType());
@@ -1597,14 +1618,34 @@
.count();
vo.setFinishedOrderCount((int) finishedCount);
- // 鎬昏惀鏀堕噾棰� = sum(totalAmount - refundAmount)
- long totalRevenue = orders.stream()
+ // 鎬昏惀鏀堕噾棰� = sum(鏀粯閲戦 - 閫�娆鹃噾棰�) + 閫炬湡閲戦
+ long baseRevenue = orders.stream()
.mapToLong(o -> {
- long total = o.getTotalAmount() != null ? o.getTotalAmount() : 0L;
+ long pay = o.getPayAmount() != null ? o.getPayAmount() : 0L;
long refund = o.getRefundAmount() != null ? o.getRefundAmount() : 0L;
- return total - refund;
+ return pay - refund;
}).sum();
- vo.setTotalRevenue(totalRevenue);
+
+ // 鏌ヨ璇ラ棬搴楀弬涓庣殑閫炬湡璐圭敤锛堜粠other_orders琛ㄨ幏鍙栵紝type=2宸叉敮浠橈級
+ QueryWrapper<OtherOrders> overdueQw = new QueryWrapper<>();
+ overdueQw.lambda()
+ .eq(OtherOrders::getDeleted, Constants.ZERO)
+ .eq(OtherOrders::getType, Constants.TWO)
+ .eq(OtherOrders::getPayStatus, Constants.ONE)
+ .inSql(OtherOrders::getOrderId,
+ "SELECT id FROM orders WHERE DELETED = 0 AND (DEPOSIT_SHOP_ID = " + shopId + " OR TAKE_SHOP_ID = " + shopId + ")");
+ if (query.getStartDate() != null) {
+ overdueQw.lambda().ge(OtherOrders::getCreateTime, query.getStartDate());
+ }
+ if (query.getEndDate() != null) {
+ overdueQw.lambda().le(OtherOrders::getCreateTime, Utils.Date.getEnd(query.getEndDate()));
+ }
+ List<OtherOrders> overdueOrders = otherOrdersMapper.selectList(overdueQw);
+ long overdueTotal = overdueOrders.stream()
+ .mapToLong(o -> o.getPayAccount() != null ? o.getPayAccount() : 0L)
+ .sum();
+
+ vo.setTotalRevenue(baseRevenue + overdueTotal);
// 闂ㄥ簵鍒嗘垚閲戦
long shopFee = 0L;
--
Gitblit v1.9.3