From 3bbc9acc8603c6727fb979fddbbd0a7ff474b8ed Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期五, 23 五月 2025 17:39:17 +0800
Subject: [PATCH] 添加盘点功能
---
rsf-admin/src/page/work/outBound/OutBoundList.jsx | 2
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java | 9 ++--
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java | 33 ++++++++++++++--
rsf-admin/src/page/work/checkOutBound/CheckOutBoundList.jsx | 9 ----
rsf-admin/src/page/task/TaskList.jsx | 6 +-
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java | 3 +
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java | 2
rsf-admin/src/i18n/zh.js | 2 -
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java | 7 +--
9 files changed, 44 insertions(+), 29 deletions(-)
diff --git a/rsf-admin/src/i18n/zh.js b/rsf-admin/src/i18n/zh.js
index 245811c..834c823 100644
--- a/rsf-admin/src/i18n/zh.js
+++ b/rsf-admin/src/i18n/zh.js
@@ -1,5 +1,3 @@
-import basContainer from "../page/basicInfo/basContainer";
-import outBound from "../page/outWork/outBound";
import chineseMessages from "./core/chineseMessages";
const customChineseMessages = {
diff --git a/rsf-admin/src/page/task/TaskList.jsx b/rsf-admin/src/page/task/TaskList.jsx
index 72c5c80..6b73c19 100644
--- a/rsf-admin/src/page/task/TaskList.jsx
+++ b/rsf-admin/src/page/task/TaskList.jsx
@@ -186,7 +186,7 @@
const refresh = useRefresh();
const checkClick = async () => {
- const { data: { code, data, msg } } = await request.post(`/task/pick/` + record.id);
+ const { data: { code, data, msg } } = await request.post(`/task/check/` + record.id);
if (code === 200) {
notify(msg);
refresh();
@@ -195,7 +195,7 @@
}
}
- return (record?.taskStatus == 199 && record?.taskType == 107 ? <ConfirmButton label={"toolbar.check"} startIcon={<GradingOutlinedIcon />} onConfirm={checkClick} /> : <></>)
+ return (record?.taskStatus == 198 && record?.taskType == 107 ? <ConfirmButton label={"toolbar.check"} startIcon={<GradingOutlinedIcon />} onConfirm={checkClick} /> : <></>)
}
/**
@@ -218,7 +218,7 @@
}
return (
- record?.taskStatus == 198 ? <ConfirmButton label={"toolbar.pick"} startIcon={<ColorizeOutlinedIcon />} onConfirm={pickClick} /> : <></>
+ record?.taskStatus == 198 && record?.taskType == 103 ? <ConfirmButton label={"toolbar.pick"} startIcon={<ColorizeOutlinedIcon />} onConfirm={pickClick} /> : <></>
)
}
diff --git a/rsf-admin/src/page/work/checkOutBound/CheckOutBoundList.jsx b/rsf-admin/src/page/work/checkOutBound/CheckOutBoundList.jsx
index 56af1d0..278e218 100644
--- a/rsf-admin/src/page/work/checkOutBound/CheckOutBoundList.jsx
+++ b/rsf-admin/src/page/work/checkOutBound/CheckOutBoundList.jsx
@@ -182,14 +182,7 @@
http(sta, data);
}
const http = async (sta, items) => {
- console.log(items);
-
- const filter = items.filter(item => (item.outQty + item.workQty) > item.anfme);
- if (filter.length > 0) {
- notify(translate('toolbar.request.error.out_stock_qty'))
- return
- }
- const { data: { code, data, msg } } = await request.post(`/locItem/generate/task`, { siteNo: sta, items: items });
+ const { data: { code, data, msg } } = await request.post(`/locItem/generate/task`, { siteNo: sta, items: items, type: 'check' });
if (code === 200) {
notify(msg);
refresh()
diff --git a/rsf-admin/src/page/work/outBound/OutBoundList.jsx b/rsf-admin/src/page/work/outBound/OutBoundList.jsx
index 7a2db95..e7eea22 100644
--- a/rsf-admin/src/page/work/outBound/OutBoundList.jsx
+++ b/rsf-admin/src/page/work/outBound/OutBoundList.jsx
@@ -189,7 +189,7 @@
notify(translate('toolbar.request.error.out_stock_qty'))
return
}
- const { data: { code, data, msg } } = await request.post(`/locItem/generate/task`, { siteNo: sta, items: items });
+ const { data: { code, data, msg } } = await request.post(`/locItem/check/task`, { siteNo: sta, items: items });
if (code === 200) {
notify(msg);
refresh()
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 85c0c8e..ac258a8 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
@@ -110,7 +110,7 @@
* @return
*/
@PreAuthorize("hasAuthority('manager:locItem:list')")
- @PostMapping("/locItem/generate/check/task")
+ @PostMapping("/locItem/check/task")
public R genStatisticalTask(@RequestBody Map<String, Object> map) {
if (Objects.isNull(map)) {
return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java
index eb28056..1068c34 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java
@@ -147,8 +147,7 @@
}
/**
- * 鎷f枡鍑哄簱
- *
+ * 鎷f枡鍑哄簱锛堢敤浜庢祴璇曟嫞鏂欏嚭搴擄級
* @return
*/
@PreAuthorize("hasAuthority('manager:task:update')")
@@ -166,12 +165,12 @@
}
/**
- * 鐩樼偣鍑哄簱
+ * 鐩樼偣鍑哄簱锛堢敤浜庢祴璇曠洏鐐瑰嚭搴擄級
*
* @return
*/
@PreAuthorize("hasAuthority('manager:task:update')")
- @ApiOperation("鎷f枡鍑哄簱")
+ @ApiOperation("鐩樼偣鍑哄簱")
@PostMapping("/task/check/{id}")
public R checkTask(@PathVariable Long id) {
if (Objects.isNull(id)) {
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java
index 1208abd..d07868f 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java
@@ -38,7 +38,8 @@
WCS_EXECUTE_OUT_CONVEYOR("107", "RCS瀹瑰櫒娴佸姩浠诲姟宸蹭笅鍙�"),
GENERATE_WAVE_SEED("197", "绛夊緟瀹瑰櫒鍒拌揪"),
- WAVE_SEED("198", "鎾涓�"),
+
+ WAVE_SEED("198", "鎾涓�/鐩樼偣涓�"),
COMPLETE_OUT("199", "鍑哄簱瀹屾垚"),
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 9a5470a..d07ce0b 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
@@ -163,14 +163,39 @@
* @return
*/
@Override
+ @Transactional(rollbackFor = Exception.class)
public R gentMoveTask(Map<String, Object> map) {
- if (Objects.isNull(map.get("targetLoc"))) {
-
+ if (Objects.isNull(map.get("targetLoc")) && StringUtils.isNotBlank(map.get("targetLoc").toString())) {
+ throw new CoolException("鐩爣搴撲綅涓嶈兘涓虹┖锛�1");
}
- if (Objects.isNull(map.get("orgLoc"))) {
-
+ if (Objects.isNull(map.get("orgLoc")) && StringUtils.isNotBlank(map.get("orgLoc").toString())) {
+ throw new CoolException("婧愬簱浣嶄笉鑳戒负绌猴紒");
}
+ Loc orgLoc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, map.get("orgLoc")));
+ if (Objects.isNull(orgLoc)) {
+ throw new CoolException("婧愬簱浣嶄笉瀛樺湪锛侊紒");
+ }
+
+ Loc targetLoc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, map.get("targetLoc").toString()));
+ if (Objects.isNull(targetLoc)) {
+ throw new CoolException("鐩爣搴撲綅涓嶅瓨鍦紒锛�");
+ }
+
+ targetLoc.setUseStatus(LocStsType.LOC_STS_TYPE_R.type);
+
+ if (!locService.updateById(targetLoc)) {
+ throw new CoolException("鐩爣搴撲綅棰勭害澶辫触锛侊紒");
+ }
+
+ String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_TASK_CODE, null);
+ Task task = new Task();
+ task.setOrgLoc(orgLoc.getCode())
+ .setTaskCode(ruleCode)
+ .setTaskType(TaskType.TASK_TYPE_LOC_MOVE.type)
+ .setBarcode(orgLoc.getBarcode());
+
+
return null;
}
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 ffbcebe..ebf1007 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
@@ -395,6 +395,7 @@
pickComplateInStock(task);
} else if (task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)) {
//57.鐩樼偣鍐嶅叆搴�
+ pickComplateInStock(task);
}
}
}
@@ -417,12 +418,10 @@
complateOutStock(task);
} else if (task.getTaskType().equals(TaskType.TASK_TYPE_PICK_AGAIN_OUT.type)) {
//鎷f枡鍑哄簱
-// Task seviceOne = pickTask(task.getId());
- //绉婚櫎鍘熷搴撳瓨
complateOutStock(task);
} else if (task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_OUT.type)) {
-
-
+ //鐩樼偣鍑哄簱
+ complateOutStock(task);
}
}
}
@@ -722,7 +721,7 @@
throw new CoolException("搴撲綅鐘舵�佷慨鏀瑰け璐ワ紒锛�");
}
- if (!task.getTaskType().equals(TaskType.TASK_TYPE_PICK_AGAIN_OUT.type)) {
+ if (!task.getTaskType().equals(TaskType.TASK_TYPE_PICK_AGAIN_OUT.type) || !task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_OUT.type)) {
if (!this.update(new LambdaUpdateWrapper<Task>()
.eq(Task::getId, task.getId())
.set(Task::getTaskStatus, TaskStsType.UPDATED_OUT.id))) {
--
Gitblit v1.9.1