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