Commit f5fdbfbf by sdif

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

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