From 9145f8a44c6ae733019e43c775cc30243032e502 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期三, 29 四月 2026 16:16:43 +0800
Subject: [PATCH] 拍照触发修改
---
src/main/java/com/zy/asrs/controller/LocMastController.java | 93 +++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 87 insertions(+), 6 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/LocMastController.java b/src/main/java/com/zy/asrs/controller/LocMastController.java
index 757a36f..aea5fc8 100644
--- a/src/main/java/com/zy/asrs/controller/LocMastController.java
+++ b/src/main/java/com/zy/asrs/controller/LocMastController.java
@@ -15,8 +15,10 @@
import com.zy.asrs.entity.param.LocMastInitParam;
import com.zy.asrs.mapper.LocDetlMapper;
import com.zy.asrs.service.*;
+import com.zy.asrs.utils.LocAliasUtils;
import com.zy.common.entity.Parameter;
import com.zy.common.model.Shelves;
+import com.zy.common.service.CommonService;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -42,6 +44,15 @@
@Resource
private LocDetlMapper locDetlMapper;
+
+ @Resource
+ private CommonService commonService;
+
+ @Resource
+ private WrkMastLogService wrkMastLogService;
+
+ @Resource
+ private WrkDetlLogService wrkDetlLogService;
@RequestMapping(value = "/locMast/init/pwd")
public R locMastInitPwd(@RequestParam(required = false) String pwd) {
@@ -85,13 +96,17 @@
String[] dates = val.split(RANGE_TIME_LINK);
wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
- } else if (entry.getKey().equals("loc_no")){
- wrapper.like(entry.getKey(), val);
} else {
if (entry.getKey().equals("loc_type1")){
sign=true;
}
- wrapper.eq(entry.getKey(), val);
+ if (entry.getKey().equals("loc_no")){
+ wrapper.andNew().like("loc_no", val).or().like("loc_alias", val);
+ } else if (entry.getKey().equals("area_id")) {
+ wrapper.eq(entry.getKey(), val);
+ } else {
+ wrapper.like(entry.getKey(), val);
+ }
}
}
if (sign){
@@ -106,6 +121,7 @@
locMast.setModiTime(new Date());
locMast.setAppeUser(getUserId());
locMast.setAppeTime(new Date());
+ locMastService.prepareAreaAlias(locMast);
locMastService.insert(locMast);
return R.ok();
}
@@ -126,6 +142,15 @@
}
LocMast oldLocMast = locMastService.selectById(locMast.getLocNo());
+ if (locMast.getAreaId() == null && oldLocMast != null) {
+ locMast.setAreaId(oldLocMast.getAreaId());
+ }
+ if (locMast.getFrozen() == null && oldLocMast != null) {
+ locMast.setFrozen(oldLocMast.getFrozen());
+ }
+ if (locMast.getFrozenMemo() == null && oldLocMast != null) {
+ locMast.setFrozenMemo(oldLocMast.getFrozenMemo());
+ }
if (locMast.getLocSts().equals("F") && (oldLocMast.getLocSts().equals("D") || oldLocMast.getLocSts().equals("O"))) {
return R.error("褰撳墠鎿嶄綔宸茶闃绘锛岃鑱旂郴绠$悊鍛�");
}
@@ -134,6 +159,31 @@
if (oldLocMast.getLocSts().equals("R") || oldLocMast.getLocSts().equals("F") || oldLocMast.getLocSts().equals("S")) {
if (locMast.getLocSts().equals("O") || locMast.getLocSts().equals("D")) {
List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()));
+ // 娣诲姞鍘嗗彶宸ヤ綔涓绘。
+ WrkMastLog wrkMastLog = new WrkMastLog();
+ wrkMastLog.setWrkNo(commonService.getWorkNo(3));
+ wrkMastLog.setIoTime(now);
+ wrkMastLog.setWrkSts(5);
+ wrkMastLog.setIoType(19);
+ wrkMastLog.setIoPri(13D); // 浼樺厛绾�
+ wrkMastLog.setCrnNo(locMast.getCrnNo());
+ wrkMastLog.setSourceLocNo(locMast.getLocNo());
+ wrkMastLog.setLocNo(locMast.getLocNo());
+ wrkMastLog.setBarcode(locMast.getBarcode()); // 鎵樼洏鐮�
+ wrkMastLog.setFullPlt("Y"); // 婊℃澘锛歒
+ wrkMastLog.setPicking("N"); // 鎷f枡
+ wrkMastLog.setExitMk("N"); // 閫�鍑�
+ wrkMastLog.setEmptyMk("N"); // 绌烘澘
+ wrkMastLog.setLinkMis("Y");
+ // 鎿嶄綔浜哄憳鏁版嵁
+ wrkMastLog.setAppeTime(now);
+ wrkMastLog.setModiTime(now);
+ wrkMastLog.setAppeUser(getUserId());
+ wrkMastLog.setModiUser(getUserId());
+ boolean res = wrkMastLogService.insert(wrkMastLog);
+ if (!res) {
+ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+ }
for (LocDetl locDetl : locDetls) {
// 淇濆瓨璋冩暣璁板綍
AdjDetl adjDetl = new AdjDetl();
@@ -149,6 +199,20 @@
if (!adjDetlService.insert(adjDetl)) {
throw new CoolException("鏈嶅姟鍣ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
}
+
+ // 娣诲姞鍘嗗彶宸ヤ綔鏄庣粏
+ WrkDetlLog wrkDetl = new WrkDetlLog();
+ wrkDetl.sync(locDetl);
+ wrkDetl.setWrkNo(wrkMastLog.getWrkNo());
+ wrkDetl.setIoTime(wrkMastLog.getIoTime());
+ wrkDetl.setAnfme(0.0);
+ wrkDetl.setAppeTime(now);
+ wrkDetl.setModiTime(now);
+ wrkMastLog.setAppeUser(getUserId());
+ wrkMastLog.setModiUser(getUserId());
+ if (!wrkDetlLogService.insert(wrkDetl)) {
+ throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
+ }
}
if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()))) {
throw new CoolException("鏈嶅姟鍣ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
@@ -158,6 +222,7 @@
}
locMast.setModiUser(getUserId());
locMast.setModiTime(now);
+ locMastService.prepareAreaAlias(locMast);
AdjDetl adjDetl = new AdjDetl();
adjDetl.setLocNo(locMast.getLocNo());
adjDetl.setMatnr("鍘熷簱浣嶇姸鎬侊細" + oldLocMast.getLocSts());
@@ -168,12 +233,27 @@
throw new CoolException("搴撲綅璋冩暣璁板綍澶辫触");
}
// 搴撲綅鍐荤粨->鍐荤粨鎵�鏈夊簱瀛�
- if (locMast.getFrozen() == 1 && oldLocMast.getFrozen() == 0 && locMast.getLocSts().equals("F") && oldLocMast.getLocSts().equals("F")) {
+ if (Integer.valueOf(1).equals(locMast.getFrozen())
+ && Integer.valueOf(0).equals(oldLocMast.getFrozen())
+ && locMast.getLocSts().equals("F")
+ && oldLocMast.getLocSts().equals("F")) {
locDetlMapper.updateDetlFrozenByLocNo(oldLocMast.getLocNo());
}
if(!locMastService.updateById(locMast)) {
throw new CoolException("鏈嶅姟鍣ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
}
+ return R.ok();
+ }
+
+ @PostMapping(value = "/locMast/batch/area/auth")
+ @ManagerAuth(memo = "鎵归噺淇敼搴撳尯")
+ public R batchArea(@RequestBody JSONObject param) {
+ if (Cools.isEmpty(param) || Cools.isEmpty(param.getJSONArray("locNos"))) {
+ return R.error("璇烽�夋嫨搴撲綅");
+ }
+ List<String> locNos = JSONObject.parseArray(param.getJSONArray("locNos").toJSONString(), String.class);
+ Integer areaId = param.getInteger("areaId");
+ locMastService.batchUpdateArea(locNos, areaId, getUserId());
return R.ok();
}
@@ -205,13 +285,13 @@
@ManagerAuth
public R query(String condition) {
EntityWrapper<LocMast> wrapper = new EntityWrapper<>();
- wrapper.like("loc_no", condition);
+ wrapper.andNew().like("loc_no", condition).or().like("loc_alias", condition);
Page<LocMast> page = locMastService.selectPage(new Page<>(0, 10), wrapper);
List<Map<String, Object>> result = new ArrayList<>();
for (LocMast locMast : page.getRecords()){
Map<String, Object> map = new HashMap<>();
map.put("id", locMast.getLocNo());
- map.put("value", locMast.getLocNo());
+ map.put("value", LocAliasUtils.displayLocNo(locMast));
result.add(map);
}
return R.ok(result);
@@ -283,6 +363,7 @@
}
}
}
+ locMastService.fillAreaAlias(list);
if (!Cools.isEmpty(param.getEnable()) && param.getEnable() == 1){
locMastService.delete(new EntityWrapper<>());
}
--
Gitblit v1.9.1