Commit f5fdbfbf by sdif

Merge remote-tracking branch 'origin/dev' into dev

parents 034c09a3 7d810b6e
......@@ -251,7 +251,7 @@ xss:
# 过滤开关
enabled: true
# 排除链接(多个用逗号分隔)
excludes: /system/notice,/system/hospital,/system/goods
excludes: /system/notice,/system/hospital,/system/goods,/system/information,/applet/information
# 匹配链接
urlPatterns: /system/*,/monitor/*,/tool/*
......
......@@ -41,8 +41,8 @@ public class AccompanyMessageController extends BaseController {
* 查询消息列表
*/
@GetMapping("/list")
public TableDataInfo<MessageVo> list(MessageBo bo, PageQuery pageQuery) {
public R<List<MessageVo>> list(MessageBo bo) {
bo.setSender(getUserId());
return iMessageService.queryPageList(bo, pageQuery);
return R.ok(iMessageService.queryPageList(bo));
}
}
......@@ -5,15 +5,18 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.pz.common.annotation.Log;
import com.pz.common.annotation.RepeatSubmit;
import com.pz.common.core.controller.BaseController;
import com.pz.common.core.domain.BaseEntity;
import com.pz.common.core.domain.PageQuery;
import com.pz.common.core.domain.R;
import com.pz.common.core.page.TableDataInfo;
import com.pz.common.core.validate.AddGroup;
import com.pz.common.enums.BusinessType;
import com.pz.system.domain.Message;
import com.pz.system.domain.SessionList;
import com.pz.system.domain.bo.SessionListBo;
import com.pz.system.domain.vo.AvatarUserNameVo;
import com.pz.system.domain.vo.SessionListVo;
import com.pz.system.mapper.MessageMapper;
import com.pz.system.mapper.SessionListMapper;
import com.pz.system.mapper.SysOssMapper;
import com.pz.system.mapper.SysUserMapper;
......@@ -42,6 +45,8 @@ public class AppletSessionListController extends BaseController {
private final SysUserMapper sysUserMapper;
private final MessageMapper messageMapper;
/**
* 查询会话列列表
*/
......@@ -74,6 +79,14 @@ public class AppletSessionListController extends BaseController {
}
);
avatarUserNameVo.setToUserId(toUserId);
//获取最后一次聊天时间
Optional.ofNullable(messageMapper.selectOne(Wrappers.<Message>lambdaQuery().eq(Message::getSender, getUserId())
.eq(Message::getReceiver, toUserId).orderByDesc(BaseEntity::getCreateTime).last("limit 1")))
.ifPresent(message -> {
avatarUserNameVo.setStrTime(message.getCreateTime());
});
return R.ok(avatarUserNameVo);
}
......
......@@ -39,4 +39,9 @@ public class SonOrderVo {
*/
private Date visitTime;
/**
* 接单员id
*/
private Long euserId;
}
......@@ -68,4 +68,9 @@ public class MessageBo extends BaseEntity {
* 备注
*/
private String remark;
/**
* 年月日
*/
private String strTime;
}
......@@ -4,6 +4,7 @@ package com.pz.system.domain.vo;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
public class AvatarUserNameVo implements Serializable {
......@@ -31,4 +32,9 @@ public class AvatarUserNameVo implements Serializable {
* 接收用户id
*/
private Integer toUserId;
/**
* 最后一次聊天时间
*/
private Date strTime;
}
......@@ -7,9 +7,11 @@ import com.pz.system.domain.bo.MessageBo;
import com.pz.system.domain.vo.InformationVo;
import com.pz.system.domain.vo.MessageVo;
import java.util.List;
public interface IMessageService {
/**
* 分页查询是否有聊天内容
*/
TableDataInfo<MessageVo> queryPageList(MessageBo bo, PageQuery pageQuery);
List<MessageVo> queryPageList(MessageBo bo);
}
......@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pz.common.core.domain.BaseEntity;
import com.pz.common.core.domain.PageQuery;
import com.pz.common.core.page.TableDataInfo;
import com.pz.system.domain.Department;
......@@ -20,6 +21,7 @@ import com.pz.system.domain.vo.MessageVo;
import com.pz.system.mapper.DepartmentMapper;
import com.pz.system.mapper.HospitalMapper;
import com.pz.system.mapper.MessageMapper;
import com.pz.system.mapper.SessionListMapper;
import com.pz.system.service.IDepartmentService;
import com.pz.system.service.IMessageService;
import lombok.RequiredArgsConstructor;
......@@ -40,15 +42,16 @@ public class MessageServiceImpl implements IMessageService {
private final MessageMapper baseMapper;
@Override
public TableDataInfo<MessageVo> queryPageList(MessageBo bo, PageQuery pageQuery) {
Page<MessageVo> result = baseMapper.selectVoPage(pageQuery.build(), new LambdaQueryWrapper<Message>().eq(Message::getSender, bo.getSender())
.eq(Message::getReceiver, bo.getReceiver()).or().eq(Message::getSender, bo.getReceiver()).eq(Message::getReceiver, bo.getSender()));
List<MessageVo> records = result.getRecords();
public List<MessageVo> queryPageList(MessageBo bo) {
bo.setStrTime(bo.getStrTime() + " 23:59:59");
List<MessageVo> result = new ArrayList<>();
result = baseMapper.selectVoList(new LambdaQueryWrapper<Message>().eq(Message::getSender, bo.getSender())
.eq(Message::getReceiver, bo.getReceiver()).or().eq(Message::getSender, bo.getReceiver()).eq(Message::getReceiver, bo.getSender())
.ge(BaseEntity::getCreateTime, bo.getStrTime()).le(BaseEntity::getCreateTime, bo.getStrTime()));
List<Message> messageList = new ArrayList<>();
if (CollectionUtils.isNotEmpty(records)) {
records.forEach(res -> {
if (CollectionUtils.isNotEmpty(result)) {
result.forEach(res -> {
if (res.getIsRead().equals("0") && res.getReceiver().equals(bo.getSender())) {
res.setIsRead("1");
messageList.add(BeanUtil.toBean(res, Message.class));
......@@ -59,6 +62,6 @@ public class MessageServiceImpl implements IMessageService {
if (CollectionUtils.isNotEmpty(messageList)) {
baseMapper.updateBatchById(messageList);
}
return TableDataInfo.build(result);
return result;
}
}
......@@ -56,8 +56,11 @@
dbgh_order.status as orderStatus,
sys_user.avatar,
hospital.name as hospital,
dbgh_order.visit_time
dbgh_order.visit_time,
e.uid as euserId
from dbgh_order
left join total_order as t on t.id = dbgh_order.order_id
left join employees as e on e.id = t.em_id
left join user_vsitor as vsitor on vsitor.id = dbgh_order.visitor
left join sys_user on sys_user.user_id = vsitor.uid
left join hospital on hospital.id = dbgh_order.hid
......
......@@ -58,9 +58,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectSonOrderInfoByTotalId" resultType="com.pz.merchant.domain.vo.SonOrderVo">
select dbmy_order.status as orderStatus,
sys_user.nick_name as userName,
sys_user.avatar
sys_user.avatar,
employees.uid as euserId
from dbmy_order
left join total_order on total_order.id = dbmy_order.order_id
left join employees on employees.id = total_order.em_id
left join sys_user on sys_user.user_id = total_order.uid
where dbmy_order.order_id = #{id}
</select>
......
......@@ -56,11 +56,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select id="selectSonOrderInfoByTotalId" resultType="com.pz.merchant.domain.vo.SonOrderVo">
select vsitor.name as userName,
select vsitor.name as userName,
dbwz_order.status as orderStatus,
sys_user.avatar,
dbwz_order.visit_time
dbwz_order.visit_time,
employees.uid as euserId
from dbwz_order
left join total_order on total_order.id = dbwz_order.order_id
left join employees on employees.id = total_order.em_id
left join user_vsitor as vsitor on vsitor.id = dbwz_order.visitor
left join sys_user on sys_user.user_id = vsitor.uid
where dbwz_order.order_id = #{id}
......
......@@ -58,8 +58,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
yypz_order.status as orderStatus,
sys_user.avatar,
hospital.name as hospital,
yypz_order.visit_time
yypz_order.visit_time,
employees.uid as euserId
from yypz_order
left join total_order on total_order.id = yypz_order.order_id
left join employees on employees.id = total_order.em_id
left join user_vsitor as vsitor on vsitor.id = yypz_order.visitor
left join sys_user on sys_user.user_id = vsitor.uid
left join hospital on hospital.id = yypz_order.hid
......
......@@ -56,9 +56,12 @@
<select id="selectSonOrderInfoByTotalId" resultType="com.pz.merchant.domain.vo.SonOrderVo">
select user.nick_name as userName,
zqgh_order.status as orderStatus,
user.avatar
user.avatar,
employees.uid as euserId
from zqgh_order
left join total_order on total_order.id = zqgh_order.order_id
left join employees on employees.id = total_order.em_id
left join total_order on total_order.id = zqgh_order.order_id
left join sys_user as user on user.user_id = total_order.uid
where zqgh_order.order_id = #{id}
</select>
......
......@@ -62,8 +62,11 @@
zyph_order.status as orderStatus,
sys_user.avatar,
hospital.name as hospital,
zyph_order.start_day as visitTime
zyph_order.start_day as visitTime,
employees.uid as euserId
from zyph_order
left join total_order on total_order.id = zyph_order.order_id
left join employees on employees.id = total_order.em_id
left join user_vsitor as vsitor on vsitor.id = zyph_order.visitor
left join sys_user on sys_user.user_id = vsitor.uid
left join hospital on hospital.id = zyph_order.hid
......
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