From 80d88f15a2222ec2dbe33f5d1d2b2296a890f41b Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期二, 03 三月 2026 16:22:04 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/dmmall_service/src/main/java/com/doumee/service/business/impl/NoticeServiceImpl.java | 98 +++++++++++++++++++++++++++++++++++-------------
1 files changed, 71 insertions(+), 27 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 138327b..6216bb3 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
@@ -7,6 +7,7 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.NoticeMapper;
import com.doumee.dao.business.join.MemberJoinMapper;
@@ -30,6 +31,7 @@
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;
@@ -216,24 +218,27 @@
@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()),
+ Notice::getType,notice.getQueryType())
+ .eq(Notice::getMemberId,notice.getMemberId())
+ .orderByAsc(Notice::getStatus)
+ .orderByDesc(Notice::getId)
+ ;
IPage<Notice> noticeIPage = noticeMapper.selectPage(page, queryWrapper);
-
- if (CollectionUtils.isEmpty(noticeIPage.getRecords())){
- return PageData.from(new Page<>());
+ List<NoticeCardDTO> noticeCardDTOs = new ArrayList<>();
+ if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(noticeIPage.getRecords())){
+ 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());
@@ -245,11 +250,10 @@
/**
*
- * @param type 0娑堣垂鑰咃紱1=缁忛攢鍟嗭紱
- * @param objType 0鍟嗗煄璁㈠崟 1绉垎娴佹按 2浜掑姩璇勪环 3浼樻儬鍒�
+ * @param type 娑堟伅绫诲瀷 0=绯荤粺娑堟伅锛�1=绀惧尯娑堟伅
+ * @param objType 0鍟嗗煄璁㈠崟 1绉垎娴佹按 2杩囨湡鎻愰啋 3绀惧尯娑堟伅
*
*/
-
public void saveNoticeInfo(Integer type,Integer objType,Integer memberId
,String title,String content,Integer objId){
Notice notice = new Notice();
@@ -272,16 +276,14 @@
* @param memberId 鐢ㄦ埛涓婚敭/鍟嗘埛涓婚敭
* @param integral 鍙樺姩绉垎/鐜伴噾鍊�
* @param objId 鍏宠仈瀵硅薄涓婚敭 - 绉垎娴佹按鍙樺姩璁板綍涓婚敭
- * @param param1 param2
*/
@Override
public void saveMemberIntegralNotice(Constants.IntegralObjType integralObjType,Integer type,
Integer memberId,
BigDecimal integral,
- Integer objId,String param1){
+ Integer objId,String info){
String title = integralObjType.getName();
- String info = integralObjType.getNoteinfo();
- info = info.replace("${param}",integral.toString()).replace("${param1}",param1);
+
this.saveNoticeInfo(
type,
Constants.ONE,
@@ -293,26 +295,28 @@
}
/**
- * 鍙戞斁浼樻儬鍒�
+ * 鍙戞斁浼樻儬鍒� 绔欏唴淇�
* @param memberId
* @param couponList
*/
+ @Override
public void couponNotice(Integer memberId,List<CouponNoticeRequest> couponList){
String noticeInfo = "鎭枩鎮ㄨ幏寰�${param}";
//鎭枩鎮ㄨ幏寰� 婊�50鍑�10鎶垫墸鍒�
String replaceInfo = "";
+ //鏁寸悊浼樻儬鍒稿唴瀹�
for (CouponNoticeRequest c:couponList) {
MemberCoupon mc = c.getMemberCoupon();
String info = Constants.equalsInteger(mc.getCouponType(),Constants.ZERO)?
"婊�"+mc.getLimitPrice()+"鍏冨噺"+mc.getPrice()+"鍏冩姷鎵e埜*"+c.getNum():
- "婊�"+mc.getLimitPrice()+"鍏冧韩"+mc.getPrice()+"鎶樺埜";
+ "婊�"+mc.getLimitPrice()+"鍏冧韩"+mc.getPrice()+"鎶樺埜*"+c.getNum();
replaceInfo = replaceInfo + (StringUtils.isBlank(replaceInfo)?
info:","+info);
}
noticeInfo.replace("${param}",replaceInfo);
this.saveNoticeInfo(
- Constants.ZERO,
+ Constants.ONE,
Constants.ONE,
memberId,
"鑾峰緱绯荤粺鍙戞斁鐨勪紭鎯犲埜",
@@ -322,6 +326,13 @@
}
+ /**
+ * 绉垎杩囨湡 绔欏唴娑堟伅
+ * @param memberId
+ * @param integral
+ * @param expireDateNum
+ */
+ @Override
public void expireNotice(Integer memberId, BigDecimal integral,Integer expireDateNum){
//鎮ㄦ湁1000绉垎30澶╁悗杩囨湡锛岃灏藉揩浣跨敤
String noticeInfo = "鎮ㄦ湁${param}绉垎鍗冲皢杩囨湡锛岃灏藉揩浣跨敤";
@@ -340,21 +351,34 @@
}
-
+ /**
+ * 璇勮娑堟伅 绔欏唴淇�
+ * @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,
+ Constants.ONE,
+ Constants.THREE,
memberId,
noticeInfo,
noticeInfo,
- null
+ objId
);
}
+ /**
+ * 璁㈠崟鏀粯鎴愬姛 鍙戦�佹秷鎭�
+ * @param shopId
+ * @param objId
+ * @param receiveType
+ */
+ @Override
public void orderPayNotice(Integer shopId, Integer objId,Integer receiveType){
if(Constants.equalsInteger(receiveType,Constants.ZERO)){
return;
@@ -373,6 +397,13 @@
}
+ /**
+ * 璁㈠崟鍙栨秷 鍙戦�佺珯鍐呬俊
+ * @param shopId
+ * @param objId
+ * @param orderNo
+ */
+ @Override
public void orderCancelNotice(Integer shopId, Integer objId,String orderNo){
// 鎮ㄧ殑璁㈠崟{璁㈠崟鍙穧锛屽凡鐢卞鎴锋墜鍔ㄥ彇娑堬紝璇风煡鎮�
String noticeInfo = " 鎮ㄧ殑璁㈠崟${param}锛屽凡鐢卞鎴锋墜鍔ㄥ彇娑堬紝璇风煡鎮�";
@@ -388,6 +419,19 @@
}
+ @Override
+ public void autoRead(Integer memberId,Integer noticeType){
+ noticeMapper.update(new UpdateWrapper<Notice>().lambda()
+ .set(Notice::getStatus,Constants.ONE)
+ .set(Notice::getEditDate, DateUtil.getCurrDateTime())
+ .eq(Notice::getMemberId,memberId)
+ .ne(Objects.nonNull(noticeType)&&Constants.equalsInteger(noticeType,Constants.ZERO),Notice::getObjType,Constants.TWO)
+ .eq(Objects.nonNull(noticeType)&&Constants.equalsInteger(noticeType,Constants.ONE),Notice::getObjType,Constants.TWO)
+ .eq(Notice::getStatus,Constants.ZERO)
+ );
+ }
+
+
--
Gitblit v1.9.3