zhongrj
2023-07-10 dfddd033642a31141b28a1d5a2f6441ca10b8620
新增站内信信息查询,设置已读修改
5 files modified
1 files added
171 ■■■■■ changed files
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/controller/MessageRecordController.java 19 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/feign/MessageClient.java 61 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/mapper/MessageRecordMapper.java 21 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/mapper/MessageRecordMapper.xml 26 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/service/IMessageRecordService.java 17 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/service/impl/MessageRecordService.java 27 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/controller/MessageRecordController.java
@@ -2,6 +2,7 @@
import cn.gistack.sm.message.entity.MessageRecord;
import cn.gistack.sm.message.service.IMessageRecordService;
import cn.gistack.sm.message.vo.MessageRecordVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@@ -29,9 +30,21 @@
    private IMessageRecordService messageRecordService;
    @ApiOperation(value = "站内信管理", notes = "站内信管理-分页列表查询")
    @GetMapping(value = "/page")
    @GetMapping(value = "/list")
    public R page(MessageRecord messageRecord, Query query) {
        return R.data(messageRecordService.page(Condition.getPage(query), Condition.getQueryWrapper(messageRecord)));
    }
    /**
     * 自定义分页列表
     * @param messageRecord
     * @param query
     * @return
     */
    @ApiOperation(value = "站内信管理", notes = "站内信管理-分页列表查询")
    @GetMapping(value = "/page")
    public R selectMessageRecordPageList(MessageRecordVO messageRecord, Query query) {
        return R.data(messageRecordService.selectMessageRecordPageList(Condition.getPage(query), messageRecord));
    }
    @ApiOperation(value = "我的站内信", notes = "我的站内信列表查询")
@@ -44,9 +57,7 @@
    @ApiOperation(value = "设置已读", notes = "设置已读")
    @PostMapping(value = "/editRead")
    public R editRead(@ApiParam(value = "主键集合", required = true) @RequestParam(required = true) Long id) {
        MessageRecord messageRecord = new MessageRecord();
        messageRecord.setId(id);
    public R editRead(@RequestBody MessageRecord messageRecord) {
        messageRecord.setStatus(1);
        return R.data(messageRecordService.updateById(messageRecord));
    }
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/feign/MessageClient.java
New file
@@ -0,0 +1,61 @@
package cn.gistack.sm.message.feign;
import cn.gistack.sm.intelligentCall.entity.CallNotFillRecord;
import cn.gistack.sm.intelligentCall.feign.OutCallClient;
import cn.gistack.sm.intelligentCall.service.CallService;
import cn.gistack.sm.intelligentCall.service.ICallNotFillRecordService;
import cn.gistack.sm.intelligentCall.service.ICallSmsNoticeTaskService;
import cn.gistack.sm.message.entity.MessageRecord;
import cn.gistack.sm.message.service.impl.MessageRecordService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.tenant.annotation.NonDS;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * Feign实现类
 * @author zhongrj
 * @date 2023-07-07
 */
@NonDS
@ApiIgnore
@RestController
@AllArgsConstructor
@Slf4j
public class MessageClient implements IMessageClient {
    @Autowired
    private MessageRecordService messageRecordService;
    /**
     * 保存站内信记录信息
     * @param messageRecord
     * @return
     */
    @Override
    @PostMapping(SAVE_MESSAGE_RECORD)
    public void saveMessageRecord(@RequestBody List<MessageRecord> messageRecord) {
        // 批量新增
        messageRecordService.saveBatch(messageRecord);
    }
    /**
     * 查询用户未读消息数量
     * @param phone
     * @return
     */
    @Override
    public Integer getNotReadNumber(String phone) {
        return messageRecordService.getNotReadNumber(phone);
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/mapper/MessageRecordMapper.java
@@ -1,7 +1,12 @@
package cn.gistack.sm.message.mapper;
import cn.gistack.sm.message.entity.MessageRecord;
import cn.gistack.sm.message.vo.MessageRecordVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * @PROJECT_NAME: skjcmanager
@@ -10,4 +15,20 @@
 * @DATE: 2023/6/30 15:30
 */
public interface MessageRecordMapper extends BaseMapper<MessageRecord> {
    /**
     * 查询用户未读消息数量
     * @param userId
     * @return
     */
    Integer getNotReadNumber(@Param("userId") String userId);
    /**
     * 自定义分页列表
     * @param messageRecord
     * @param page
     * @return
     */
    List<MessageRecordVO> selectMessageRecordPageList(@Param("page") IPage<MessageRecordVO> page,
                                                      @Param("messageRecord") MessageRecordVO messageRecord);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/mapper/MessageRecordMapper.xml
@@ -2,4 +2,30 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="cn.gistack.sm.message.mapper.MessageRecordMapper">
    <!--namespace根据自己需要创建的的mapper的路径和名称填写-->
    <!--查询用户未读消息数量-->
    <select id="getNotReadNumber" resultType="java.lang.Integer">
        select count(*) from sm_message_record where is_deleted = 0 and status = 0 and recipient = #{userId}
    </select>
    <!--自定义分页列表-->
    <select id="selectMessageRecordPageList" resultType="cn.gistack.sm.message.vo.MessageRecordVO">
        select * from sm_message_record where is_deleted = 0
        <if test="messageRecord.status!=null">
            and status = #{messageRecord.status}
        </if>
        <if test="messageRecord.recipient!=null and messageRecord.recipient!=''">
            and recipient = #{messageRecord.recipient}
        </if>
        <if test="messageRecord.theme!=null and messageRecord.theme!=''">
            and theme like concat('%',#{messageRecord.recipient},'%')
        </if>
        <if test="messageRecord.content!=null and messageRecord.content!=''">
            and content like concat('%',#{messageRecord.content},'%')
        </if>
        <if test="messageRecord.source!=null and messageRecord.source!=''">
            and source = #{messageRecord.source}
        </if>
        ORDER BY ID DESC
    </select>
</mapper>
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/service/IMessageRecordService.java
@@ -1,6 +1,8 @@
package cn.gistack.sm.message.service;
import cn.gistack.sm.message.entity.MessageRecord;
import cn.gistack.sm.message.vo.MessageRecordVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
/**
@@ -10,4 +12,19 @@
 * @DATE: 2023/6/30 15:32
 */
public interface IMessageRecordService extends BaseService<MessageRecord> {
    /**
     * 查询用户未读消息数量
     * @param userId
     * @return
     */
    Integer getNotReadNumber(String userId);
    /**
     * 自定义分页列表
     * @param messageRecord
     * @param page
     * @return
     */
    Object selectMessageRecordPageList(IPage<MessageRecordVO> page, MessageRecordVO messageRecord);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/message/service/impl/MessageRecordService.java
@@ -3,6 +3,8 @@
import cn.gistack.sm.message.entity.MessageRecord;
import cn.gistack.sm.message.mapper.MessageRecordMapper;
import cn.gistack.sm.message.service.IMessageRecordService;
import cn.gistack.sm.message.vo.MessageRecordVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springframework.stereotype.Service;
@@ -14,4 +16,29 @@
 */
@Service
public class MessageRecordService extends BaseServiceImpl<MessageRecordMapper, MessageRecord> implements IMessageRecordService {
    /**
     * 查询用户未读消息数量
     * @param userId
     * @return
     */
    public Integer getNotReadNumber(String userId) {
        return baseMapper.getNotReadNumber(userId);
    }
    /**
     * 自定义分页列表
     * @param messageRecord
     * @param page
     * @return
     */
    @Override
    public Object selectMessageRecordPageList(IPage<MessageRecordVO> page, MessageRecordVO messageRecord) {
        if (null!=messageRecord.getIsPage()){
            // 不分页查询
            return baseMapper.selectMessageRecordPageList(null,messageRecord);
        }
        return page.setRecords(baseMapper.selectMessageRecordPageList(page,messageRecord));
    }
}