Commit aeb05cca by chentianzhong

搜索邮件

parent 4ced4205
...@@ -16,7 +16,7 @@ public enum EmailFolderEnum { ...@@ -16,7 +16,7 @@ public enum EmailFolderEnum {
FOLDER_OUTBOX(3, "草稿箱"), FOLDER_OUTBOX(3, "草稿箱"),
FOLDER_ALREADY_SEND(4, "已发送"), FOLDER_ALREADY_SEND(4, "已发送"),
FOLDER_ALREADY_DELETE(5, "回收站"), FOLDER_ALREADY_DELETE(5, "回收站"),
FOLDER_OTHER(6, "邮箱(文件夹)"), FOLDER_OTHER(6, "我的文件夹"),
FOLDER_MANAGE(7, "邮件管理"), FOLDER_MANAGE(7, "邮件管理"),
; ;
......
...@@ -3,6 +3,7 @@ package com.zq.email.service.impl; ...@@ -3,6 +3,7 @@ package com.zq.email.service.impl;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
...@@ -698,9 +699,9 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email ...@@ -698,9 +699,9 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email
case FOLDER_ALREADY_SEND: //已发送 case FOLDER_ALREADY_SEND: //已发送
if (vo.getSendUserId()!=null){ if (vo.getSendUserId()!=null){
vo.setFolderId(null); vo.setFolderId(null);
vo.setUserId(vo.getSendUserId()); vo.setUserId(adminContext.getUserId());
vo.setSendUserId(adminContext.getUserId()); vo.setSendUserId(adminContext.getUserId());
vo.setPersonType(EmailConstant.TYPE_EMAIL_RECEIVE); vo.setPersonType(EmailConstant.TYPE_EMAIL_SEND);
//vo.setIsPerson(WhetherEnum.YES.getKey()); //vo.setIsPerson(WhetherEnum.YES.getKey());
vo.setIsSend(WhetherEnum.YES.getKey()); vo.setIsSend(WhetherEnum.YES.getKey());
}else{ }else{
...@@ -751,23 +752,26 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email ...@@ -751,23 +752,26 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email
break; break;
case FOLDER_ALREADY_SEND: //已发送 case FOLDER_ALREADY_SEND: //已发送
if (vo.getSendUserId() != null) {
if (vo.getReceiveUserId() != null) {
vo.setFolderId(null); vo.setFolderId(null);
vo.setUserId(vo.getSendUserId()); vo.setUserId(adminContext.getUserId());
vo.setSendUserId(adminContext.getUserId()); vo.setSendUserId(adminContext.getUserId());
vo.setPersonType(EmailConstant.TYPE_EMAIL_RECEIVE); vo.setPersonType(EmailConstant.TYPE_EMAIL_SEND);
//vo.setIsPerson(WhetherEnum.YES.getKey()); //vo.setIsPerson(WhetherEnum.YES.getKey());
vo.setIsSend(WhetherEnum.YES.getKey()); vo.setIsSend(WhetherEnum.YES.getKey());
} else { } else {
vo.setUserId(adminContext.getUserId()); vo.setSendUserId(adminContext.getUserId());
// vo.setUserId(vo.getReceiveUserId());
vo.setPersonType(EmailConstant.TYPE_EMAIL_SEND); vo.setPersonType(EmailConstant.TYPE_EMAIL_SEND);
//vo.setIsPerson(WhetherEnum.YES.getKey()); //vo.setIsPerson(WhetherEnum.YES.getKey());
vo.setIsSend(WhetherEnum.YES.getKey()); vo.setIsSend(WhetherEnum.YES.getKey());
} }
break; break;
case FOLDER_ALREADY_DELETE: //回收站 case FOLDER_ALREADY_DELETE: //回收站
vo.setPersonType(EmailConstant.TYPE_EMAIL_RECEIVE); vo.setUserId(adminContext.getUserId());
vo.setIsSend(WhetherEnum.YES.getKey()); //vo.setPersonType(EmailConstant.TYPE_EMAIL_RECEIVE);
//vo.setIsSend(WhetherEnum.YES.getKey());
break; break;
default: //其他文件夹 default: //其他文件夹
vo.setPersonType(EmailConstant.TYPE_EMAIL_RECEIVE); vo.setPersonType(EmailConstant.TYPE_EMAIL_RECEIVE);
...@@ -775,17 +779,16 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email ...@@ -775,17 +779,16 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email
break; break;
} }
} }
vo.setUserId(adminContext.getUserId());
Page<EmailPerson> page = new Page<>(vo.getPage(), vo.getSize()); Page<EmailPerson> page = new Page<>(vo.getPage(), vo.getSize());
page = this.baseMapper.selectSearchPage(page, vo); page = this.baseMapper.selectSearchPage(page, vo);
if (page!=null && page.getRecords()!=null){ if (page!=null && page.getRecords()!=null){
for (EmailPerson person : page.getRecords()) { for (EmailPerson person : page.getRecords()) {
EmailContent content = this.emailContentService.getById(person.getEmailContentId()); EmailContent content = this.emailContentService.getById(person.getEmailContentId());
if(vo.getFolderId().equals(EmailFolderEnum.FOLDER_ALREADY_SEND.getKey())){ //if(vo.getFolderId().equals(EmailFolderEnum.FOLDER_ALREADY_SEND.getKey())){
person.setEmailAttachList(this.emailAttachService.findByContentId(content.getId())); person.setEmailAttachList(this.emailAttachService.findByContentId(content.getId()));
person.setReceiverList(this.findReceiverByContentId(content.getId(), null)); person.setReceiverList(this.findReceiverByContentId(content.getId(), null));
} //}
//发送人头像 //发送人头像
if (vo.getIsSenderPhoto()){ if (vo.getIsSenderPhoto()){
ResultVo<UserDto> senderVo = adminFeignClient.findById(content.getSendUserId()); ResultVo<UserDto> senderVo = adminFeignClient.findById(content.getSendUserId());
...@@ -793,7 +796,12 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email ...@@ -793,7 +796,12 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email
UserDto data = senderVo.getData(); UserDto data = senderVo.getData();
UserDto userDto = new UserDto(); UserDto userDto = new UserDto();
if (profile.contains("wan")) { if (profile.contains("wan")) {
content.setSendUserPhoto(StrUtil.isNotBlank(data.getPhoto())?data.getPhoto().replace("http://147.1.3.87", "http://172.28.1.159:82"):data.getPhoto()); // content.setSendUserPhoto(StrUtil.isNotBlank(data.getPhoto())?data.getPhoto()
// .replace("http://147.1.3.87", "http://172.28.1.159:82"):data.getPhoto());
String replace = data.getPhoto()
.replace("http://147.1.3.87", "http://172.28.1.159:82")
.replace("http://147.2.3.3", "http://172.28.1.71");
content.setSendUserPhoto(replace);
//userDto.setPhoto(); //userDto.setPhoto();
}else{ }else{
content.setSendUserPhoto(data.getPhoto()); content.setSendUserPhoto(data.getPhoto());
...@@ -962,44 +970,51 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email ...@@ -962,44 +970,51 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email
.eq(sendTime!=null, EmailPerson::getSendTime, sendTime) .eq(sendTime!=null, EmailPerson::getSendTime, sendTime)
.eq(EmailPerson::getFolderId,folderId); .eq(EmailPerson::getFolderId,folderId);
switch (EmailFolderEnum.getEnumByKey(folderId.intValue())) { //switch遇到null
case FOLDER_INBOX: //收件箱 if(ObjectUtil.isNotEmpty(EmailFolderEnum.getEnumByKey(folderId.intValue()))) {
queryWrapper
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_RECEIVE)
.eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey())
.eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey())
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
case FOLDER_DEPT_INBOX: //部门邮件
queryWrapper
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_RECEIVE)
.eq(EmailPerson::getIsPerson, WhetherEnum.NO.getKey())
.eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey())
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
case FOLDER_OUTBOX: //草稿箱
queryWrapper
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_SEND)
.eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey())
.eq(EmailPerson::getIsSend, WhetherEnum.NO.getKey())
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
case FOLDER_ALREADY_SEND: //已发送
queryWrapper
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_SEND)
.eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey())
.eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey())
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
case FOLDER_ALREADY_DELETE: //回收站
queryWrapper
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
default:
queryWrapper
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
switch (EmailFolderEnum.getEnumByKey(folderId.intValue())) {
case FOLDER_INBOX: //收件箱
queryWrapper
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_RECEIVE)
.eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey())
.eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey())
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
case FOLDER_DEPT_INBOX: //部门邮件
queryWrapper
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_RECEIVE)
.eq(EmailPerson::getIsPerson, WhetherEnum.NO.getKey())
.eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey())
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
case FOLDER_OUTBOX: //草稿箱
queryWrapper
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_SEND)
.eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey())
.eq(EmailPerson::getIsSend, WhetherEnum.NO.getKey())
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
case FOLDER_ALREADY_SEND: //已发送
queryWrapper
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_SEND)
.eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey())
.eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey())
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
case FOLDER_ALREADY_DELETE: //回收站
queryWrapper
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
default:
queryWrapper
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
}
}else{
queryWrapper
.eq(EmailPerson::getUserId, adminContext.getUserId());
} }
EmailPerson emailPerson = this.getOne(queryWrapper, false); EmailPerson emailPerson = this.getOne(queryWrapper, false);
AssertUtils.notNull(emailPerson, "邮件人员信息不匹配"); AssertUtils.notNull(emailPerson, "邮件人员信息不匹配");
...@@ -1021,44 +1036,51 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email ...@@ -1021,44 +1036,51 @@ public class EmailPersonServiceImpl extends ServiceImpl<EmailPersonMapper, Email
.eq(sendTime!=null, EmailPerson::getSendTime, sendTime) .eq(sendTime!=null, EmailPerson::getSendTime, sendTime)
.eq(EmailPerson::getFolderId,folderId); .eq(EmailPerson::getFolderId,folderId);
switch (EmailFolderEnum.getEnumByKey(folderId.intValue())) { //switch遇到null
case FOLDER_INBOX: //收件箱 if(ObjectUtil.isNotEmpty(EmailFolderEnum.getEnumByKey(folderId.intValue()))) {
queryWrapper
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_RECEIVE) switch (EmailFolderEnum.getEnumByKey(folderId.intValue())) {
.eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey()) case FOLDER_INBOX: //收件箱
.eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey()) queryWrapper
.eq(EmailPerson::getUserId, adminContext.getUserId()); .eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_RECEIVE)
break; .eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey())
case FOLDER_DEPT_INBOX: //部门邮件 .eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey())
queryWrapper .eq(EmailPerson::getUserId, adminContext.getUserId());
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_RECEIVE) break;
.eq(EmailPerson::getIsPerson, WhetherEnum.NO.getKey()) case FOLDER_DEPT_INBOX: //部门邮件
.eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey()) queryWrapper
.eq(EmailPerson::getUserId, adminContext.getUserId()); .eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_RECEIVE)
break; .eq(EmailPerson::getIsPerson, WhetherEnum.NO.getKey())
case FOLDER_OUTBOX: //草稿箱 .eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey())
queryWrapper .eq(EmailPerson::getUserId, adminContext.getUserId());
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_SEND) break;
.eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey()) case FOLDER_OUTBOX: //草稿箱
.eq(EmailPerson::getIsSend, WhetherEnum.NO.getKey()) queryWrapper
.eq(EmailPerson::getUserId, adminContext.getUserId()); .eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_SEND)
break; .eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey())
case FOLDER_ALREADY_SEND: //已发送 .eq(EmailPerson::getIsSend, WhetherEnum.NO.getKey())
queryWrapper .eq(EmailPerson::getUserId, adminContext.getUserId());
.eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_SEND) break;
.eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey()) case FOLDER_ALREADY_SEND: //已发送
.eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey()); queryWrapper
//.eq(EmailPerson::getUserId, adminContext.getUserId()); .eq(EmailPerson::getPersonType, EmailConstant.TYPE_EMAIL_SEND)
break; .eq(EmailPerson::getIsPerson, WhetherEnum.YES.getKey())
case FOLDER_ALREADY_DELETE: //回收站 .eq(EmailPerson::getIsSend, WhetherEnum.YES.getKey());
queryWrapper //.eq(EmailPerson::getUserId, adminContext.getUserId());
.eq(EmailPerson::getUserId, adminContext.getUserId()); break;
break; case FOLDER_ALREADY_DELETE: //回收站
default: queryWrapper
queryWrapper .eq(EmailPerson::getUserId, adminContext.getUserId());
.eq(EmailPerson::getUserId, adminContext.getUserId()); break;
break; default:
queryWrapper
.eq(EmailPerson::getUserId, adminContext.getUserId());
break;
}
}else{
queryWrapper
.eq(EmailPerson::getUserId, adminContext.getUserId());
} }
EmailPerson emailPerson = this.getOne(queryWrapper, false); EmailPerson emailPerson = this.getOne(queryWrapper, false);
AssertUtils.notNull(emailPerson, "获取收件人信息失败"); AssertUtils.notNull(emailPerson, "获取收件人信息失败");
......
...@@ -50,8 +50,6 @@ public class EmailSearchReqVo extends PageReqVo { ...@@ -50,8 +50,6 @@ public class EmailSearchReqVo extends PageReqVo {
private Integer isPerson ; private Integer isPerson ;
@ApiModelProperty("当前人员id :前端不用传") @ApiModelProperty("当前人员id :前端不用传")
private Long userId; private Long userId;
@ApiModelProperty("是否获取人员头像") @ApiModelProperty("是否获取人员头像")
private Boolean isSenderPhoto = false; private Boolean isSenderPhoto = false;
......
...@@ -2,4 +2,5 @@ ...@@ -2,4 +2,5 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zq.email.mapper.EmailFolderMapper"> <mapper namespace="com.zq.email.mapper.EmailFolderMapper">
</mapper> </mapper>
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<select id="selectSearchTotal" resultType="integer" parameterType="com.zq.email.vo.EmailSearchReqVo"> <select id="selectSearchTotal" resultType="integer" parameterType="com.zq.email.vo.EmailSearchReqVo">
SELECT SELECT
COUNT(1) COUNT(EP."ID")
FROM FROM
"EMAIL_PERSON" EP "EMAIL_PERSON" EP
<where> <where>
...@@ -36,19 +36,18 @@ ...@@ -36,19 +36,18 @@
AND EP."SEND_TIME" &lt;= #{s.endTime} AND EP."SEND_TIME" &lt;= #{s.endTime}
</if> </if>
<!-- 已发送,收件人 --> <if test="s.receiveUserId != null">
<!-- <if test="s.receiveUserId != null">--> AND EP."EMAIL_CONTENT_ID" IN(
<!-- AND EP."ID" IN(--> SELECT
<!-- SELECT--> EP2."EMAIL_CONTENT_ID"
<!-- EP2."ID"--> FROM
<!-- FROM--> "EMAIL_PERSON" EP2
<!-- "EMAIL_PERSON" EP2--> WHERE
<!-- WHERE--> EP2."PERSON_TYPE" = 2
<!-- EP2."PERSON_TYPE" = 2--> AND EP2."IS_SEND" = 1
<!-- AND EP2."IS_SEND" = 1--> AND EP2."USER_ID" = #{s.receiveUserId}
<!-- AND EP2."USER_ID" = #{s.receiveUserId}--> )
<!-- )--> </if>
<!-- </if>-->
<!-- 其他文件夹,发件人、标题、内容 --> <!-- 其他文件夹,发件人、标题、内容 -->
<if test="s.sendUserId != null or (s.title!=null and s.title!='') or (s.content!=null and s.content!='')"> <if test="s.sendUserId != null or (s.title!=null and s.title!='') or (s.content!=null and s.content!='')">
...@@ -84,92 +83,101 @@ ...@@ -84,92 +83,101 @@
) )
</if> </if>
</where> </where>
GROUP BY EP.id
</select> </select>
<select id="selectSearchPage" resultType="com.zq.email.entity.EmailPerson" parameterType="com.zq.email.vo.EmailSearchReqVo"> <select id="selectSearchPage" resultType="com.zq.email.entity.EmailPerson" parameterType="com.zq.email.vo.EmailSearchReqVo">
SELECT SELECT
EP.* EP1.*
FROM FROM
"EMAIL_PERSON" EP "EMAIL_PERSON" EP1
<where> WHERE
<if test="s.folderId != null"> EP1."ID" IN
AND EP."FOLDER_ID" = #{s.folderId} (
</if> SELECT
<if test="s.isPerson != null"> EP."ID"
AND EP."IS_PERSON" = #{s.isPerson} FROM
</if> "EMAIL_PERSON" EP
<where>
<if test="s.isSend != null"> <if test="s.folderId != null">
AND EP."IS_SEND" = #{s.isSend} AND EP."FOLDER_ID" = #{s.folderId}
</if> </if>
<if test="s.isPerson != null">
<if test="s.personType != null"> AND EP."IS_PERSON" = #{s.isPerson}
AND EP."PERSON_TYPE" = #{s.personType} </if>
</if>
<if test="s.isSend != null">
<if test="s.userId != null"> AND EP."IS_SEND" = #{s.isSend}
AND EP."USER_ID" = #{s.userId} </if>
</if>
<if test="s.personType != null">
<if test="s.isRead != null"> AND EP."PERSON_TYPE" = #{s.personType}
AND EP."IS_READ" = #{s.isRead} </if>
</if>
<if test="s.userId != null">
<if test="s.startTime != null and s.endTime!=null "> AND EP."USER_ID" = #{s.userId}
AND EP."SEND_TIME" &gt;= #{s.startTime} </if>
AND EP."SEND_TIME" &lt;= #{s.endTime}
</if> <if test="s.isRead != null">
AND EP."IS_READ" = #{s.isRead}
</if>
<!-- 已发送,收件人 -->
<!-- <if test="s.receiveUserId != null">--> <if test="s.startTime != null and s.endTime!=null ">
<!-- AND EP."ID" IN(--> AND EP."SEND_TIME" &gt;= #{s.startTime}
<!-- SELECT--> AND EP."SEND_TIME" &lt;= #{s.endTime}
<!-- EP2."ID"--> </if>
<!-- FROM-->
<!-- "EMAIL_PERSON" EP2--> <if test="s.receiveUserId != null">
<!-- WHERE--> AND EP."EMAIL_CONTENT_ID" IN(
<!-- EP2."PERSON_TYPE" = 2-->
<!-- AND EP2."IS_SEND" = 1-->
<!-- AND EP2."USER_ID" = #{s.receiveUserId}-->
<!-- )-->
<!-- </if>-->
<if test="s.sendUserId != null or (s.title!=null and s.title!='') or (s.content!=null and s.content!='')">
AND EP."EMAIL_CONTENT_ID" IN(
SELECT
EC."ID"
FROM
"EMAIL_CONTENT" EC
<where>
<if test="s.sendUserId != null">
AND EC."SEND_USER_ID" = #{s.sendUserId}
</if>
<if test="s.title != null and s.title !='' ">
AND EC."TITLE" LIKE concat('%', #{s.title}, '%')
</if>
<if test="s.content != null and s.content !='' ">
AND EC."CONTENT" LIKE concat('%', #{s.content}, '%')
</if>
</where>
)
</if>
<if test="s.attachName!=null and s.attachName!=''">
AND EP."EMAIL_CONTENT_ID" IN(
SELECT SELECT
EA."EMAIL_CONTENT_ID" EP2."EMAIL_CONTENT_ID"
FROM FROM
"EMAIL_ATTACH" EA "EMAIL_PERSON" EP2
WHERE WHERE
EA."ATTACH_NAME" LIKE concat('%', #{s.attachName}, '%') EP2."PERSON_TYPE" = 2
) AND EP2."IS_SEND" = 1
</if> AND EP2."USER_ID" = #{s.receiveUserId}
</where> )
ORDER BY EP."SEND_TIME" DESC </if>
<if test="s.sendUserId != null or (s.title!=null and s.title!='') or (s.content!=null and s.content!='')">
AND EP."EMAIL_CONTENT_ID" IN(
SELECT
EC."ID"
FROM
"EMAIL_CONTENT" EC
<where>
<if test="s.sendUserId != null">
AND EC."SEND_USER_ID" = #{s.sendUserId}
</if>
<if test="s.title != null and s.title !='' ">
AND EC."TITLE" LIKE concat('%', #{s.title}, '%')
</if>
<if test="s.content != null and s.content !='' ">
AND EC."CONTENT" LIKE concat('%', #{s.content}, '%')
</if>
</where>
)
</if>
<if test="s.attachName!=null and s.attachName!=''">
AND EP."EMAIL_CONTENT_ID" IN(
SELECT
EA."EMAIL_CONTENT_ID"
FROM
"EMAIL_ATTACH" EA
WHERE
EA."ATTACH_NAME" LIKE concat('%', #{s.attachName}, '%')
)
</if>
</where>
GROUP BY EP."ID"
)
ORDER BY EP1."SEND_TIME" DESC
</select> </select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment