From 930cf3fe63ddea4720ca6818df94c2161a04054f Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期三, 11 六月 2025 15:51:43 +0800
Subject: [PATCH] 任务工作档优化 代码优化 生成工作档优化
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java | 2
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java | 44 ++++++++++----
/dev/null | 52 -----------------
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java | 5 +
rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/Task.java | 3 +
rsf-server/src/main/java/com/vincent/rsf/server/common/config/WebMvcConfig.java | 15 -----
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java | 2
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java | 6 -
rsf-server/src/main/java/com/vincent/rsf/server/api/controller/mcp/McpController.java | 6 -
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java | 6 +-
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskResouceType.java | 29 +++++++++
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocItemService.java | 3
12 files changed, 77 insertions(+), 96 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/mcp/McpController.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/mcp/McpController.java
index 1819d59..771c1bc 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/mcp/McpController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/mcp/McpController.java
@@ -6,20 +6,18 @@
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.server.common.constant.Constants;
-import com.vincent.rsf.server.common.domain.BaseParam;
-import com.vincent.rsf.server.common.domain.PageParam;
import com.vincent.rsf.server.common.utils.FieldsUtils;
import com.vincent.rsf.server.manager.controller.params.LocToTaskParams;
import com.vincent.rsf.server.manager.entity.DeviceSite;
import com.vincent.rsf.server.manager.entity.LocItem;
import com.vincent.rsf.server.manager.enums.LocStsType;
+import com.vincent.rsf.server.manager.enums.TaskResouceType;
import com.vincent.rsf.server.manager.service.DeviceSiteService;
import com.vincent.rsf.server.manager.service.LocItemService;
import com.vincent.rsf.server.system.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -87,7 +85,7 @@
param.setType(Constants.TASK_TYPE_OUT_STOCK);
try {
- locItemService.generateTask(param, getLoginUserId());
+ locItemService.generateTask(TaskResouceType.TASK_RESOUCE_STOCK_TYPE.val, param, getLoginUserId());
} catch (Exception e) {
throw new RuntimeException(e);
}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/config/WebMvcConfig.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/config/WebMvcConfig.java
index f5b8463..e312df0 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/config/WebMvcConfig.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/config/WebMvcConfig.java
@@ -1,7 +1,6 @@
package com.vincent.rsf.server.common.config;
import com.vincent.rsf.server.common.constant.Constants;
-import com.vincent.rsf.server.common.interceptor.severlet.DynamicFieldsInterceptor;
import com.vincent.rsf.server.common.utils.Http;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -28,22 +27,8 @@
registry.addInterceptor(getAsyncHandlerInterceptor())
.addPathPatterns("/**")
.excludePathPatterns("/swagger-resources/**", "/webjars/**","/erp/**", "/v2/**","/v3/**","/doc.html/**", "/swagger-ui.html/**");
-
- registry.addInterceptor(dynamicFieldsInterceptor())
- .addPathPatterns("/**")
- .excludePathPatterns("/swagger-resources/**",
- "/webjars/**",
- "/erp/**",
- "/v2/**",
- "/v3/**",
- "/doc.html/**",
- "/swagger-ui.html/**");
}
- @Bean
- public DynamicFieldsInterceptor dynamicFieldsInterceptor() {
- return new DynamicFieldsInterceptor();
- }
@Bean
public AsyncHandlerInterceptor getAsyncHandlerInterceptor() {
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/CustomParameterFilter.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/CustomParameterFilter.java
deleted file mode 100644
index ddef2aa..0000000
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/CustomParameterFilter.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.vincent.rsf.server.common.interceptor.severlet;
-
-import org.springframework.stereotype.Component;
-import org.springframework.web.filter.OncePerRequestFilter;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-
-//@Component
-public class CustomParameterFilter extends OncePerRequestFilter {
-
- @Override
- protected void doFilterInternal(HttpServletRequest request,
- HttpServletResponse response,
- FilterChain filterChain)
- throws ServletException, IOException {
-
- ParameterAddableRequest wrappedRequest = new ParameterAddableRequest(request);
- // 娣诲姞绯荤粺绾у弬鏁�
- wrappedRequest.addParameter("systemVersion", "1.0.0");
- wrappedRequest.addParameter("environment", System.getProperty("spring.profiles.active", "default"));
- // 娣诲姞璇锋眰杩借釜淇℃伅
- addTraceInfo(wrappedRequest);
-
- filterChain.doFilter(wrappedRequest, response);
- }
-
- private void addTraceInfo(ParameterAddableRequest request) {
- String traceId = request.getHeader("X-Trace-Id");
-// if (traceId == null || traceId.isEmpty()) {
-// traceId = UUID.randomUUID().toString();
-// }
- request.addParameter("traceId", "traceId");
- }
-}
\ No newline at end of file
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/DynamicFieldsInterceptor.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/DynamicFieldsInterceptor.java
deleted file mode 100644
index ca9ed9a..0000000
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/DynamicFieldsInterceptor.java
+++ /dev/null
@@ -1,66 +0,0 @@
-package com.vincent.rsf.server.common.interceptor.severlet;
-
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.web.servlet.HandlerInterceptor;
-import org.springframework.web.servlet.ModelAndView;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-/**
- * @author Ryan
- * @version 1.0
- * @title DynamicFieldsInterceptor
- * @description
- * @create 2025/4/16 16:10
- */
-@Slf4j
-public class DynamicFieldsInterceptor implements HandlerInterceptor {
-
- @Override
- public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
-
-
-// if (request instanceof ParameterAddableRequest) {
-// ParameterAddableRequest wrappedRequest = (ParameterAddableRequest) request;
-//
-// // 娣诲姞涓氬姟鍙傛暟
-// wrappedRequest.addParameter("processedBy", "CustomParameterInterceptor");
-//
-// // 鍙互浠嶴ession鎴栧叾浠栧湴鏂硅幏鍙栨暟鎹�
-// Object userId = request.getSession().getAttribute("userId");
-// if (userId != null) {
-// wrappedRequest.addParameter("currentUserId", userId.toString());
-// }
-// }
-//
-// return true;
-
-
-// List<Fields> fields = FieldsUtils.getFieldsSta();
-// List<String> fieldsKey = fields.stream().filter(item -> item.getFlagEnable() == 1).map(Fields::getFields).collect(Collectors.toList());
-// fieldsKey.forEach(key -> {
-// if (request.getParameterMap().keySet().contains(key)) {
-// request.setAttribute(key, request.getParameterMap().get(key));
-// }
-// })
-// if (request instanceof ParameterAddableRequest) {
-// ParameterAddableRequest wrappedRequest = (ParameterAddableRequest) request;
-// wrappedRequest.addParameter("DynamicFields", "springValue");
-// }
-
-// return true;
- return HandlerInterceptor.super.preHandle(request, response, handler);
- }
-
- @Override
- public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
- HandlerInterceptor.super.postHandle(request, response, handler, modelAndView);
- }
-
- @Override
- public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
- System.out.println(response.getOutputStream().toString());
- HandlerInterceptor.super.afterCompletion(request, response, handler, ex);
- }
-}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/ParameterAddableRequest.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/ParameterAddableRequest.java
deleted file mode 100644
index 1283b6a..0000000
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/ParameterAddableRequest.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package com.vincent.rsf.server.common.interceptor.severlet;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletRequestWrapper;
-import java.util.*;
-
-public class ParameterAddableRequest extends HttpServletRequestWrapper {
- private final Map<String, String[]> additionalParams = new HashMap<>();
-
- public ParameterAddableRequest(HttpServletRequest request) {
- super(request);
- }
-
- /**
- * 娣诲姞鏂板弬鏁�
- * @param name 鍙傛暟鍚�
- * @param value 鍙傛暟鍊�
- */
- public void addParameter(String name, String value) {
- additionalParams.put(name, new String[]{value});
- }
-
- /**
- * 娣诲姞鏂板弬鏁帮紙澶氬�硷級
- * @param name 鍙傛暟鍚�
- * @param values 鍙傛暟鍊兼暟缁�
- */
- public void addParameter(String name, String[] values) {
- additionalParams.put(name, values);
- }
-
- @Override
- public String getParameter(String name) {
- if (additionalParams.containsKey(name)) {
- return additionalParams.get(name)[0];
- }
- return super.getParameter(name);
- }
-
- @Override
- public Map<String, String[]> getParameterMap() {
- Map<String, String[]> combinedMap = new HashMap<>(super.getParameterMap());
- combinedMap.putAll(additionalParams);
- return Collections.unmodifiableMap(combinedMap);
- }
-
- @Override
- public Enumeration<String> getParameterNames() {
- Set<String> names = new HashSet<>(Collections.list(super.getParameterNames()));
- names.addAll(additionalParams.keySet());
- return Collections.enumeration(names);
- }
-
- @Override
- public String[] getParameterValues(String name) {
- if (additionalParams.containsKey(name)) {
- return additionalParams.get(name);
- }
- return super.getParameterValues(name);
- }
-}
\ No newline at end of file
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/ParameterAddingFilter.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/ParameterAddingFilter.java
deleted file mode 100644
index 32f3c6b..0000000
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/interceptor/severlet/ParameterAddingFilter.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package com.vincent.rsf.server.common.interceptor.severlet;
-
-import javax.servlet.*;
-import javax.servlet.annotation.WebFilter;
-import javax.servlet.http.HttpServletRequest;
-import java.io.IOException;
-
-@WebFilter("/*") // 鎷︽埅鎵�鏈夎姹�
-public class ParameterAddingFilter implements Filter {
-
- @Override
- public void init(FilterConfig filterConfig) throws ServletException {
- // 鍒濆鍖栭�昏緫
- }
-
- @Override
- public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
- throws IOException, ServletException {
-
- if (request instanceof HttpServletRequest) {
- // 鍒涘缓鍙慨鏀瑰弬鏁扮殑璇锋眰鍖呰鍣�
- ParameterAddableRequest wrappedRequest =
- new ParameterAddableRequest((HttpServletRequest) request);
-
- // 娣诲姞鑷畾涔夊弬鏁�
- addCustomParameters(wrappedRequest);
-
- // 缁х画杩囨护鍣ㄩ摼
- chain.doFilter(wrappedRequest, response);
- } else {
- chain.doFilter(request, response);
- }
- }
-
- private void addCustomParameters(ParameterAddableRequest request) {
- // 娣诲姞璇锋眰ID鍜屾椂闂存埑
-// request.addParameter("requestId", UUID.randomUUID().toString());
- request.addParameter("timestamp", String.valueOf(System.currentTimeMillis()));
- // 鏍规嵁涓氬姟闇�姹傛坊鍔犲叾浠栧弬鏁�
- String userAgent = request.getHeader("User-Agent");
- if (userAgent != null && userAgent.contains("Mobile")) {
- request.addParameter("deviceType", "mobile");
- } else {
- request.addParameter("deviceType", "desktop");
- }
- }
-
- @Override
- public void destroy() {
- // 娓呯悊閫昏緫
- }
-}
\ No newline at end of file
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java
index 108539b..8767670 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java
@@ -5,7 +5,6 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
-import com.vincent.rsf.server.api.utils.LocUtils;
import com.vincent.rsf.server.common.constant.Constants;
import com.vincent.rsf.server.common.utils.ExcelUtil;
import com.vincent.rsf.server.common.annotation.OperationLog;
@@ -15,6 +14,7 @@
import com.vincent.rsf.server.common.utils.FieldsUtils;
import com.vincent.rsf.server.manager.controller.params.LocToTaskParams;
import com.vincent.rsf.server.manager.entity.LocItem;
+import com.vincent.rsf.server.manager.enums.TaskResouceType;
import com.vincent.rsf.server.manager.service.LocItemService;
import com.vincent.rsf.server.manager.service.LocService;
import com.vincent.rsf.server.system.controller.BaseController;
@@ -98,7 +98,7 @@
param.setType(Constants.TASK_TYPE_OUT_STOCK);
try {
- locItemService.generateTask(param, getLoginUserId());
+ locItemService.generateTask(TaskResouceType.TASK_RESOUCE_STOCK_TYPE.val, param, getLoginUserId());
} catch (Exception e) {
throw new RuntimeException(e);
}
@@ -136,7 +136,7 @@
map.setType(Constants.TASK_TYPE_OUT_CHECK);
try {
- locItemService.generateTask(map, getLoginUserId());
+ locItemService.generateTask(TaskResouceType.TASK_RESOUCE_CHECK_TYPE.val, map, getLoginUserId());
} catch (Exception e) {
throw new RuntimeException(e);
}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/Task.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/Task.java
index 74ec628..0a99503 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/Task.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/Task.java
@@ -53,6 +53,9 @@
@ApiModelProperty(value= "浠诲姟鍙�")
private String taskCode;
+ @ApiModelProperty("浠诲姟鏉ユ簮")
+ private Short resource;
+
/**
* 浠诲姟鐘舵��
*/
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskResouceType.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskResouceType.java
new file mode 100644
index 0000000..9915624
--- /dev/null
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskResouceType.java
@@ -0,0 +1,29 @@
+package com.vincent.rsf.server.manager.enums;
+
+/**
+ * 浠诲姟鐢熸垚鏉ユ簮绫诲瀷
+ */
+public enum TaskResouceType {
+
+ //璁㈠崟绫诲瀷
+ TASK_RESOUCE_WAVE_TYPE("1", "娉㈡浠诲姟"),
+
+ TASK_RESOUCE_STOCK_TYPE("2", "搴撳瓨鍑哄簱浠诲姟"),
+
+ TASK_RESOUCE_PAKIN_TYPE("3", "缁勬嫋浠诲姟"),
+
+ TASK_RESOUCE_ORDER_TYPE("4", "鍗曟嵁鍑哄簱浠诲姟"),
+
+ TASK_RESOUCE_CHECK_TYPE("4", "鐩樼偣鍑哄簱浠诲姟"),
+
+
+ ;
+ TaskResouceType(String val, String desc) {
+ this.val = Short.parseShort(val);
+ this.desc = desc;
+ }
+
+ public Short val;
+
+ public String desc;
+}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
index 57813fb..7043713 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
@@ -165,7 +165,7 @@
@Transactional(rollbackFor = Exception.class)
public void taskLogUpdate() {
LambdaQueryWrapper<Task> queryWrapper = new LambdaQueryWrapper<Task>();
- Config config = configService.getOne(new LambdaQueryWrapper<Config>().eq(Config::getFlag, GlobalConfigCode.ORDER_INOF_REPORT_PLAT));
+ Config config = configService.getOne(new LambdaQueryWrapper<Config>().eq(Config::getFlag, GlobalConfigCode.ORDER_INOF_REPORT_PLAT));//鏄惁涓婃姤骞冲彴
if (!Objects.isNull(config)) {
if (Boolean.parseBoolean(config.getVal())) {
queryWrapper.in(Task::getTaskStatus, TaskStsType.REPORT_IN.id);
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocItemService.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocItemService.java
index 44a86d7..689a0f3 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocItemService.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocItemService.java
@@ -1,14 +1,13 @@
package com.vincent.rsf.server.manager.service;
import com.baomidou.mybatisplus.extension.service.IService;
-import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.server.manager.controller.params.LocToTaskParams;
import com.vincent.rsf.server.manager.entity.LocItem;
import com.vincent.rsf.server.manager.entity.Task;
public interface LocItemService extends IService<LocItem> {
- void generateTask(LocToTaskParams map, Long loginUserId) throws Exception;
+ void generateTask(Short resouce, LocToTaskParams map, Long loginUserId) throws Exception;
Task genMoveTask(LocToTaskParams map, Long loginUserId);
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java
index 634da61..3165298 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java
@@ -1,7 +1,6 @@
package com.vincent.rsf.server.manager.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.controller.params.TaskInParam;
import com.vincent.rsf.server.api.entity.dto.InTaskMsgDto;
@@ -53,6 +52,7 @@
* 搴撳瓨鍑哄簱鐢熸垚鍑哄簱浠诲姟
* type: check 鐩樼偣, stock: 搴撳瓨鍑哄簱
*
+ * @param resouce
* @param map
* @param loginUserId
* @return
@@ -60,7 +60,7 @@
@Override
@Synchronized
@Transactional(rollbackFor = Exception.class)
- public void generateTask(LocToTaskParams map, Long loginUserId) throws Exception {
+ public void generateTask(Short resouce, LocToTaskParams map, Long loginUserId) throws Exception {
if (Objects.isNull(map.getSiteNo())) {
throw new CoolException("绔欑偣涓嶈兘涓虹┖锛�");
}
@@ -99,6 +99,7 @@
String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_TASK_CODE, null);
task.setOrgLoc(loc.getCode())
.setTaskCode(ruleCode)
+ .setResource(resouce)
.setTargSite(siteNo)
.setSort(Constants.TASK_SORT_DEFAULT_VALUE)
.setUpdateBy(loginUserId)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
index 0a0c2f0..7948911 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
@@ -476,7 +476,7 @@
.setSiteNo(param.getSiteNo());
try {
//鐢熸垚鍑哄簱浠诲姟
- locItemService.generateTask(taskParams, loginUserId);
+ locItemService.generateTask(TaskResouceType.TASK_RESOUCE_ORDER_TYPE.val, taskParams, loginUserId);
} catch (Exception e) {
logger.error("UNK", e);
throw new CoolException(e.getMessage());
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
index aaa683a..816bc4d 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
@@ -310,6 +310,7 @@
task.setTaskCode(ruleCode)
.setTaskStatus(TaskStsType.GENERATE_IN.id)
.setTaskType(TaskType.TASK_TYPE_IN.type)
+ .setResource(TaskResouceType.TASK_RESOUCE_PAKIN_TYPE.val)
.setTargLoc(targetLoc)
.setBarcode(pakin.getBarcode())
.setOrgSite(deviceSite.getSite())
@@ -814,7 +815,7 @@
Double workQty = Math.round((asnOrder.getWorkQty() - item.getAnfme()) * 10000) / 10000.0;
asnOrder.setExceStatus(AsnExceStatus.OUT_STOCK_STATUS_TASK_INIT.val)
- .setWorkQty(workQty.compareTo(0.00) > 0 ? workQty : 0.00 )
+ .setWorkQty(workQty.compareTo(0.00) > 0 ? workQty : 0.00)
.setUpdateBy(loginUserId)
.setUpdateTime(new Date());
if (!outStockService.updateById(asnOrder)) {
@@ -1031,19 +1032,34 @@
if (Objects.isNull(list) || list.isEmpty()) {
Map<Long, List<TaskItem>> maps = taskItems.stream().collect(Collectors.groupingBy(TaskItem::getSource));
maps.keySet().forEach(key -> {
- WaveItem waveItem = waveItemService.getById(key);
- if (Objects.isNull(waveItem)) {
- throw new CoolException("娉㈡鏄庣粏涓嶅瓨鍦紒锛�");
- }
- try {
- saveOutStockItem(maps.get(key), waveItem, loginUserId);
- } catch (Exception e) {
- throw new CoolException(e.getMessage());
+ if (task.getResource().equals(TaskResouceType.TASK_RESOUCE_WAVE_TYPE.val)) {
+ WaveItem waveItem = waveItemService.getById(key);
+ if (Objects.isNull(waveItem)) {
+ throw new CoolException("娉㈡鏄庣粏涓嶅瓨鍦紒锛�");
+ }
+ try {
+ saveOutStockItem(maps.get(key), null, waveItem, loginUserId);
+ } catch (Exception e) {
+ throw new CoolException(e.getMessage());
+ }
+ } else if (task.getResource().equals(TaskResouceType.TASK_RESOUCE_ORDER_TYPE.val)) {
+ AsnOrderItem orderItem = asnOrderItemService.getById(key);
+ if (Objects.isNull(orderItem)) {
+ throw new CoolException("鍗曟嵁鏄庣粏涓嶅瓨鍦紒锛�");
+ }
+
+ try {
+ saveOutStockItem(maps.get(key), orderItem, null, loginUserId);
+ } catch (Exception e) {
+ throw new CoolException(e.getMessage());
+ }
+ } else {
+
}
});
} else {
try {
- saveOutStockItem(taskItems, null, loginUserId);
+ saveOutStockItem(taskItems, null, null, loginUserId);
} catch (Exception e) {
throw new CoolException(e.getMessage());
}
@@ -1090,7 +1106,7 @@
* @version 1.0
*/
@Transactional(rollbackFor = Exception.class)
- public void saveOutStockItem(List<TaskItem> taskItems, WaveItem waveItem, Long loginUserId) throws Exception {
+ public void saveOutStockItem(List<TaskItem> taskItems, AsnOrderItem orderItem, WaveItem waveItem, Long loginUserId) throws Exception {
Stock stock = new Stock();
String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_STOCK_CODE, null);
if (StringUtils.isBlank(ruleCode)) {
@@ -1103,7 +1119,11 @@
.setAnfme(sum);
if (Objects.isNull(waveItem)) {
stock.setWkType(Short.parseShort(OrderWorkType.ORDER_WORK_TYPE_STOCK_OUT.type))
- .setMemo("鍑哄簱鍗曞嚭搴擄紝鏃犲崟鎹俊鎭紒锛�")
+ .setMemo("搴撳瓨鍑哄簱锛屾棤鍗曟嵁淇℃伅锛侊紒")
+ .setType(OrderType.ORDER_OUT.type);
+ } else if (!Objects.isNull(orderItem) && StringUtils.isNotBlank(orderItem.getId() + "")) {
+ AsnOrder asnOrder = asnOrderService.getById(orderItem.getAsnId());
+ stock.setWkType(Short.parseShort(asnOrder.getWkType()))
.setType(OrderType.ORDER_OUT.type);
} else {
//TODO 鐢熸垚娉㈡鏃堕渶瑕佸皢娉㈡鍙峰啓鍏ュ崟鎹紝閫氳繃鐗╂枡锛屾壒娆★紝鍔ㄦ�佸瓧娈电瓑鍞竴鍊煎弽鏌ュ崟鎹俊鎭�
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java
index cafe93e..8e0e9d8 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaveServiceImpl.java
@@ -6,11 +6,8 @@
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.framework.exception.CoolException;
-import com.vincent.rsf.server.manager.enums.TaskStsType;
-import com.vincent.rsf.server.manager.enums.TaskType;
+import com.vincent.rsf.server.manager.enums.*;
import com.vincent.rsf.server.manager.entity.*;
-import com.vincent.rsf.server.manager.enums.AsnExceStatus;
-import com.vincent.rsf.server.manager.enums.WaveExceStatus;
import com.vincent.rsf.server.manager.mapper.WaveMapper;
import com.vincent.rsf.server.manager.service.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -164,6 +161,7 @@
task.setTaskCode(ruleCode)
.setTaskType(TaskType.TASK_TYPE_OUT.type)
.setTaskStatus(TaskStsType.GENERATE_OUT.id)
+ .setResource(TaskResouceType.TASK_RESOUCE_WAVE_TYPE.val)
.setBarcode(loc.getBarcode())
.setOrgLoc(loc.getCode())
.setCreateBy(loginUserId)
--
Gitblit v1.9.1