瀏覽代碼

管乐迷优化需求

zouxuan 9 月之前
父節點
當前提交
29337b3bf3

+ 3 - 3
mec-application/src/main/java/com/ym/mec/student/controller/ImGroupNoticeController.java

@@ -1,6 +1,6 @@
 package com.ym.mec.student.controller;
 
-import com.ym.mec.biz.dal.entity.ImGroupNotice;
+import com.ym.mec.biz.dal.dto.ImGroupNoticeDto;
 import com.ym.mec.biz.service.ImGroupNoticeService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
@@ -21,8 +21,8 @@ public class ImGroupNoticeController extends BaseController {
 
     @ApiOperation(value = "获取群公告")
     @RequestMapping("/getNotice")
-    public HttpResponseResult<ImGroupNotice> getNotice(Long id) {
-        return succeed(imGroupNoticeService.get(id));
+    public HttpResponseResult<ImGroupNoticeDto> getNotice(Long id) {
+        return succeed(imGroupNoticeService.getNotice(id));
     }
 
 }

+ 3 - 3
mec-application/src/main/java/com/ym/mec/teacher/controller/ImGroupNoticeController.java

@@ -1,6 +1,6 @@
 package com.ym.mec.teacher.controller;
 
-import com.ym.mec.biz.dal.entity.ImGroupNotice;
+import com.ym.mec.biz.dal.dto.ImGroupNoticeDto;
 import com.ym.mec.biz.service.ImGroupNoticeService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
@@ -21,8 +21,8 @@ public class ImGroupNoticeController extends BaseController {
 
     @ApiOperation(value = "获取群公告")
     @RequestMapping("/getNotice")
-    public HttpResponseResult<ImGroupNotice> getNotice(Long id) {
-        return succeed(imGroupNoticeService.get(id));
+    public HttpResponseResult<ImGroupNoticeDto> getNotice(Long id) {
+        return succeed(imGroupNoticeService.getNotice(id));
     }
 
 }

+ 2 - 2
mec-application/src/main/java/com/ym/mec/web/controller/education/ImGroupNoticeController.java

@@ -54,8 +54,8 @@ public class ImGroupNoticeController extends BaseController {
 
     @ApiOperation(value = "获取群公告")
     @RequestMapping("/getNotice")
-    public HttpResponseResult<ImGroupNotice> getNotice(Long id) {
-        return succeed(imGroupNoticeService.get(id));
+    public HttpResponseResult<ImGroupNoticeDto> getNotice(Long id) {
+        return succeed(imGroupNoticeService.getNotice(id));
     }
 
     @ApiOperation(value = "获取群公告列表")

+ 6 - 33
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/ImGroupNoticeDto.java

@@ -1,52 +1,25 @@
 package com.ym.mec.biz.dal.dto;
 
-import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.entity.ImGroupNotice;
 import io.swagger.annotations.ApiModelProperty;
 
-import java.util.Objects;
-
 public class ImGroupNoticeDto extends ImGroupNotice {
 
-	private SysUser user = new SysUser();
-
-	// 拓展字段
-	@ApiModelProperty(value = "群编号;")
-	private String groupId;
-
-	@ApiModelProperty(value = "是否置顶")
-	private Boolean topFlag;
-
-	@ApiModelProperty(value = "是否发送给新人")
-	private Boolean sentToNewMemberFlag;
+	@ApiModelProperty(value = "头像")
+	private String avatar;
 
 	@ApiModelProperty("用户名称")
 	private String username;
 
-	public SysUser getUser() {
-		return user;
-	}
-
-	public void setUser(SysUser user) {
-		this.user = user;
-	}
-
-	public String getGroupId() {
-		return getImGroupId();
-	}
-
-	public Boolean getTopFlag() {
-		return isIsTop();
+	public String getAvatar() {
+		return avatar;
 	}
 
-	public Boolean getSentToNewMemberFlag() {
-		return isIsSentToNewMember();
+	public void setAvatar(String avatar) {
+		this.avatar = avatar;
 	}
 
 	public String getUsername() {
-		if (Objects.nonNull(getUser())) {
-			return getUser().getRealName();
-		}
 		return username;
 	}
 

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/ImGroupNoticeService.java

@@ -25,4 +25,6 @@ public interface ImGroupNoticeService extends BaseService<Long, ImGroupNotice> {
     Long add(ImGroupNotice imGroupNotice);
 
 	void del(Long id);
+
+	ImGroupNoticeDto getNotice(Long id);
 }

+ 17 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ImGroupNoticeServiceImpl.java

@@ -1,17 +1,20 @@
 package com.ym.mec.biz.service.impl;
 
+import com.alibaba.fastjson.JSON;
 import com.google.common.collect.Lists;
 import com.microsvc.toolkit.middleware.im.ImPluginContext;
 import com.microsvc.toolkit.middleware.im.message.ETencentMessage;
 import com.microsvc.toolkit.middleware.im.message.MessageWrapper;
 import com.microsvc.toolkit.middleware.im.message.TencentRequest;
 import com.microsvc.toolkit.middleware.im.properties.ImConfigProperties;
+import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.ImGroupNoticeDao;
 import com.ym.mec.biz.dal.dto.ImGroupNoticeDto;
 import com.ym.mec.biz.dal.entity.ImGroupNotice;
 import com.ym.mec.biz.dal.page.ImGroupNoticeQueryInfo;
 import com.ym.mec.biz.dal.wrapper.ImGroupNoticeWrapper;
 import com.ym.mec.biz.service.ImGroupNoticeService;
+import com.ym.mec.biz.service.SysUserService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
@@ -37,7 +40,7 @@ public class ImGroupNoticeServiceImpl extends BaseServiceImpl<Long, ImGroupNotic
 	@Resource
 	private ImPluginContext imPluginContext;
 	@Resource
-	private ImConfigProperties imConfig;
+	private SysUserService sysUserService;
 
 	@Override
 	public BaseDAO<Long, ImGroupNotice> getDAO() {
@@ -129,6 +132,19 @@ public class ImGroupNoticeServiceImpl extends BaseServiceImpl<Long, ImGroupNotic
 		revokeImGroupNoticeMessage(notice);
 	}
 
+	@Override
+	public ImGroupNoticeDto getNotice(Long id) {
+		ImGroupNotice notice = imGroupNoticeDao.get(id);
+		if (notice == null) {
+			throw new BizException("群公告不存在");
+		}
+		ImGroupNoticeDto noticeDto = JSON.parseObject(JSON.toJSONString(notice), ImGroupNoticeDto.class);
+		SysUser sysUser = sysUserService.queryUserById(noticeDto.getOperatorId().intValue());
+		noticeDto.setUsername(sysUser.getRealName());
+		noticeDto.setAvatar(sysUser.getAvatar());
+		return noticeDto;
+	}
+
 	public ImGroupNoticeWrapper.ImGroupNotice convertToImGroupNotice(ImGroupNotice imGroupNotice) {
 		ImGroupNoticeWrapper.ImGroupNotice notice = ImGroupNoticeWrapper.ImGroupNotice.builder()
 				.id(imGroupNotice.getId())

+ 3 - 4
mec-biz/src/main/resources/config/mybatis/ImGroupNoticeMapper.xml

@@ -22,9 +22,8 @@
 	</resultMap>
 	
 	<resultMap type="com.ym.mec.biz.dal.dto.ImGroupNoticeDto" id="ImGroupNoticeDto" extends="ImGroupNotice">
-		<result column="real_name_" property="user.realName"/>
-		<result column="username_" property="user.username"/>
-        <result column="avatar_" property="user.avatar"/>
+		<result column="username_" property="username"/>
+        <result column="avatar_" property="avatar"/>
 	</resultMap>
 	
 	<!-- 根据主键查询一条记录 -->
@@ -86,7 +85,7 @@
 	
 	<!-- 分页查询 -->
 	<select id="queryForPage" resultMap="ImGroupNoticeDto" parameterType="map">
-		SELECT ign.*,if(u.real_name_ is null or u.real_name_ = '',u.username_,u.real_name_) as real_name_, u.username_, u.avatar_
+		SELECT ign.*,if(u.real_name_ is null or u.real_name_ = '',u.username_,u.real_name_) as username_, u.avatar_
 		FROM im_group_notice ign left join sys_user u on ign.operator_id_ = u.id_
 		<where>
             ign.del_flag_ = 0 and ign.tenant_id_ = #{tenantId}