diff --git a/acs/hd/nladmin-system/src/main/resources/logback-spring.xml b/acs/hd/nladmin-system/src/main/resources/logback-spring.xml
index a61e494..f811dcc 100644
--- a/acs/hd/nladmin-system/src/main/resources/logback-spring.xml
+++ b/acs/hd/nladmin-system/src/main/resources/logback-spring.xml
@@ -12,7 +12,7 @@ https://juejin.cn/post/6844903775631572999
nlAdmin
+ value="%black(%contextName-) %red(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{36}) - %cyan(%msg%n)"/>
@@ -86,7 +86,7 @@ https://juejin.cn/post/6844903775631572999
-
+
diff --git a/lms/hd/nladmin-system/src/main/java/org/nl/wms/pad/rest/PadController.java b/lms/hd/nladmin-system/src/main/java/org/nl/wms/pad/rest/PadController.java
index c56db9d..46fdb4e 100644
--- a/lms/hd/nladmin-system/src/main/java/org/nl/wms/pad/rest/PadController.java
+++ b/lms/hd/nladmin-system/src/main/java/org/nl/wms/pad/rest/PadController.java
@@ -90,7 +90,7 @@ public class PadController {
public ResponseEntity point(@RequestBody JSONObject param) {
// 参数校验
String regionId = param.getString("region");
- if (StrUtil.isEmpty(regionId)) {
+ if (StrUtil.isBlank(regionId)) {
JSONObject resultJSON = new JSONObject();
resultJSON.put("code", "0");
resultJSON.put("desc", "区域不能为空");
@@ -111,15 +111,15 @@ public class PadController {
@ApiOperation("查询物料")
public ResponseEntity material(@RequestBody JSONObject param) {
// 参数校验
- String point_id = param.getString("device_id");
- if (StrUtil.isEmpty(point_id)) {
+ String pointId = param.getString("device_id");
+ if (StrUtil.isBlank(pointId)) {
JSONObject resultJSON = new JSONObject();
resultJSON.put("code", "0");
resultJSON.put("desc", "点位不能为空");
return new ResponseEntity<>(resultJSON, HttpStatus.OK);
}
- return new ResponseEntity<>(padService.material(point_id), HttpStatus.OK);
+ return new ResponseEntity<>(padService.material(pointId), HttpStatus.OK);
}
/**
@@ -136,7 +136,7 @@ public class PadController {
public ResponseEntity bindPoint(@RequestBody JSONObject param) {
// 参数校验
String type = param.getString("type");
- if (StrUtil.isEmpty(type)) {
+ if (StrUtil.isBlank(type)) {
JSONObject resultJSON = new JSONObject();
resultJSON.put("code", "0");
resultJSON.put("desc", "操作类型不能为空");
@@ -144,14 +144,14 @@ public class PadController {
}
String pointCode = param.getString("device_code");
String materialType = param.getString("material_type");
- if (StrUtil.equals(type, "1")) {
- if (StrUtil.isEmpty(pointCode)) {
+ if ("1".equals(type)) {
+ if (StrUtil.isBlank(pointCode)) {
JSONObject resultJSON = new JSONObject();
resultJSON.put("code", "0");
resultJSON.put("desc", "设备不能为空");
return new ResponseEntity<>(resultJSON, HttpStatus.OK);
}
- if (StrUtil.isEmpty(materialType)) {
+ if (StrUtil.isBlank(materialType)) {
JSONObject resultJSON = new JSONObject();
resultJSON.put("code", "0");
resultJSON.put("desc", "物料不能为空");
diff --git a/lms/hd/nladmin-system/src/main/java/org/nl/wms/pad/service/impl/PadServiceImpl.java b/lms/hd/nladmin-system/src/main/java/org/nl/wms/pad/service/impl/PadServiceImpl.java
index ddb53f1..ef0c43c 100644
--- a/lms/hd/nladmin-system/src/main/java/org/nl/wms/pad/service/impl/PadServiceImpl.java
+++ b/lms/hd/nladmin-system/src/main/java/org/nl/wms/pad/service/impl/PadServiceImpl.java
@@ -32,6 +32,8 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletRequest;
+import java.util.List;
+import java.util.stream.Collectors;
/**
* 徐工手持服务实现
@@ -238,11 +240,14 @@ public class PadServiceImpl implements PadService {
switch (type) {
case "1":
// 判断是否是限定物料
- String pointMaterialType = point.getString("material_type");
- boolean isEmptyMaterial = StrUtil.equals(materialType, "14");
- if (!isEmptyMaterial
- && !StrUtil.equals(pointMaterialType, "14")
- && !StrUtil.equals(pointMaterialType, materialType)) {
+ List materialTypes = WQLObject
+ .getWQLObject("sch_base_point_material")
+ .query("point_id = " + point.getLong("point_id"))
+ .getResultJSONArray(0)
+ .stream()
+ .map(o -> ((JSONObject) o).getString("material"))
+ .collect(Collectors.toList());
+ if (!materialTypes.contains(materialType)) {
resultJSON.put("code", "0");
resultJSON.put("desc", "该点位不能存放这种物料");
return resultJSON;
@@ -250,7 +255,7 @@ public class PadServiceImpl implements PadService {
// 修改点位
point.put("current_material_type", materialType);
- point.put("point_status", isEmptyMaterial ? "00" : "01");
+ point.put("point_status", "01");
point.put("update_optid", SecurityUtils.getCurrentUserId());
point.put("update_optname", SecurityUtils.getCurrentUsername());
point.put("update_time", DateUtil.now());
@@ -258,7 +263,7 @@ public class PadServiceImpl implements PadService {
break;
case "2":
// 清空点位
- point.put("current_material_type", "14");
+ point.put("current_material_type", null);
point.put("point_status", "00");
point.put("update_optid", SecurityUtils.getCurrentUserId());
point.put("update_optname", SecurityUtils.getCurrentUsername());
diff --git a/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql b/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql
index 5e5c9a0..8aafbce 100644
--- a/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql
+++ b/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql
@@ -94,7 +94,7 @@
LEFT JOIN sys_dict_detail d4 ON point.point_status = d4.value and d4.name='sch_point_status'
LEFT JOIN SCH_BASE_Region prev_region ON point.prev_region_id = prev_region.region_id
LEFT JOIN SCH_BASE_Region next_region ON point.next_region_id = next_region.region_id
- LEFT JOIN sys_dict_detail d6 ON point.current_material_type = d6.`value` AND d6.`name` = 'current_material_type'
+ LEFT JOIN sys_dict_detail d6 ON point.current_material_type = d6.`value` AND d6.`name` = 'material_type'
WHERE
point.is_delete = '0'
OPTION 输入.region_id <> ""
diff --git a/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/sch.xls b/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/sch.xls
index f2678ce..12f5d73 100644
Binary files a/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/sch.xls and b/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/sch.xls differ
diff --git a/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallTask.java b/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallTask.java
index 630590b..9a86434 100644
--- a/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallTask.java
+++ b/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallTask.java
@@ -62,7 +62,7 @@ public class CallTask extends AbstractAcsTask {
@Override
public String createTask(JSONObject param) {
String nextPointCode = param.getString("next_point_code");
- String materialType = param.getString("call_material_type");
+ String materialType = param.getString("material_type");
// 判断点位是否存在
JSONObject nextPoint = WQLObject
@@ -73,6 +73,16 @@ public class CallTask extends AbstractAcsTask {
throw new BadRequestException("未找到该点位");
}
+ // 判断点位有没有被锁定
+ if (!StrUtil.equals(nextPoint.getString("lock_type"), "00")) {
+ throw new BadRequestException("该点位已被锁定");
+ }
+
+ // 判断点位是否为空位
+ if (!StrUtil.equals(nextPoint.getString("point_status"), "00")) {
+ throw new BadRequestException("该点位不是空位");
+ }
+
// 查询点位的叫料区域
String startRegionId = nextPoint.getString("prev_region_id");
if (StrUtil.isEmpty(startRegionId)) {
@@ -91,16 +101,6 @@ public class CallTask extends AbstractAcsTask {
throw new BadRequestException("该点位不能呼叫这种物料");
}
- // 判断点位有没有被锁定
- if (!StrUtil.equals(nextPoint.getString("lock_type"), "00")) {
- throw new BadRequestException("该点位已被锁定");
- }
-
- // 判断点位是否为空位
- if (!StrUtil.equals(nextPoint.getString("point_status"), "00")) {
- throw new BadRequestException("该点位不是空位");
- }
-
// 查询叫料区域存放此物料的排
JSONArray colArray = WQL
.getWO("SEND_TASK")
@@ -122,8 +122,10 @@ public class CallTask extends AbstractAcsTask {
.process()
.uniqueResult(0);
- // 点位不为空 且 点位未锁定,则为合适的叫料点位
- if (ObjectUtil.isNotEmpty(tempPoint) && StrUtil.equals(tempPoint.getString("lock_type"), "00")) {
+ // 点位不为空 且 点位未锁定 且 点位上的物料和需要的物料一致,则为合适的叫料点位
+ if (ObjectUtil.isNotEmpty(tempPoint)
+ && "00".equals(tempPoint.getString("lock_type"))
+ && materialType.equals(tempPoint.getString("current_material_type"))) {
startPoint = tempPoint;
break;
}
diff --git a/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendTask.java b/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendTask.java
index 831359e..9aa8e48 100644
--- a/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendTask.java
+++ b/lms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendTask.java
@@ -140,7 +140,7 @@ public class SendTask extends AbstractAcsTask {
// 起点置空 解锁
startPoint.put("point_status", "00");
startPoint.put("lock_type", "00");
- startPoint.put("current_material_type", "14");
+ startPoint.put("current_material_type", null);
startPoint.put("update_optid", userId);
startPoint.put("update_optname", username);
startPoint.put("update_time", now);
@@ -178,12 +178,6 @@ public class SendTask extends AbstractAcsTask {
throw new BadRequestException("未找到该点位");
}
- // 查询点位的送料区域
- String nextRegionId = startPoint.getString("next_region_id");
- if (StrUtil.isEmpty(nextRegionId)) {
- throw new BadRequestException("该点位没有送料区域");
- }
-
// 判断点位有没有被锁定
if (!StrUtil.equals(startPoint.getString("lock_type"), "00")) {
throw new BadRequestException("该点位已被锁定");
@@ -194,6 +188,13 @@ public class SendTask extends AbstractAcsTask {
throw new BadRequestException("该点位是空位");
}
+ // 查询点位的送料区域
+ String nextRegionId = startPoint.getString("next_region_id");
+ if (StrUtil.isEmpty(nextRegionId)) {
+ throw new BadRequestException("该点位没有送料区域");
+ }
+
+
// 查送料点位(出入库顺序升序)
JSONObject nextPoint;
String currentMaterialType = startPoint.getString("current_material_type");
diff --git a/lms/hd/nladmin-system/src/main/resources/logback-spring.xml b/lms/hd/nladmin-system/src/main/resources/logback-spring.xml
index 4522256..5aff1b4 100644
--- a/lms/hd/nladmin-system/src/main/resources/logback-spring.xml
+++ b/lms/hd/nladmin-system/src/main/resources/logback-spring.xml
@@ -21,7 +21,7 @@ https://juejin.cn/post/6844903775631572999
${log.pattern}
- ${log.charset}
+
@@ -64,6 +64,7 @@ https://juejin.cn/post/6844903775631572999
%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
+ ${log.charset}
@@ -115,7 +116,7 @@ https://juejin.cn/post/6844903775631572999
-
+
diff --git a/lms/hd/nladmin-system/src/test/java/org/nl/PointTest.java b/lms/hd/nladmin-system/src/test/java/org/nl/PointTest.java
index 8626ea5..a9ddfa9 100644
--- a/lms/hd/nladmin-system/src/test/java/org/nl/PointTest.java
+++ b/lms/hd/nladmin-system/src/test/java/org/nl/PointTest.java
@@ -21,6 +21,7 @@ public class PointTest {
@Test
public void test01() {
WQLObject point_table = WQLObject.getWQLObject("sch_base_point");
+ WQLObject pm_table = WQLObject.getWQLObject("sch_base_point_material");
// JSONObject point = new JSONObject();
// point.put("region_id", "1628275194667864064");
// point.put("point_type", "00");
@@ -49,19 +50,24 @@ public class PointTest {
// point_table.insert(point);
// }
// }
- JSONArray points = point_table
- .query("region_id = 1628275194667864064")
- .getResultJSONArray(0);
- WQLObject pm_table = WQLObject.getWQLObject("sch_base_point_material");
- JSONObject pm = new JSONObject();
- String[] materials = new String[]{"08", "09", "10", "11", "12", "13"};
+// JSONArray points = point_table
+// .query("region_id = 1628275194667864064")
+// .getResultJSONArray(0);
+// WQLObject pm_table = WQLObject.getWQLObject("sch_base_point_material");
+// JSONObject pm = new JSONObject();
+// String[] materials = new String[]{"08", "09", "10", "11", "12", "13"};
+// for (Object o : points) {
+// pm.put("point_id", ((JSONObject) o).getLongValue("point_id"));
+// for (String material : materials) {
+// pm.put("pm_id", IdUtil.getSnowflake(1L, 1L).nextId());
+// pm.put("material", material);
+// pm_table.insert(pm);
+// }
+// }
+
+ JSONArray points = point_table.query("region_id = 1628275194667864064").getResultJSONArray(0);
for (Object o : points) {
- pm.put("point_id", ((JSONObject) o).getLongValue("point_id"));
- for (String material : materials) {
- pm.put("pm_id", IdUtil.getSnowflake(1L, 1L).nextId());
- pm.put("material", material);
- pm_table.insert(pm);
- }
+ pm_table.delete("point_id = " + ((JSONObject) o).getString("point_id") + " AND material IN ('11', '12', '13')");
}
}
}
diff --git a/lms/qd/src/views/wms/sch/point/index.vue b/lms/qd/src/views/wms/sch/point/index.vue
index e6ce5de..a8beab3 100644
--- a/lms/qd/src/views/wms/sch/point/index.vue
+++ b/lms/qd/src/views/wms/sch/point/index.vue
@@ -189,7 +189,7 @@
clearable
>
-
+
-
+
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
+
下发
完成
-
+
-
+
-
+