Browse Source

Merge remote-tracking branch 'origin/dev_group_act_notice' into dev_temp

# Conflicts:
#	epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/ResiGroupOpenFeignClient.java
#	epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/fallback/ResiGroupOpenFeignClientFallback.java
#	epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java
dev_shibei_match
zxc 4 years ago
parent
commit
c36b7c19cf
  1. 16
      epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiTopicController.java
  2. 10
      epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/ResiTopicService.java
  3. 29
      epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/ResiTopicServiceImpl.java
  4. 32
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/AllMessagesFormDTO.java
  5. 78
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/AllMessagesResultDTO.java
  6. 10
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/ResiGroupOpenFeignClient.java
  7. 5
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/fallback/ResiGroupOpenFeignClientFallback.java
  8. 9
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/ResiGroupDao.java
  9. 21
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java
  10. 4
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/notice/service/impl/NoticeServiceImpl.java
  11. 13
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java
  12. 9
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java
  13. 69
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java
  14. 67
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/ResiGroupDao.xml

16
epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiTopicController.java

@ -6,8 +6,10 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.resi.group.dto.comment.form.ResiQueryCommentFormDTO;
import com.epmet.resi.group.dto.comment.result.GovCommentResultDTO;
import com.epmet.resi.group.dto.topic.form.AllMessagesFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicDetailFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO;
import com.epmet.resi.group.dto.topic.result.AllMessagesResultDTO;
import com.epmet.resi.group.dto.topic.result.GovHiddenTopicInfoResultDTO;
import com.epmet.resi.group.dto.topic.result.GovTopicInfoResultDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicDetailResultDTO;
@ -70,6 +72,18 @@ public class ResiTopicController {
return resiTopicService.topicDetail(topicDetailFormDTO);
}
/**
* @Description 小组内所有历史消息话题通知活动
* @Param tokenDto
* @Param topicPageFormDTO
* @author zxc
* @date 2021/4/28 上午10:41
*/
@PostMapping("allmessages")
public Result<List<AllMessagesResultDTO>> allMessages(@LoginUser TokenDto tokenDto, @RequestBody AllMessagesFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO, AllMessagesFormDTO.AllMessagesForm.class);
formDTO.setCustomerId(tokenDto.getCustomerId());
return new Result<List<AllMessagesResultDTO>>().ok(resiTopicService.allMessages(formDTO));
}
}

10
epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/ResiTopicService.java

@ -3,8 +3,10 @@ package com.epmet.service;
import com.epmet.commons.tools.utils.Result;
import com.epmet.resi.group.dto.comment.form.ResiQueryCommentFormDTO;
import com.epmet.resi.group.dto.comment.result.GovCommentResultDTO;
import com.epmet.resi.group.dto.topic.form.AllMessagesFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicDetailFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO;
import com.epmet.resi.group.dto.topic.result.AllMessagesResultDTO;
import com.epmet.resi.group.dto.topic.result.GovHiddenTopicInfoResultDTO;
import com.epmet.resi.group.dto.topic.result.GovTopicInfoResultDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicDetailResultDTO;
@ -53,5 +55,13 @@ public interface ResiTopicService {
**/
Result<List<GovCommentResultDTO>> topicComments(ResiQueryCommentFormDTO queryCommentFormDTO);
/**
* @Description 小组内所有历史消息话题通知活动
* @Param formDTO
* @author zxc
* @date 2021/4/28 下午1:29
*/
List<AllMessagesResultDTO> allMessages(AllMessagesFormDTO formDTO);
}

29
epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/ResiTopicServiceImpl.java

@ -1,20 +1,21 @@
package com.epmet.service.impl;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.utils.Result;
import com.epmet.feign.ResiGroupFeignClient;
import com.epmet.resi.group.dto.comment.form.ResiQueryCommentFormDTO;
import com.epmet.resi.group.dto.comment.result.GovCommentResultDTO;
import com.epmet.resi.group.dto.comment.result.ResiCommentResultDTO;
import com.epmet.resi.group.dto.topic.form.AllMessagesFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicDetailFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO;
import com.epmet.resi.group.dto.topic.result.GovHiddenTopicInfoResultDTO;
import com.epmet.resi.group.dto.topic.result.GovTopicInfoResultDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicDetailResultDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO;
import com.epmet.resi.group.dto.topic.result.*;
import com.epmet.resi.group.feign.ResiGroupOpenFeignClient;
import com.epmet.service.ResiTopicService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
@ -24,6 +25,8 @@ public class ResiTopicServiceImpl implements ResiTopicService {
@Autowired
private ResiGroupFeignClient resiGroupFeignClient;
@Autowired
private ResiGroupOpenFeignClient resiGroupOpenFeignClient;
/**
* @Description 政府端群组管理-屏蔽话题列表查询
@ -125,4 +128,22 @@ public class ResiTopicServiceImpl implements ResiTopicService {
return new Result<List<GovCommentResultDTO>>().ok(commentsResult);
}
/**
* @Description 小组内所有历史消息话题通知活动
* @Param formDTO
* @author zxc
* @date 2021/4/28 下午1:29
*/
@Override
public List<AllMessagesResultDTO> allMessages(AllMessagesFormDTO formDTO) {
Result<List<AllMessagesResultDTO>> listResult = resiGroupOpenFeignClient.allMessages(formDTO);
if (!listResult.success()){
throw new RenException(listResult.getMsg());
}
if (CollectionUtils.isEmpty(listResult.getData())){
return new ArrayList<>();
}
return listResult.getData();
}
}

32
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/AllMessagesFormDTO.java

@ -0,0 +1,32 @@
package com.epmet.resi.group.dto.topic.form;
import lombok.Data;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2021/4/28 上午10:43
* @DESC
*/
@Data
public class AllMessagesFormDTO implements Serializable {
private static final long serialVersionUID = -2658793886922936733L;
public interface AllMessagesForm{}
@NotBlank(message = "小组ID不能为空",groups = AllMessagesForm.class)
private String groupId;
@NotNull(message = "pageNo不能为空",groups = AllMessagesForm.class)
private Integer pageNo;
@NotNull(message = "pageSize不能为空",groups = AllMessagesForm.class)
private Integer pageSize;
private String customerId;
}

78
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/AllMessagesResultDTO.java

@ -0,0 +1,78 @@
package com.epmet.resi.group.dto.topic.result;
import lombok.Data;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
* @Author zxc
* @DateTime 2021/4/28 上午10:51
* @DESC
*/
@Data
public class AllMessagesResultDTO implements Serializable {
private static final long serialVersionUID = -4123381714064953276L;
/**
* 话题通知活动Id
*/
private String id;
/**
* 发布者的全称街道-姓氏先生/女士专项组显示真实名
*/
private String userNickName;
/**
* 发布者的头像Url
*/
private String userHeadPhoto;
/**
* 发布时间yyyy-MM-dd
*/
private String releaseTime;
/**
* 内容
*/
private String content;
/**
* 话题状态discussing进行中closed已关闭
*/
private String status;
/**
* 数据类型(topic:话题 notice:通知 act:活动)
*/
private String contentType;
/**
* 徽章Url集合
*/
private List<String> badgeList = new ArrayList<>();
/**
* 通知是否过期(true: false:)
*/
private Boolean isExpirat;
/**
* 是否变更yesno
*/
private String isChange = "no";
/**
* 发布者ID
*/
private String userId;
/**
* 第一张图
*/
private String firstPhoto;
}

10
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/ResiGroupOpenFeignClient.java

@ -244,4 +244,14 @@ public interface ResiGroupOpenFeignClient {
*/
@PostMapping("resi/group/group/groupPointDetail/{groupId}")
Result<GroupPointDetailResultDTO> groupPointDetail(@PathVariable String groupId);
/**
* @Description 小组内所有历史消息话题通知活动
* @Param tokenDto
* @Param topicPageFormDTO
* @author zxc
* @date 2021/4/28 上午10:41
*/
@PostMapping("/resi/group/topic/allmessages")
Result<List<AllMessagesResultDTO>> allMessages(@RequestBody AllMessagesFormDTO formDTO);
}

5
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/fallback/ResiGroupOpenFeignClientFallback.java

@ -205,4 +205,9 @@ public class ResiGroupOpenFeignClientFallback implements ResiGroupOpenFeignClien
public Result<GroupPointDetailResultDTO> groupPointDetail(String groupId) {
return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "groupPointDetail", groupId);
}
@Override
public Result<List<AllMessagesResultDTO>> allMessages(AllMessagesFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "allMessages", formDTO);
}
}

9
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/ResiGroupDao.java

@ -26,6 +26,7 @@ import com.epmet.resi.group.dto.group.result.*;
import com.epmet.resi.group.dto.member.ResiGroupMemberDTO;
import com.epmet.resi.group.dto.notice.result.ReadStatusResultDTO;
import com.epmet.resi.group.dto.notice.result.UnReadListResultDTO;
import com.epmet.resi.group.dto.topic.result.AllMessagesResultDTO;
import com.epmet.resi.group.dto.topic.result.GetPastTopicListV2ResultDTO;
import com.epmet.resi.group.dto.topic.result.LatestTenResultDTO;
import com.epmet.resi.group.dto.member.result.GroupAchievementDTO;
@ -316,6 +317,14 @@ public interface ResiGroupDao extends BaseDao<ResiGroupEntity> {
*/
List<GetPastTopicListV2ResultDTO> getPastTopicListV2ByIds(@Param("ids")List<String> ids);
/**
* @Description 根据IDs查询 topicactnotice信息工作端
* @Param ids
* @author zxc
* @date 2021/4/28 下午1:56
*/
List<AllMessagesResultDTO> getAllMessagesOrg(@Param("ids")List<String> ids);
/**
* @Description 根据用户ID和活动通知ID查询阅读状态
* @Param ids

21
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java

@ -39,6 +39,7 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.utils.ScanContentUtils;
import com.epmet.constant.ReadFlagConstant;
import com.epmet.dto.form.*;
import com.epmet.dto.result.UserInfoResultDTO;
import com.epmet.dto.result.UserResiInfoResultDTO;
import com.epmet.dto.result.UserRoleResultDTO;
import com.epmet.feign.EpmetMessageOpenFeignClient;
@ -873,12 +874,24 @@ public class ResiGroupServiceImpl extends BaseServiceImpl<ResiGroupDao, ResiGrou
resultDTO.setTotalTopics(resiGroupInfoRedisDTO.getGroupStatisticalInfo().getTotalTopics());
resultDTO.setLevel(resiGroupInfoRedisDTO.getLevel());
//获取组长信息
//根据组类型判断是否返真实姓名
ResiGroupEntity entity = resiGroupDao.selectById(resiGroupInfoRedisDTO.getGroupId());
Result<UserResiInfoResultDTO> groupLeaderUserInfo = this.getGroupLeaderUserInfo(formDTO.getGroupId());
if (groupLeaderUserInfo.success() && null != groupLeaderUserInfo.getData()) {
resultDTO.setLeaderName(groupLeaderUserInfo.getData().getShowName());
if("branch".equals(entity.getGroupType())){
//获取组长信息
if (groupLeaderUserInfo.success() && null != groupLeaderUserInfo.getData()) {
String street = groupLeaderUserInfo.getData().getStreet() == null ? "" : groupLeaderUserInfo.getData().getStreet() + "-";
resultDTO.setLeaderName(street + groupLeaderUserInfo.getData().getSurname() + groupLeaderUserInfo.getData().getName());
} else {
logger.warn("组长注册信息查询失败,msg:{},groupId:{}", groupLeaderUserInfo.getMsg(), formDTO.getGroupId());
}
} else {
logger.warn("组长注册信息查询失败,msg:{},groupId:{}", groupLeaderUserInfo.getMsg(), formDTO.getGroupId());
//获取组长信息
if (groupLeaderUserInfo.success() && null != groupLeaderUserInfo.getData()) {
resultDTO.setLeaderName(groupLeaderUserInfo.getData().getShowName());
} else {
logger.warn("组长注册信息查询失败,msg:{},groupId:{}", groupLeaderUserInfo.getMsg(), formDTO.getGroupId());
}
}
return new Result<GovGroupSummarizeResultDTO>().ok(resultDTO);

4
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/notice/service/impl/NoticeServiceImpl.java

@ -479,8 +479,8 @@ public class NoticeServiceImpl extends BaseServiceImpl<NoticeDao, NoticeEntity>
url.append(user.getHeadImgUrl());
}
});
resultDTO.setReleaseUserName(name.toString());
resultDTO.setReleaseUserHeadPhoto(url.toString());
resultDTO.setReleaseUserName(String.valueOf(name));
resultDTO.setReleaseUserHeadPhoto(String.valueOf(url));
fileList.forEach(f -> {
if ("image".equals(f.getType())) {
imageList.add(f);

13
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java

@ -471,4 +471,17 @@ public class ResiTopicController {
formDTO.setCustomerId(tokenDto.getCustomerId());
return new Result<List<GetPastTopicListV2ResultDTO>>().ok(topicService.getPastTopicListV2(formDTO));
}
/**
* @Description 小组内所有历史消息话题通知活动
* @Param tokenDto
* @Param topicPageFormDTO
* @author zxc
* @date 2021/4/28 上午10:41
*/
@PostMapping("allmessages")
public Result<List<AllMessagesResultDTO>> allMessages(@RequestBody AllMessagesFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO, GetPastTopicListV2FormDTO.GetPastTopicListV2Form.class);
return new Result<List<AllMessagesResultDTO>>().ok(topicService.allMessages(formDTO));
}
}

9
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java

@ -382,4 +382,13 @@ public interface ResiTopicService extends BaseService<ResiTopicEntity> {
* @date 2021/4/27 下午1:50
*/
List<UserInfoResultDTO> disPoseUserInfo(String groupType, List<String> userIds);
/**
* @Description 小组内所有历史消息话题通知活动
* @Param tokenDto
* @Param topicPageFormDTO
* @author zxc
* @date 2021/4/28 上午10:41
*/
List<AllMessagesResultDTO> allMessages(AllMessagesFormDTO formDTO);
}

69
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java

@ -1222,9 +1222,26 @@ public class ResiTopicServiceImpl extends BaseServiceImpl<ResiTopicDao, ResiTopi
);
});
} else pastTopics.forEach(top -> top.setBadgeList(Collections.EMPTY_LIST));
} else {
pastTopics.forEach(top -> top.setBadgeList(Collections.EMPTY_LIST));
}
}
//支部小组人员返真实姓名
ResiGroupEntity entity = resiGroupDao.selectById(topicPageFormDTO.getGroupId());
if("".equals(entity.getGroupType())){
List<String> userIds = pastTopics.stream().map(m -> m.getUserId()).distinct().collect(Collectors.toList());
List<UserInfoResultDTO> userInfos = resiTopicService.disPoseUserInfo(entity.getGroupType(), userIds);
pastTopics.forEach(item -> {
userInfos.forEach(u->{
if(item.getUserId().equals(u.getUserId())){
item.setReleaseUserName(u.getReleaseUserName());
}
});
});
}
}
return new Result<List<ResiTopicInfoResultDTO>>().ok(pastTopics);
@ -2630,6 +2647,56 @@ public class ResiTopicServiceImpl extends BaseServiceImpl<ResiTopicDao, ResiTopi
return result;
}
/**
* @Description 小组内所有历史消息话题通知活动
* @Param topicPageFormDTO
* @author zxc
* @date 2021/4/28 上午10:41
*/
@Override
public List<AllMessagesResultDTO> allMessages(AllMessagesFormDTO formDTO) {
PageInfo<String> pageInfo = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()).doSelectPageInfo(() -> groupMessageDao.selectNeedIds(formDTO.getGroupId()));
List<String> ids = pageInfo.getList();
if (CollectionUtils.isEmpty(ids)){
return new ArrayList<>();
}
// 根据IDs查询 topic,act,notice信息
List<AllMessagesResultDTO> allMessages = resiGroupDao.getAllMessagesOrg(ids);
if (CollectionUtils.isEmpty(allMessages)){
return new ArrayList<>();
}
// 查询小组类型
ResiGroupEntity resiGroup = resiGroupDao.selectById(formDTO.getGroupId());
List<String> userIds = allMessages.stream().map(m -> m.getUserId()).distinct().collect(Collectors.toList());
// 查询用户头像,姓名
List<UserInfoResultDTO> userInfos = disPoseUserInfo(resiGroup.getGroupType(), userIds);
if (CollectionUtils.isEmpty(userInfos)){
throw new RenException("未查询到用户信息");
}
Result<List<UserBadgesResultDTO>> badgeResult = epmetUserOpenFeignClient.userBadges(new UserBadgesFormDTO(formDTO.getCustomerId(),userIds));
if (!badgeResult.success()){
throw new RenException(ModuleConstant.GET_BADGE_INFO_ERR);
}
allMessages.forEach(a -> {
// 用户头像姓名赋值
userInfos.forEach(u -> {
if (a.getUserId().equals(u.getUserId())){
a.setUserNickName(u.getReleaseUserName());
a.setUserHeadPhoto(u.getReleaseUserHeadPhoto());
}
});
// 徽章
if (!CollectionUtils.isEmpty(badgeResult.getData())){
badgeResult.getData().forEach(b -> {
if (a.getUserId().equals(b.getUserId())){
a.setBadgeList(b.getBadgeIcons());
}
});
}
});
return allMessages;
}
}

67
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/ResiGroupDao.xml

@ -886,4 +886,71 @@
)
</select>
<!-- 根据IDs查询 topic,act,notice信息【工作端】 -->
<select id="getAllMessagesOrg" resultType="com.epmet.resi.group.dto.topic.result.AllMessagesResultDTO">
SELECT id,userId,releaseTime,content,status,contentType,isExpirat,isChange,firstPhoto FROM
((SELECT
t.ID,
t.CREATED_BY AS userId,
DATE_FORMAT(t.CREATED_TIME,'%Y-%m-%d %H:%i:%s') AS releaseTime,
t.TOPIC_CONTENT AS content,
t.`STATUS` AS status,
'topic' AS contentType,
false AS isExpirat,
'no' AS isChange,
IFNULL(ta.ATTACHMENT_URL,'') AS firstPhoto
FROM resi_topic t
LEFT JOIN resi_topic_attachment ta ON ta.TOPIC_ID = t.ID AND ta.ATTACHMENT_TYPE = 'image' AND ta.DEL_FLAG = '0' AND ta.SORT = 0
WHERE t.DEL_FLAG = '0'
AND t.`STATUS` != 'hidden'
AND (
<foreach collection="ids" item="id" separator=" OR ">
t.id = #{id}
</foreach>
)
)
UNION ALL
(SELECT
ai.ID,
ai.CREATED_BY AS userId,
DATE_FORMAT(ai.CHANGED_TIME,'%Y-%m-%d %H:%i:%s') AS releaseTime,
IFNULL(ai.TITLE,'') AS content,
ai.`STATUS` AS status,
'act' AS contentType,
false AS isExpirat,
'no' AS isChange,
IFNULL(ac2.CONTENT,'') AS firstPhoto
FROM group_act_info ai
LEFT JOIN group_act_content ac2 ON ac2.GROUP_ACT_ID = ai.ID AND ac2.CONTENT_TYPE = 'img' AND ac2.SORT = 1
WHERE ai.DEL_FLAG = '0'
AND (
<foreach collection="ids" item="id" separator=" OR ">
ai.id = #{id}
</foreach>
)
)
UNION ALL
(SELECT
n.ID,
n.CREATED_BY AS userId,
DATE_FORMAT(n.CREATED_TIME,'%Y-%m-%d %H:%i:%s') AS releaseTime,
n.TITLE AS content,
'' AS status,
'notice' AS contentType,
(CASE WHEN UNIX_TIMESTAMP(n.EXPIRATION_TIME) <![CDATA[ < ]]> UNIX_TIMESTAMP(NOW()) THEN TRUE ELSE FALSE END) AS isExpirat,
n.IS_CHANGE,
IFNULL(na.ATTACHMENT_URL,'') AS firstPhoto
FROM notice n
LEFT JOIN notice_attachment na ON na.NOTICE_ID = n.ID AND na.DEL_FLAG = '0' AND na.ATTACHMENT_TYPE = 'image' AND na.SORT = 0
WHERE n.DEL_FLAG = '0'
AND (
<foreach collection="ids" item="id" separator=" OR ">
n.id = #{id}
</foreach>
)
)
)temp
ORDER BY releaseTime DESC
</select>
</mapper>

Loading…
Cancel
Save