提交 bb4efa5f authored 作者: hzh's avatar hzh

代码优化

上级 9f4a2ef9
...@@ -11,6 +11,7 @@ import lombok.NoArgsConstructor; ...@@ -11,6 +11,7 @@ import lombok.NoArgsConstructor;
import org.dromara.common.core.constant.TenantConstants; import org.dromara.common.core.constant.TenantConstants;
import org.dromara.common.core.constant.UserConstants; import org.dromara.common.core.constant.UserConstants;
import org.dromara.common.core.enums.UserType; import org.dromara.common.core.enums.UserType;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mall.enums.TerminalEnum; import org.dromara.common.mall.enums.TerminalEnum;
import org.dromara.system.api.model.LoginUser; import org.dromara.system.api.model.LoginUser;
...@@ -45,6 +46,7 @@ public class LoginHelper { ...@@ -45,6 +46,7 @@ public class LoginHelper {
public static final String MEMBER_ID = "memberId"; public static final String MEMBER_ID = "memberId";
public static final String USER_TYPE = "userType"; public static final String USER_TYPE = "userType";
public static final String PROJECT_ID = "projectId"; public static final String PROJECT_ID = "projectId";
public static final String PROJECT_DEPT_ID = "projectDeptId";
/** /**
* 登录系统 基于 设备类型 * 登录系统 基于 设备类型
...@@ -161,6 +163,25 @@ public class LoginHelper { ...@@ -161,6 +163,25 @@ public class LoginHelper {
} }
} }
/**
* 获取项目部门id
*/
public static Long getProjectDeptId() {
if (StringUtils.equals(getUserTypeStr(), UserType.SYS_USER.getUserType()) && getProjectId() == null) {
return getDeptId();
}
SaSession session = StpUtil.getTokenSession();
if (ObjectUtil.isNull(session)) {
return null;
}
Object projectDept = session.get(PROJECT_DEPT_ID);
if (projectDept == null) {
return null;
} else {
return Long.parseLong(projectDept.toString());
}
}
/** /**
* 获取客户端ID * 获取客户端ID
*/ */
...@@ -270,12 +291,19 @@ public class LoginHelper { ...@@ -270,12 +291,19 @@ public class LoginHelper {
* 动态设置项目id * 动态设置项目id
* *
* @param projectId 项目id * @param projectId 项目id
* @param deptId 部门id
*/ */
public static void dynamicProjectId(Long projectId) { public static void dynamicProjectId(Long projectId, Long deptId) {
if (projectId != null) { if (projectId != null) {
StpUtil.getTokenSession().set(PROJECT_ID, projectId); StpUtil.getTokenSession().set(PROJECT_ID, projectId);
if (deptId != null) {
StpUtil.getTokenSession().set(PROJECT_DEPT_ID, deptId);
} else {
StpUtil.getTokenSession().delete(PROJECT_DEPT_ID);
}
} else { } else {
StpUtil.getTokenSession().delete(PROJECT_ID); StpUtil.getTokenSession().delete(PROJECT_ID);
StpUtil.getTokenSession().delete(PROJECT_DEPT_ID);
} }
} }
} }
...@@ -178,6 +178,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo, ...@@ -178,6 +178,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo,
List<OrderAirportPay> orderPayList = payMapper.selectList(new LambdaQueryWrapper<OrderAirportPay>().in(OrderAirportPay::getOrderId, orderIds)); List<OrderAirportPay> orderPayList = payMapper.selectList(new LambdaQueryWrapper<OrderAirportPay>().in(OrderAirportPay::getOrderId, orderIds));
List<OrderAirportTicket> orderTicketList = ticketMapper.selectList(new LambdaQueryWrapper<OrderAirportTicket>().in(OrderAirportTicket::getOrderId, orderIds)); List<OrderAirportTicket> orderTicketList = ticketMapper.selectList(new LambdaQueryWrapper<OrderAirportTicket>().in(OrderAirportTicket::getOrderId, orderIds));
Long projectId = isAdd ? LoginHelper.getProjectId() : null; Long projectId = isAdd ? LoginHelper.getProjectId() : null;
Long projectDeptId = isAdd ? LoginHelper.getProjectDeptId() : null;
//更新数据 //更新数据
orderList.forEach(order -> { orderList.forEach(order -> {
scheduledExecutorService.execute(() -> { scheduledExecutorService.execute(() -> {
...@@ -312,6 +313,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo, ...@@ -312,6 +313,7 @@ public class OrderAirportServiceImpl extends AbstractBaseService<OrderAirportVo,
.map(o -> DateUtil.parse(o.getDepartTime(), "yyyy-MM-dd HH:mm")) .map(o -> DateUtil.parse(o.getDepartTime(), "yyyy-MM-dd HH:mm"))
.orElse(null) .orElse(null)
); );
invoice.setCreateDept(projectDeptId);
orderInvoicingService.save(invoice); orderInvoicingService.save(invoice);
}); });
} }
......
...@@ -177,6 +177,7 @@ public class OrderHotelServiceImpl extends AbstractBaseService<OrderHotelVo, Ord ...@@ -177,6 +177,7 @@ public class OrderHotelServiceImpl extends AbstractBaseService<OrderHotelVo, Ord
List<OrderHotelPsgInfo> orderPsgList = psgInfoMapper.selectList(new LambdaQueryWrapper<OrderHotelPsgInfo>().in(OrderHotelPsgInfo::getOrderId, orderIds)); List<OrderHotelPsgInfo> orderPsgList = psgInfoMapper.selectList(new LambdaQueryWrapper<OrderHotelPsgInfo>().in(OrderHotelPsgInfo::getOrderId, orderIds));
List<OrderHotelPayInfo> orderPayInfoList = payInfoMapper.selectList(new LambdaQueryWrapper<OrderHotelPayInfo>().in(OrderHotelPayInfo::getOrderId, orderIds)); List<OrderHotelPayInfo> orderPayInfoList = payInfoMapper.selectList(new LambdaQueryWrapper<OrderHotelPayInfo>().in(OrderHotelPayInfo::getOrderId, orderIds));
Long projectId = isAdd ? LoginHelper.getProjectId() : null; Long projectId = isAdd ? LoginHelper.getProjectId() : null;
Long projectDeptId = isAdd ? LoginHelper.getProjectDeptId() : null;
//更新数据 //更新数据
orderList.forEach(order -> { orderList.forEach(order -> {
scheduledExecutorService.execute(() -> { scheduledExecutorService.execute(() -> {
...@@ -281,6 +282,7 @@ public class OrderHotelServiceImpl extends AbstractBaseService<OrderHotelVo, Ord ...@@ -281,6 +282,7 @@ public class OrderHotelServiceImpl extends AbstractBaseService<OrderHotelVo, Ord
.setUseTime(Optional.ofNullable(order) .setUseTime(Optional.ofNullable(order)
.map(o -> DateUtil.parse(o.getCheckInDate(), "yyyy-MM-dd")) .map(o -> DateUtil.parse(o.getCheckInDate(), "yyyy-MM-dd"))
.orElse(null)); .orElse(null));
invoice.setCreateDept(projectDeptId);
orderInvoicingService.save(invoice); orderInvoicingService.save(invoice);
}); });
} }
......
...@@ -58,7 +58,6 @@ public class OrderInvoicingServiceImpl extends AbstractBaseService<OrderInvoicin ...@@ -58,7 +58,6 @@ public class OrderInvoicingServiceImpl extends AbstractBaseService<OrderInvoicin
if (user != null) { if (user != null) {
bo.setUserType(user.getUserType()); bo.setUserType(user.getUserType());
bo.setCreateName(user.getNickName()); bo.setCreateName(user.getNickName());
bo.setCreateDept(user.getDeptId());
} }
bo.setProjectId(bo.getProjectId()); bo.setProjectId(bo.getProjectId());
bo.setCreateBy(bo.getUserId()); bo.setCreateBy(bo.getUserId());
......
...@@ -187,6 +187,7 @@ public class OrderTrainServiceImpl extends AbstractBaseService<OrderTrainVo, Ord ...@@ -187,6 +187,7 @@ public class OrderTrainServiceImpl extends AbstractBaseService<OrderTrainVo, Ord
List<OrderTrainRange> orderRangeList = rangeMapper.selectList(new LambdaQueryWrapper<OrderTrainRange>().in(OrderTrainRange::getOrderId, orderIds)); List<OrderTrainRange> orderRangeList = rangeMapper.selectList(new LambdaQueryWrapper<OrderTrainRange>().in(OrderTrainRange::getOrderId, orderIds));
List<OrderTrainTicket> orderTicketList = ticketMapper.selectList(new LambdaQueryWrapper<OrderTrainTicket>().in(OrderTrainTicket::getOrderId, orderIds)); List<OrderTrainTicket> orderTicketList = ticketMapper.selectList(new LambdaQueryWrapper<OrderTrainTicket>().in(OrderTrainTicket::getOrderId, orderIds));
Long projectId = isAdd ? LoginHelper.getProjectId() : null; Long projectId = isAdd ? LoginHelper.getProjectId() : null;
Long projectDeptId = isAdd ? LoginHelper.getProjectDeptId() : null;
//更新数据 //更新数据
orderList.forEach(order -> { orderList.forEach(order -> {
scheduledExecutorService.execute(() -> { scheduledExecutorService.execute(() -> {
...@@ -319,6 +320,7 @@ public class OrderTrainServiceImpl extends AbstractBaseService<OrderTrainVo, Ord ...@@ -319,6 +320,7 @@ public class OrderTrainServiceImpl extends AbstractBaseService<OrderTrainVo, Ord
.setUseTime(Optional.ofNullable(rangeMapper.selectOne(OrderTrainRange::getOrderNo, order.getOrderNo())) .setUseTime(Optional.ofNullable(rangeMapper.selectOne(OrderTrainRange::getOrderNo, order.getOrderNo()))
.map(o -> DateUtil.parse(o.getFromDate() + " " + o.getFromTime(), "yyyy-MM-dd HH:mm")) .map(o -> DateUtil.parse(o.getFromDate() + " " + o.getFromTime(), "yyyy-MM-dd HH:mm"))
.orElse(null)); .orElse(null));
invoice.setCreateDept(projectDeptId);
orderInvoicingService.save(invoice); orderInvoicingService.save(invoice);
}); });
} }
......
...@@ -220,6 +220,7 @@ public class OrderVehiclesServiceImpl extends AbstractBaseService<OrderVehiclesV ...@@ -220,6 +220,7 @@ public class OrderVehiclesServiceImpl extends AbstractBaseService<OrderVehiclesV
List<OrderVehiclesBusiness> orderBusinessList = businessMapper.selectList(new LambdaQueryWrapper<OrderVehiclesBusiness>().in(OrderVehiclesBusiness::getOrderId, orderIds)); List<OrderVehiclesBusiness> orderBusinessList = businessMapper.selectList(new LambdaQueryWrapper<OrderVehiclesBusiness>().in(OrderVehiclesBusiness::getOrderId, orderIds));
List<OrderVehiclesPayInfo> orderPayInfoList = payInfoMapper.selectList(new LambdaQueryWrapper<OrderVehiclesPayInfo>().in(OrderVehiclesPayInfo::getOrderId, orderIds)); List<OrderVehiclesPayInfo> orderPayInfoList = payInfoMapper.selectList(new LambdaQueryWrapper<OrderVehiclesPayInfo>().in(OrderVehiclesPayInfo::getOrderId, orderIds));
Long projectId = isAdd ? LoginHelper.getProjectId() : null; Long projectId = isAdd ? LoginHelper.getProjectId() : null;
Long projectDeptId = isAdd ? LoginHelper.getProjectDeptId() : null;
//更新数据 //更新数据
orderList.forEach(order -> { orderList.forEach(order -> {
scheduledExecutorService.execute(() -> { scheduledExecutorService.execute(() -> {
...@@ -286,6 +287,7 @@ public class OrderVehiclesServiceImpl extends AbstractBaseService<OrderVehiclesV ...@@ -286,6 +287,7 @@ public class OrderVehiclesServiceImpl extends AbstractBaseService<OrderVehiclesV
} }
return null; return null;
}).orElse(null)); }).orElse(null));
invoice.setCreateDept(projectDeptId);
orderInvoicingService.save(invoice); orderInvoicingService.save(invoice);
}); });
} }
......
...@@ -6,6 +6,7 @@ import jakarta.validation.constraints.NotEmpty; ...@@ -6,6 +6,7 @@ import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R; import org.dromara.common.core.domain.R;
import org.dromara.common.core.exception.ServiceException;
import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup; import org.dromara.common.core.validate.EditGroup;
...@@ -19,8 +20,11 @@ import org.dromara.common.satoken.utils.LoginHelper; ...@@ -19,8 +20,11 @@ import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.web.core.BaseController; import org.dromara.common.web.core.BaseController;
import org.dromara.system.constant.Constant; import org.dromara.system.constant.Constant;
import org.dromara.system.domain.bo.SysProjectBo; import org.dromara.system.domain.bo.SysProjectBo;
import org.dromara.system.domain.bo.SysUserProjectBo;
import org.dromara.system.domain.vo.SysProjectVo; import org.dromara.system.domain.vo.SysProjectVo;
import org.dromara.system.domain.vo.SysUserProjectVo;
import org.dromara.system.service.ISysProjectService; import org.dromara.system.service.ISysProjectService;
import org.dromara.system.service.ISysUserProjectService;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -40,6 +44,7 @@ import java.util.List; ...@@ -40,6 +44,7 @@ import java.util.List;
public class SysProjectController extends BaseController { public class SysProjectController extends BaseController {
private final ISysProjectService sysProjectService; private final ISysProjectService sysProjectService;
private final ISysUserProjectService userProjectService;
/** /**
* 查询系统项目列表 * 查询系统项目列表
...@@ -129,7 +134,18 @@ public class SysProjectController extends BaseController { ...@@ -129,7 +134,18 @@ public class SysProjectController extends BaseController {
*/ */
@GetMapping("/dynamic") @GetMapping("/dynamic")
public R<Void> dynamicProjectId(@RequestParam(required = false) Long projectId) { public R<Void> dynamicProjectId(@RequestParam(required = false) Long projectId) {
LoginHelper.dynamicProjectId(projectId); Long deptId = null;
if (projectId != null) {
SysUserProjectBo sup = new SysUserProjectBo();
sup.setUserId(LoginHelper.getUserId());
sup.setProjectId(projectId);
SysUserProjectVo vo = userProjectService.getOne(sup);
if (vo == null) {
throw new ServiceException("用户不存在在该项目中");
}
deptId = vo.getCreateDept();
}
LoginHelper.dynamicProjectId(projectId,deptId);
return R.ok(); return R.ok();
} }
......
...@@ -55,13 +55,18 @@ public class SysUserProjectVo implements Serializable { ...@@ -55,13 +55,18 @@ public class SysUserProjectVo implements Serializable {
@ExcelProperty(value = "角色id") @ExcelProperty(value = "角色id")
private Long roleId; private Long roleId;
/**
* 创建部门
*/
private Long createDept;
/** /**
* 创建人 * 创建人
*/ */
private Long createBy; private Long createBy;
@Translation(type = TransConstant.USER_ID_TO_NICKNAME,mapper = "createBy" ) @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "createBy")
private String createNickName; private String createNickName;
@Translation(type = TransConstant.USER_ID_TO_NAME,mapper = "createBy" ) @Translation(type = TransConstant.USER_ID_TO_NAME, mapper = "createBy")
private String createUserName; private String createUserName;
/** /**
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论