Bläddra i källkod

Merge branch 'zouxuan_saas_2022_0606' into master_saas

liweifan 3 år sedan
förälder
incheckning
ad5b2d229c

+ 12 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TempLiveTeacherCard.java

@@ -44,16 +44,18 @@ public class TempLiveTeacherCard {
 
 	private java.util.Date updateTime;
 
-
 	@ApiModelProperty("是否推荐级别")
 	private Boolean recommendLevelFlag;
 
 	@ApiModelProperty("是否已经加入")
 	private Boolean joinFlag;
 
-	@ApiModelProperty(value = "学生id",hidden = true)
+	@ApiModelProperty(value = "学生id")
 	private Integer studentId;
 
+	@ApiModelProperty("声部名称")
+	private String subjectName;
+
 	public void setId(Integer id){
 		this.id = id;
 	}
@@ -174,6 +176,14 @@ public class TempLiveTeacherCard {
 		this.username = username;
 	}
 
+	public String getSubjectName() {
+		return subjectName;
+	}
+
+	public void setSubjectName(String subjectName) {
+		this.subjectName = subjectName;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/page/ImGroupNoticeQueryInfo.java

@@ -3,13 +3,13 @@ package com.ym.mec.biz.dal.page;
 import com.ym.mec.common.page.QueryInfo;
 
 public class ImGroupNoticeQueryInfo extends QueryInfo {
-    private Long groupId;
+    private String groupId;
 
-    public Long getGroupId() {
+    public String getGroupId() {
         return groupId;
     }
 
-    public void setGroupId(Long groupId) {
+    public void setGroupId(String groupId) {
         this.groupId = groupId;
     }
 

+ 5 - 5
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ImGroupMemberServiceImpl.java

@@ -144,11 +144,11 @@ public class ImGroupMemberServiceImpl extends BaseServiceImpl<Long, ImGroupMembe
 
 		imGroupMemberDao.insert(imGroupMember);
 
-		imGroup.setMemberNum(imGroup.getMemberNum() + 1);
+		imGroup.setMemberNum(1);
 		imGroup.setUpdateTime(date);
 		imGroupDao.update(imGroup);
 
-		String groupId = imGroup.getId().toString();
+		String groupId = imGroup.getId();
 
 		GroupMember groupMember = new GroupMember(userId.toString(), groupId);
 		imFeignService.groupJoin(new GroupModel(groupId, new GroupMember[] { groupMember }, imGroup.getName()));
@@ -188,7 +188,7 @@ public class ImGroupMemberServiceImpl extends BaseServiceImpl<Long, ImGroupMembe
 
 		imGroupMemberDao.insert(imGroupMember);
 
-		imGroup.setMemberNum(imGroup.getMemberNum() + 1);
+		imGroup.setMemberNum(1);
 		imGroup.setUpdateTime(date);
 		imGroupDao.update(imGroup);
 
@@ -260,7 +260,7 @@ public class ImGroupMemberServiceImpl extends BaseServiceImpl<Long, ImGroupMembe
 				}
 			}
 			imGroupMemberDao.batchInsert(imGroupMemberList);
-			imGroup.setMemberNum(imGroup.getMemberNum() + imGroupMemberList.size());
+			imGroup.setMemberNum(imGroupMemberList.size());
 			imGroup.setUpdateTime(date);
 			imGroupDao.update(imGroup);
 
@@ -306,7 +306,7 @@ public class ImGroupMemberServiceImpl extends BaseServiceImpl<Long, ImGroupMembe
 
 		imGroupMemberDao.batchDelete(imGroupMemberList);
 
-		imGroup.setMemberNum(imGroup.getMemberNum() - userIdList.size());
+		imGroup.setMemberNum(-userIdList.size());
 		imGroup.setUpdateTime(new Date());
 		imGroupDao.update(imGroup);
 

+ 10 - 5
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ImGroupServiceImpl.java

@@ -9,14 +9,11 @@ import com.ym.mec.biz.dal.dto.ImGroupDto;
 import com.ym.mec.biz.dal.dto.ImGroupMemberDto;
 import com.ym.mec.biz.dal.entity.ImGroup;
 import com.ym.mec.biz.dal.entity.ImGroupMember;
-import com.ym.mec.biz.dal.page.GroupMemberQueryInfo;
 import com.ym.mec.biz.service.ImGroupMemberService;
 import com.ym.mec.biz.service.ImGroupService;
-import com.ym.mec.biz.service.SysUserService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.entity.ImUserModel;
 import com.ym.mec.common.exception.BizException;
-import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.common.tenant.TenantContextHolder;
 import com.ym.mec.im.ImFeignService;
@@ -28,7 +25,10 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.*;
+import java.util.Date;
+import java.util.List;
+import java.util.Optional;
+import java.util.UUID;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 
@@ -107,8 +107,9 @@ public class ImGroupServiceImpl extends BaseServiceImpl<String, ImGroup> impleme
 	@Transactional(rollbackFor = Exception.class)
 	public String createGroup(ImGroupDto imGroupDto){
 		List<String> userIdList = imGroupDto.getUserIdList();
+		Integer currentUserId = null;
 		if (CollectionUtils.isEmpty(userIdList)){
-			Integer currentUserId = sysUserFeignService.queryUserInfo().getId();
+			currentUserId = sysUserFeignService.queryUserInfo().getId();
 			userIdList.add(currentUserId.toString());
 		}
 		String groupName = imGroupDto.getGroupName();
@@ -121,6 +122,7 @@ public class ImGroupServiceImpl extends BaseServiceImpl<String, ImGroup> impleme
 		imGroup.setId(groupId);
 		imGroup.setCreateTime(date);
 		imGroup.setIntroduce(groupName);
+		imGroup.setMemo(groupName);
 		imGroup.setMemberNum(userIdList.size());
 		imGroup.setName(groupName);
 		imGroup.setType(type);
@@ -128,6 +130,9 @@ public class ImGroupServiceImpl extends BaseServiceImpl<String, ImGroup> impleme
 		imGroup.setUpdateTime(date);
 		imGroupDao.insert(imGroup);
 		List<ImGroupMember> groupMemberList = imGroupMemberDao.queryMembers(groupId, userIdList, TenantContextHolder.getTenantId());
+		if(currentUserId != null){
+			groupMemberList.get(0).setRoleType("乐团主管");
+		}
 		imGroupMemberDao.batchInsert(groupMemberList);
         Function<String,GroupMember> newGroup = userId ->new GroupMember(userId, groupId);
 		List<GroupMember> groupMembers =  userIdList.stream().map(newGroup).collect(Collectors.toList());

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ImSendGroupMessageServiceImpl.java

@@ -53,6 +53,10 @@ public class ImSendGroupMessageServiceImpl extends BaseServiceImpl<Long, ImSendG
 	@Transactional(rollbackFor = Exception.class)
 	public void sendGroupMessage(ImSendGroupMessage messageDto) throws Exception {
 		SysUser user = Optional.ofNullable(sysUserFeignService.queryUserInfo()).orElseThrow(() -> new BizException("用户不存在"));
+		String[] split = messageDto.getTargetIds().split(",");
+		if(split.length > 10){
+			throw new BizException("单次目标用户(群组)不可超过10");
+		}
 		messageDto.setSenderId(user.getId().toString());
 		messageDto.setOperator(user.getRealName());
 		if(Objects.isNull(messageDto.getSendTime())){

+ 2 - 8
mec-biz/src/main/resources/config/mybatis/ImGroupMapper.xml

@@ -65,10 +65,7 @@
 			group_type_ = #{groupType},
 		</if>
 		<if test="memberNum != null">
-		member_num_ = #{memberNum},
-		</if>
-		<if test="id != null">
-		id_ = #{id},
+			member_num_ = member_num_ + #{memberNum},
 		</if>
 		<if test="tags != null">
 		tags_ = #{tags},
@@ -91,9 +88,6 @@
 		<if test="type != null">
 		type_ = #{type},
 		</if>
-		<if test="createTime != null">
-		create_time_ = #{createTime},
-		</if>
 		</set> WHERE id_ = #{id} and tenant_id_ = #{tenantId}
 	</update>
     <update id="updateNickname">
@@ -119,7 +113,7 @@
 				AND igm.user_id_ = #{userId}
 			</if>
 			<if test="search != null and search != ''">
-				AND (ig.name_ like concat('%',#{search},'%') or ig.tags_ like concat('%',#{search},'%'))
+				AND (ig.name_ like concat('%',#{search},'%') or ig.memo_ like concat('%',#{search},'%'))
 			</if>
 			<if test="ignoreIds != null and ignoreIds != ''">
 				AND NOT FIND_IN_SET(ig.id_,#{ignoreIds})

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -1462,7 +1462,7 @@
                 AND (t.id_ = #{search} OR su.real_name_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%'))
             </if>
             <if test="organId != null">
-                AND t.organ_id_ = #{organId}
+                AND FIND_IN_SET(t.organ_id_,#{organId})
             </if>
             <if test="subjectId != null">
                 AND FIND_IN_SET(#{subjectId},t.subject_id_)

+ 6 - 1
mec-biz/src/main/resources/config/mybatis/TempLiveTeacherCardMapper.xml

@@ -22,6 +22,8 @@
 
         <result column="recommend_level_flag_" property="recommendLevelFlag"/>
         <result column="join_flag_" property="joinFlag"/>
+        <result column="subject_name_" property="subjectName"/>
+        <result column="student_id_" property="studentId"/>
     </resultMap>
 
     <!-- 根据主键查询一条记录 -->
@@ -111,10 +113,13 @@
 
     <select id="list" resultMap="TempLiveTeacherCard">
         select t.*,
+               s.name_ as subject_name_,
+               #{studentId} as student_id_,
                IF(a.live_goods_id_ is null,0,1) as recommend_level_flag_,
                (select count(1) from im_group_member m where m.im_group_id_ = t.im_group_id_ and m.user_id_ = #{studentId})>0 AS join_flag_
         from temp_live_teacher_card t
-                 left join (
+        left join `subject` s on t.subject_id_ = s.id_
+        left join (
             select
                 live_goods_id_,recommend_level_
             from temp_buy_free_live_theory_course

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/controller/ImGroupController.java

@@ -162,7 +162,7 @@ public class ImGroupController extends BaseController {
 	@ApiOperation("解散群")
 	@PostMapping(value = "/dismissGroup")
 	@AuditLogAnnotation(operateName = "解散群",interfaceURL = "imGroup/dismissGroup")
-	@ApiImplicitParams({ @ApiImplicitParam(name = "imGroupId", value = "群编号", required = true, dataType = "String")})
+	@ApiImplicitParam(name = "imGroupId", value = "群编号", required = true, dataType = "String")
 	public Object dismissGroup(String imGroupId) {
 		imGroupService.dismissGroup(imGroupId);
 		return succeed();