From bd57b7c6e2307d6dfb07d778adfefc13c1afbffe Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期五, 06 二月 2026 11:48:44 +0800
Subject: [PATCH] 经销商管理
---
server/dmmall_service/src/main/java/com/doumee/service/business/impl/WorkbenchServiceImpl.java | 105 ++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 97 insertions(+), 8 deletions(-)
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/WorkbenchServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/WorkbenchServiceImpl.java
index 0a6262c..4f6291f 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/WorkbenchServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/WorkbenchServiceImpl.java
@@ -23,6 +23,7 @@
import com.doumee.dao.system.model.SystemUser;
import com.doumee.dao.system.vo.BusinessDataCountVO;
import com.doumee.dao.system.vo.CountDataVO;
+import com.doumee.dao.system.vo.NumberDataCountVO;
import com.doumee.dao.web.dto.CollectDTO;
import com.doumee.dao.web.dto.MemberDTO;
import com.doumee.dao.web.dto.MultiFileDTO;
@@ -60,10 +61,16 @@
@Autowired
private GoodsorderMapper goodsorderMapper;
@Autowired
+ private MemberCouponMapper memberCouponMapper;
+ @Autowired
+ private InviteRecordMapper inviteRecordMapper;
+ @Autowired
+ private IntegralMapper integralMapper;
+ @Autowired
private GoodsorderDetailMapper goodsorderDetailMapper;
@Override
public List<BusinessDataCountVO> shopRankList10(CountDataDTO param) {
- Date startDate = null,endDate = null;
+ /* Date startDate = null,endDate = null;
if(param.getYear()!=null && param.getMonth()!=null){
List<Date> dList = DateUtil.getDatePeriodByYearAndMonth(param.getYear(),param.getMonth()-1);
startDate = dList.get(0);
@@ -72,7 +79,7 @@
List<Date> dList = DateUtil.getDatePeriodByYear(param.getYear());
startDate = dList.get(0);
endDate = dList.get(1);
- }
+ }*/
//缁熻璁㈠崟閿�閲忓拰閿�鍞闆嗗悎
List<BusinessDataCountVO> list1 = goodsorderMapper.selectJoinList(BusinessDataCountVO.class,new MPJLambdaWrapper<Goodsorder>()
.selectAs(Shop::getName,BusinessDataCountVO::getName)
@@ -80,8 +87,8 @@
.select("(select count(t.id) )",BusinessDataCountVO::getNum)
.select("(select sum(t.total_price) )",BusinessDataCountVO::getPrice)
.leftJoin(Shop.class,Shop::getId,Goodsorder::getDistributionShopId)
- .ge(startDate!=null,Goodsorder::getCreateDate,startDate)
- .ne(endDate!=null,Goodsorder::getCreateDate,endDate)
+ .apply(param.getYear()!=null,"YEAR ( t.CREATE_DATE )="+param.getYear() )
+ .apply(param.getYear()!=null && param.getMonth()!=null,"MONTH ( t.CREATE_DATE )="+param.getMonth() )
.eq(Goodsorder::getIsdeleted,Constants.ZERO)
.in(Goodsorder::getStatus,Constants.OrderStatus.DONE.getKey(),Constants.OrderStatus.REFUND.getKey())
.groupBy(Goodsorder::getDistributionShopId)
@@ -94,7 +101,7 @@
}
@Override
public List<BusinessDataCountVO> goodsRankList10(CountDataDTO param) {
- Date startDate = null,endDate = null;
+ /* Date startDate = null,endDate = null;
if(param.getYear()!=null && param.getMonth()!=null){
List<Date> dList = DateUtil.getDatePeriodByYearAndMonth(param.getYear(),param.getMonth()-1);
startDate = dList.get(0);
@@ -103,7 +110,7 @@
List<Date> dList = DateUtil.getDatePeriodByYear(param.getYear());
startDate = dList.get(0);
endDate = dList.get(1);
- }
+ }*/
//缁熻璁㈠崟閿�閲忓拰閿�鍞闆嗗悎
List<BusinessDataCountVO> list1 = goodsorderDetailMapper.selectJoinList(BusinessDataCountVO.class,new MPJLambdaWrapper<GoodsorderDetail>()
.selectAs(Goods::getName,BusinessDataCountVO::getName)
@@ -111,8 +118,10 @@
.select("(select sum(ifnull(t.price,0) * ifnull(t.goods_num,0)))",BusinessDataCountVO::getPrice)
.leftJoin(Goodsorder.class,Goodsorder::getId,GoodsorderDetail::getOrderId)
.leftJoin(Goods.class,Goods::getId,GoodsorderDetail::getGoodsId)
- .ge(startDate!=null,Goodsorder::getCreateDate,startDate)
- .ne(endDate!=null,Goodsorder::getCreateDate,endDate)
+// .ge(startDate!=null,Goodsorder::getCreateDate,startDate)
+// .ne(endDate!=null,Goodsorder::getCreateDate,endDate)
+ .apply(param.getYear()!=null,"YEAR ( t1.CREATE_DATE )="+param.getYear() )
+ .apply(param.getYear()!=null && param.getMonth()!=null,"MONTH ( t1.CREATE_DATE )="+param.getMonth() )
.eq(Goodsorder::getIsdeleted,Constants.ZERO)
.in(Goodsorder::getStatus,Constants.OrderStatus.DONE.getKey(),Constants.OrderStatus.REFUND.getKey())
.groupBy(GoodsorderDetail::getGoodsId)
@@ -122,6 +131,86 @@
return list1;
}
@Override
+ public NumberDataCountVO couponData(CountDataDTO param){
+ NumberDataCountVO data = new NumberDataCountVO();
+ //鍙戞斁绫诲瀷缁熻
+ List<MemberCoupon> r1 = memberCouponMapper.selectList(new MPJLambdaWrapper<MemberCoupon>()
+ .select("(select count(t.id) )",MemberCoupon::getNum)
+ .select( MemberCoupon::getCouponType)
+ .apply(param.getYear()!=null,"YEAR ( t.CREATE_DATE )="+param.getYear() )
+ .eq(MemberCoupon::getIsdeleted,Constants.ZERO)
+ .groupBy(MemberCoupon::getCouponType));
+ if(r1!=null){
+ for(MemberCoupon c : r1){
+ if(Constants.equalsInteger(c.getCouponType(),Constants.ZERO)){
+ data.setNum(Constants.formatLongNum(c.getNum()));//婊″噺鍒�
+ }else{
+ data.setNum1(Constants.formatLongNum(c.getNum()));//婊″噺鍒�
+ }
+ }
+ }
+ //宸蹭娇鐢�
+ Long r2 = memberCouponMapper.selectCount(new MPJLambdaWrapper<MemberCoupon>()
+ .apply(param.getYear()!=null,"YEAR ( t.use_Date )="+param.getYear() )
+ .eq(MemberCoupon::getIsdeleted,Constants.ZERO));
+ data.setUseNum(Constants.formatLongNum(r2));
+ //浼樻儬閲戦鍜屼氦鏄撻噾棰�
+ Goodsorder r3 = goodsorderMapper.selectOne(new MPJLambdaWrapper<Goodsorder>()
+ .select("(select sum(t.total_price) )",Goodsorder::getTotalPrice)
+ .select("(select sum(t.coupon_price) )",Goodsorder::getCouponPrice)
+ .apply(param.getYear()!=null,"YEAR ( t.CREATE_DATE )="+param.getYear() )
+ .eq(Goodsorder::getIsdeleted,Constants.ZERO)
+ .in(Goodsorder::getStatus,Constants.OrderStatus.DONE.getKey(),Constants.OrderStatus.REFUND.getKey()) );
+ if(r3!=null){
+ data.setPrice(Constants.formatBigdecimal(r3.getCouponPrice()));
+ data.setOrderPrice(Constants.formatBigdecimal(r3.getTotalPrice()));
+ }
+ return data;
+
+ }
+ @Override
+ public NumberDataCountVO integralData(CountDataDTO param){
+ NumberDataCountVO data = new NumberDataCountVO();
+ //鍙戞斁绉垎绫诲瀷缁熻
+ List<Integral> r1 = integralMapper.selectList(new MPJLambdaWrapper<Integral>()
+ .select("(select sum(t.num) )",Integral::getNum)
+ .select( Integral::getObjType)
+ .apply(param.getYear()!=null,"YEAR ( t.CREATE_DATE )="+param.getYear() )
+ .eq(Integral::getIsdeleted,Constants.ZERO)
+ .eq(Integral::getType,Constants.ZERO)
+ .in(Integral::getObjType,Constants.IntegralObjType.REGISTER.getKey(),
+ Constants.IntegralObjType.INVITENEWUSER.getKey(),
+ Constants.IntegralObjType.ORDER_DONATE.getKey(),
+ Constants.IntegralObjType.SYSTEM_RECHARGE.getKey())
+ .groupBy(Integral::getObjType));
+ if(r1!=null){
+ for(Integral c : r1){
+ if(Constants.equalsInteger(c.getObjType(),Constants.IntegralObjType.SYSTEM_RECHARGE.getKey())){
+ data.setNum(Constants.formatBigdecimal(c.getNum()).longValue());//骞冲彴娣诲姞
+ }else if(Constants.equalsInteger(c.getObjType(),Constants.IntegralObjType.INVITENEWUSER.getKey())){
+ data.setNum1(Constants.formatBigdecimal(c.getNum()).longValue());//閭�璇�
+ }else if(Constants.equalsInteger(c.getObjType(),Constants.IntegralObjType.ORDER_DONATE.getKey())){
+ data.setNum2(Constants.formatBigdecimal(c.getNum()).longValue());//娑堣垂杩斿埄
+ }else if(Constants.equalsInteger(c.getObjType(),Constants.IntegralObjType.REGISTER.getKey())){
+ data.setNum3(Constants.formatBigdecimal(c.getNum()).longValue());//娉ㄥ唽
+ }
+ }
+ }
+ //浼樻儬閲戦鍜屼氦鏄撻噾棰�
+ Goodsorder r3 = goodsorderMapper.selectOne(new MPJLambdaWrapper<Goodsorder>()
+ .select("(select sum(t.integral) )",Goodsorder::getIntegral)
+ .select("(select sum(t.use_integral) )",Goodsorder::getUseIntegral)
+ .apply(param.getYear()!=null,"YEAR ( t.CREATE_DATE )="+param.getYear() )
+ .eq(Goodsorder::getIsdeleted,Constants.ZERO)
+ .in(Goodsorder::getStatus,Constants.OrderStatus.DONE.getKey(),Constants.OrderStatus.REFUND.getKey()) );
+ if(r3!=null){
+ data.setUseNum(Constants.formatBigdecimal(r3.getUseIntegral()).longValue());
+ data.setPrice(Constants.formatBigdecimal(r3.getIntegral()));
+ }
+ return data;
+
+ }
+ @Override
public BusinessDataCountVO businessData(CountDataDTO param) {
BusinessDataCountVO data = new BusinessDataCountVO();
int dataType = param.getDateType();//0浠婃棩 1杩戜竷鏃� 2杩�30鏃� 3杩�1骞�
--
Gitblit v1.9.3