10 changed files with 290 additions and 3 deletions
@ -0,0 +1,33 @@ |
|||||
|
package com.epmet.dataaggre.dto.message.form; |
||||
|
|
||||
|
import com.epmet.commons.tools.dto.form.PageFormDTO; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* @Description 我发出的消息列表查询 |
||||
|
* @Author yinzuomei |
||||
|
* @Date 2021/8/20 2:58 下午 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class MySentFormDTO extends PageFormDTO implements Serializable { |
||||
|
private static final long serialVersionUID = 2007425752362914036L; |
||||
|
|
||||
|
private String content; |
||||
|
|
||||
|
//以下参数从token中获取
|
||||
|
/** |
||||
|
* 当前用户id |
||||
|
*/ |
||||
|
@NotBlank(message = "userId不能为空",groups =PageFormDTO.AddUserInternalGroup.class) |
||||
|
private String userId; |
||||
|
|
||||
|
/** |
||||
|
* 当前客户id |
||||
|
*/ |
||||
|
@NotBlank(message = "customerId不能为空",groups = PageFormDTO.AddUserInternalGroup.class) |
||||
|
private String customerId; |
||||
|
} |
||||
|
|
@ -0,0 +1,29 @@ |
|||||
|
package com.epmet.dataaggre.dto.message.result; |
||||
|
|
||||
|
import com.epmet.commons.tools.dto.form.FileCommonDTO; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.Date; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @Description 我发送的消息列表 |
||||
|
* @Author yinzuomei |
||||
|
* @Date 2021/8/20 3:01 下午 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class MySentResDTO implements Serializable { |
||||
|
private static final long serialVersionUID = -6765856639039569052L; |
||||
|
private String infoId; |
||||
|
private String content; |
||||
|
private Date publishTime; |
||||
|
private Integer totalReceiver; |
||||
|
private Integer readTotal; |
||||
|
private String firstAttId; |
||||
|
/** |
||||
|
* 附件列表 列表默认返回一个 |
||||
|
*/ |
||||
|
private List<FileCommonDTO> attachmentList; |
||||
|
} |
||||
|
|
@ -0,0 +1,46 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.dataaggre.dao.epmetmessage; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.dao.BaseDao; |
||||
|
import com.epmet.dataaggre.dto.message.result.MySentResDTO; |
||||
|
import com.epmet.dataaggre.entity.epmetmessage.InfoProfileEntity; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
import org.apache.ibatis.annotations.Param; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 消息概要表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2021-08-18 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface InfoProfileDao extends BaseDao<InfoProfileEntity> { |
||||
|
|
||||
|
/** |
||||
|
* 我发出的消息列表 |
||||
|
* |
||||
|
* @param publishStaffId |
||||
|
* @return java.util.List<com.epmet.dataaggre.dto.message.result.MySentResDTO> |
||||
|
* @author yinzuomei |
||||
|
* @date 2021/8/20 3:46 下午 |
||||
|
*/ |
||||
|
List<MySentResDTO> selectListMySent(@Param("publishStaffId") String publishStaffId,@Param("content") String content); |
||||
|
} |
@ -0,0 +1,78 @@ |
|||||
|
/** |
||||
|
* Copyright 2018 人人开源 https://www.renren.io
|
||||
|
* <p> |
||||
|
* This program is free software: you can redistribute it and/or modify |
||||
|
* it under the terms of the GNU General Public License as published by |
||||
|
* the Free Software Foundation, either version 3 of the License, or |
||||
|
* (at your option) any later version. |
||||
|
* <p> |
||||
|
* This program is distributed in the hope that it will be useful, |
||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
* GNU General Public License for more details. |
||||
|
* <p> |
||||
|
* You should have received a copy of the GNU General Public License |
||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
*/ |
||||
|
|
||||
|
package com.epmet.dataaggre.entity.epmetmessage; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
/** |
||||
|
* 消息概要表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2021-08-18 |
||||
|
*/ |
||||
|
@Data |
||||
|
@EqualsAndHashCode(callSuper=false) |
||||
|
@TableName("info_profile") |
||||
|
public class InfoProfileEntity extends BaseEpmetEntity { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 客户id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 消息主表的id |
||||
|
*/ |
||||
|
private String infoId; |
||||
|
|
||||
|
/** |
||||
|
* 发布人id |
||||
|
*/ |
||||
|
private String publishStaffId; |
||||
|
|
||||
|
/** |
||||
|
* 内容概要,取前100字 |
||||
|
*/ |
||||
|
private String content; |
||||
|
|
||||
|
/** |
||||
|
* 附件ID,第一个用于展示 |
||||
|
*/ |
||||
|
private String firstAttId; |
||||
|
|
||||
|
/** |
||||
|
* 应读人数 |
||||
|
*/ |
||||
|
private Integer totalReceiver; |
||||
|
|
||||
|
/** |
||||
|
* 已读人数,插入是为0 |
||||
|
*/ |
||||
|
private Integer readTotal; |
||||
|
|
||||
|
/** |
||||
|
* 未读的回复数量:发布人每次查看详情后,置为0;接收人回复一条+1 |
||||
|
*/ |
||||
|
private Integer unReadReplyNum; |
||||
|
|
||||
|
} |
@ -0,0 +1,52 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
|
||||
|
<mapper namespace="com.epmet.dataaggre.dao.epmetmessage.InfoProfileDao"> |
||||
|
|
||||
|
<resultMap id="MySentResDTOMap" type="com.epmet.dataaggre.dto.message.result.MySentResDTO"> |
||||
|
<id property="infoId" column="id" /> |
||||
|
<result property="content" column="content"/> |
||||
|
<result property="publishTime" column="CREATED_TIME"/> |
||||
|
<result property="totalReceiver" column="total_receiver"/> |
||||
|
<result property="readTotal" column="read_total"/> |
||||
|
<result property="firstAttId" column="first_att_id"/> |
||||
|
<collection property="attachmentList" ofType="com.epmet.commons.tools.dto.form.FileCommonDTO" > |
||||
|
<result property="name" column=""/> |
||||
|
<result property="url" column=""/> |
||||
|
<result property="type" column=""/> |
||||
|
<result property="format" column=""/> |
||||
|
<result property="size" column=""/> |
||||
|
<result property="duration" column=""/> |
||||
|
</collection> |
||||
|
</resultMap> |
||||
|
|
||||
|
<!-- 我发出的消息列表--> |
||||
|
<select id="selectListMySent" parameterType="java.lang.String" resultMap="MySentResDTOMap"> |
||||
|
select |
||||
|
i.id, |
||||
|
ip.content, |
||||
|
i.CREATED_TIME, |
||||
|
ip.total_receiver, |
||||
|
ip.read_total, |
||||
|
ip.first_att_id, |
||||
|
IFNULL(ia.ATTACHMENT_NAME,'') AS name, |
||||
|
IFNULL(ia.ATTACHMENT_FORMAT,'') AS format, |
||||
|
IFNULL(ia.ATTACHMENT_TYPE,'') AS type, |
||||
|
IFNULL(ia.ATTACHMENT_URL,'') AS url, |
||||
|
IFNULL(ia.ATTACHMENT_SIZE,'') AS size, |
||||
|
IFNULL(ia.DURATION,'') AS duration |
||||
|
from info_profile ip |
||||
|
inner join info i |
||||
|
on(ip.INFO_ID=i.id) |
||||
|
left join info_att ia |
||||
|
on(ip.first_att_id=ia.id and ia.DEL_FLAG='0') |
||||
|
where ip.DEL_FLAG='0' |
||||
|
and i.DEL_FLAG='0' |
||||
|
and i.publish_staff_id=#{publishStaffId} |
||||
|
<if test="null != content and content !=''"> |
||||
|
i.content like concat('%',#{content},'%') |
||||
|
</if> |
||||
|
order by i.CREATED_TIME desc |
||||
|
</select> |
||||
|
|
||||
|
</mapper> |
@ -1 +1,2 @@ |
|||||
alter table info add fulltext index idx_fulltext_infocontent(content); |
alter table info add fulltext index idx_fulltext_infocontent(content) WITH PARSER ngram; |
||||
|
drop index idx_fulltext_infocontent on info; |
||||
|
Loading…
Reference in new issue