From 580f4d3c2ca9eee53eee95a4de2f6610b790780a Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期四, 12 二月 2026 18:24:13 +0800
Subject: [PATCH] 小程序 接口开发
---
server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java | 114 ++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 84 insertions(+), 30 deletions(-)
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
index 0d71799..5068fc0 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
@@ -1027,14 +1027,31 @@
String fullUrl = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()+
systemDictDataBiz.queryByCode(Constants.OSS,Constants.GOODS_FILE).getCode();
page.getRecords().forEach(i->{
- List<MemberOrderDetailResponse> memberOrderDetailResponseList = goodsorderDetailMapper.getDetailList(i.getOrderId());
- memberOrderDetailResponseList.forEach(j->{
- j.setImgUrl(fullUrl + j.getImgUrl());
+ List<GoodsorderDetail> goodsorderDetailList=goodsorderDetailJoinMapper.selectList(new QueryWrapper<GoodsorderDetail>().lambda()
+ .eq(GoodsorderDetail::getOrderId,i.getOrderId()));
+ goodsorderDetailList.stream().forEach(s ->{
+ if(StringUtils.isNotBlank(s.getImgurl())){
+ s.setImgurl(fullUrl + s.getImgurl());
+ }
});
- i.setMemberOrderDetailResponseList(memberOrderDetailResponseList);
+ i.setGoodsorderDetailList(goodsorderDetailList);
});
return page;
}
+
+
+
+ @Override
+ public MemberOrderResponse getGoodsOrderDetailByCode(String exchangeCode){
+ Goodsorder goodsorder = goodsorderMapper.selectOne(new QueryWrapper<Goodsorder>().lambda().eq(Goodsorder::getExchangeCode,exchangeCode)
+ .last(" limit 1")
+ );
+ if(Objects.isNull(goodsorder)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌璁㈠崟淇℃伅");
+ }
+ return this.getGoodsOrderDetail(goodsorder.getId());
+ }
+
/**
@@ -1049,23 +1066,34 @@
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌璁㈠崟淇℃伅");
}
if(memberOrderResponse.getOrderStatus().equals(Constants.OrderStatus.WAIT_PAY.getKey())){
- memberOrderResponse.setCountdown(memberOrderResponse.getCancelDate().getTime()-System.currentTimeMillis());
+ memberOrderResponse.setCountdown(memberOrderResponse.getCancelDate().getTime()>System.currentTimeMillis()?memberOrderResponse.getCancelDate().getTime()-System.currentTimeMillis():Constants.ZERO);
}
- List<MemberOrderDetailResponse> memberOrderDetailResponseList = goodsorderDetailMapper.getDetailList(memberOrderResponse.getOrderId());
String fullUrl = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()+
systemDictDataBiz.queryByCode(Constants.OSS,Constants.GOODS_FILE).getCode();
- memberOrderDetailResponseList.forEach(j->{
- j.setImgUrl(fullUrl + j.getImgUrl());
+
+
+ List<GoodsorderDetail> goodsorderDetailList=goodsorderDetailJoinMapper.selectList(new QueryWrapper<GoodsorderDetail>().lambda()
+ .eq(GoodsorderDetail::getOrderId,memberOrderResponse.getOrderId()));
+ goodsorderDetailList.stream().forEach(s ->{
+ if(StringUtils.isNotBlank(s.getImgurl())){
+ s.setImgurl(fullUrl + s.getImgurl());
+ }
});
- memberOrderResponse.setMemberOrderDetailResponseList(memberOrderDetailResponseList);
- if(Constants.equalsInteger(memberOrderResponse.getReceiveType(),Constants.ONE)){
- memberOrderResponse.setShopInfo(shopMapper.selectById(memberOrderResponse.getShopId()));
+ memberOrderResponse.setGoodsorderDetailList(goodsorderDetailList);
+ Shop shop = shopMapper.selectById(memberOrderResponse.getShopId());
+ if(Objects.nonNull(shop)){
+ shop.setPassword(null);
+ shop.setUsername(null);
+ shop.setAreas(AreasServiceImpl.getAddressByAreaId(shop.getAreaId()));
+ memberOrderResponse.setShopInfo(shop);
}
Member member = memberMapper.selectById(memberOrderResponse.getMemberId());
if(Objects.nonNull(member)){
String memberfullUrl = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()+
systemDictDataBiz.queryByCode(Constants.OSS,Constants.MEMBER_FILE).getCode();
- member.setImgFullUrl(memberfullUrl + member.getImgurl());
+ if(StringUtils.isNotBlank(member.getImgurl())){
+ member.setImgFullUrl(memberfullUrl + member.getImgurl());
+ }
memberOrderResponse.setMember(member);
}
return memberOrderResponse;
@@ -1171,9 +1199,7 @@
}
}
}
-
SendWxMessage.orderCancel(goodsorder,memberMapper.selectById(goodsorder.getMemberId()),goodsName);
-
//鏌ヨ浼樻儬鍒镐俊鎭褰�
if(!Objects.isNull(goodsorder.getCouponId())){
MemberCoupon memberCoupon = memberCouponMapper.selectById(goodsorder.getCouponId());
@@ -1578,6 +1604,7 @@
* @param memberId
*/
@Override
+ @Transactional(rollbackFor = {Exception.class,BusinessException.class})
public void affirmOrder(Integer orderId,Integer memberId){
Goodsorder goodsorder = goodsorderMapper.selectById(orderId);
if(!goodsorder.getMemberId().equals(memberId)){
@@ -1687,10 +1714,12 @@
* @param memberId
*/
@Override
- public void orderWriteOff(String exchangeCode,Integer memberId){
- Goodsorder goodsorder = goodsorderMapper.selectOne(new QueryWrapper<Goodsorder>().lambda()
- .eq(Goodsorder::getExchangeCode,exchangeCode)
- .eq(Goodsorder::getIsdeleted,Constants.ZERO).last("limit 1 "));
+ @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+ public void orderWriteOff(Integer orderId,Integer memberId){
+ if(Objects.isNull(orderId)){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ Goodsorder goodsorder = goodsorderMapper.selectById(orderId);
if(Objects.isNull(goodsorder)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
@@ -1704,9 +1733,9 @@
if(Objects.isNull(shop)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌璁㈠崟鍏宠仈缁忛攢鍟嗕俊鎭�,璇疯仈绯荤鐞嗗憳");
}
- if(!Constants.equalsInteger(shop.getMemberId(),memberId)){
- throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"["+shop.getName()+"]闈炴偍缁戝畾鐨勭粡閿�鍟嗭紝鏃犳硶杩涜璇ユ搷浣滐紒");
- }
+// if(!Constants.equalsInteger(shop.getMemberId(),memberId)){
+// throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"["+shop.getName()+"]闈炴偍缁戝畾鐨勭粡閿�鍟嗭紝鏃犳硶杩涜璇ユ搷浣滐紒");
+// }
goodsorder.setStatus(Constants.OrderStatus.DONE.getKey());
goodsorder.setDoneDate(new Date());
goodsorderMapper.updateById(goodsorder);
@@ -1733,7 +1762,7 @@
return;
}
BigDecimal backIntegral = getBackIntegral(goodsorder.getPrice(),Constants.ONE);
- if (backIntegral.compareTo(BigDecimal.ZERO) >= 0) {
+ if (backIntegral.compareTo(BigDecimal.ZERO) > 0) {
//鏇存柊浣欓淇℃伅 娣诲姞绉垎鍙樺姩璁板綍
DealIntegralRequest dealIntegralRequest = new DealIntegralRequest();
dealIntegralRequest.setIntegralNum(backIntegral);
@@ -1782,12 +1811,12 @@
return;
}
BigDecimal backIntegral = getBackIntegral(goodsorder.getPrice(),Constants.ZERO);
- if (backIntegral.compareTo(BigDecimal.ZERO) >= 0) {
+ if (backIntegral.compareTo(BigDecimal.ZERO) > 0) {
//鏇存柊浣欓淇℃伅 娣诲姞绉垎鍙樺姩璁板綍
DealIntegralRequest dealIntegralRequest = new DealIntegralRequest();
dealIntegralRequest.setIntegralNum(backIntegral);
dealIntegralRequest.setDealType(Constants.ZERO);
- dealIntegralRequest.setMemberId(goodsorder.getDistributionShopId());
+ dealIntegralRequest.setMemberId(goodsorder.getMemberId());
dealIntegralRequest.setObjId(goodsorder.getId());
dealIntegralRequest.setOrderCode(goodsorder.getCode().toString());
dealIntegralRequest.setIntegralObjType(Constants.IntegralObjType.ORDER_DONATE);
@@ -1844,6 +1873,7 @@
if(!goodsorder.getStatus().equals(Constants.OrderStatus.DONE.getKey())){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鎿嶄綔澶辫触锛氳鍗曟湭瀹屾垚锛屾棤娉曢��娆撅紒");
}
+
}
@@ -2101,12 +2131,13 @@
Utils.MP.blankToNull(pageWrap.getModel());
ShopOrderRequest model = pageWrap.getModel();
queryWrapper.selectAll(Goodsorder.class);
-// queryWrapper.selectAs(Member::getNickname,Goodsorder::getNickName);
-// queryWrapper.selectAs(Member::getPhone,Goodsorder::getPhone);
-// queryWrapper.selectAs(Member::getImgurl,Goodsorder::getImgurl);
+ queryWrapper.selectAs(Shop::getName,Goodsorder::getShopName);
+ queryWrapper.selectAs(Shop::getPhone,Goodsorder::getShopPhone);
+ queryWrapper.leftJoin(Shop.class,Shop::getId,Goodsorder::getDistributionShopId);
queryWrapper.eq(Goodsorder::getIsdeleted,Constants.ZERO);
queryWrapper.eq(Objects.nonNull(model.getStatus()),Goodsorder::getStatus,model.getStatus());
- queryWrapper.eq(Objects.nonNull(model.getShopId()),Goodsorder::getDistributionShopId,model.getShopId());
+ queryWrapper.eq(Objects.nonNull(model.getShopId())&&Constants.equalsInteger(model.getUserType(),Constants.ONE),Goodsorder::getDistributionShopId,model.getShopId());
+ queryWrapper.eq(Objects.nonNull(model.getShopId())&&Constants.equalsInteger(model.getUserType(),Constants.ZERO),Goodsorder::getMemberId,model.getShopId());
queryWrapper.orderByDesc(Goodsorder::getCreateDate);
IPage<Goodsorder> result = goodsorderJoinMapper.selectJoinPage(page, Goodsorder.class, queryWrapper);
@@ -2119,8 +2150,8 @@
List<GoodsorderDetail> goodsorderDetailList=goodsorderDetailJoinMapper.selectList(new QueryWrapper<GoodsorderDetail>().lambda()
.eq(GoodsorderDetail::getOrderId,goodsorder.getId()));
goodsorderDetailList.stream().forEach(s ->{
- if(StringUtils.isBlank(s.getImgurl())){
- s.setImgurl(path + s.getGoodsImgurl());
+ if(StringUtils.isNotBlank(s.getImgurl())){
+ s.setImgurl(path + s.getImgurl());
}
});
goodsorder.setGoodsorderDetailList(goodsorderDetailList);
@@ -2130,4 +2161,27 @@
+// public IPage<Shop> getGoodsorderPageForShop(PageWrap pageWrap,String shopId) {
+// IPage<Shop> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+//
+// IPage<Goodsorder> goodsorderPage = goodsorderJoinMapper.selectJoinPage(page,Goodsorder.class,
+// new MPJLambdaWrapper<Goodsorder>()
+// .selectAll(Goodsorder.class)
+// .selectAs(Member::getPhone,Goodsorder::getPhone)
+// .selectAs(Member::getNickname,Goodsorder::getNickName)
+// .leftJoin(Member.class,Member::getId,Goodsorder::getMemberId)
+// .eq(Goodsorder::getIsdeleted,Constants.ZERO)
+// .eq(Goodsorder::getDistributionShopId,shopId)
+// .eq(Goodsorder::getStatus,Constants.OrderStatus.PAY_DONE.getKey())
+// .eq(Goodsorder::getReceiveType,Constants.ONE)
+// .orderByDesc(Goodsorder::getId)
+// );
+//
+//
+//
+// }
+
+
+
+
}
--
Gitblit v1.9.3