From 585ff1cd29e9875f5f2a0fa2b0fdc876c5c6301f Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期一, 26 一月 2026 18:26:31 +0800
Subject: [PATCH] 小程序 接口开发
---
server/dmmall_service/src/main/java/com/doumee/service/business/impl/NoticeServiceImpl.java | 183 ++++++++++++++++++++++++++++++++++++---------
1 files changed, 147 insertions(+), 36 deletions(-)
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/NoticeServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/NoticeServiceImpl.java
index e96861f..2072e72 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/NoticeServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/NoticeServiceImpl.java
@@ -11,10 +11,7 @@
import com.doumee.dao.business.NoticeMapper;
import com.doumee.dao.business.join.MemberJoinMapper;
import com.doumee.dao.business.join.NoticeJoinMapper;
-import com.doumee.dao.business.model.Member;
-import com.doumee.dao.business.model.MemberCoupon;
-import com.doumee.dao.business.model.Notice;
-import com.doumee.dao.business.model.Shop;
+import com.doumee.dao.business.model.*;
import com.doumee.dao.web.dto.NoticeCardDTO;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.dao.web.request.CouponNoticeRequest;
@@ -32,6 +29,8 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
+import java.math.BigDecimal;
+import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
@@ -218,24 +217,30 @@
@Override
public PageData<NoticeCardDTO> findNoticeCardDTOPage(PageWrap<Notice> pageWrap) {
- LoginUserInfo loginUserInfo = (LoginUserInfo)SecurityUtils.getSubject().getPrincipal();
IPage<Notice> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
LambdaQueryWrapper<Notice> queryWrapper = new LambdaQueryWrapper<>();
Utils.MP.blankToNull(pageWrap.getModel());
- queryWrapper.eq(Notice::getType,pageWrap.getModel().getType())
- .eq(Notice::getObjMemberId,loginUserInfo.getMemberId());
+
+ Notice notice = pageWrap.getModel();
+
+ queryWrapper.ne(Objects.nonNull(notice.getQueryType())&&Constants.equalsInteger(notice.getQueryType(),Constants.ZERO),
+ Notice::getObjType,Constants.TWO)
+ .eq(Objects.nonNull(notice.getQueryType())&&Constants.equalsInteger(notice.getQueryType(),Constants.ONE),
+ Notice::getObjType,Constants.TWO)
+ .eq(Notice::getMemberId,notice.getMemberId())
+ .orderByAsc(Notice::getStatus)
+ .orderByDesc(Notice::getId)
+ ;
IPage<Notice> noticeIPage = noticeMapper.selectPage(page, queryWrapper);
-
+ List<NoticeCardDTO> noticeCardDTOs = new ArrayList<>();
if (CollectionUtils.isEmpty(noticeIPage.getRecords())){
- return PageData.from(new Page<>());
+ noticeCardDTOs = noticeIPage.getRecords().stream().map(s -> {
+ NoticeCardDTO noticeCardDTO = new NoticeCardDTO();
+ BeanUtils.copyProperties(s, noticeCardDTO);
+ return noticeCardDTO;
+
+ }).collect(Collectors.toList());
}
- List<NoticeCardDTO> noticeCardDTOs = noticeIPage.getRecords().stream().map(s -> {
- NoticeCardDTO noticeCardDTO = new NoticeCardDTO();
- BeanUtils.copyProperties(s, noticeCardDTO);
- return noticeCardDTO;
-
- }).collect(Collectors.toList());
-
PageData<NoticeCardDTO> pageData = new PageData<>();
pageData.setPage(pageWrap.getPage());
pageData.setCapacity(pageWrap.getCapacity());
@@ -247,7 +252,7 @@
/**
*
- * @param type 0娑堣垂鑰咃紱1=缁忛攢鍟嗙Н鍒嗭紱2=缁忛攢鍟嗙粨绠楅噾棰�
+ * @param type 0娑堣垂鑰咃紱1=缁忛攢鍟嗭紱
* @param objType 0鍟嗗煄璁㈠崟 1绉垎娴佹按 2浜掑姩璇勪环 3浼樻儬鍒�
*
*/
@@ -263,6 +268,7 @@
notice.setObjType(objType);
notice.setObjId(objId);
notice.setMemberId(memberId);
+ notice.setStatus(Constants.ZERO);
noticeMapper.insert(notice);
}
@@ -275,7 +281,11 @@
* @param objId 鍏宠仈瀵硅薄涓婚敭 - 绉垎娴佹按鍙樺姩璁板綍涓婚敭
* @param param1 param2
*/
- public void saveMemberIntegralNotice(Constants.IntegralObjType integralObjType,Integer type, Integer memberId, Integer integral, Integer objId,String param1){
+ @Override
+ public void saveMemberIntegralNotice(Constants.IntegralObjType integralObjType,Integer type,
+ Integer memberId,
+ BigDecimal integral,
+ Integer objId,String param1){
String title = integralObjType.getName();
String info = integralObjType.getNoteinfo();
info = info.replace("${param}",integral.toString()).replace("${param1}",param1);
@@ -289,32 +299,133 @@
);
}
+ /**
+ * 鍙戞斁浼樻儬鍒� 绔欏唴淇�
+ * @param memberId
+ * @param couponList
+ */
+ @Override
public void couponNotice(Integer memberId,List<CouponNoticeRequest> couponList){
- String info = "鎭枩鎮ㄨ幏寰椼�愪紭鎯犺鍒欍�戙�愪紭鎯犲埜绫诲瀷銆�";
+ String noticeInfo = "鎭枩鎮ㄨ幏寰�${param}";
//鎭枩鎮ㄨ幏寰� 婊�50鍑�10鎶垫墸鍒�
+ String replaceInfo = "";
+ //鏁寸悊浼樻儬鍒稿唴瀹�
for (CouponNoticeRequest c:couponList) {
MemberCoupon mc = c.getMemberCoupon();
- Constants.equalsInteger(mc.getCouponType(),Constants.ZERO)?
-
-
-
-
+ String info = Constants.equalsInteger(mc.getCouponType(),Constants.ZERO)?
+ "婊�"+mc.getLimitPrice()+"鍏冨噺"+mc.getPrice()+"鍏冩姷鎵e埜*"+c.getNum():
+ "婊�"+mc.getLimitPrice()+"鍏冧韩"+mc.getPrice()+"鎶樺埜";
+ replaceInfo = replaceInfo + (StringUtils.isBlank(replaceInfo)?
+ info:","+info);
}
+ noticeInfo.replace("${param}",replaceInfo);
-
-// this.saveNoticeInfo(
-// type,
-// Constants.ONE,
-// memberId,
-// "鑾峰緱绯荤粺鍙戞斁鐨勪紭鎯犲埜",
-// info,
-// objId
-// );
-//
-
-
+ this.saveNoticeInfo(
+ Constants.ZERO,
+ Constants.ONE,
+ memberId,
+ "鑾峰緱绯荤粺鍙戞斁鐨勪紭鎯犲埜",
+ noticeInfo,
+ null
+ );
}
+ /**
+ * 绉垎杩囨湡 绔欏唴娑堟伅
+ * @param memberId
+ * @param integral
+ * @param expireDateNum
+ */
+ @Override
+ public void expireNotice(Integer memberId, BigDecimal integral,Integer expireDateNum){
+ //鎮ㄦ湁1000绉垎30澶╁悗杩囨湡锛岃灏藉揩浣跨敤
+ String noticeInfo = "鎮ㄦ湁${param}绉垎鍗冲皢杩囨湡锛岃灏藉揩浣跨敤";
+ if(integral.compareTo(BigDecimal.ZERO)<=Constants.ZERO){
+ return;
+ }
+ noticeInfo.replace("${param}",integral.toString());
+ this.saveNoticeInfo(
+ Constants.ZERO,
+ Constants.ONE,
+ memberId,
+ "鎮ㄧ殑绉垎灏嗗湪"+expireDateNum+"澶╁悗娓呯┖锛岃灏藉揩浣跨敤",
+ noticeInfo,
+ null
+ );
+ }
+
+
+ /**
+ * 璇勮娑堟伅 绔欏唴淇�
+ * @param memberId
+ * @param objId
+ * @param memberName
+ */
+ @Override
+ public void commonNotice(Integer memberId, Integer objId,String memberName ){
+ //鎮ㄦ湁1000绉垎30澶╁悗杩囨湡锛岃灏藉揩浣跨敤
+ String noticeInfo = "${param}鍥炲浜嗘偍鐨勮瘎璁�";
+ noticeInfo.replace("${param}",memberName);
+ this.saveNoticeInfo(
+ Constants.ZERO,
+ Constants.TWO,
+ memberId,
+ noticeInfo,
+ noticeInfo,
+ objId
+ );
+ }
+
+ /**
+ * 璁㈠崟鏀粯鎴愬姛 鍙戦�佹秷鎭�
+ * @param shopId
+ * @param objId
+ * @param receiveType
+ */
+ @Override
+ public void orderPayNotice(Integer shopId, Integer objId,Integer receiveType){
+ if(Constants.equalsInteger(receiveType,Constants.ZERO)){
+ return;
+ }
+ //鎮ㄦ湁鏂扮殑銆愬彂璐ф柟寮忋�戣鍗曞緟澶勭悊
+ String noticeInfo = "鎮ㄦ湁鏂扮殑${param}璁㈠崟寰呭鐞�";
+ noticeInfo.replace("${param}",Constants.equalsInteger(receiveType,Constants.ZERO)?"鐗╂祦鍙戣揣":"闂ㄥ簵鑷彁");
+ this.saveNoticeInfo(
+ Constants.ONE,
+ Constants.ZERO,
+ shopId,
+ noticeInfo,
+ noticeInfo,
+ objId
+ );
+ }
+
+
+ /**
+ * 璁㈠崟鍙栨秷 鍙戦�佺珯鍐呬俊
+ * @param shopId
+ * @param objId
+ * @param orderNo
+ */
+ @Override
+ public void orderCancelNotice(Integer shopId, Integer objId,String orderNo){
+ // 鎮ㄧ殑璁㈠崟{璁㈠崟鍙穧锛屽凡鐢卞鎴锋墜鍔ㄥ彇娑堬紝璇风煡鎮�
+ String noticeInfo = " 鎮ㄧ殑璁㈠崟${param}锛屽凡鐢卞鎴锋墜鍔ㄥ彇娑堬紝璇风煡鎮�";
+ noticeInfo.replace("${param}",orderNo);
+ this.saveNoticeInfo(
+ Constants.ONE,
+ Constants.ZERO,
+ shopId,
+ noticeInfo,
+ noticeInfo,
+ objId
+ );
+ }
+
+
+
+
+
}
--
Gitblit v1.9.3