diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java index bbccc9fe3..f301f5723 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java @@ -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 orderIds = JSON.parseArray(orderNos).toJavaList(Long.class); - List orderDOS = orderMapper.selectBatchIds(orderIds).stream().map(m -> m.setStatus(3)).collect(Collectors.toList()); + List 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 orderIds = JSON.parseArray(planDO.getOrderNos()).toJavaList(Long.class); - List orderDOS = orderMapper.selectBatchIds(orderIds).stream().map(m -> m.setStatus(2)).collect(Collectors.toList()); + List 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 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()) diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml index 76f6fe4c0..f2d6472eb 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/plate/PlateMapper.xml @@ -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 diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/process/vo/ProcessStepStatus.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/process/vo/ProcessStepStatus.java index ec2bcb90e..a621118bc 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/process/vo/ProcessStepStatus.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/controller/admin/process/vo/ProcessStepStatus.java @@ -15,7 +15,7 @@ public class ProcessStepStatus { private Boolean processStepItemStatus; // 工序步骤表的类型 - private Long type; + private Integer type; // 柜体id private List bodyId; diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/process/ProductionProcessServiceImpl.java b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/process/ProductionProcessServiceImpl.java index fc261853f..c8f93d4bc 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/process/ProductionProcessServiceImpl.java +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/java/com/cf/imes/module/manage/service/process/ProductionProcessServiceImpl.java @@ -71,7 +71,7 @@ public class ProductionProcessServiceImpl implements ProductionProcessService { @Override public PageResult getProcessPage(ProcessPageReqVO pageReqVO) { - + // 模糊搜索添加条件 pageReqVO.setCustomer(insertSeparator(pageReqVO.getCustomer())); pageReqVO.setCustomOrderNo(insertSeparator(pageReqVO.getCustomOrderNo())); pageReqVO.setAddress(insertSeparator(pageReqVO.getAddress())); diff --git a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/process/ProcessStepMapper.xml b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/process/ProcessStepMapper.xml index e33eec164..85f8a5499 100644 --- a/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/process/ProcessStepMapper.xml +++ b/cf-module-prod-manage/cf-module-prod-manage-biz/src/main/resources/com/cf/imes/module/manage/dal/mysql/process/ProcessStepMapper.xml @@ -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, diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/permission/RoleMapper.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/permission/RoleMapper.java index 486b92c2c..89b9d48bf 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/permission/RoleMapper.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/mysql/permission/RoleMapper.java @@ -27,11 +27,11 @@ public interface RoleMapper extends BaseMapperX { 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()) diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/redis/RedisRefreshChannelTopicConstants.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/redis/RedisRefreshChannelTopicConstants.java index 89b2dd743..4b83c1160 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/redis/RedisRefreshChannelTopicConstants.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/redis/RedisRefreshChannelTopicConstants.java @@ -11,5 +11,5 @@ public interface RedisRefreshChannelTopicConstants { /** * 刷新权限 */ - String PREMISSION_REFRESH = "PREMISSION_REFRESH"; + String PERMISSION_REFRESH = "PERMISSION_REFRESH"; } diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/redis/listener/SystemPremissionRefreshRedisListener.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/redis/listener/SystemPermissionRefreshRedisListener.java similarity index 66% rename from cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/redis/listener/SystemPremissionRefreshRedisListener.java rename to cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/redis/listener/SystemPermissionRefreshRedisListener.java index a16cb6023..b546ebc45 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/redis/listener/SystemPremissionRefreshRedisListener.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/dal/redis/listener/SystemPermissionRefreshRedisListener.java @@ -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 diff --git a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/PermissionServiceImpl.java b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/PermissionServiceImpl.java index f58486c80..9d09cf68e 100644 --- a/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/PermissionServiceImpl.java +++ b/cf-module-system/cf-module-system-biz/src/main/java/com/cf/imes/module/system/service/permission/PermissionServiceImpl.java @@ -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 getListRoleUsers(Long roleId, Long organId) { + // 超管查看时没有选择机构则查看本机构 + LoginUser loginUser = SecurityFrameworkUtils.getLoginUser(); + assert loginUser != null; + if (loginUser.getIsSupAdmin() && organId == null) { + organId = loginUser.getOrganId(); + } List userRoleDOS = userRoleMapper.selectList(new LambdaQueryWrapperX() .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