فهرست منبع

1.查询条件修改

yuanliang 1 سال پیش
والد
کامیت
821081a8c1

+ 3 - 2
cooleshow-app/src/main/java/com/yonge/cooleshow/student/controller/SysMessageController.java

@@ -6,6 +6,7 @@ import com.yonge.cooleshow.biz.dal.dto.search.SysMessageQueryInfo;
 import com.yonge.cooleshow.biz.dal.entity.SysMessage;
 import com.yonge.cooleshow.biz.dal.enums.MessageSendMode;
 import com.yonge.cooleshow.biz.dal.service.SysMessageService;
+import com.yonge.cooleshow.biz.dal.wrapper.SysMessageWrapper;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.entity.Mapper;
@@ -70,13 +71,13 @@ public class SysMessageController extends BaseController {
 
 	@ApiOperation("一键已读")
 	@PostMapping("batchSetRead")
-	public Object batchSetRead() {
+	public Object batchSetRead(@RequestBody SysMessageWrapper.MessageRead messageRead) {
 		int status = 1;
 		SysUser sysUser = sysUserFeignService.queryUserInfo();
 		if (sysUser == null) {
 			return failed(HttpStatus.FORBIDDEN, "请登录");
 		}
-		return succeed(sysMessageService.updateStatus(sysUser.getId(), status,"STUDENT") > 0 );
+		return succeed(sysMessageService.updateStatus(sysUser.getId(), status,"STUDENT",messageRead) > 0 );
 	}
 
 	@ApiOperation("设置已读")

+ 3 - 2
cooleshow-app/src/main/java/com/yonge/cooleshow/teacher/controller/SysMessageController.java

@@ -7,6 +7,7 @@ import com.yonge.cooleshow.biz.dal.dto.search.SysMessageQueryInfo;
 import com.yonge.cooleshow.biz.dal.entity.SysMessage;
 import com.yonge.cooleshow.biz.dal.enums.MessageSendMode;
 import com.yonge.cooleshow.biz.dal.service.SysMessageService;
+import com.yonge.cooleshow.biz.dal.wrapper.SysMessageWrapper;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.entity.Mapper;
@@ -80,13 +81,13 @@ public class SysMessageController extends BaseController {
 
 	@ApiOperation("一键已读")
 	@PostMapping("batchSetRead")
-	public Object batchSetRead() {
+	public Object batchSetRead(@RequestBody SysMessageWrapper.MessageRead messageRead) {
 		int status = 1;
 		SysUser sysUser = sysUserFeignService.queryUserInfo();
 		if (sysUser == null) {
 			return failed(HttpStatus.FORBIDDEN, "请登录");
 		}
-		return succeed(sysMessageService.updateStatus(sysUser.getId(), status,"TEACHER") > 0 );
+		return succeed(sysMessageService.updateStatus(sysUser.getId(), status,"TEACHER",messageRead) > 0 );
 	}
 
 	@ApiOperation("设置已读")

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/SysMessageDao.java

@@ -47,7 +47,7 @@ public interface SysMessageDao extends BaseDAO<Long, SysMessage> {
 	/**
 	 * 修改用户所有消息阅读状态
 	 */
-	public int updateStatus(@Param("userId") Long userId, @Param("status") int status, @Param("jpushType") String jpushType);
+	public int updateStatus(@Param("userId") Long userId, @Param("status") int status, @Param("jpushType") String jpushType, @Param("messageConfigId") Long messageConfigId);
 
 	/**
 	 * 修改单个消息状态

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/SysMessageService.java

@@ -89,7 +89,7 @@ public interface SysMessageService extends BaseService<Long, SysMessage> {
 	 * @param status 状态/1 已读,0未读
 	 * @return
 	 */
-	public int updateStatus(Long userId, int status,String jpushType);
+	public int updateStatus(Long userId, int status,String jpushType,SysMessageWrapper.MessageRead messageRead);
 
 	/**
 	 * 修改单条消息状态

+ 11 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/SysMessageServiceImpl.java

@@ -369,8 +369,17 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 	 */
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-	public int updateStatus(Long userId, int status,String jpushType) {
-		return sysMessageDao.updateStatus(userId, status,jpushType);
+	public int updateStatus(Long userId, int status,String jpushType,SysMessageWrapper.MessageRead messageRead) {
+		// 按照类型设置一键已读
+		MessageTypeEnum messageType = messageRead.getMessageType();
+		Long messageConfigId = null;
+		if (messageType != null) {
+			SysMessageConfig sysMessageConfig = sysMessageConfigService.queryByType(messageType.getCode());
+			if (sysMessageConfig != null) {
+				messageConfigId = sysMessageConfig.getId();
+			}
+		}
+		return sysMessageDao.updateStatus(userId, status,jpushType,messageConfigId);
 	}
 
 	@Override

+ 10 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/SysMessageWrapper.java

@@ -3,6 +3,7 @@ package com.yonge.cooleshow.biz.dal.wrapper;
 import com.alibaba.fastjson.JSON;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.MessageSendMode;
+import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
 import com.yonge.cooleshow.biz.dal.enums.SendStatusEnum;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -92,4 +93,13 @@ public class SysMessageWrapper {
         private Integer number;
     }
 
+    /**
+     * 消息设置一键读取条件
+     */
+    @Data
+    public static class MessageRead {
+
+        private MessageTypeEnum messageType;
+    }
+
 }

+ 6 - 1
cooleshow-user/user-biz/src/main/resources/config/mybatis/SysMessageMapper.xml

@@ -159,7 +159,12 @@
 	</update>
 	<update id="updateStatus">
 		update sys_message set read_status_=#{status}
-		where user_id_ = #{userId} AND (client_id_ = #{jpushType} OR client_id_ IS NULL)
+			<where>
+				user_id_ = #{userId} AND (client_id_ = #{jpushType} OR client_id_ IS NULL)
+				<if test="messageConfigId != null">
+					AND message_config_id_ = #{messageConfigId}
+				</if>
+			</where>
 	</update>
 
     <update id="updateOneStatus">

+ 3 - 2
cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/SysMessageController.java

@@ -7,6 +7,7 @@ import com.yonge.cooleshow.biz.dal.dto.search.SysMessageQueryInfo;
 import com.yonge.cooleshow.biz.dal.entity.SysMessage;
 import com.yonge.cooleshow.biz.dal.enums.MessageSendMode;
 import com.yonge.cooleshow.biz.dal.service.SysMessageService;
+import com.yonge.cooleshow.biz.dal.wrapper.SysMessageWrapper;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.entity.Mapper;
@@ -75,13 +76,13 @@ public class SysMessageController extends BaseController {
 
 	@ApiOperation("一键已读")
 	@PostMapping("batchSetRead")
-	public Object batchSetRead() {
+	public Object batchSetRead(@RequestBody SysMessageWrapper.MessageRead messageRead) {
 		int status = 1;
 		SysUser sysUser = sysUserFeignService.queryUserInfo();
 		if (sysUser == null) {
 			return failed(HttpStatus.FORBIDDEN, "请登录");
 		}
-		return succeed(sysMessageService.updateStatus(sysUser.getId(), status,"STUDENT") > 0 );
+		return succeed(sysMessageService.updateStatus(sysUser.getId(), status,"STUDENT",messageRead) > 0 );
 	}
 
 	@ApiOperation("设置已读")

+ 3 - 2
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/SysMessageController.java

@@ -7,6 +7,7 @@ import com.yonge.cooleshow.biz.dal.dto.search.SysMessageQueryInfo;
 import com.yonge.cooleshow.biz.dal.entity.SysMessage;
 import com.yonge.cooleshow.biz.dal.enums.MessageSendMode;
 import com.yonge.cooleshow.biz.dal.service.SysMessageService;
+import com.yonge.cooleshow.biz.dal.wrapper.SysMessageWrapper;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.entity.Mapper;
@@ -75,13 +76,13 @@ public class SysMessageController extends BaseController {
 
 	@ApiOperation("一键已读")
 	@PostMapping("batchSetRead")
-	public Object batchSetRead() {
+	public Object batchSetRead(@RequestBody SysMessageWrapper.MessageRead messageRead) {
 		int status = 1;
 		SysUser sysUser = sysUserFeignService.queryUserInfo();
 		if (sysUser == null) {
 			return failed(HttpStatus.FORBIDDEN, "请登录");
 		}
-		return succeed(sysMessageService.updateStatus(sysUser.getId(), status,"TEACHER") > 0 );
+		return succeed(sysMessageService.updateStatus(sysUser.getId(), status,"TEACHER",messageRead) > 0 );
 	}
 
 	@ApiOperation("设置已读")