Browse Source

工单问题处理

yzc 1 year ago
parent
commit
f6c3d077d3

+ 1 - 1
hx-jxst/src/main/java/com/fjhx/jxst/flow/SalesContractFlow.java

@@ -78,7 +78,7 @@ public class SalesContractFlow extends FlowDelegate {
         DynamicDataSourceContextHolder.push(SourceConstant.BASE);
         List<Long> userIds = userService.getUserIdsByRoleKey("dev");
         DynamicDataSourceContextHolder.poll();
-        WebSocketPush.byUsers(PushTypeEnum.MESSAGE, userIds, "您有新的合同待处理", PushBusinessTypeEnum.NEW_CONTRACT.getType());
+        WebSocketPush.byUsers(PushTypeEnum.MESSAGE, userIds, "您有新的工单待处理", PushBusinessTypeEnum.NEW_CONTRACT.getType());
     }
 
 }

+ 5 - 0
hx-mes/src/main/java/com/fjhx/mes/entity/work/dto/WorkOrderSelectDto.java

@@ -29,4 +29,9 @@ public class WorkOrderSelectDto extends BaseSelectDto {
      */
     private String isCustomized;
 
+    /**
+     * 制图/研发 是否处理 1是 0否
+     */
+    private Integer isHandle;
+
 }

+ 32 - 0
hx-mes/src/main/java/com/fjhx/mes/service/work/impl/WorkOrderServiceImpl.java

@@ -48,6 +48,8 @@ import com.fjhx.wms.service.stock.StockService;
 import com.fjhx.wms.service.stock.StockWaitDetailsService;
 import com.fjhx.wms.service.stock.StockWaitService;
 import com.ruoyi.common.core.domain.BasePo;
+import com.ruoyi.common.core.domain.entity.SysRole;
+import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.wrapper.IWrapper;
@@ -117,6 +119,36 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder
         }
         wrapper.eq("wo", WorkOrder::getSource, dto.getSource());
 
+
+        if (ObjectUtil.isNotEmpty(dto.getIsHandle())) {
+            SysUser user = SecurityUtils.getLoginUser().getUser();
+
+
+            List<SysRole> sysRoleList = user.getRoles();
+            List<String> roleKeys = sysRoleList.stream().map(SysRole::getRoleKey).collect(Collectors.toList());
+            //研发
+            if (roleKeys.contains("dev")) {
+                wrapper.eq("wo", WorkOrder::getResearchStatus, dto.getIsHandle());
+            }
+            //制图
+            if (roleKeys.contains("design")) {
+                wrapper.and(q -> q
+                        .eq("wo", WorkOrder::getBomStatus, dto.getIsHandle())
+                        .eq("wo", WorkOrder::getTechnologyStatus, dto.getIsHandle())
+                );
+            }
+            //研发,制图
+            if (roleKeys.contains("dev") && roleKeys.contains("design")) {
+                wrapper.and(q -> q
+                        .eq("wo", WorkOrder::getResearchStatus, dto.getIsHandle())
+                        .or().and(q1 -> q1
+                                .eq("wo", WorkOrder::getBomStatus, dto.getIsHandle())
+                                .eq("wo", WorkOrder::getTechnologyStatus, dto.getIsHandle())
+                        )
+                );
+            }
+        }
+
         //过滤待排程(待创建计划的工单)
         if (Objects.equals(dto.getIsRemaining(), 1)) {
             //研发必须提交后