Merge branch 'main' of ssh://192.168.1.205:9922/cf_devdept2/cf_imes_server

This commit is contained in:
lym
2024-06-17 16:07:38 +08:00
9 changed files with 38 additions and 21 deletions
@@ -27,6 +27,7 @@ import com.cf.imes.module.executor.dal.mysql.orderBody.OrderBodyMapper;
import com.cf.imes.module.executor.dal.mysql.orderItem.OrderItemMapper;
import com.cf.imes.module.executor.dal.mysql.planitem.PlanItemMapper;
import com.cf.imes.module.executor.dal.mysql.plate.PlateMapper;
import com.cf.imes.module.executor.enums.OrderStatusEnum;
import com.cf.imes.module.system.api.machine.MachineApi;
import com.cf.imes.module.system.api.machine.dto.CuttingRespDTO;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -109,7 +110,7 @@ public class PlanServiceImpl implements PlanService {
// 修改对应的生产单的状态为 生产中
List<Long> orderIds = JSON.parseArray(orderNos).toJavaList(Long.class);
List<OrderDO> orderDOS = orderMapper.selectBatchIds(orderIds).stream().map(m -> m.setStatus(3)).collect(Collectors.toList());
List<OrderDO> orderDOS = orderMapper.selectBatchIds(orderIds).stream().map(m -> m.setStatus(OrderStatusEnum.IN_PRODUCTION.getStatus())).collect(Collectors.toList());
orderMapper.updateBatch(orderDOS);
Long planId = plan.getId();
@@ -200,7 +201,7 @@ public class PlanServiceImpl implements PlanService {
// 修改生产单的状态为待排单
List<Long> orderIds = JSON.parseArray(planDO.getOrderNos()).toJavaList(Long.class);
List<OrderDO> orderDOS = orderMapper.selectBatchIds(orderIds).stream().map(m -> m.setStatus(2)).collect(Collectors.toList());
List<OrderDO> orderDOS = orderMapper.selectBatchIds(orderIds).stream().map(m -> m.setStatus(OrderStatusEnum.NO_SORT.getStatus())).collect(Collectors.toList());
orderMapper.updateBatch(orderDOS);
return Boolean.TRUE;
@@ -309,7 +310,7 @@ public class PlanServiceImpl implements PlanService {
QueryWrapperX<OrderDO> queryWrapperX = new QueryWrapperX<>();
queryWrapperX
.eq("a.organ_id",getUserOrganId())
.eq("a.status",2)
.eq("a.status",OrderStatusEnum.NO_SORT.getStatus())
.eqIfPresent("a.id", pageReqVO.getOrderId())
.isNull("opi.item_id")
.eqIfPresent("a.customer", pageReqVO.getConsignee())
@@ -166,7 +166,7 @@
left join order_goods ogs on op.goods_id = ogs.id and op.organ_id = ogs.organ_id
join order_item oi on op.id = oi.plate_id and op.organ_id = oi.organ_id
join order_body ob on oi.body_id = ob.id and oi.organ_id = ob.organ_id
left join order_group og on oi.group_id = og.id = oi.organ_id = og.organ_id
left join order_group og on oi.group_id = og.id and oi.organ_id = og.organ_id
where op.organ_id = #{organId} and op.order_id in
@@ -15,7 +15,7 @@ public class ProcessStepStatus {
private Boolean processStepItemStatus;
// 工序步骤表的类型
private Long type;
private Integer type;
// 柜体id
private List<Long> bodyId;
@@ -71,7 +71,7 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
@Override
public PageResult<ProcessRespVO> getProcessPage(ProcessPageReqVO pageReqVO) {
// 模糊搜索添加条件
pageReqVO.setCustomer(insertSeparator(pageReqVO.getCustomer()));
pageReqVO.setCustomOrderNo(insertSeparator(pageReqVO.getCustomOrderNo()));
pageReqVO.setAddress(insertSeparator(pageReqVO.getAddress()));
@@ -38,7 +38,7 @@
o.custom_order_no as customOrderNo,
o.customer as customer,
o.address as address,
ops.status as processStatus,
opsi.status as processStatus,
opsi.name as name,
ops.Name as processName,
ops.manager as manager,
@@ -27,11 +27,11 @@ public interface RoleMapper extends BaseMapperX<RoleDO> {
lambdaQueryWrapperX.inIfPresent(RoleDO::getOrganId,0L,loginUser.getOrganId());
}*/
if(isSupAdmin && ObjectUtil.isNotNull(reqVO.getOrganId())) {
//如果是超级管理员并且传入organId,就查看传入的组织
lambdaQueryWrapperX.eqIfPresent(RoleDO::getOrganId, reqVO.getOrganId());
//如果是超级管理员并且传入organId,就查看组织id为0(内置角色)和传入的组织
lambdaQueryWrapperX.inIfPresent(RoleDO::getOrganId, 0L, reqVO.getOrganId());
} else {
//如果不是,就查看组织id为0和自身的组织
lambdaQueryWrapperX.inIfPresent(RoleDO::getOrganId,0L,loginUser.getOrganId());
//如果不是,就查看组织id为0(内置角色)和自身的组织
lambdaQueryWrapperX.inIfPresent(RoleDO::getOrganId, 0L, loginUser.getOrganId());
}
lambdaQueryWrapperX.likeIfPresent(RoleDO::getName, reqVO.getName())
@@ -11,5 +11,5 @@ public interface RedisRefreshChannelTopicConstants {
/**
* 刷新权限
*/
String PREMISSION_REFRESH = "PREMISSION_REFRESH";
String PERMISSION_REFRESH = "PERMISSION_REFRESH";
}
@@ -3,25 +3,24 @@ package com.cf.imes.module.system.dal.redis.listener;
import com.cf.imes.framework.mq.redis.core.pubsub.AbstractRedisSimpleMessageListener;
import com.cf.imes.framework.security.core.service.SecurityFrameworkService;
import com.cf.imes.module.system.dal.redis.RedisRefreshChannelTopicConstants;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.connection.Message;
import org.springframework.data.redis.listener.ChannelTopic;
import org.springframework.stereotype.Component;
/**
* system PREMISSION_REFRESH redis监听器
* system PERMISSION_REFRESH redis监听器
*
* @author Gqr
* @since 2024/6/13 10:32
*/
@Component
public class SystemPremissionRefreshRedisListener extends AbstractRedisSimpleMessageListener {
public class SystemPermissionRefreshRedisListener extends AbstractRedisSimpleMessageListener {
@Autowired
private SecurityFrameworkService securityFrameworkService;
private final SecurityFrameworkService securityFrameworkService;
public SystemPremissionRefreshRedisListener() {
super.setTopic(new ChannelTopic(RedisRefreshChannelTopicConstants.PREMISSION_REFRESH));
public SystemPermissionRefreshRedisListener(SecurityFrameworkService securityFrameworkService) {
super.setTopic(new ChannelTopic(RedisRefreshChannelTopicConstants.PERMISSION_REFRESH));
this.securityFrameworkService = securityFrameworkService;
}
@Override
@@ -10,6 +10,7 @@ import com.cf.imes.framework.datapermission.core.annotation.DataPermission;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.cf.imes.framework.organ.core.aop.OrganIgnore;
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
import com.cf.imes.framework.security.core.LoginUser;
import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils;
import com.cf.imes.module.system.api.permission.dto.DeptDataPermissionRespDTO;
import com.cf.imes.module.system.controller.admin.permission.vo.permission.PermissionAssignUserRoleReqVO;
@@ -188,9 +189,9 @@ public class PermissionServiceImpl implements PermissionService {
// 角色菜单权限发生修改,通知刷新本地缓存
if (CollectionUtil.isNotEmpty(createMenuIds) || CollectionUtil.isNotEmpty(deleteMenuIds)) {
CompletableFuture.runAsync(() -> {
redisTemplate.convertAndSend(RedisRefreshChannelTopicConstants.PREMISSION_REFRESH, "");
redisTemplate.convertAndSend(RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, "");
}).exceptionally(e -> {
log.error("redis message发送失败, topic:{}, 异常:{}", RedisRefreshChannelTopicConstants.PREMISSION_REFRESH, e.getMessage());
log.error("redis message发送失败, topic:{}, 异常:{}", RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, e.getMessage());
return null;
});
}
@@ -266,6 +267,12 @@ public class PermissionServiceImpl implements PermissionService {
@Override
public Set<Long> getListRoleUsers(Long roleId, Long organId) {
// 超管查看时没有选择机构则查看本机构
LoginUser loginUser = SecurityFrameworkUtils.getLoginUser();
assert loginUser != null;
if (loginUser.getIsSupAdmin() && organId == null) {
organId = loginUser.getOrganId();
}
List<UserRoleDO> userRoleDOS = userRoleMapper.selectList(new LambdaQueryWrapperX<UserRoleDO>()
.eqIfPresent(UserRoleDO::getOrganId, organId)
.eq(UserRoleDO::getRoleId, roleId)
@@ -326,6 +333,16 @@ public class PermissionServiceImpl implements PermissionService {
if (!CollectionUtil.isEmpty(deleteMenuIds)) {
userRoleMapper.deleteListByUserIdAndRoleIdIds(userId, deleteMenuIds);
}
// 角色菜单权限发生修改,通知刷新本地缓存
if (CollectionUtil.isNotEmpty(createRoleIds) || CollectionUtil.isNotEmpty(deleteMenuIds)) {
CompletableFuture.runAsync(() -> {
redisTemplate.convertAndSend(RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, "");
}).exceptionally(e -> {
log.error("redis message发送失败, topic:{}, 异常:{}", RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, e.getMessage());
return null;
});
}
}
@Override