diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdCsSupplierbase.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdCsSupplierbase.java index 58dcc7b..80e4146 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdCsSupplierbase.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdCsSupplierbase.java @@ -138,4 +138,9 @@ public class MdCsSupplierbase implements Serializable { */ private String remark; + /** + * 质量代码 + */ + private String quality_code; + } diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdMeMaterialbase.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdMeMaterialbase.java index b4675ee..1c9cde0 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdMeMaterialbase.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/MdMeMaterialbase.java @@ -187,5 +187,10 @@ public class MdMeMaterialbase implements Serializable { */ private String execution_stand; + /** + * 供应商编码 + */ + private String supp_code; + } diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdMeMaterialbaseMapper.xml b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdMeMaterialbaseMapper.xml index 0af4b95..fa31423 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdMeMaterialbaseMapper.xml +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdMeMaterialbaseMapper.xml @@ -5,10 +5,13 @@ diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/controller/AcsToWmsController.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/controller/AcsToWmsController.java index 9ccba63..0948fb5 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/controller/AcsToWmsController.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/controller/AcsToWmsController.java @@ -42,4 +42,11 @@ public class AcsToWmsController { return new ResponseEntity<>(acsToWmsService.resultCar(whereJson), HttpStatus.OK); } + @PostMapping("/applyTask") + @Log(value = "ACS向WMS申请任务") + @SaIgnore + public ResponseEntity applyTask(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(acsToWmsService.applyTask(whereJson), HttpStatus.OK); + } + } diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/AcsToWmsService.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/AcsToWmsService.java index 8a16b0a..25aacb6 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/AcsToWmsService.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/AcsToWmsService.java @@ -34,4 +34,14 @@ public interface AcsToWmsService { * @return BaseResponse */ BaseResponse resultCar(JSONObject whereJson); + + /** + * ACS向WMS申请任务 + * @param whereJson { + * type:1-缠绕机 2- 机械手 + * type_dtl:1-申请取货 2-申请放货 + * } + * @return BaseResponse + */ + BaseResponse applyTask(JSONObject whereJson); } diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/impl/AcsToWmsServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/impl/AcsToWmsServiceImpl.java index 7e971ac..f401b9a 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/impl/AcsToWmsServiceImpl.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/service/impl/AcsToWmsServiceImpl.java @@ -1,28 +1,21 @@ package org.nl.wms.ext.service.impl; -import cn.hutool.core.date.DateUtil; -import cn.hutool.core.io.unit.DataUnit; -import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; -import lombok.Data; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; import org.nl.common.exception.BadRequestException; -import org.nl.common.hikvision.HikvisionSnapshotUtil; import org.nl.wms.basedata_manage.service.IMdPbStoragevehicleinfoService; -import org.nl.wms.basedata_manage.service.dao.MdPbStoragevehicleinfo; import org.nl.wms.ext.enums.ResultAcsStatus; import org.nl.wms.ext.service.AcsToWmsService; import org.nl.wms.ext.util.BaseResponse; import org.nl.wms.sch_manage.enums.TaskStatus; import org.nl.wms.sch_manage.service.ISchBasePointService; import org.nl.wms.sch_manage.service.ISchBaseTaskService; -import org.nl.wms.sch_manage.service.dao.SchBasePoint; +import org.nl.wms.sch_manage.service.SecondaryPackagingService; import org.nl.wms.sch_manage.service.dao.SchBaseTask; import org.nl.wms.sch_manage.service.util.AbstractTask; import org.nl.wms.sch_manage.service.util.TaskFactory; -import org.nl.wms.sch_manage.service.util.tasks.EmpVehicleInTask; import org.nl.wms.warehouse_management.enums.IOSConstant; import org.redisson.api.RLock; import org.redisson.api.RedissonClient; @@ -74,6 +67,12 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { @Autowired private IMdPbStoragevehicleinfoService iMdPbStoragevehicleinfoService; + /** + * 申请任务 + */ + @Autowired + private SecondaryPackagingService secondaryPackagingService; + @Override @Transactional(rollbackFor = Exception.class) @SneakyThrows @@ -150,4 +149,55 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { log.info("ACS向WMS反馈任务车号,返回参数:--------------------------------------" + BaseResponse.responseOk().toString()); return BaseResponse.responseOk(); } + + @Override + @Transactional(rollbackFor = Exception.class) + @SneakyThrows + public BaseResponse applyTask(JSONObject whereJson) { + log.info("ACS向WMS申请任务,请求参数:--------------------------------------" + whereJson.toString()); + String device_code = whereJson.getString("device_code"); + String type = whereJson.getString("type"); + String type_dtl = whereJson.getString("type_dtl"); + + RLock lock = redissonClient.getLock(device_code); + boolean tryLock = lock.tryLock(0, TimeUnit.SECONDS); + try { + if (tryLock) { + // 缠绕机 + if (type.equals(IOSConstant.ONE)) { + if (type_dtl.equals(IOSConstant.ONE)) { + // 下料 + secondaryPackagingService.wrappingDown(whereJson); + } + if (type_dtl.equals(IOSConstant.TWO)) { + // 上料 + secondaryPackagingService.wrappingCall(whereJson); + } + } + // 机械手 + if (type.equals(IOSConstant.TWO)) { + if (type_dtl.equals(IOSConstant.ONE)) { + // 下料 + secondaryPackagingService.palletizingDown(whereJson); + } + if (type_dtl.equals(IOSConstant.TWO)) { + // 上料 + secondaryPackagingService.palletizingCallEmpty(whereJson); + } + } + /* // 拆盘机 + if (type.equals(IOSConstant.THREE)) { + // 找一垛空托盘 + }*/ + } else { + throw new BadRequestException("设备编码为:" + device_code + "的设备正在操作中!"); + } + } finally { + if (tryLock) { + lock.unlock(); + } + } + log.info("ACS向WMS申请任务,返回参数:--------------------------------------" + BaseResponse.responseOk().toString()); + return BaseResponse.responseOk(); + } } diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaProductionServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaProductionServiceImpl.java index 5820b8f..364ac09 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaProductionServiceImpl.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaProductionServiceImpl.java @@ -2,6 +2,7 @@ package org.nl.wms.pda.general_management.service.impl; import cn.hutool.core.date.DateUtil; import cn.hutool.core.map.MapUtil; +import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; @@ -703,7 +704,7 @@ public class PdaProductionServiceImpl implements PdaProductionService { } // todo:获取ACS的重量! res.put("total", bucketInfo.getBigDecimal("qty")); - res.put("rows", infoByBucket); + res.put("row", infoByBucket); return PdaResponse.requestParamOk(res); } @@ -769,8 +770,8 @@ public class PdaProductionServiceImpl implements PdaProductionService { JSONObject row = param.getJSONObject("row"); String currentPoint = param.getString("current_point"); String vehicleCode = param.getString("vehicle_code"); - // ACS 获取的重量 - BigDecimal currentTotal = param.getBigDecimal("weight"); + // ACS 获取的重量(毛重) + BigDecimal currentTotal = NumberUtil.sub(param.getBigDecimal("weight"), row.getBigDecimal("bucket_weight")); BigDecimal originalQty = row.getBigDecimal("qty"); Param threshold = paramService.findByCode("weighing_threshold"); // 对比与组盘的重量是否大于阈值 diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaWarehouseServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaWarehouseServiceImpl.java index faa39b1..054e301 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaWarehouseServiceImpl.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/general_management/service/impl/PdaWarehouseServiceImpl.java @@ -273,7 +273,7 @@ public class PdaWarehouseServiceImpl implements PdaWarehouseService { // 校验托盘数据与入库是否匹配 // 入库前检测 AssemblyPalletParam checkParam = new AssemblyPalletParam(); - checkParam.setVehicle_code(param.getString("vehicel_code")); + checkParam.setVehicle_code(param.getString("vehicle_code")); // res中包含g.*(md_pb_groupplate字段),但也会额外带一些展示字段;这里只取校验必需字段即可 List rows = param.getJSONArray("rows").toJavaList(JSONObject.class); List groupPlates = rows.stream().map(row -> { diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/impl/SecondaryPackagingServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/impl/SecondaryPackagingServiceImpl.java index 550a86b..9b4ed1b 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/impl/SecondaryPackagingServiceImpl.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/impl/SecondaryPackagingServiceImpl.java @@ -71,7 +71,7 @@ public class SecondaryPackagingServiceImpl implements SecondaryPackagingService // 组盘 GroupPlate groupPlate = new GroupPlate(); groupPlate.setGroup_id(IdUtil.getStringId()); - groupPlate.setVehicle_code( DateUtil.format(new Date(), "yyyyMMddss") + "-" + param.getString("vehicle_seq")); + groupPlate.setVehicle_code(IdUtil.getStringId()); groupPlate.setRemark(param.toJSONString()); groupPlate.setStatus("1"); groupPlate.setQty(param.getBigDecimal("qty")); diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/MaterialBackTask.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/MaterialBackTask.java index e6f2050..1a9330f 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/MaterialBackTask.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/MaterialBackTask.java @@ -55,7 +55,7 @@ public class MaterialBackTask extends AbstractTask { SchBaseTask task = new SchBaseTask(); task.setTask_id(IdUtil.getStringId()); task.setTask_code(CodeUtil.getNewCode("TASK_CODE")); - task.setTask_status(TaskStatus.CREATED.getCode()); + task.setTask_status(TaskStatus.CREATE.getCode()); task.setConfig_code(MaterialBackTask.class.getSimpleName()); task.setPoint_code1(json.getString("point_code1")); task.setPoint_code2(json.getString("point_code2")); diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/WrappingUpTask.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/WrappingUpTask.java index f363aa8..3cd07a4 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/WrappingUpTask.java +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/WrappingUpTask.java @@ -29,7 +29,7 @@ import java.util.Collections; import java.util.List; /** - * + * 缠膜叫料任务类 * @author: lyd * @date: 2026/1/12 */ diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.xml b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.xml index 6d9b3a9..5c1c1c1 100644 --- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.xml +++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.xml @@ -33,7 +33,7 @@ FROM md_pb_groupplate late INNER JOIN md_me_materialbase mater ON mater.material_id = late.material_id - INNER JOIN md_cs_supplierbase supp ON supp.supp_code = late.supp_code + LEFT JOIN md_cs_supplierbase supp ON supp.supp_code = late.supp_code LEFT JOIN md_pb_classstandard class ON class.class_id = mater.material_type_id 1 = 1 diff --git a/wms/nladmin-ui/src/views/wms/basedata/bucked/index.vue b/wms/nladmin-ui/src/views/wms/basedata/bucked/index.vue index 30e51dc..f7bc84d 100644 --- a/wms/nladmin-ui/src/views/wms/basedata/bucked/index.vue +++ b/wms/nladmin-ui/src/views/wms/basedata/bucked/index.vue @@ -145,7 +145,6 @@ - diff --git a/wms/nladmin-ui/src/views/wms/basedata/group/index.vue b/wms/nladmin-ui/src/views/wms/basedata/group/index.vue index 128b0e0..bb65996 100644 --- a/wms/nladmin-ui/src/views/wms/basedata/group/index.vue +++ b/wms/nladmin-ui/src/views/wms/basedata/group/index.vue @@ -84,7 +84,6 @@ - diff --git a/wms/nladmin-ui/src/views/wms/basedata/groupbag/index.vue b/wms/nladmin-ui/src/views/wms/basedata/groupbag/index.vue index f5d9c43..33f53ea 100644 --- a/wms/nladmin-ui/src/views/wms/basedata/groupbag/index.vue +++ b/wms/nladmin-ui/src/views/wms/basedata/groupbag/index.vue @@ -191,7 +191,6 @@ - diff --git a/wms/nladmin-ui/src/views/wms/basedata/material/index.vue b/wms/nladmin-ui/src/views/wms/basedata/material/index.vue index 59d16c5..1934d18 100644 --- a/wms/nladmin-ui/src/views/wms/basedata/material/index.vue +++ b/wms/nladmin-ui/src/views/wms/basedata/material/index.vue @@ -103,12 +103,10 @@ > - - + + - -