From 707d414c0e6a8baff3ce7affec820f0fc1a13c19 Mon Sep 17 00:00:00 2001
From: skyouc <958836976@qq.com>
Date: 星期二, 24 二月 2026 09:06:04 +0800
Subject: [PATCH] no message
---
src/main/java/com/zy/api/controller/params/AgvCarriesParam.java | 22 +
src/main/java/com/zy/api/controller/params/AgvCallBackParam.java | 15 +
src/main/java/com/zy/api/entity/CallAgvParams.java | 3
src/main/java/com/zy/api/service/impl/WcsApiServiceImpl.java | 20
src/main/java/com/zy/asrs/entity/OrderDetlPakin.java | 4
src/main/java/com/zy/api/controller/params/AgvRequestParam.java | 26 +
src/main/java/com/zy/common/constant/HIKApiConstant.java | 4
src/main/java/com/zy/api/controller/AgvScheduleController.java | 9
src/main/java/com/zy/api/service/impl/AgvScheduleServiceImpl.java | 91 +++--
src/main/java/com/zy/api/enums/MatLocType.java | 9
src/main/java/com/zy/api/controller/params/CallBackItem.java | 42 +++
src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java | 39 +
src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java | 26 +
src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java | 31 ++
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 33 +-
src/main/java/com/zy/asrs/entity/WrkDetl.java | 4
src/main/java/com/zy/common/constant/MesConstant.java | 5
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 51 ++-
src/main/resources/application-dev.yml | 16
src/main/java/com/zy/asrs/entity/BasStationDetl.java | 4
license.lic | 0
src/main/java/com/zy/api/service/AgvScheduleService.java | 3
src/main/java/com/zy/system/entity/license/LicenseCheckListener.java | 44 +-
src/main/java/com/zy/asrs/entity/OrderDetlPakout.java | 4
src/main/java/com/zy/asrs/entity/OrderDetl.java | 4
src/main/java/com/zy/asrs/controller/LocDetlController.java | 2
src/main/java/com/zy/asrs/task/WorkMastScheduler.java | 36 ++
src/main/webapp/views/locCache/locCache.html | 156 +++++-----
src/main/java/com/zy/api/controller/params/AgvCallBackItemParam.java | 44 +++
src/main/java/com/zy/asrs/entity/TaskDetl.java | 4
src/main/java/com/zy/asrs/service/impl/CheckOrderServiceImpl.java | 2
src/main/java/com/zy/asrs/entity/WaitPakin.java | 8
src/main/java/com/zy/asrs/entity/LocDetl.java | 4
src/main/java/com/zy/asrs/service/impl/LocCacheServiceImpl.java | 68 ++--
src/main/resources/license.lic | 0
35 files changed, 568 insertions(+), 265 deletions(-)
diff --git a/license.lic b/license.lic
new file mode 100644
index 0000000..34644d8
--- /dev/null
+++ b/license.lic
Binary files differ
diff --git a/src/main/java/com/zy/api/controller/AgvScheduleController.java b/src/main/java/com/zy/api/controller/AgvScheduleController.java
index 507ad1b..e141faa 100644
--- a/src/main/java/com/zy/api/controller/AgvScheduleController.java
+++ b/src/main/java/com/zy/api/controller/AgvScheduleController.java
@@ -1,6 +1,7 @@
package com.zy.api.controller;
import com.core.common.R;
+import com.zy.api.controller.params.AgvCallBackParam;
import com.zy.api.entity.CallAgvParams;
import com.zy.api.service.AgvScheduleService;
import io.swagger.annotations.ApiOperation;
@@ -34,10 +35,14 @@
return agvScheduleService.callAgvCarry(params);
}
-
+ /**
+ * AGV浠诲姟瀹屾垚
+ * @param params
+ * @return
+ */
@ApiOperation("agv鎼繍缁撴灉鍥炰紶")
@PostMapping("/agv/result/callback")
- public R agvCarryCallBack(@RequestBody CallAgvParams params) {
+ public R agvCarryCallBack(@RequestBody AgvCallBackParam params) {
if (Objects.isNull(params)) {
return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
}
diff --git a/src/main/java/com/zy/api/controller/params/AgvCallBackItemParam.java b/src/main/java/com/zy/api/controller/params/AgvCallBackItemParam.java
new file mode 100644
index 0000000..4318b26
--- /dev/null
+++ b/src/main/java/com/zy/api/controller/params/AgvCallBackItemParam.java
@@ -0,0 +1,44 @@
+package com.zy.api.controller.params;
+
+import com.alibaba.excel.annotation.format.DateTimeFormat;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+@Data
+@Accessors(chain = true)
+public class AgvCallBackItemParam implements Serializable {
+
+
+ private CallBackItem values;
+
+// {
+// "robotTaskCode": "5685",
+// "singleRobotCode": "8857",
+// "currentSeq": -1,
+// "extra": {
+// "async": "0",
+// "values": {
+// "mapCode": "DD",
+// "slotCategory": "SITE",
+// "slotCode": "286260DD305240",
+// "slotName": "JH06",
+// "x": 286260.0,
+// "y": 305240.0,
+// "method": "start",
+// "carrierCategory": "POD",
+// "carrierType": "TC",
+// "carrierCode": "TC10104",
+// "pileCount": 1,
+// "taskTime": "2026-02-12 15:59:45.704",
+// "amrCategory": "LMR",
+// "amrType": "17",
+// "amrCode": "8857",
+// "carrierName": "TC10104",
+// "layerNo": 1
+// }
+// }
+// }
+
+}
diff --git a/src/main/java/com/zy/api/controller/params/AgvCallBackParam.java b/src/main/java/com/zy/api/controller/params/AgvCallBackParam.java
new file mode 100644
index 0000000..1eb0b15
--- /dev/null
+++ b/src/main/java/com/zy/api/controller/params/AgvCallBackParam.java
@@ -0,0 +1,15 @@
+package com.zy.api.controller.params;
+
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+@Data
+@Accessors(chain = true)
+public class AgvCallBackParam implements Serializable {
+
+ private String robotTaskCode;
+
+ private AgvCallBackItemParam extra;
+}
diff --git a/src/main/java/com/zy/api/controller/params/AgvCarriesParam.java b/src/main/java/com/zy/api/controller/params/AgvCarriesParam.java
new file mode 100644
index 0000000..45fe2af
--- /dev/null
+++ b/src/main/java/com/zy/api/controller/params/AgvCarriesParam.java
@@ -0,0 +1,22 @@
+package com.zy.api.controller.params;
+
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+@Data
+@Accessors(chain = true)
+@ApiModel(value = "AgvCarriesParam", description = "AGV鎼繍鍙傛暟")
+public class AgvCarriesParam implements Serializable {
+
+ private Integer autoStart = 1;
+
+ private String code;
+
+ private Integer seq;
+
+ private String type = "SITE";
+}
diff --git a/src/main/java/com/zy/api/controller/params/AgvRequestParam.java b/src/main/java/com/zy/api/controller/params/AgvRequestParam.java
new file mode 100644
index 0000000..0051e13
--- /dev/null
+++ b/src/main/java/com/zy/api/controller/params/AgvRequestParam.java
@@ -0,0 +1,26 @@
+package com.zy.api.controller.params;
+
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.util.List;
+
+@Data
+@Accessors(chain = true)
+@ApiModel(value = "AgvRequestParam", description = "Agv璇锋眰鍙傛暟")
+public class AgvRequestParam implements Serializable {
+
+ //浠诲姟绫诲瀷
+ private String taskType;
+
+ //浠诲姟鎵ц娓呭崟
+ private List<AgvCarriesParam> targetRoute;
+
+ //浠诲姟鍙�
+ private String robotTaskCode;
+
+
+}
diff --git a/src/main/java/com/zy/api/controller/params/CallBackItem.java b/src/main/java/com/zy/api/controller/params/CallBackItem.java
new file mode 100644
index 0000000..f6a8a8f
--- /dev/null
+++ b/src/main/java/com/zy/api/controller/params/CallBackItem.java
@@ -0,0 +1,42 @@
+package com.zy.api.controller.params;
+
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+@Data
+@Accessors(chain = true)
+public class CallBackItem implements Serializable {
+
+ private String slotName;
+
+ private String method;
+
+ private String carrierCode;
+
+ private String taskTime;
+
+ private String carrierName;
+
+// "values": {
+// "mapCode": "DD",
+// "slotCategory": "SITE",
+// "slotCode": "286260DD305240",
+// "slotName": "JH06",
+// "x": 286260.0,
+// "y": 305240.0,
+// "method": "start",
+// "carrierCategory": "POD",
+// "carrierType": "TC",
+// "carrierCode": "TC10104",
+// "pileCount": 1,
+// "taskTime": "2026-02-12 15:59:45.704",
+// "amrCategory": "LMR",
+// "amrType": "17",
+// "amrCode": "8857",
+// "carrierName": "TC10104",
+// "layerNo": 1
+// }
+
+}
diff --git a/src/main/java/com/zy/api/entity/CallAgvParams.java b/src/main/java/com/zy/api/entity/CallAgvParams.java
index 59b5fd1..98276dd 100644
--- a/src/main/java/com/zy/api/entity/CallAgvParams.java
+++ b/src/main/java/com/zy/api/entity/CallAgvParams.java
@@ -32,4 +32,7 @@
@ApiModelProperty("浠诲姟鍙�")
private String wrkNo;
+
+ @ApiModelProperty("浠诲姟绫诲瀷")
+ private String taskType = "M2";
}
diff --git a/src/main/java/com/zy/api/enums/MatLocType.java b/src/main/java/com/zy/api/enums/MatLocType.java
index 714ac23..416327c 100644
--- a/src/main/java/com/zy/api/enums/MatLocType.java
+++ b/src/main/java/com/zy/api/enums/MatLocType.java
@@ -39,24 +39,23 @@
public static Long getTag(String type) {
if (type.equals(MatType.LARGE.type)) {
- return Long.parseLong(MatLocType.AUTOMATED.type);
+ return Long.parseLong(MatLocType.EO_HOLDING.type);
} else if (type.equals(MatType.MIDDEL.type)) {
return Long.parseLong(MatLocType.SO_HOLDING.type);
} else if (type.equals(MatType.SMALL.type)) {
- return Long.parseLong(MatLocType.EO_HOLDING.type);
+ return Long.parseLong(MatLocType.AUTOMATED.type);
} else {
return null;
}
}
-
public static String getMatTag(String type) {
- if (type.equals(MatLocType.AUTOMATED.type)) {
+ if (type.equals(MatLocType.EO_HOLDING.type)) {
return MatType.LARGE.type;
} else if (type.equals(MatLocType.SO_HOLDING.type)) {
return MatType.MIDDEL.type;
- } else if (type.equals(MatLocType.EO_HOLDING.type)) {
+ } else if (type.equals(MatLocType.AUTOMATED.type)) {
return MatType.SMALL.type;
} else {
return null;
diff --git a/src/main/java/com/zy/api/service/AgvScheduleService.java b/src/main/java/com/zy/api/service/AgvScheduleService.java
index 0417a0b..6c0f6f3 100644
--- a/src/main/java/com/zy/api/service/AgvScheduleService.java
+++ b/src/main/java/com/zy/api/service/AgvScheduleService.java
@@ -1,11 +1,12 @@
package com.zy.api.service;
import com.core.common.R;
+import com.zy.api.controller.params.AgvCallBackParam;
import com.zy.api.entity.CallAgvParams;
public interface AgvScheduleService {
R callAgvCarry(CallAgvParams params);
- R callback(CallAgvParams params);
+ R callback(AgvCallBackParam params);
}
diff --git a/src/main/java/com/zy/api/service/impl/AgvScheduleServiceImpl.java b/src/main/java/com/zy/api/service/impl/AgvScheduleServiceImpl.java
index a268ab6..d4f13a8 100644
--- a/src/main/java/com/zy/api/service/impl/AgvScheduleServiceImpl.java
+++ b/src/main/java/com/zy/api/service/impl/AgvScheduleServiceImpl.java
@@ -5,6 +5,9 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.R;
import com.core.exception.CoolException;
+import com.zy.api.controller.params.AgvCallBackParam;
+import com.zy.api.controller.params.AgvCarriesParam;
+import com.zy.api.controller.params.AgvRequestParam;
import com.zy.api.entity.CallAgvParams;
import com.zy.api.enums.OrderType;
import com.zy.api.service.AgvScheduleService;
@@ -27,11 +30,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Objects;
-import java.util.UUID;
+import java.util.*;
@Slf4j
@Service
@@ -75,46 +74,59 @@
task.setWrkSts(TaskStatusType.AGV_TASK_ISSUED_OUT.type);
}
- if (!taskService.updateById(task)) {
- throw new CoolException("浠诲姟鐘舵�佹洿鏂板け璐ワ紒锛�");
+ HIKResultDTO hikResultDTO = sendAgvTask(params, HIKApiConstant.TASK_SUBMIT);
+
+ if (hikResultDTO.isSuccess()) {
+ if (!taskService.updateById(task)) {
+ throw new CoolException("浠诲姟鐘舵�佹洿鏂板け璐ワ紒锛�");
+ }
}
return R.ok();
}
+ /**
+ * 鑾峰彇鑷畾涔夎姹傚ご
+ *
+ * @return java.util.Map<java.lang.String, java.lang.Object>
+ * @author Ryan
+ * @date 2025/12/29 9:11
+ */
+ private Map<String, Object> getHeaderParam() {
+ Map<String, Object> headerParam = new HashMap<>();
+ //璁剧疆璇锋眰杩炴帴鐨凾oken
+ headerParam.put("X-LR-REQUEST-ID", new Date().getTime() + "");
+ return headerParam;
+ }
+
@Override
@Transactional(rollbackFor = Exception.class)
- public R callback(CallAgvParams params) {
+ public R callback(AgvCallBackParam params) {
if (Objects.isNull(params)) {
return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
}
- if (Objects.isNull(params.getWrkNo())) {
+ if (Objects.isNull(params.getRobotTaskCode())) {
return R.error("浠诲姟鍙蜂笉鑳戒负绌猴紒锛�");
}
- Task task = taskService.selectOne(new EntityWrapper<Task>().eq("wrk_no", params.getWrkNo()));
+ Task task = taskService.selectOne(new EntityWrapper<Task>().eq("wrk_no", params.getRobotTaskCode()));
if (Objects.isNull(task)) {
return R.error("浠诲姟淇℃伅涓嶅瓨鍦紒锛�");
}
-// if (!Arrays.asList(TaskStatusType.AGV_TASK_ISSUED_IN.type, TaskStatusType.AGV_TASK_ISSUED_OUT.type).contains(task.getIoType())) {
-// return R.error("");
-// }
-//
if (Arrays.asList(TaskIOType.ALL_IN.type, TaskIOType.PICK_IN.type, TaskIOType.MERGE_IN.type)
.contains(task.getIoType())) {
// 鍏ュ簱
- if (params.getStatus().equals("RUNNING")) {
+ if (params.getExtra().getValues().getMethod().equals("start")) {
task.setWrkSts(TaskStatusType.AGV_TASK_RUNNING_IN.type);
- } else if (params.getStatus().equals("FINISHED")){
+ } else if (params.getExtra().getValues().getMethod().equals("end")){
task.setWrkSts(TaskStatusType.AGV_TASK_FINISHED_IN.type);
-
}
} else if (Arrays.asList(TaskIOType.ALL_OUT.type, TaskIOType.PICK_OUT.type, TaskIOType.MERGE_OUT.type, TaskIOType.EMPTY_OUT.type)
.contains(task.getIoType())) {
- // 鍑哄簱
- if (params.getStatus().equals("RUNNING")) {
+ // 鍑哄簱p
+ if (params.getExtra().getValues().getMethod().equals("start")) {
task.setWrkSts(TaskStatusType.AGV_TASK_RUNNING_OUT.type);
- } else if (params.getStatus().equals("FINISHED")){
+ } else if (params.getExtra().getValues().getMethod().equals("end")){
task.setWrkSts(TaskStatusType.AGV_TASK_FINISHED_OUT.type);
}
}
@@ -122,35 +134,42 @@
if (!taskService.updateById(task)) {
throw new CoolException("鐘舵�佷慨鏀瑰け璐ワ紒锛�");
}
-
return R.ok("鎵ц瀹屾垚 锛侊紒");
}
- public HIKResultDTO sendAgvTask(HIKApiDTO haiKangApiDTO, String path) {
+ public HIKResultDTO sendAgvTask(CallAgvParams param, String path) {
HIKResultDTO result = new HIKResultDTO();
- ForwardAGVTaskDTO forwardAGVTaskParam = new ForwardAGVTaskDTO();
- forwardAGVTaskParam.setReqCode(UUID.randomUUID().toString().replace("-", ""));
- forwardAGVTaskParam.setClientCode("IWMS");
- forwardAGVTaskParam.setTaskTyp(haiKangApiDTO.getTaskType());
- forwardAGVTaskParam.setCtnrTyp(haiKangApiDTO.getCtnrType());
- forwardAGVTaskParam.setPriority(haiKangApiDTO.getPriority());
- List<ForwardAGVTaskDTO.PositionCodePaths> positionCodePathsList = new ArrayList<>();
- positionCodePathsList
- .add(new ForwardAGVTaskDTO.PositionCodePaths(haiKangApiDTO.getOrg(), haiKangApiDTO.getOrgType()));
- positionCodePathsList
- .add(new ForwardAGVTaskDTO.PositionCodePaths(haiKangApiDTO.getTar(), haiKangApiDTO.getTarType()));
- forwardAGVTaskParam.setPositionCodePath(positionCodePathsList);
- String body = JSON.toJSONString(forwardAGVTaskParam);
+ AgvRequestParam requestParam = new AgvRequestParam();
+ requestParam.setTaskType(param.getTaskType());
+ List<AgvCarriesParam> agvCarriesParams = new ArrayList<>();
+
+ AgvCarriesParam carriesParam = new AgvCarriesParam();
+ carriesParam.setSeq(0);
+ carriesParam.setCode(param.getOrgSite());
+
+ agvCarriesParams.add(carriesParam);
+
+ AgvCarriesParam carriesParam2 = new AgvCarriesParam();
+ carriesParam2.setSeq(1);
+ carriesParam2.setCode(param.getTarSite());
+
+ agvCarriesParams.add(carriesParam2);
+
+ requestParam.setRobotTaskCode(param.getWrkNo());
+ requestParam.setTargetRoute(agvCarriesParams);
+
+ String body = JSON.toJSONString(requestParam);
String response = "";
try {
response = new HttpHandler.Builder()
.setUri(HIKApiConstant.AGV_IP)
.setPath(path)
+ .setHeaders(getHeaderParam())
.setJson(body)
.build()
.doPost();
JSONObject jsonObject = JSON.parseObject(response);
- if (jsonObject.getInteger("code").equals(0)) {
+ if (jsonObject.getString("code").equals("SUCCESS")) {
result.setSuccess(true);
} else {
result.setMessage(jsonObject.getString("message"));
diff --git a/src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java b/src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java
index 85b36dd..92a9120 100644
--- a/src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java
+++ b/src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java
@@ -28,6 +28,8 @@
import com.zy.asrs.service.*;
import com.zy.asrs.service.impl.BasAreasServiceImpl;
+import com.zy.asrs.service.impl.OrderDetlPakinServiceImpl;
+import com.zy.asrs.service.impl.OrderPakinServiceImpl;
import com.zy.asrs.utils.Utils;
import com.zy.common.utils.HttpHandler;
import lombok.extern.slf4j.Slf4j;
@@ -67,6 +69,10 @@
private String prefix;
@Autowired
private BasAreasService basAreasService;
+ @Autowired
+ private OrderPakinService orderPakinService;
+ @Autowired
+ private OrderDetlPakinService orderDetlPakinService;
/**
@@ -197,7 +203,6 @@
if (Objects.isNull(params.getCompany_id())) {
throw new CoolException("鍏徃ID涓嶈兘涓虹┖锛侊紒");
}
-
addOrUpdateOrders(params, type);
});
@@ -366,19 +371,28 @@
/** 涓嶅瓨鍦紝鏂板璁㈠崟 */
generateOrders(params, type);
} else {
- if (order.getSettle() == 2) {
+ OrderPakin orderPakin = orderPakinService.selectOne(new EntityWrapper<OrderPakin>().eq("order_no", order.getOrderNo()));
+ if (!Objects.isNull(orderPakin) && orderPakin.getSettle() != 1) {
throw new CoolException("璁㈠崟宸插鐞嗭紝涓嶅彲鍐嶅彉鏇达紒锛�");
}
/** 瀛樺湪锛屽垹闄よ�佽鍗曪紝鏇存柊鎻掑叆鏂拌鍗� */
- // 鍒犻櫎鏃ц鍗曟槑缁�
- if (!orderDetlService.delete(new EntityWrapper<OrderDetl>().eq("order_id", order.getId()))) {
- throw new CoolException("璁㈠崟鏄庣粏鍒犻櫎澶辫触锛侊紒");
+ if (!orderDetlPakinService.delete(new EntityWrapper<OrderDetlPakin>().eq("order_no", orderPakin.getOrderNo()))) {
+ throw new CoolException("璁㈠崟鍒犻櫎澶辫触锛侊紒");
}
- if (!orderService.deleteById(order.getId())) {
+ if (!orderPakinService.delete(new EntityWrapper<OrderPakin>().eq("order_no", orderPakin.getOrderNo()))) {
+ throw new CoolException("涓诲崟鍒犻櫎澶辫触锛侊紒");
+ }
+ // 鍒犻櫎鏃ц鍗曟槑缁�
+// if (!orderDetlService.delete(new EntityWrapper<OrderDetl>().eq("order_id", order.getId()))) {
+// throw new CoolException("璁㈠崟鏄庣粏鍒犻櫎澶辫触锛侊紒");
+// }
+
+ order.setSettle(3L);
+ if (!orderService.updateById(order)) {
throw new CoolException("鍘熷崟鎹垹闄ゅけ璐ワ紒锛�");
}
- generateOrders(params, type);
+// generateOrders(params, type);
}
}
@@ -443,7 +457,9 @@
}
if (!Objects.isNull(params.getDetails()) && !params.getDetails().isEmpty()) {
params.getDetails().forEach(item -> {
- Mat matnr = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", item.getPro_komcode()));
+ Mat matnr = matService.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", item.getPro_id())
+ .eq("matnr", item.getPro_komcode()));
if (Objects.isNull(matnr)) {
throw new CoolException("鐗╂枡缂栫爜涓嶅瓨鍦紒锛�");
}
@@ -581,18 +597,17 @@
} else {
locDetlDto.setStock_qty(Integer.parseInt(item.getBookQty().toString()));
}
- LocDetl barcode = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("barcode", item.getZpallet()));
+ LocDetl barcode = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("zpallet", item.getZpallet()));
if (!Objects.isNull(barcode)) {
BasAreas areas = basAreasService.selectOne(new EntityWrapper<BasAreas>().eq("id", barcode.getAreaId()));
if (!Objects.isNull(areas)) {
- locDetlDto.setLocation_no(areas.getName());
+ locDetlDto.setTarget_location(areas.getName());
}
}
locDetlDto
.setPro_komcode(item.getMatnr())
.setPro_id(item.getStandby1())
- .setLocation_no(item.getZpallet())
- .setTarget_location("");
+ .setLocation_no(item.getZpallet());
dtos.add(locDetlDto);
});
return XSR.ok(dtos);
diff --git a/src/main/java/com/zy/api/service/impl/WcsApiServiceImpl.java b/src/main/java/com/zy/api/service/impl/WcsApiServiceImpl.java
index 68bf7b9..41aec3b 100644
--- a/src/main/java/com/zy/api/service/impl/WcsApiServiceImpl.java
+++ b/src/main/java/com/zy/api/service/impl/WcsApiServiceImpl.java
@@ -127,22 +127,15 @@
* @date 2026/1/10 13:58
*/
@Override
+ @Transactional(rollbackFor = Exception.class)
public R pubWrkToWcs(WorkTaskParams params) {
if (Objects.isNull(params.getTaskNo())) {
return R.error("浠诲姟鍙蜂笉鑳戒负绌猴紒锛�");
}
-// if (params.getType().equals("in"))
-// if (Objects.isNull(params.getBarcode())) {
-// return R.error("鎵樼洏鐮佷笉鑳戒负绌猴紒锛�");
-// }
-// if (Objects.isNull(params.getLocNo())) {
-// return R.error("鐩爣搴撲綅涓嶈兘涓虹┖锛侊紒");
-// }
String url = MesConstant.PUB_TASK_IN;
if (!Objects.isNull(params.getType()) && params.getType().equals("out")) {
url = MesConstant.PUB_TASK_OUT;
}
-
log.info("鍑哄簱浠诲姟涓嬪彂鍙傛暟锛歿}", JSON.toJSONString(params));
String response;
try {
@@ -154,13 +147,16 @@
.doPost();
Map<String, Object> result = JSON.parseObject(response, Map.class);
+ WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", params.getTaskNo()));
+ wrkMast.setWrkSts(12L);
+ if (!wrkMastService.updateById(wrkMast)) {
+ throw new CoolException("鏇存柊澶辫触锛侊紒");
+ }
if (result.get("code").equals(200)) {
- WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", params.getTaskNo()));
- wrkMast.setWrkSts(12L);
- wrkMastService.updateById(wrkMast);
//TODO 涓婃姤鏄惁鎴愬姛
} else {
- return R.error().add(result);
+ throw new CoolException("鍑哄簱涓嬪彂浠诲姟涓嬪彂澶辫触锛侊紒");
+// return R.error().add(result);
}
} catch (IOException e) {
throw new RuntimeException(e);
diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java
index df6b959..6321b3c 100644
--- a/src/main/java/com/zy/asrs/controller/LocDetlController.java
+++ b/src/main/java/com/zy/asrs/controller/LocDetlController.java
@@ -71,6 +71,7 @@
for (LocDetl locDetl : groupLocDetl.getRecords()) {
AbnormalLocDetlParam abnormalLocDetlParam = new AbnormalLocDetlParam();
Mat mat = matService.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", locDetl.getStandby1())
.eq("matnr", locDetl.getMatnr()));
if (Cools.isEmpty(mat)) {
continue;
@@ -300,6 +301,7 @@
for (LocDetl locDetl : groupLocDetl.getRecords()) {
AbnormalLocDetlParam abnormalLocDetlParam = new AbnormalLocDetlParam();
Mat mat = matService.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", locDetl.getStandby1())
.eq("matnr", locDetl.getMatnr()));
if (Cools.isEmpty(mat)) {
continue;
diff --git a/src/main/java/com/zy/asrs/entity/BasStationDetl.java b/src/main/java/com/zy/asrs/entity/BasStationDetl.java
index ea3c34d..b9f4c39 100644
--- a/src/main/java/com/zy/asrs/entity/BasStationDetl.java
+++ b/src/main/java/com/zy/asrs/entity/BasStationDetl.java
@@ -448,7 +448,9 @@
public String getTag$() {
MatService service = SpringUtils.getBean(MatService.class);
- Mat order = service.selectOne(new EntityWrapper<Mat>().eq("matnr", this.matnr));
+ Mat order = service.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", this.suppCode)
+ .eq("matnr", this.matnr));
if (Cools.isEmpty(order)){
return null;
}
diff --git a/src/main/java/com/zy/asrs/entity/LocDetl.java b/src/main/java/com/zy/asrs/entity/LocDetl.java
index 43bf291..b6a1e6a 100644
--- a/src/main/java/com/zy/asrs/entity/LocDetl.java
+++ b/src/main/java/com/zy/asrs/entity/LocDetl.java
@@ -287,7 +287,9 @@
public String getTag$() {
MatService service = SpringUtils.getBean(MatService.class);
- Mat order = service.selectOne(new EntityWrapper<Mat>().eq("matnr", this.matnr));
+ Mat order = service.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", this.suppCode)
+ .eq("matnr", this.matnr));
if (Cools.isEmpty(order)){
return null;
}
diff --git a/src/main/java/com/zy/asrs/entity/OrderDetl.java b/src/main/java/com/zy/asrs/entity/OrderDetl.java
index 13348f6..7e01868 100644
--- a/src/main/java/com/zy/asrs/entity/OrderDetl.java
+++ b/src/main/java/com/zy/asrs/entity/OrderDetl.java
@@ -484,7 +484,9 @@
public String getTag$() {
MatService service = SpringUtils.getBean(MatService.class);
- Mat order = service.selectOne(new EntityWrapper<Mat>().eq("matnr", this.matnr));
+ Mat order = service.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", this.suppCode)
+ .eq("matnr", this.matnr));
if (Cools.isEmpty(order)){
return null;
}
diff --git a/src/main/java/com/zy/asrs/entity/OrderDetlPakin.java b/src/main/java/com/zy/asrs/entity/OrderDetlPakin.java
index 34cb220..5d2e99f 100644
--- a/src/main/java/com/zy/asrs/entity/OrderDetlPakin.java
+++ b/src/main/java/com/zy/asrs/entity/OrderDetlPakin.java
@@ -418,7 +418,9 @@
public String getTag$() {
MatService service = SpringUtils.getBean(MatService.class);
- Mat order = service.selectOne(new EntityWrapper<Mat>().eq("matnr", this.matnr));
+ Mat order = service.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", this.suppCode)
+ .eq("matnr", this.matnr));
if (Cools.isEmpty(order)){
return null;
}
diff --git a/src/main/java/com/zy/asrs/entity/OrderDetlPakout.java b/src/main/java/com/zy/asrs/entity/OrderDetlPakout.java
index 5e86238..0f6e18c 100644
--- a/src/main/java/com/zy/asrs/entity/OrderDetlPakout.java
+++ b/src/main/java/com/zy/asrs/entity/OrderDetlPakout.java
@@ -464,7 +464,9 @@
public String getTag$() {
MatService service = SpringUtils.getBean(MatService.class);
- Mat order = service.selectOne(new EntityWrapper<Mat>().eq("matnr", this.matnr));
+ Mat order = service.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", this.suppCode)
+ .eq("matnr", this.matnr));
if (Cools.isEmpty(order)){
return null;
}
diff --git a/src/main/java/com/zy/asrs/entity/TaskDetl.java b/src/main/java/com/zy/asrs/entity/TaskDetl.java
index f683c1f..c72ba2f 100644
--- a/src/main/java/com/zy/asrs/entity/TaskDetl.java
+++ b/src/main/java/com/zy/asrs/entity/TaskDetl.java
@@ -481,7 +481,9 @@
public String getTag$() {
MatService service = SpringUtils.getBean(MatService.class);
- Mat order = service.selectOne(new EntityWrapper<Mat>().eq("matnr", this.matnr));
+ Mat order = service.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", this.suppCode)
+ .eq("matnr", this.matnr));
if (Cools.isEmpty(order)){
return null;
}
diff --git a/src/main/java/com/zy/asrs/entity/WaitPakin.java b/src/main/java/com/zy/asrs/entity/WaitPakin.java
index 159a96a..4354bce 100644
--- a/src/main/java/com/zy/asrs/entity/WaitPakin.java
+++ b/src/main/java/com/zy/asrs/entity/WaitPakin.java
@@ -177,7 +177,7 @@
* 澶囩敤1
*/
@ApiModelProperty(value= "澶囩敤1")
- private String standby1 = "";
+ private String standby1;
/**
* 澶囩敤2
@@ -196,7 +196,7 @@
*/
@ApiModelProperty(value= "澶囩敤1")
@TableField("box_type1")
- private String boxType1 = "1";
+ private String boxType1;
/**
* 澶囩敤2
@@ -252,7 +252,9 @@
public String getTag$() {
MatService service = SpringUtils.getBean(MatService.class);
- Mat order = service.selectOne(new EntityWrapper<Mat>().eq("matnr", this.matnr));
+ Mat order = service.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", this.suppCode)
+ .eq("matnr", this.matnr));
if (Cools.isEmpty(order)){
return null;
}
diff --git a/src/main/java/com/zy/asrs/entity/WrkDetl.java b/src/main/java/com/zy/asrs/entity/WrkDetl.java
index 47a310f..ecc80b3 100644
--- a/src/main/java/com/zy/asrs/entity/WrkDetl.java
+++ b/src/main/java/com/zy/asrs/entity/WrkDetl.java
@@ -375,7 +375,9 @@
public String getTag$() {
MatService service = SpringUtils.getBean(MatService.class);
- Mat order = service.selectOne(new EntityWrapper<Mat>().eq("matnr", this.matnr));
+ Mat order = service.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", this.suppCode)
+ .eq("matnr", this.matnr));
if (Cools.isEmpty(order)){
return null;
}
diff --git a/src/main/java/com/zy/asrs/service/impl/CheckOrderServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/CheckOrderServiceImpl.java
index c5494a9..6728be1 100644
--- a/src/main/java/com/zy/asrs/service/impl/CheckOrderServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/CheckOrderServiceImpl.java
@@ -139,7 +139,7 @@
.eq("loc_no", locMast.getLocNo())
.eq("matnr", checkOrderDetl.getMatnr())
.eq(!Cools.isEmpty(checkOrderDetl.getBatch()),"batch", checkOrderDetl.getBatch())
- .eq("supp_code", checkOrderDetl.getSuppCode())
+ .eq(!Cools.isEmpty(checkOrderDetl.getSuppCode()),"supp_code", checkOrderDetl.getSuppCode())
);
if (!Cools.isEmpty(locDetl)){
throw new CoolException("褰撳墠搴撲綅鏈夌浉鍚屽簱瀛樹俊鎭�");
diff --git a/src/main/java/com/zy/asrs/service/impl/LocCacheServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocCacheServiceImpl.java
index 2973db1..5c7cb5d 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocCacheServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocCacheServiceImpl.java
@@ -42,45 +42,47 @@
public R initLocCache(LocMastInitParam param, Long userId) {
try {
List<LocCache> list = new ArrayList<>();
- BasAreas areas = basAreasService.selectById(param.getIdentifying());
- if (Cools.isEmpty(areas)) {
- return R.error("搴撳尯涓嶅瓨鍦紒锛侊紒");
- }
- for (int r = param.getStartRow(); r <= param.getEndRow(); r++) {
- for (int b = param.getStartBay(); b <= param.getEndBay(); b++) {
- for (int l = param.getStartLev(); l <= param.getEndLev(); l++) {
- // 鑾峰彇搴撲綅鍙�
- String locNo = areas.getAreaNo() + String.format("%02d", r) + String.format("%03d", b) + String.format("%02d", l);
- Date now = new Date();
- LocCache locMast = new LocCache();
- locMast.setLocNo(locNo);
- locMast.setLocSts("O");
- locMast.setRow1(r); // 鎺�
- locMast.setBay1(b); // 鍒�
- locMast.setLev1(l); // 灞�
- locMast.setId(null);
- locMast.setLocType1(!Cools.isEmpty(param.getLocType1()) ? param.getLocType1() : 1);
- locMast.setLocType2(param.getLocType2());
- locMast.setLocType3(param.getLocType3());
- locMast.setAppeUser(userId);
- locMast.setAppeTime(now);
- locMast.setModiUser(userId);
- locMast.setModiTime(now);
- locMast.setAreaId(areas.getId());
- locMast.setAreaName(areas.getName());
- list.add(locMast);
- }
- }
- }
if (!Cools.isEmpty(param.getEnable()) && param.getEnable() == 1) {
if (!this.delete(new EntityWrapper<>())) {
throw new CoolException("鍒犻櫎澶辫触锛侊紒");
}
}
-
- if (!this.insertBatch(list)) {
- throw new CoolException("娣诲姞澶辫触锛侊紒");
+ BasAreas areas = basAreasService.selectById(param.getIdentifying());
+ if (Cools.isEmpty(areas)) {
+ return R.error("搴撳尯涓嶅瓨鍦紒锛侊紒");
}
+ for (int r = param.getStartRow(); r <= param.getEndRow(); r++) {
+// for (int b = param.getStartBay(); b <= param.getEndBay(); b++) {
+// for (int l = param.getStartLev(); l <= param.getEndLev(); l++) {
+//
+// }
+// }
+ // 鑾峰彇搴撲綅鍙�
+ String locNo = areas.getAreaNo() + String.format("%02d", r);
+ Date now = new Date();
+ LocCache locMast = new LocCache();
+ locMast.setLocNo(locNo);
+ locMast.setLocSts("O");
+ locMast.setRow1(r); // 鎺�
+ locMast.setBay1(1); // 鍒�
+ locMast.setLev1(1); // 灞�
+ locMast.setFullPlt("N");
+ locMast.setLocType1(!Cools.isEmpty(param.getLocType1()) ? param.getLocType1() : 1);
+ locMast.setLocType2(param.getLocType2());
+ locMast.setLocType3(param.getLocType3());
+ locMast.setAppeUser(userId);
+ locMast.setAppeTime(now);
+ locMast.setModiUser(userId);
+ locMast.setModiTime(now);
+ locMast.setAreaId(areas.getId());
+ locMast.setAreaName(areas.getName());
+// list.add(locMast);
+
+ if (!this.insert(locMast)) {
+ throw new CoolException("娣诲姞澶辫触锛侊紒");
+ }
+ }
+
return R.ok("鍒濆鍖栨垚鍔�");
} catch (Exception e) {
return R.error("鍒濆鍖栧け璐�===>" + e.getMessage());
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index 0d66579..e87e8f8 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -178,7 +178,9 @@
wrkMastService.insert(wrkMast);
for (OrderDetl orderDetl : param.getCombMats()) {
- Mat mat = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", orderDetl.getMatnr()));
+ Mat mat = matService.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", orderDetl.getStandby1())
+ .eq("matnr", orderDetl.getMatnr()));
if (mat == null) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鐗╂枡淇℃伅涓嶅瓨鍦細" + orderDetl.getMatnr());
}
@@ -377,6 +379,7 @@
for (CombParam.CombMat combMat : combParam.getCombMats()) {
List<LocDetl> locDetlList = locDetlService.selectList(new EntityWrapper<LocDetl>()
.eq("loc_no", combParam.getLocNo())
+ .eq(!Cools.isEmpty(combMat.getStandby1()), "supp_code", combMat.getStandby1())
.eq("matnr", combMat.getMatnr()));
if (locDetlList.isEmpty()) {
return R.error("鏈煡璇㈠埌搴撳瓨鏁版嵁");
@@ -451,7 +454,9 @@
wrkMast.setModiUser(userId);
wrkMastService.insert(wrkMast);
- Mat mat = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", combMat.getMatnr()));
+ Mat mat = matService.selectOne(new EntityWrapper<Mat>()
+ .eq(!Cools.isEmpty(combMat.getStandby1()), "supp_code", combMat.getStandby1())
+ .eq("matnr", combMat.getMatnr()));
if (mat == null) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鐗╂枡淇℃伅涓嶅瓨鍦細" + combMat.getMatnr());
}
@@ -632,7 +637,7 @@
// 鏃犲崟缁勬墭
if (Cools.isEmpty(param.getOrderNo())) {
//绌烘澘缁勬墭
- if (!Cools.isEmpty(param.getPakinType()) && param.getPakinType().equals("3")) {
+ if (!Cools.isEmpty(param.getPakinType()) && param.getPakinType().equals("3")) {
WaitPakin waitPakin = new WaitPakin();
waitPakin.setZpallet(param.getBarcode());
waitPakin.setIoStatus("N");
@@ -713,6 +718,7 @@
// elem.getBoxType1(), elem.getBoxType2(), elem.getBoxType3());
OrderDetlPakin detls = orderDetlPakinService.selectOne(new EntityWrapper<OrderDetlPakin>()
.eq("order_id", order.getId())
+ .eq("supp_code", elem.getStandby1())
.eq("matnr", elem.getMatnr()));
if (Objects.isNull(elem.getBoxType1())) {
throw new CoolException("鏍煎眰缂栫爜涓嶈兘涓虹┖锛侊紒");
@@ -743,9 +749,16 @@
}
});
- Set<String> matnrs = detlDtos.stream().map(DetlDto::getMatnr).collect(Collectors.toSet());
- List<Mat> mats = matService.selectList(new EntityWrapper<Mat>().in("matnr", matnrs));
- Set<Long> tagIds = mats.stream().map(Mat::getTagId).collect(Collectors.toSet());
+ List<Mat> tempMats = new ArrayList<>();
+ for (DetlDto detlDto : detlDtos) {
+ Mat mat = matService.selectOne(new EntityWrapper<Mat>()
+ .eq("matnr", detlDto.getMatnr())
+ .eq("supp_code", detlDto.getStandby1()));
+ tempMats.add(mat);
+ }
+
+// Set<String> matnrs = tempMats.stream().map(Mat::getMatnr).collect(Collectors.toSet());
+ Set<Long> tagIds = tempMats.stream().map(Mat::getTagId).collect(Collectors.toSet());
if (tagIds.size() > 1) {
throw new CoolException("缁勬墭鐗╂枡绫诲瀷涓嶄竴鑷达紝鍙湁鐩稿悓鐨勭墿鏂欏垎绫绘墠鍙互缁勬墭锛侊紒");
}
@@ -1191,6 +1204,7 @@
orderDetl.setUpdateBy(userId);
orderDetl.setUpdateTime(now);
Wrapper wrapper = new EntityWrapper<OrderDetl>().eq("order_no", orderNo)
+ .eq(!Cools.isEmpty(orderDetl.getStandby1()), "supp_code", orderDetl.getStandby1())
.eq("matnr", orderDetl.getMatnr());
if (!Cools.isEmpty(orderDetl.getBatch())) {
wrapper.eq("batch", orderDetl.getBatch());
@@ -1308,7 +1322,6 @@
.eq("area_id", basAreas.getId())
.eq("frozen", 0)
.eq("loc_sts", LocStsType.LOC_STS_TYPE_O.type)
- // .eq("loc_no", params.getTarSite())
.orderAsc(Arrays.asList("loc_no"))
.last("OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY"));
if (Objects.isNull(locCache)) {
@@ -1337,7 +1350,7 @@
}
List<OrderDetlPakin> detlPakins = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
- .eq(!Cools.isEmpty(params.getThreeCode()), "three_code", params.getThreeCode())
+ .eq(!Cools.isEmpty(params.getThreeCode()), "three_code", params.getThreeCode())
// .eq(!Cools.isEmpty(params.getMatnr()), "matnr", params.getMatnr())
// .eq(!Cools.isEmpty(params.getOrderNo()), "order_no", params.getOrderNo())
);
@@ -1680,9 +1693,13 @@
if (container.getMixMax() < detlDtos.size()) {
throw new CoolException("瓒呭嚭瀹瑰櫒鏈�澶ф贩瑁呮暟閲忥紝褰撳墠瀹瑰櫒鏈�澶ф暟閲忎负锛�" + container.getMixMax() + "!!");
}
- Set<String> matnrs = detlDtos.stream().map(DetlDto::getMatnr).collect(Collectors.toSet());
- List<Mat> mats = matService.selectList(new EntityWrapper<Mat>().in("matnr", matnrs));
- Set<Long> tagIds = mats.stream().map(Mat::getTagId).collect(Collectors.toSet());
+ List<Mat> tempMats = new ArrayList<>();
+ for (DetlDto detlDto : detlDtos) {
+ Mat mat = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", detlDto.getMatnr())
+ .eq("supp_code", detlDto.getStandby1()));
+ tempMats.add(mat);
+ }
+ Set<Long> tagIds = tempMats.stream().map(Mat::getTagId).collect(Collectors.toSet());
if (tagIds.size() > 1) {
throw new CoolException("缁勬墭鐗╂枡绫诲瀷涓嶄竴鑷达紝鍙湁鐩稿悓鐨勭墿鏂欏垎绫绘墠鍙互缁勬墭锛侊紒");
}
@@ -1894,7 +1911,7 @@
.eq("dev_no", basStation.getDevNo())
.eq("matnr", combMat.getMatnr())
.eq("batch", combMat.getBatch())
- .eq("standby1", combMat.getStandby1()));
+ .eq(!Cools.isEmpty(combMat.getStandby1()), "standby1", combMat.getStandby1()));
if (Cools.isEmpty(basStationDetl)) {
basStationDetl = new BasStationDetl();
Mat mat = matService.selectByMatnr(combMat.getMatnr());
@@ -1935,8 +1952,8 @@
OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectOne(new EntityWrapper<OrderDetlPakin>()
.eq("order_id", orderPakin.getId())
.eq("matnr", combMat.getMatnr())
- .eq("batch", combMat.getBatch())
- .eq("standby1", combMat.getStandby1()));
+ .eq(!Cools.isEmpty(combMat.getBatch()),"batch", combMat.getBatch())
+ .eq(!Cools.isEmpty(combMat.getStandby1()), "supp_code", combMat.getStandby1()));
if (Cools.isEmpty(orderDetlPakin)) {
throw new CoolException("妫�绱㈠崟鎹槑缁嗘暟鎹け璐�");
}
@@ -2118,6 +2135,7 @@
// 鏇存柊鍏ュ簱閫氱煡妗� ioStatus ===>> Y
Wrapper<WaitPakin> wrapper = new EntityWrapper<WaitPakin>()
.eq("zpallet", pakin.getZpallet());
+
WaitPakin setParam = new WaitPakin();
setParam.setLocNo(locNo);
setParam.setIoStatus("Y");
@@ -2226,7 +2244,9 @@
if (container.getMixMax() > sets.size()) {
//浣欎笅鍙贩鏀剧绫�
long suplus = Math.round((container.getMixMax() - sets.size()) * 10000) / 10000;
- Mat mats = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", matnr));
+ Mat mats = matService.selectOne(new EntityWrapper<Mat>()
+ .eq("supp_code", supId)
+ .eq("matnr", matnr));
if (Objects.isNull(mats)) {
throw new CoolException("鐗╂枡涓嶅瓨鍦紒锛�");
}
@@ -2520,7 +2540,6 @@
if (!taskDetlService.insert(wrkDetl)) {
throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
}
-
}
for (WaitPakin pakin : pakins) {
diff --git a/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java
index a94852e..a99385e 100644
--- a/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java
@@ -160,7 +160,7 @@
String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣�
String locSts = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬�
// 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級
- if (wrkMast.getWrkSts() < 4) {
+ if (wrkMast.getIoType() == 1 && wrkMast.getWrkSts() < 204) {
locNo = wrkMast.getLocNo();
locSts = "O";
@@ -189,7 +189,7 @@
throw new CoolException("鏇存柊婧愮珯鐐圭姸鎬佸け璐ワ紝鐩爣搴撲綅鐘舵�侊細" + station.getLocSts());
}
// 鍑哄簱鍙栨秷锛堜慨鏀规簮搴撲綅锛�
- } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14) {
+ } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() < 14) {
locNo = wrkMast.getSourceLocNo();
// 鍑哄簱 ===>> F.鍦ㄥ簱
if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 110) {
@@ -223,12 +223,7 @@
} else {
throw new CoolException("鏇存柊婧愮珯鐐圭姸鎬佸け璐ワ紝鐩爣搴撲綅鐘舵�侊細" + station.getLocSts());
}
- } else {
- throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�");
- }
-
- //鍙栨秷鍏ュ簱宸ヤ綔妗f椂锛屾煡璇㈢粍鎵樿〃锛屽鏋滄湁灏嗙姸鎬佹敼涓哄緟澶勭悊
- if (wrkMast.getIoType() == 1) {
+ } else if (wrkMast.getIoType() == 1) {
List<WaitPakin> waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", wrkMast.getBarcode()));
for (WaitPakin waitPakin : waitPakins) {
if (!Cools.isEmpty(waitPakin)) {
@@ -241,8 +236,23 @@
.eq("batch", waitPakin.getBatch()));
}
}
+ BasStation station = basStationService.selectOne(new EntityWrapper<BasStation>().eq("dev_no", wrkMast.getSourceStaNo()));
+ if (station.getLocSts().equals("R")) {
+ station.setLocSts("O");
+ station.setBarcode("");
+ station.setModiTime(new Date());
+ station.setModiUser(userId);
+ if (!basStationService.updateById(station)) {
+ throw new CoolException("鏇存柊婧愮珯鐐圭姸鎬佸け璐�");
+ }
+ }
+ } else {
+ throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�");
}
+ //鍙栨秷鍏ュ簱宸ヤ綔妗f椂锛屾煡璇㈢粍鎵樿〃锛屽鏋滄湁灏嗙姸鎬佹敼涓哄緟澶勭悊
+
+
//鍙栨秷鍑哄簱宸ヤ綔妗f椂锛屾煡璇㈠崟鎹鐞嗚〃锛屽洖婊氫綔涓氫腑鏁伴噺
if (wrkMast.getIoType() == 101 || wrkMast.getIoType() == 103) {
List<TaskDetl> wrkDetls = taskDetlService.selectList(new EntityWrapper<TaskDetl>().eq("wrk_no", wrkMast.getWrkNo()));
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index e1a3156..fe251d2 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -283,7 +283,9 @@
locDetl.getBoxType1(), locDetl.getBoxType2(), locDetl.getBoxType3(), locDetl.getAnfme(), locDetl.getThreeCode()));
locDetl.setOwner(param.getOwnerId());
try {
- locDetlService.update(locDetl, new EntityWrapper<LocDetl>().eq("loc_no", locNo).eq("matnr", locDetl.getMatnr()));
+ locDetlService.update(locDetl, new EntityWrapper<LocDetl>().eq("loc_no", locNo)
+ .eq("supp_code", locDetl.getStandby1())
+ .eq("matnr", locDetl.getMatnr()));
} catch (Exception e) {
throw new Exception("鏇存柊搴撳瓨鏄庣粏鎷ユ湁鑰呭瓧娈典俊鎭嚭閿欎簡");
}
@@ -416,17 +418,17 @@
String orderNo = taskDto.getLocDtos().get(0).getOrderNo();
// OrderPakout orderPakout = orderPakOutService.selectByNo(orderNo);
- int ioType = (taskDto.isAll() ? 101 : 103);
- if(ioType == 101){
+ int ioType = (taskDto.isAll() ? 101 : 103);
+ if (ioType == 101) {
boolean DiffQty = taskDto.getLocDtos().stream().allMatch(locDto ->
locDetlService.selectOne(new EntityWrapper<LocDetl>()
.eq("loc_no", locDto.getLocNo())
.eq("matnr", locDto.getMatnr())
- .eq("batch", locDto.getBatch())
- .eq("standby1",locDto.getStandby1())
+ .eq(!Cools.isEmpty(locDto.getBatch()), "batch", locDto.getBatch())
+ .eq("standby1", locDto.getStandby1())
).getDiffQty().compareTo(BigDecimal.ZERO) == 0
);
- if (!DiffQty){
+ if (!DiffQty) {
ioType = 103;
}
}
@@ -559,7 +561,7 @@
List<CheckOrderDetl> checkOrderDetls = checkOrderDetlService.selectList(new EntityWrapper<CheckOrderDetl>()
.eq("loc_no", locDto.getLocNo())
.eq("matnr", locDto.getMatnr())
- .eq("batch", locDto.getBatch())
+ .eq(!Cools.isEmpty(locDto.getBatch()),"batch", locDto.getBatch())
.eq("order_no", locDto.getOrderNo())
);
@@ -585,7 +587,7 @@
}
// 淇敼璁㈠崟鏄庣粏
checkOrderDetls.get(0).setStatus(2);
- if (!checkOrderDetlService.updateById(checkOrderDetls.get(0))){
+ if (!checkOrderDetlService.updateById(checkOrderDetls.get(0))) {
throw new CoolException("淇濆瓨璁㈠崟鏄庣粏澶辫触");
}
}
@@ -1279,7 +1281,7 @@
@Transactional(rollbackFor = Exception.class)
public void cancelWrkMast(String workNo, Long userId) {
Date now = new Date();
- WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no",workNo));
+ WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", workNo));
if (Cools.isEmpty(wrkMast)) {
throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
}
@@ -1385,7 +1387,7 @@
if (wrkMast.getIoType() == 107) {
List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
- if (!Cools.isEmpty(wrkDetls.get(0).getOrderNo())){
+ if (!Cools.isEmpty(wrkDetls.get(0).getOrderNo())) {
for (WrkDetl wrkDetl : wrkDetls) {
CheckOrderDetl checkOrderDetl = checkOrderDetlService.selectOne(new EntityWrapper<CheckOrderDetl>()
@@ -1400,7 +1402,7 @@
CheckOrder checkOrder = checkOrderService.selectOne(new EntityWrapper<CheckOrder>().eq("order_no", wrkDetls.get(0).getOrderNo()));
List<CheckOrderDetl> checkOrderDetls = checkOrderDetlService.selectList(new EntityWrapper<CheckOrderDetl>().eq("order_id", checkOrder.getId()));
boolean is = checkOrderDetls.stream().allMatch(item -> item.getStatus().equals(1));
- checkOrder.setSettle(is?1L:12L);
+ checkOrder.setSettle(is ? 1L : 12L);
checkOrderService.updateById(checkOrder);
}
@@ -1525,7 +1527,7 @@
// .淇敼骞舵墭鍏ュ簱鏄庣粏鎵樼爜
List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>()
- .eq("area_id", locMast.getAreaId())
+ .eq("area_id", locMast.getAreaId())
.eq("loc_no", locMast.getLocNo()));
if (!Objects.isNull(locDetls) && !locDetls.isEmpty()) {
locDetls.forEach(locDetl -> {
@@ -1544,8 +1546,8 @@
wrkDetl.setZpallet(wrkMast.getBarcode());
wrkDetl.setBarcode(wrkMast.getBarcode());
if (!wrkDetlService.update(wrkDetl, new EntityWrapper<WrkDetl>()
- .eq("matnr", wrkDetl.getMatnr())
- .eq("standby1", wrkDetl.getStandby1())
+ .eq("matnr", wrkDetl.getMatnr())
+ .eq("standby1", wrkDetl.getStandby1())
.eq("wrk_no", wrkMast.getWrkNo()))) {
throw new CoolException("浠诲姟妗f槑缁嗕慨鏀瑰け璐ワ紒锛�");
}
@@ -1665,7 +1667,8 @@
if (Cools.isEmpty(mat)) {
throw new CoolException("鐩爣搴撲綅鍟嗗搧缂栫爜鏈夎锛�");
}
- List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("matnr", param.getLocDetls().get(0).getMatnr()));
+ List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>()
+ .eq("matnr", param.getLocDetls().get(0).getMatnr()));
if (Cools.isEmpty(locDetls) || locDetls.size() < 1) {
throw new CoolException("寰呬慨鏀瑰晢鍝佹棤搴撳瓨锛屾棤闇�淇敼锛� 鍝佸彿锛�" + param.getLocDetls().get(0).getMatnr());
}
diff --git a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
index e14d6bc..78e86ff 100644
--- a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
@@ -1,7 +1,10 @@
package com.zy.asrs.task;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.zy.api.controller.params.AgvCarriesParam;
import com.zy.api.controller.params.WorkTaskParams;
+import com.zy.api.entity.CallAgvParams;
+import com.zy.api.service.AgvScheduleService;
import com.zy.api.service.WcsApiService;
import com.zy.asrs.entity.Task;
import com.zy.asrs.entity.WrkMast;
@@ -40,6 +43,8 @@
private MobileService mobileService;
@Autowired
private TaskService taskService;
+ @Autowired
+ private AgvScheduleService agvScheduleService;
@Scheduled(cron = "0/3 * * * * ? ")
private void execute() {
@@ -92,7 +97,7 @@
if (wrkMasts.isEmpty()) {
return;
}
- Collections.shuffle(wrkMasts);
+// Collections.shuffle(wrkMasts);
wrkMasts.forEach(wrkMast -> {
WorkTaskParams params = new WorkTaskParams();
if (wrkMast.getIoType().equals(11)) {
@@ -112,7 +117,34 @@
wcsApiService.pubWrkToWcs(params);
}
});
+
}
-
+ /**
+ * AGV浠诲姟鑷姩涓嬪彂鍑哄簱浠诲姟
+ *
+ * @author Ryan
+ * @date 2026/1/10 14:42
+ */
+ @Scheduled(cron = "0/5 * * * * ? ")
+ private void autoPubAgvTasks() {
+ List<Task> tasks = taskService.selectList(new EntityWrapper<Task>().in("wrk_sts", Arrays.asList(201L, 301L)));
+ if (tasks.isEmpty()) {
+ return;
+ }
+ Collections.shuffle(tasks);
+ tasks.forEach(wrkMast -> {
+ CallAgvParams param = new CallAgvParams();
+ if (wrkMast.getIoType() == 1) {
+ param.setWrkNo(wrkMast.getWrkNo() + "");
+ param.setOrgSite(wrkMast.getSourceStaNo());
+ param.setTarSite(wrkMast.getLocNo());
+ } else if (wrkMast.getIoType() == 110 ||wrkMast.getIoType() == 101){
+ param.setWrkNo(wrkMast.getWrkNo() + "");
+ param.setOrgSite(wrkMast.getSourceLocNo());
+ param.setTarSite(wrkMast.getStaNo());
+ }
+ agvScheduleService.callAgvCarry(param);
+ });
+ }
}
diff --git a/src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java b/src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java
index fdcd6be..8557e74 100644
--- a/src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java
@@ -10,7 +10,9 @@
import com.zy.asrs.service.WorkService;
import com.zy.asrs.task.AbstractHandler;
import com.zy.asrs.task.core.ReturnT;
+import com.zy.asrs.utils.Utils;
import com.zy.common.model.StartupDto;
+import com.zy.common.properties.SlaveProperties;
import com.zy.common.service.CommonService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -20,6 +22,7 @@
import java.util.List;
import java.util.Map;
+import java.util.Objects;
/**
@@ -37,6 +40,9 @@
@Autowired
private WorkService workService;
+ @Autowired
+ private SlaveProperties slaveProperties;
+
@Transactional(isolation = Isolation.REPEATABLE_READ)
public ReturnT<String> start(Integer crnNo, Integer ioType) {
try {
@@ -47,9 +53,16 @@
List<LocMast> locMasts = locMastService.selectLocMastShuttleMoveUnilateral(bay, lev, crnNo);
if (!Cools.isEmpty(locMasts) && locMasts.size() < 4) {
for (LocMast locMast : locMasts) {
-// LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()));
-// StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 6 : 5, ioType, crnNo == 1 ? 917 : 918, locDetl.getMatnr(), locDetl.getBatch(),locDetl.getBrand(), null);
-// FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(locDetl);
+ if (Utils.isDeepLoc(slaveProperties, locMast.getLocNo())) {
+ String shallowLoc = Utils.getShallowLoc(slaveProperties, locMast.getLocNo());
+ LocMast locNo = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", shallowLoc));
+ if (!Objects.isNull(locNo)) {
+ StartupDto startupDto = commonService.getLocNo(ioType, crnNo == 1 ? 109 : 126, 1, null, null);
+ workService.locMove(locNo.getLocNo(), startupDto.getLocNo(), 9527L);
+ break;
+ }
+ }
+
StartupDto startupDto = commonService.getLocNo(ioType, crnNo == 1 ? 109 : 126, 1, null, null);
workService.locMove(locMast.getLocNo(), startupDto.getLocNo(), 9527L);
break;
@@ -64,6 +77,18 @@
List<LocMast> locMasts = locMastService.selectLocMastShuttleMoveUnilateral(bay, lev, crnNo );
if (!Cools.isEmpty(locMasts) && locMasts.size() < 4) {
for (LocMast locMast : locMasts) {
+// if (Utils.isDeepLoc(slaveProperties, locMast.getLocNo())) {
+// String shallowLoc = Utils.getShallowLoc(slaveProperties, locMast.getLocNo());
+// LocMast locNo = locMastService.selectOne(new EntityWrapper<LocMast>()
+// .eq("crn_no", crnNo)
+// .eq("loc_no", shallowLoc));
+// if (!Objects.isNull(locNo)) {
+// StartupDto startupDto = commonService.getLocNo(ioType, crnNo == 1 ? 205 : 215, 3, null, null);
+// workService.locMove(locNo.getLocNo(), startupDto.getLocNo(), 9527L);
+// break;
+// }
+// }
+
// LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()));
// StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 6 : 5, ioType, crnNo == 1 ? 917 : 918, locDetl.getMatnr(), locDetl.getBatch(),locDetl.getBrand(), null);
// FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(locDetl);
diff --git a/src/main/java/com/zy/common/constant/HIKApiConstant.java b/src/main/java/com/zy/common/constant/HIKApiConstant.java
index 88d1d7f..88632af 100644
--- a/src/main/java/com/zy/common/constant/HIKApiConstant.java
+++ b/src/main/java/com/zy/common/constant/HIKApiConstant.java
@@ -4,7 +4,9 @@
public class HIKApiConstant {
// AGV IP鍦板潃
- public static final String AGV_IP = "10.0.100.110:8182";
+ public static final String AGV_IP = "http://192.168.238.202/rcs/rtas/api/robot/controller";
+
+ public static final String TASK_SUBMIT = "/task/submit";
// 鍏ュ簱鍛煎彨AGV鍙栬揣
public static final String AGV_CALL_IN_PATH = "/rcms/services/rest/hikRpcService/genAgvSchedulingTask";
diff --git a/src/main/java/com/zy/common/constant/MesConstant.java b/src/main/java/com/zy/common/constant/MesConstant.java
index dbf751c..e2f8108 100644
--- a/src/main/java/com/zy/common/constant/MesConstant.java
+++ b/src/main/java/com/zy/common/constant/MesConstant.java
@@ -9,10 +9,13 @@
// public static final String URL = "http://webservice.kopen.com.cn:1482/kc-api/api/wms/ ";
public static final String URL = "http://10.143.23.26:1482/kc-api/api/wms/ ";
+ //AGV鎷夊彛鍦板潃
+ public static final String AGV_URL = "http://192.168.238.202/rcs/rtas/api/robot/controller";
+
//WCS绯荤粺鎺ュ彛鍦板潃
// public static final String WCS_URL = "http://192.168.238.32:9090/wcs";
- public static final String WCS_URL = "http://192.168.238.241:9090/wcs";
+ public static final String WCS_URL = "http://192.168.238.31:9090/wcs";
//涓婃灦娲惧伐鍗曞弽棣�
public static final String IN_DISPATCH_RESULT = "getInDispatchResult";
diff --git a/src/main/java/com/zy/system/entity/license/LicenseCheckListener.java b/src/main/java/com/zy/system/entity/license/LicenseCheckListener.java
index 99d99cc..66234c2 100644
--- a/src/main/java/com/zy/system/entity/license/LicenseCheckListener.java
+++ b/src/main/java/com/zy/system/entity/license/LicenseCheckListener.java
@@ -69,11 +69,11 @@
logger.info("++++++++ 寮�濮嬪姞杞借鍙瘉 ++++++++");
try {
-// String publicKeysStoreFileName = this.getClass().getClassLoader().getResource(publicKeysStorePath).getPath();
-// File publicKeysStoreFile = new File(publicKeysStoreFileName);
-//
-// String licensePathFileName = this.getClass().getClassLoader().getResource(licensePath).getPath();
-// File licensePathFile = new File(licensePathFileName);
+ String publicKeysStoreFileName = this.getClass().getClassLoader().getResource(publicKeysStorePath).getPath();
+ File publicKeysStoreFile = new File(publicKeysStoreFileName);
+
+ String licensePathFileName = this.getClass().getClassLoader().getResource(licensePath).getPath();
+ File licensePathFile = new File(licensePathFileName);
LicenseVerifyParam param = new LicenseVerifyParam();
param.setSubject(subject);
@@ -84,29 +84,29 @@
LicenseVerify licenseVerify = new LicenseVerify();
//瀹夎璇佷功
-// LicenseContent install = licenseVerify.install(param);
+ LicenseContent install = licenseVerify.install(param);
logger.info("++++++++ 璁稿彲璇佸姞杞界粨鏉� ++++++++");
logger.info("++++++++ 璁稿彲璇佸姞杞芥爣璁帮紝鎼滅储淇敼 ++++++++");
licenseTimer.setSystemSupport(true);
- licenseTimer.setLicenseDays(9999);
- return true;
+// licenseTimer.setLicenseDays(9999);
+// return true;
-// licenseTimer.setSystemSupport(install!=null);
-//
-// if (install != null) {
-// Date start = new Date();
-// Date end = install.getNotAfter();
-// Long starTime = start.getTime();
-// Long endTime = end.getTime();
-// Long num = endTime - starTime;//鏃堕棿鎴崇浉宸殑姣鏁�
-// int day = (int) (num / 24 / 60 / 60 / 1000);
-// licenseTimer.setLicenseDays(day);
-// }
-//
-//
-// return install != null;
+ licenseTimer.setSystemSupport(install!=null);
+
+ if (install != null) {
+ Date start = new Date();
+ Date end = install.getNotAfter();
+ Long starTime = start.getTime();
+ Long endTime = end.getTime();
+ Long num = endTime - starTime;//鏃堕棿鎴崇浉宸殑姣鏁�
+ int day = (int) (num / 24 / 60 / 60 / 1000);
+ licenseTimer.setLicenseDays(day);
+ }
+
+
+ return install != null;
} catch (Exception e) {
return false;
}
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index 924e229..6648022 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -12,7 +12,8 @@
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
username: sa
password: sa@123
- url: jdbc:sqlserver://47.97.1.152:1433;databasename=jsxsasrs
+ url: jdbc:sqlserver://192.168.238.32:1433;databasename=jsxsasrs
+# url: jdbc:sqlserver://127.0.0.1:1433;databasename=jsxsasrs
mvc:
static-path-pattern: /**
redis:
@@ -58,21 +59,21 @@
# 鍙屾繁
doubleDeep: true
# 鍙屾繁搴撲綅鎺掑彿
- doubleLocs: 1,4,5,8,9,12,13,16
+ doubleLocs: 11, 14
# 涓�涓爢鍨涙満璐熻矗鐨勮揣鏋舵帓鏁�
groupCount: 4
# 宸︽繁搴撲綅鎺掑彿
- doubleLocsLeft: 1,5,9,13
+ doubleLocsLeft: 11
# 鍙虫繁搴撲綅鎺掑彿
- doubleLocsRight: 4,8,12,16
+ doubleLocsRight: 14
# wms鍙傛暟閰嶇疆
wms-parameter:
# 鑷姩琛ョ┖鏉垮姛鑳藉紑鍏�
- automaticFillingBoardStaNosBoolean: false
+ automaticFillingBoardStaNosBoolean: true
# 鑷姩琛ョ┖鏉跨珯鐐�
automaticFillingBoardStaNos: 112,101
# 鑷姩绉诲簱鍔熻兘寮�鍏�
- autoLocMoveBoolean: false
+ autoLocMoveBoolean: true
# 鑷姩绉诲簱鍔熻兘寮�鍏� 绌挎
autoLocMoveUnilateralBoolean: false
@@ -113,7 +114,8 @@
#KOPEN灏忔澗骞冲彴
kopen:
- url: webservice.kopen.com.cn
+# url: webservice.kopen.com.cn
+ url: 10.143.23.26
port: 1482
prefix: /kc-api/api/wms
diff --git a/src/main/resources/license.lic b/src/main/resources/license.lic
new file mode 100644
index 0000000..34644d8
--- /dev/null
+++ b/src/main/resources/license.lic
Binary files differ
diff --git a/src/main/webapp/views/locCache/locCache.html b/src/main/webapp/views/locCache/locCache.html
index c76f356..aa53ae9 100644
--- a/src/main/webapp/views/locCache/locCache.html
+++ b/src/main/webapp/views/locCache/locCache.html
@@ -119,7 +119,7 @@
<!-- 鎺� -->
<div class="layui-form-item">
<div class="layui-inline">
- <label class="layui-form-label">璧锋鎺�</label>
+ <label class="layui-form-label">璧锋</label>
<div class="layui-input-inline" style="width: 100px;">
<input type="text" name="startRow" autocomplete="off" class="layui-input"
lay-verify="required|number">
@@ -131,84 +131,84 @@
</div>
</div>
</div>
- <!-- 鍒� -->
- <div class="layui-form-item">
- <div class="layui-inline">
- <label class="layui-form-label">璧锋鍒�</label>
- <div class="layui-input-inline" style="width: 100px;">
- <input type="text" name="startBay" autocomplete="off" class="layui-input"
- lay-verify="required|number">
- </div>
- <div class="layui-form-mid">-</div>
- <div class="layui-input-inline" style="width: 100px;">
- <input type="text" name="endBay" autocomplete="off" class="layui-input"
- lay-verify="required|number">
- </div>
- </div>
- </div>
- <!-- 灞� -->
- <div class="layui-form-item">
- <div class="layui-inline">
- <label class="layui-form-label">璧锋灞�</label>
- <div class="layui-input-inline" style="width: 100px;">
- <input type="text" name="startLev" autocomplete="off" class="layui-input"
- lay-verify="required|number">
- </div>
- <div class="layui-form-mid">-</div>
- <div class="layui-input-inline" style="width: 100px;">
- <input type="text" name="endLev" autocomplete="off" class="layui-input"
- lay-verify="required|number">
- </div>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍫嗗灈鏈烘暟閲�</label>
- <div class="layui-input-inline">
- <input type="text" name="crnAmount" lay-verify="required|number" autocomplete="off" class="layui-input">
- </div>
- </div>
- <div class="layui-form-item">
- <div class="layui-inline">
- <label class="layui-form-label">璧峰鍫嗗灈鏈�</label>
- <div class="layui-input-inline">
- <input type="text" name="staCrn" autocomplete="off" class="layui-input" lay-verify="number">
- </div>
- </div>
- </div>
+<!-- <!– 鍒� –>-->
+<!-- <div class="layui-form-item">-->
+<!-- <div class="layui-inline">-->
+<!-- <label class="layui-form-label">璧锋鍒�</label>-->
+<!-- <div class="layui-input-inline" style="width: 100px;">-->
+<!-- <input type="text" name="startBay" autocomplete="off" class="layui-input"-->
+<!-- lay-verify="required|number">-->
+<!-- </div>-->
+<!-- <div class="layui-form-mid">-</div>-->
+<!-- <div class="layui-input-inline" style="width: 100px;">-->
+<!-- <input type="text" name="endBay" autocomplete="off" class="layui-input"-->
+<!-- lay-verify="required|number">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <!– 灞� –>-->
+<!-- <div class="layui-form-item">-->
+<!-- <div class="layui-inline">-->
+<!-- <label class="layui-form-label">璧锋灞�</label>-->
+<!-- <div class="layui-input-inline" style="width: 100px;">-->
+<!-- <input type="text" name="startLev" autocomplete="off" class="layui-input"-->
+<!-- lay-verify="required|number">-->
+<!-- </div>-->
+<!-- <div class="layui-form-mid">-</div>-->
+<!-- <div class="layui-input-inline" style="width: 100px;">-->
+<!-- <input type="text" name="endLev" autocomplete="off" class="layui-input"-->
+<!-- lay-verify="required|number">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">鍫嗗灈鏈烘暟閲�</label>-->
+<!-- <div class="layui-input-inline">-->
+<!-- <input type="text" name="crnAmount" lay-verify="required|number" autocomplete="off" class="layui-input">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <div class="layui-inline">-->
+<!-- <label class="layui-form-label">璧峰鍫嗗灈鏈�</label>-->
+<!-- <div class="layui-input-inline">-->
+<!-- <input type="text" name="staCrn" autocomplete="off" class="layui-input" lay-verify="number">-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- </div>-->
<!-- 搴撲綅绫诲瀷 -->
- <div class="layui-form-item">
- <label class="layui-form-label">楂樹綆绫诲瀷</label>
- <div class="layui-input-inline">
- <select name="locType1">
- <option style="display: none"></option>
- <option value="0">鏈煡</option>
- <option value="1">浣庡簱浣�</option>
- <option value="2">楂樺簱浣�</option>
- </select>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">瀹界獎绫诲瀷</label>
- <div class="layui-input-inline">
- <select name="locType2">
- <option style="display: none"></option>
- <option value="0">鏈煡</option>
- <option value="1">绐勫簱浣�</option>
- <option value="2">瀹藉簱浣�</option>
- </select>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">杞婚噸绫诲瀷</label>
- <div class="layui-input-inline">
- <select name="locType3">
- <option style="display: none"></option>
- <option value="0">鏈煡</option>
- <option value="1">杞诲簱浣�</option>
- <option value="2">閲嶅簱浣�</option>
- </select>
- </div>
- </div>
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">楂樹綆绫诲瀷</label>-->
+<!-- <div class="layui-input-inline">-->
+<!-- <select name="locType1">-->
+<!-- <option style="display: none"></option>-->
+<!-- <option value="0">鏈煡</option>-->
+<!-- <option value="1">浣庡簱浣�</option>-->
+<!-- <option value="2">楂樺簱浣�</option>-->
+<!-- </select>-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">瀹界獎绫诲瀷</label>-->
+<!-- <div class="layui-input-inline">-->
+<!-- <select name="locType2">-->
+<!-- <option style="display: none"></option>-->
+<!-- <option value="0">鏈煡</option>-->
+<!-- <option value="1">绐勫簱浣�</option>-->
+<!-- <option value="2">瀹藉簱浣�</option>-->
+<!-- </select>-->
+<!-- </div>-->
+<!-- </div>-->
+<!-- <div class="layui-form-item">-->
+<!-- <label class="layui-form-label">杞婚噸绫诲瀷</label>-->
+<!-- <div class="layui-input-inline">-->
+<!-- <select name="locType3">-->
+<!-- <option style="display: none"></option>-->
+<!-- <option value="0">鏈煡</option>-->
+<!-- <option value="1">杞诲簱浣�</option>-->
+<!-- <option value="2">閲嶅簱浣�</option>-->
+<!-- </select>-->
+<!-- </div>-->
+<!-- </div>-->
<div style="text-align: center; margin-top: 20px">
<button class="layui-btn layui-btn-radius layui-btn-normal" id="initDo" lay-submit lay-filter="initDo">
纭畾
--
Gitblit v1.9.1