Compare commits

..

No commits in common. "ffbf0130d65b9439444672f7d93b2a5438fa16fc" and "07df7503bef3a67e3471548c6fba2a39cbd86880" have entirely different histories.

2 changed files with 3 additions and 40 deletions

View File

@ -5,7 +5,6 @@ import cn.iocoder.yudao.common.RepairRoleEnum;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.security.core.LoginUser;
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder;
import cn.iocoder.yudao.module.app.controller.admin.NotifyMessageSocket;
import cn.iocoder.yudao.module.base.entity.RepairWorker;
import cn.iocoder.yudao.module.base.mapper.RepairWorkerMapper;
@ -224,7 +223,7 @@ public class RepairWorkerServiceImpl extends ServiceImpl<RepairWorkerMapper, Rep
public void sentMessage(Long userId, String text) {
try {
//获取当前登录用户
// LoginUser loginUser = SecurityFrameworkUtils.getLoginUser();
LoginUser loginUser = SecurityFrameworkUtils.getLoginUser();
// 准备发送参数
Map<String, Object> templateParams = new HashMap<>();
// 发送模版内容
@ -233,9 +232,8 @@ public class RepairWorkerServiceImpl extends ServiceImpl<RepairWorkerMapper, Rep
sendApi.sendSingleMessageToAdmin(new NotifySendSingleToUserReqDTO()
.setUserId(userId)
.setTemplateCode(TICKET_EMPLOY).setTemplateParams(templateParams));
//发送语音提醒---小李---通过租户上下文去取租户ID
// notifyMessageSocket.sendMessage(text, loginUser.getTenantId().toString(), userId.toString());
notifyMessageSocket.sendMessage(text, TenantContextHolder.getRequiredTenantId().toString(), userId.toString());
//发送语音提醒
notifyMessageSocket.sendMessage(text, loginUser.getTenantId().toString(), userId.toString());
} catch (IOException e) {
e.printStackTrace();
}

View File

@ -3,13 +3,10 @@ package cn.iocoder.yudao.module.booking.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.iocoder.yudao.common.RepairRoleEnum;
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder;
import cn.iocoder.yudao.module.app.booking.vo.BookingQueryVO;
import cn.iocoder.yudao.module.base.service.RepairWorkerService;
import cn.iocoder.yudao.module.booking.entity.DlRepairBooking;
import cn.iocoder.yudao.module.booking.mapper.DlRepairBookingMapper;
import cn.iocoder.yudao.module.booking.service.DlRepairBookingService;
@ -26,19 +23,16 @@ import cn.iocoder.yudao.module.system.api.service.dto.ServicePackageDto;
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
import cn.iocoder.yudao.module.system.api.user.dto.UserDTO;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.catalina.User;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
@ -69,9 +63,6 @@ public class DlRepairBookingServiceImpl extends ServiceImpl<DlRepairBookingMappe
@Autowired
private AdminUserApi adminUserApi;
@Resource
private RepairWorkerService repairWorkerService;
/**
* 维修预约表 新增修改
*
@ -80,33 +71,7 @@ public class DlRepairBookingServiceImpl extends ServiceImpl<DlRepairBookingMappe
* @param repairBookingRespVO 预约对象
**/
@Override
@DSTransactional
public void updateBooking(DlRepairBookingRespVO repairBookingRespVO){
// 构建消息
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
List<DictDataRespDTO> dataList = dictDataApi.getDictDataList("repair_type");
DictDataRespDTO dictDataRespDTO = dataList.stream().filter(item -> item.getValue().equals(repairBookingRespVO.getRepairType())).findFirst().orElse(null);
String message = String.format(
"%s(%s)预约了%s的%s",
repairBookingRespVO.getUserName(),
repairBookingRespVO.getUserMobile(),
formatter.format(repairBookingRespVO.getBookingTime()),
dictDataRespDTO != null ? dictDataRespDTO.getLabel() : "维修保养"
);
// 选择了服务顾问
if (ObjectUtil.isNotEmpty(repairBookingRespVO.getAdviserId())){
// 发送消息通知
repairWorkerService.sentMessage(Long.valueOf(repairBookingRespVO.getAdviserId()), message);
}else {
// 没选服务顾问
// 获取所有的服务顾问
List<UserDTO> allServicer = getAllServicer(TenantContextHolder.getRequiredTenantId());
// 发送消息通知
allServicer.forEach(item -> repairWorkerService.sentMessage(item.getId(), message));
}
// 正常的新增修改
Long loginUserId = SecurityFrameworkUtils.getLoginUserId();
Optional.ofNullable(loginUserId).ifPresent(repairBookingRespVO::setUserId);
repairBookingRespVO.setBookingStatus("01");