From 5ee636414a77e08afdd07e1c6f9a2f275a7cd6c2 Mon Sep 17 00:00:00 2001 From: zhangzhiqiang Date: Wed, 14 Jun 2023 08:45:38 +0800 Subject: [PATCH 1/4] =?UTF-8?q?add:=E5=AF=BC=E5=85=A5=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=94=99=E8=AF=AF=E6=96=87=E4=BB=B6=E6=8F=90?= =?UTF-8?q?=E9=86=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/nl/modules/system/util/CodeUtil.java | 2 +- .../sch/tasks/SpeMachinery/SpeEmpTask.java | 3 +- .../sch/tasks/SpeMachinery/SpeFullTask.java | 24 +----- .../impl/IPdmProduceWorkorderServiceImpl.java | 80 ++++++++++++------- 4 files changed, 58 insertions(+), 51 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/modules/system/util/CodeUtil.java b/mes/hd/nladmin-system/src/main/java/org/nl/modules/system/util/CodeUtil.java index 66e8fc60..847c93dc 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/modules/system/util/CodeUtil.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/modules/system/util/CodeUtil.java @@ -17,7 +17,7 @@ public class CodeUtil{ String codeId = service.queryIdByCode(ruleCode); RedissonUtils.lock(() -> { code[0] = service.codeDemo(map); - }, codeId, 3); + }, codeId, 1); return code[0]; } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/tasks/SpeMachinery/SpeEmpTask.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/tasks/SpeMachinery/SpeEmpTask.java index ab310938..e7bdfd1e 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/tasks/SpeMachinery/SpeEmpTask.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/tasks/SpeMachinery/SpeEmpTask.java @@ -206,8 +206,9 @@ public class SpeEmpTask extends AbstractAcsTask { if (!("fall_finish"+task.getTask_id()).equals(device.getRemark())){ iDeviceService.update(new UpdateWrapper() .set("material_id", task.getMaterial_id()) + .set("deviceinstor_qty",device.getDeviceinstor_qty().add(task.getMaterial_qty())) .set("remark","fall_finish"+task.getTask_id()) - .eq("device_code", task.getPoint_code2())); + .eq("device_code", device.getDevice_code())); } } break; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/tasks/SpeMachinery/SpeFullTask.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/tasks/SpeMachinery/SpeFullTask.java index 10664762..7a837950 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/tasks/SpeMachinery/SpeFullTask.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/tasks/SpeMachinery/SpeFullTask.java @@ -171,34 +171,18 @@ public class SpeFullTask extends AbstractAcsTask { .set("update_name","acs") .set("update_time",DateUtil.now()).eq("task_id",task.getTask_id())); Map extParam = (Map)param.get("ext_param"); - //取货完成/放货完成暂不处理箱子 - if (extParam.get("put_finish") != null){ - log.info("放货完成:{},vechile_code:{}",task.getTask_id(),task.getVehicle_code2()); -// pointService.update(new UpdateWrapper() -// .set("vehicle_code",task.getVehicle_code2()) -// .eq("point_code",task.getPoint_code3())); - - } + //take_finish 取满 fall_finish 倒料 put_finish放空 if (extParam.get("fall_finish") != null){ - PdmBiDevice one = deviceService.getOne(new QueryWrapper().eq("device_code", task.getPoint_code2())); + //TODO:添加任务唯一性校验防止重复更新 + PdmBiDevice one = deviceService.getDeviceByPointCode(task.getPoint_code2()); if (!("fall_finish"+task.getTask_id()).equals(one.getRemark())){ deviceService.update(new UpdateWrapper() .set("material_id", task.getMaterial_id()) .set("deviceinstor_qty",one.getDeviceinstor_qty().add(task.getMaterial_qty())) .set("remark","fall_finish"+task.getTask_id()) - .eq("device_code", task.getPoint_code2())); + .eq("device_code", one.getDevice_code())); } } - if (extParam.get("take_finish") != null){ - log.info("取货完成:{},vechile_code:{}",task.getTask_id(),task.getVehicle_code2()); -// pointService.update(new UpdateWrapper() -// .set("vehicle_code","") -// .eq("point_code",task.getPoint_code3())); -// pointService.update(new UpdateWrapper() -// .set("vehicle_code",task.getVehicle_code2()) -// .eq("point_code",task.getPoint_code1())); - } - break; case STATUS_FINISH: taskService.update(new UpdateWrapper() diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/service/workorder/impl/IPdmProduceWorkorderServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/service/workorder/impl/IPdmProduceWorkorderServiceImpl.java index 5cef8469..eb5e84be 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/service/workorder/impl/IPdmProduceWorkorderServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/service/workorder/impl/IPdmProduceWorkorderServiceImpl.java @@ -254,12 +254,14 @@ public class IPdmProduceWorkorderServiceImpl extends ServiceImpl data = new ArrayList<>(); Map errorMap = new HashMap(); + + List workprodures = new ArrayList<>(); + List materialSpecs = new ArrayList<>(); + List persons = new ArrayList<>(); row: for (int i = 0; i < read.size(); i++) { List list = read.get(i); - if (ObjectUtil.isEmpty(list)) { - continue; - } + if (ObjectUtil.isEmpty(list)) { continue; } PdmProduceWorkorder workorder = new PdmProduceWorkorder(); packageForm(workorder); for (int j = 0; j < list.size(); j++) { @@ -284,26 +286,12 @@ public class IPdmProduceWorkorderServiceImpl extends ServiceImpl material_specs = materialbaseService.list(new QueryWrapper().eq("material_spec", col)); - if (CollectionUtils.isEmpty(material_specs)) { - errorMap.put("第" + (i + 1) + "行,第" + (j + 1) + "列", col + "物料规格对应物料信息不存在"); - } else { - Optional first = material_specs.stream().filter(mdMeMaterialbase -> mdMeMaterialbase.getMaterial_code().contains("S") - && Pattern.matches("^[0-9]*$", mdMeMaterialbase.getMaterial_name().substring(mdMeMaterialbase.getMaterial_name().length() - 1)) - ).findFirst(); - if (!first.isPresent()) { - errorMap.put("第" + (i + 1) + "行,第" + (j + 1) + "列", col + "物料规格对应物料信息不存在"); - } - workorder.setMaterial_id(first.get().getMaterial_id()); - } + materialSpecs.add(col); + workorder.setMaterial_id(col); } if (j == 3) { - PdmBiWorkprocedure workprocedure = workprocedureService.getOne(new QueryWrapper().eq("workprocedure_name", col)); - if (ObjectUtil.isEmpty(workprocedure)) { - errorMap.put("第" + (i + 1) + "行,第" + (j + 1) + "列", col + "工序名称是否正确"); - } else { - workorder.setWorkprocedure_id(workprocedure.getWorkprocedure_id()); - } + workprodures.add(col); + workorder.setWorkprocedure_id(col); } if (j == 4) { //设备 A1_TW_ @@ -315,13 +303,8 @@ public class IPdmProduceWorkorderServiceImpl extends ServiceImpl().eq("person_name", col)); - if (ObjectUtil.isEmpty(user)) { - errorMap.put("第" + (i + 1) + "行,第" + (j + 1) + "列", col + " 操作工没有账号"); - } else { - workorder.setCurrent_produce_person_id(user.getUser_id()); - } + persons.add(col); + workorder.setCurrent_produce_person_id(col); } if (j == 9) { workorder.setPlan_qty(new BigDecimal(Long.valueOf(col))); @@ -334,7 +317,46 @@ public class IPdmProduceWorkorderServiceImpl extends ServiceImpl tmp_material_specs = materialbaseService.list(new QueryWrapper().in("material_spec", materialSpecs)); + List tmp_sysUsers = userService.list(new QueryWrapper().in("person_name", persons)); + List tmp_workprocedure_names = workprocedureService.list(new QueryWrapper().in("workprocedure_name", workprodures)); + + Map collect = tmp_workprocedure_names.stream().collect(HashMap::new, (k, v) -> k.put(v.getWorkprocedure_name(), v), HashMap::putAll); + Map users = tmp_sysUsers.stream().collect(HashMap::new, (k, v) -> k.put(v.getPerson_name(), v), HashMap::putAll); + Map> materialspecs = tmp_material_specs.stream().collect(Collectors.groupingBy(MdMeMaterialbase::getMaterial_spec)); + for (int i = 0; i < data.size(); i++) { + PdmProduceWorkorder workorder = data.get(i); + SysUser sysUser = users.get(workorder.getCurrent_produce_person_id()); + if (sysUser==null){ + errorMap.put("第"+(i+1)+"行:","账号:"+workorder.getCurrent_produce_person_id()+"不存在"); + }else { + workorder.setCurrent_produce_person_id(sysUser.getUser_id()); + } + PdmBiWorkprocedure workprocedure = collect.get(workorder.getWorkprocedure_id()); + if (workprocedure==null){ + errorMap.put("第"+(i+1)+"行:","工序名称:"+workorder.getWorkprocedure_id()+"不存在"); + }else { + workorder.setWorkorder_id(workprocedure.getWorkprocedure_id()); + } + List mdMeMaterialbases = materialspecs.get(workorder.getMaterial_id()); + if (!CollectionUtils.isEmpty(mdMeMaterialbases)){ + if (mdMeMaterialbases.size() == 1){ + workorder.setMaterial_id(mdMeMaterialbases.get(0).getMaterial_id()); + }else { + Optional first = mdMeMaterialbases.stream().filter(mdMeMaterialbase -> mdMeMaterialbase.getMaterial_code().contains("S") + && Pattern.matches("^[0-9]*$", mdMeMaterialbase.getMaterial_name().substring(mdMeMaterialbase.getMaterial_name().length() - 1)) + ).findFirst(); + if (first.isPresent()){ + workorder.setMaterial_id(first.get().getMaterial_id()); + }else { + errorMap.put("第"+(i+1)+"行:","物料规格:"+workorder.getMaterial_id()+"不存在"); + } + } + }else { + errorMap.put("第"+(i+1)+"行:","物料规格:"+workorder.getMaterial_id()+"不存在"); + } + } if (!CollectionUtils.isEmpty(errorMap)) { throw new BadRequestException(JSON.toJSONString(errorMap)); From 7fa9b634be64e57bdcb4c4e13f3f8814f6e0f159 Mon Sep 17 00:00:00 2001 From: liuxy Date: Wed, 14 Jun 2023 09:53:33 +0800 Subject: [PATCH 2/4] =?UTF-8?q?rev:=20=E5=88=9D=E5=A7=8B=E5=8C=96=E8=B4=A7?= =?UTF-8?q?=E4=BD=8D=E3=80=81=E6=88=90=E5=93=81=E5=87=BA=E5=85=A5=E5=BA=93?= =?UTF-8?q?=E8=B6=85=E9=99=90=E8=B4=A7=E4=BD=8D=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vehicle/dao/MdPbStoragevehicleinfo.java | 3 + .../storage/IStIvtStructattrService.java | 6 ++ .../dao/mapper/StIvtStructattrMapper.java | 2 + .../dao/mapper/xml/StIvtStructattrMapper.xml | 29 ++++++++++ .../impl/StIvtStructattrServiceImpl.java | 5 ++ .../org/nl/wms/storage_manage/IOSEnum.java | 4 +- .../IStivtlostorivnCpOutController.java | 9 +++ .../IStIvtIostorinvCpOutService.java | 5 ++ .../impl/StIvtIostorinvCpOutServiceImpl.java | 58 ++++++++++++++++++- .../impl/StIvtIostorinvCpServiceImpl.java | 22 ++++++- .../productmanage/util/RuleUtil.java | 6 ++ .../util/impl/DivRuleCpServiceImpl.java | 17 +++++- .../product/productIn/DivDialog.vue | 2 +- .../product/productOut/DivDialog.vue | 2 +- 14 files changed, 161 insertions(+), 9 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbStoragevehicleinfo.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbStoragevehicleinfo.java index 51d5af68..acf5c46c 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbStoragevehicleinfo.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbStoragevehicleinfo.java @@ -1,6 +1,8 @@ package org.nl.wms.masterdata_manage.service.vehicle.dao; import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.util.Date; import java.io.Serializable; @@ -25,6 +27,7 @@ public class MdPbStoragevehicleinfo implements Serializable { /** * 载具标识 */ + @TableId private String storagevehicle_id; /** diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/IStIvtStructattrService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/IStIvtStructattrService.java index 69d619bc..5bca0bec 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/IStIvtStructattrService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/IStIvtStructattrService.java @@ -40,4 +40,10 @@ public interface IStIvtStructattrService extends IService { * @param jo */ JSONObject getSectCascader(JSONObject jo); + + /** + * 查询超限货位 + * @param jo + */ + StIvtStructattr getExceedAttr(JSONObject jo); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/StIvtStructattrMapper.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/StIvtStructattrMapper.java index 2c9de372..a5374f4f 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/StIvtStructattrMapper.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/StIvtStructattrMapper.java @@ -1,5 +1,6 @@ package org.nl.wms.masterdata_manage.storage.service.storage.dao.mapper; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr; @@ -13,4 +14,5 @@ import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr; */ public interface StIvtStructattrMapper extends BaseMapper { + StIvtStructattr getExceedAttr(JSONObject jo); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/xml/StIvtStructattrMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/xml/StIvtStructattrMapper.xml index d3d05f95..c7707299 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/xml/StIvtStructattrMapper.xml +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/xml/StIvtStructattrMapper.xml @@ -2,4 +2,33 @@ + + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/impl/StIvtStructattrServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/impl/StIvtStructattrServiceImpl.java index ef0b99f1..48223438 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/impl/StIvtStructattrServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/impl/StIvtStructattrServiceImpl.java @@ -117,6 +117,11 @@ public class StIvtStructattrServiceImpl extends ServiceImpl code; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/controller/iostorInv/IStivtlostorivnCpOutController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/controller/iostorInv/IStivtlostorivnCpOutController.java index ca102274..cc7d2c62 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/controller/iostorInv/IStivtlostorivnCpOutController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/controller/iostorInv/IStivtlostorivnCpOutController.java @@ -1,5 +1,6 @@ package org.nl.wms.storage_manage.productmanage.controller.iostorInv; +import cn.dev33.satoken.annotation.SaIgnore; import com.alibaba.fastjson.JSONObject; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -141,5 +142,13 @@ public class IStivtlostorivnCpOutController { return new ResponseEntity<>(HttpStatus.OK); } + @GetMapping("/initAttr") + @Log("初始化仓位") + @ApiOperation("初始化仓位") + @SaIgnore + public ResponseEntity initAttr(){ + iStIvtIostorinvCpOutService.initAttr(); + return new ResponseEntity<>(HttpStatus.OK); + } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/IStIvtIostorinvCpOutService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/IStIvtIostorinvCpOutService.java index 930ba2cc..2d429e24 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/IStIvtIostorinvCpOutService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/IStIvtIostorinvCpOutService.java @@ -178,4 +178,9 @@ public interface IStIvtIostorinvCpOutService extends IService * } */ void confirmTask(JSONObject whereJson); + + /* + 初始化仓位 + */ + void initAttr(); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java index 961e8cf8..18466b72 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java @@ -30,6 +30,7 @@ import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleextServic import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleinfoService; import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbBucketrecord; import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbStoragevehicleext; +import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbStoragevehicleinfo; import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtBsrealstorattrService; import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrService; import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtBsrealstorattr; @@ -457,7 +458,7 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl().lambda() + .eq(MdPbStoragevehicleinfo::getStoragevehicle_code, attrDao.getStoragevehicle_code()) + ); + + if (StrUtil.equals(vehicleDao.getOverstruct_type(),IOSEnum.IS_USED.code("是"))) { + // 解锁超限货位 + iStIvtStructattrService.update( + new UpdateWrapper().lambda() + .set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定")) + .eq(StIvtStructattr::getControl_code,attrDao.getStruct_id()) + ); + } + attrDao.setInv_code(""); attrDao.setInv_type(""); attrDao.setInv_id(""); @@ -816,5 +871,4 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl().lambda() + .set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定")) + .eq(StIvtStructattr::getControl_code,disDao.getStruct_id()) + ); + } + // 更新库存 iStIvtStructivtCpService.UpdateIvt(ivtDataParam(disDao,ChangeIvtUtil.SUBWAREHOUSING_QTY,null)); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/RuleUtil.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/RuleUtil.java index 0be2a461..2c7a3e3e 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/RuleUtil.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/RuleUtil.java @@ -8,6 +8,12 @@ public class RuleUtil { */ public static final String PRODUCTION_IN_1 = "in_1"; + /* + * 入库分配: + * 按照仓位顺序找到一个成品仓一层两个货位 + */ + public static final String PRODUCTION_IN_2 = "in_2"; + /* * 出库分配: * 根据 仓库、库区、物料、销售单找库存 diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/impl/DivRuleCpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/impl/DivRuleCpServiceImpl.java index faf9c074..3f54edbd 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/impl/DivRuleCpServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/impl/DivRuleCpServiceImpl.java @@ -3,6 +3,7 @@ package org.nl.wms.storage_manage.productmanage.util.impl; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import org.nl.modules.common.exception.BadRequestException; import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrService; import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr; @@ -50,13 +51,23 @@ public class DivRuleCpServiceImpl implements DivRuleCpService { new QueryWrapper().lambda() .eq(StIvtStructattr::getStor_id, stor_id) .eq(StIvtStructattr::getSect_id, sect_id) - .isNull(StIvtStructattr::getStoragevehicle_code) - .ne(StIvtStructattr::getStoragevehicle_code,"") - .eq(StIvtStructattr::getIs_used, "1") //TODO 暂时写死 + .eq(StIvtStructattr::getIs_used, IOSEnum.IS_USED.code("是")) .eq(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定")) + .eq(StIvtStructattr::getStoragevehicle_code,"") .orderByAsc(StIvtStructattr::getStruct_code) ,false); break; + case RuleUtil.PRODUCTION_IN_2 : + attrDao = iStIvtStructattrService.getExceedAttr(whereJson); + + // 不为空则锁住对应货位 + if (ObjectUtil.isNotEmpty(attrDao)) + iStIvtStructattrService.update( + new UpdateWrapper().lambda() + .set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("其他锁")) + .eq(StIvtStructattr::getStruct_id, attrDao.getControl_code()) + ); + break; } return attrDao; diff --git a/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue b/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue index 474aade3..e6e87626 100644 --- a/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue +++ b/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue @@ -320,7 +320,7 @@ export default { crudSectattr.getSect({ 'stor_id': this.storId }).then(res => { this.sects = res.content }) - const area_type = 'A1_RK01' + const area_type = 'A1_CPRK01' crudPoint.getPoint({ 'area_type': area_type }).then(res => { this.pointlist = res }) diff --git a/mes/qd/src/views/wms/storage_manage/product/productOut/DivDialog.vue b/mes/qd/src/views/wms/storage_manage/product/productOut/DivDialog.vue index 0ad11270..ca40132a 100644 --- a/mes/qd/src/views/wms/storage_manage/product/productOut/DivDialog.vue +++ b/mes/qd/src/views/wms/storage_manage/product/productOut/DivDialog.vue @@ -301,7 +301,7 @@ export default { crudSectattr.getSect({ 'stor_id': this.storId }).then(res => { this.sects = res.content }) - const area_type = 'A1_RK01' + const area_type = 'A1_FH01' crudPoint.getPoint({ 'area_type': area_type }).then(res => { this.pointList = res }) From dfa30f5b1b2f489bf6096a2e8be16a7694d59899 Mon Sep 17 00:00:00 2001 From: liuxy Date: Wed, 14 Jun 2023 16:25:12 +0800 Subject: [PATCH 3/4] =?UTF-8?q?rev=EF=BC=9A=E4=BB=BB=E5=8A=A1=E4=B8=8B?= =?UTF-8?q?=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nl/common/publish/event/PointEvent.java | 1 + .../wms/ext/acs/service/WmsToAcsService.java | 1 + .../acs/service/impl/AcsToWmsServiceImpl.java | 9 ++- .../acs/service/impl/WmsToAcsServiceImpl.java | 26 +++++++ .../dao/mapper/xml/StIvtStructattrMapper.xml | 4 +- .../wms/product_manage/sch/PointListener.java | 3 +- .../impl/StIvtIostorinvCpOutServiceImpl.java | 16 ++-- .../impl/StIvtIostorinvCpServiceImpl.java | 22 ++++-- .../dao/mapper/StIvtMoreorlessmstCpMapper.xml | 2 +- .../impl/StIvtIostorinvBcpOutServiceImpl.java | 64 +++++++++++++++- .../impl/StIvtIostorinvBcpServiceImpl.java | 73 ++++++++++++++++++- 11 files changed, 199 insertions(+), 22 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/common/publish/event/PointEvent.java b/mes/hd/nladmin-system/src/main/java/org/nl/common/publish/event/PointEvent.java index f012a246..cd9770ef 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/common/publish/event/PointEvent.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/common/publish/event/PointEvent.java @@ -19,6 +19,7 @@ import java.util.Map; public class PointEvent extends PublishEvent { private String type; + private String acs_task_type; private String point_code1; private String point_code2; private String vehicle_code; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java index 63187126..f9f44952 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/WmsToAcsService.java @@ -19,6 +19,7 @@ public interface WmsToAcsService { Map issueTaskToAcs(JSONArray arr); Map issueTaskToAcs2(JSONArray arr); + Map issueTaskToAcs3(JSONArray arr); /** * WMS客户端--->ACS服务端 diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java index 7243ee12..826f7a55 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -138,10 +138,11 @@ public class AcsToWmsServiceImpl implements AcsToWmsService{ String status = row.getString("status"); // 任务处理类 try { - - AbstractAcsTask taskHandler = (AbstractAcsTask)SpringContextHolder.getBean(Class.forName(processing_class)); - if (taskHandler!=null){ - taskHandler.updateTaskStatus(row,status); + if (ObjectUtil.isNotEmpty(processing_class)) { + AbstractAcsTask taskHandler = (AbstractAcsTask)SpringContextHolder.getBean(Class.forName(processing_class)); + if (taskHandler!=null){ + taskHandler.updateTaskStatus(row,status); + } } //发布一个任务执行事件:服务跟任务不一样,可以同事存在 TaskEvent event = TaskEvent.builder() diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java index 20bbc3f7..cd306336 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/WmsToAcsServiceImpl.java @@ -66,6 +66,32 @@ public class WmsToAcsServiceImpl implements WmsToAcsService{ return AcsUtil.notifyAcs(api, form); } + @Override + public Map issueTaskToAcs3(JSONArray arr) { + JSONArray form = new JSONArray(); + for (Object o : arr) { + JSONObject task = (JSONObject) o; + Boolean is_send = task.getBoolean("is_send"); + String send = "1"; + if (!is_send) send = "0"; + + JSONObject param = new JSONObject(MapOf.of("task_id", task.getString("task_id") + , "task_code", task.getString("task_code") + , "task_group_id", task.getString("task_group_id") + , "start_point_code", task.getString("point_code1") + , "next_point_code", task.getString("point_code2") + , "task_type", task.getString("acs_task_type") + , "priority", task.getString("priority") + , "is_send", send + , "vehicle_code", task.getString("vehicle_code") + , "agv_system_type", task.getString("agv_system_type") + )); + form.add(param); + } + String api = "api/wms/task"; + return AcsUtil.notifyAcs(api, form); + } + @Override public Map cancelToAcs(JSONArray arr) { String api = "api/wms/cancelTask"; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/xml/StIvtStructattrMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/xml/StIvtStructattrMapper.xml index c7707299..ba3211a2 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/xml/StIvtStructattrMapper.xml +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/storage/service/storage/dao/mapper/xml/StIvtStructattrMapper.xml @@ -6,7 +6,7 @@ SELECT a.* FROM - `st_ivt_structattr` a + st_ivt_structattr a INNER JOIN st_ivt_structattr b ON a.struct_id = b.control_code WHERE a.is_used = '1' @@ -29,6 +29,8 @@ and b.sect_id = #{sect_id} + ORDER BY a.struct_code + LIMIT 1 diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/PointListener.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/PointListener.java index c650ff03..c6d7b661 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/PointListener.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/product_manage/sch/PointListener.java @@ -28,7 +28,7 @@ public class PointListener extends AbstraceListener { task.put("task_id", task_id); task.put("task_code", CodeUtil.getNewCode("TASK_CODE")); task.put("task_type", event.getType()); - task.put("acs_task_type", AcsTaskEnum.AGV_SYSTEM_XC.getCode()); + task.put("acs_task_type", event.getAcs_task_type()); task.put("task_status", TaskStatusEnum.CREATED.getCode()); task.put("point_code1", event.getPoint_code1()); task.put("point_code2", event.getPoint_code2()); @@ -43,6 +43,7 @@ public class PointListener extends AbstraceListener { task.put("update_optname", SecurityUtils.getCurrentNickName()); task.put("create_time", DateUtil.now()); task.put("update_time", DateUtil.now()); + task.put("agv_system_type", AcsTaskEnum.AGV_SYSTEM_XC.getCode()); task.put("priority", "1");} taskService.save(task.toJavaObject(SchBaseTask.class)); return task_id; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java index 18466b72..36f3653c 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java @@ -386,6 +386,8 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl().lambda() @@ -586,6 +588,11 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl().lambda() @@ -729,6 +732,11 @@ public class StIvtIostorinvCpServiceImpl extends ServiceImpl().lambda().eq(StIvtIostorinvBcp::getTask_id, task_id)); if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode())) { + // 完成 this.update(new UpdateWrapper().lambda().eq(StIvtIostorinvBcp::getTask_id, task_id) .set(StIvtIostorinvBcp::getWork_status, IOSEnum.WORK_STATUS.code("完成"))); JSONObject mst_jo = new JSONObject(); mst_jo.put("iostorinv_id", mst.getIostorinv_id()); this.confirm(mst_jo); - } else { + } else if (status.equals(AcsTaskEnum.STATUS_START.getCode())) { + // 执行中 this.update(new UpdateWrapper().lambda().eq(StIvtIostorinvBcp::getTask_id, task_id) .set(StIvtIostorinvBcp::getWork_status, IOSEnum.WORK_STATUS.code("执行中"))); + + // 更新任务 + iSchBaseTaskService.update( + new UpdateWrapper().lambda() + .set(SchBaseTask::getTask_status,TaskStatusEnum.EXECUTING.getCode()) + .eq(SchBaseTask::getTask_id,task_id ) + ); + + } else { + // 取消 + delTask(task_id); } } + + private void delTask(String task_id) { + + StIvtIostorinvBcp mstDao = this.getOne( + new QueryWrapper().lambda() + .eq(StIvtIostorinvBcp::getTask_id, task_id) + ); + + // 删除任务 + iSchBaseTaskService.update( + new UpdateWrapper().lambda() + .set(SchBaseTask::getTask_status, TaskStatusEnum.CANCEL.getCode()) + .eq(SchBaseTask::getTask_id, mstDao.getTask_id()) + ); + + // 更新主表 + mstDao.setTask_id(""); + mstDao.setWork_status(IOSEnum.WORK_STATUS.code("未生成")); + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("生成")); + this.updateById(mstDao); + } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/iostorInv/impl/StIvtIostorinvBcpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/iostorInv/impl/StIvtIostorinvBcpServiceImpl.java index fa0fdc54..8c2870e1 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/iostorInv/impl/StIvtIostorinvBcpServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/iostorInv/impl/StIvtIostorinvBcpServiceImpl.java @@ -2,6 +2,9 @@ package org.nl.wms.storage_manage.semimanage.service.iostorInv.impl; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.json.JSONUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -19,10 +22,14 @@ import org.nl.common.utils.MapOf; import org.nl.common.utils.SecurityUtils; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.system.util.CodeUtil; +import org.nl.modules.wql.util.SpringContextHolder; +import org.nl.wms.ext.acs.service.WmsToAcsService; import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtSectattrService; import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtSectattr; import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr; import org.nl.wms.product_manage.sch.manage.TaskStatusEnum; +import org.nl.wms.scheduler_manage.service.task.ISchBaseTaskService; +import org.nl.wms.scheduler_manage.service.task.dao.SchBaseTask; import org.nl.wms.storage_manage.IOSEnum; import org.nl.wms.storage_manage.CHANGE_BILL_TYPE_ENUM; import org.nl.wms.storage_manage.basedata.service.record.dto.StIvtStructivtflowDto; @@ -73,6 +80,8 @@ public class StIvtIostorinvBcpServiceImpl extends ServiceImpl().lambda().eq(StIvtIostorinvBcp::getTask_id, task_id) .set(StIvtIostorinvBcp::getWork_status, IOSEnum.WORK_STATUS.code("执行中"))); - }else { - // + // 更新任务 + iSchBaseTaskService.update( + new UpdateWrapper().lambda() + .set(SchBaseTask::getTask_status,TaskStatusEnum.EXECUTING.getCode()) + .eq(SchBaseTask::getTask_id,task_id ) + ); + }else { + // 取消 + delTask(task_id); } } + private void delTask(String task_id) { + + StIvtIostorinvBcp mstDao = this.getOne( + new QueryWrapper().lambda() + .eq(StIvtIostorinvBcp::getTask_id, task_id) + ); + + // 解锁仓位 + structattrService.update( + new UpdateWrapper().lambda() + .set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定")) + .eq(StIvtStructattr::getStruct_id, mstDao.getStruct_id()) + ); + + // 删除任务 + iSchBaseTaskService.update( + new UpdateWrapper().lambda() + .set(SchBaseTask::getTask_status, TaskStatusEnum.CANCEL.getCode()) + .eq(SchBaseTask::getTask_id, mstDao.getTask_id()) + ); + + // 更新主表 + mstDao.setSect_id(""); + mstDao.setSect_code(""); + mstDao.setSect_name(""); + mstDao.setStruct_id(""); + mstDao.setStruct_code(""); + mstDao.setStruct_name(""); + mstDao.setTask_id(""); + mstDao.setWork_status(IOSEnum.WORK_STATUS.code("未生成")); + mstDao.setBill_status(IOSEnum.BILL_STATUS.code("生成")); + this.updateById(mstDao); + } + + public void sendTask(String task_id) { + + SchBaseTask taskDao = iSchBaseTaskService.getById(task_id); + JSONArray param = new JSONArray(); + param.add(JSON.parseObject(JSONUtil.toJsonStr(taskDao))); + // 1.下发任务 + WmsToAcsService bean = SpringContextHolder.getBean(WmsToAcsService.class); + bean.issueTaskToAcs3(param); + + // 2.更新任务状态 + taskDao.setTask_status(TaskStatusEnum.ISSUE.getCode()); + iSchBaseTaskService.updateById(taskDao); + } + } From 391a6a11bab8fba9e5396c5f1cda06ed53555290 Mon Sep 17 00:00:00 2001 From: gengby <858962040@qq.com> Date: Wed, 14 Jun 2023 20:26:48 +0800 Subject: [PATCH 4/4] =?UTF-8?q?add=20ndc=E5=8F=8D=E9=A6=88smart200?= =?UTF-8?q?=E9=A9=B1=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../auto/run/NDCSocketConnectionAutoRun.java | 2 +- .../run/OneNDCSocketConnectionAutoRun.java | 2 +- .../agv/ndctwo/AgvNdcTwoDeviceDriver.java | 78 +++++++++++++++++++ .../HailiangOldSpecialDeviceDriver.java | 18 +++-- ...iangOldSpecialPourStationDeviceDriver.java | 2 +- .../HailiangSpecialDeviceDriver.java | 3 +- ...ailiangSpecialPourStationDeviceDriver.java | 4 +- .../wms/service/impl/AcsToWmsServiceImpl.java | 34 ++++---- .../wms/service/impl/WmsToAcsServiceImpl.java | 6 +- .../service/impl/InstructionServiceImpl.java | 2 +- 10 files changed, 119 insertions(+), 32 deletions(-) diff --git a/wcs/nladmin-system/src/main/java/org/nl/acs/auto/run/NDCSocketConnectionAutoRun.java b/wcs/nladmin-system/src/main/java/org/nl/acs/auto/run/NDCSocketConnectionAutoRun.java index 352ae782..8e594e87 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/acs/auto/run/NDCSocketConnectionAutoRun.java +++ b/wcs/nladmin-system/src/main/java/org/nl/acs/auto/run/NDCSocketConnectionAutoRun.java @@ -69,7 +69,7 @@ public class NDCSocketConnectionAutoRun extends AbstractAutoRunnable { String ip = paramService.findByCode(AcsConfig.AGVURL).getValue(); int port = Integer.parseInt(paramService.findByCode(AcsConfig.AGVPORT).getValue()); socket = new Socket(ip, port); - byte[] bytes = new byte[1024]; + byte[] bytes = new byte[256]; dos = new DataOutputStream(socket.getOutputStream()); dis = new DataInputStream(socket.getInputStream()); int len; diff --git a/wcs/nladmin-system/src/main/java/org/nl/acs/auto/run/OneNDCSocketConnectionAutoRun.java b/wcs/nladmin-system/src/main/java/org/nl/acs/auto/run/OneNDCSocketConnectionAutoRun.java index 882055cc..85f50117 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/acs/auto/run/OneNDCSocketConnectionAutoRun.java +++ b/wcs/nladmin-system/src/main/java/org/nl/acs/auto/run/OneNDCSocketConnectionAutoRun.java @@ -68,7 +68,7 @@ public class OneNDCSocketConnectionAutoRun extends AbstractAutoRunnable { socket = new Socket(ip, port); dos = new DataOutputStream(socket.getOutputStream()); dis = new DataInputStream(socket.getInputStream()); - byte[] bytes = new byte[1024]; + byte[] bytes = new byte[256]; int count; int[] arr; StringBuffer bs; diff --git a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java index 01f940a6..cb43a941 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java +++ b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java @@ -13,6 +13,10 @@ import org.nl.acs.device.service.DeviceService; import org.nl.acs.device_driver.DeviceDriver; import org.nl.acs.device_driver.basedriver.hailiang_one.hailiang_auto_cache_line.HailiangAutoCacheLineDeviceDriver; import org.nl.acs.device_driver.basedriver.hailiang_one.hailiang_cleaning_machine_storage_station.HailiangCleaningMachineStorageStationDeviceDriver; +import org.nl.acs.device_driver.basedriver.hailiang_one.hailiang_old_special_empty_station.HailiangOldSpecialEmptyStationDeviceDriver; +import org.nl.acs.device_driver.basedriver.hailiang_one.hailiang_old_special_full_station.HailiangOldSpecialFullStationDefination; +import org.nl.acs.device_driver.basedriver.hailiang_one.hailiang_old_special_full_station.HailiangOldSpecialFullStationDeviceDriver; +import org.nl.acs.device_driver.basedriver.hailiang_one.hailiang_old_special_pour_station.HailiangOldSpecialPourStationDeviceDriver; import org.nl.acs.device_driver.basedriver.hailiang_one.hailiang_special_empty_station.HailiangSpecialEmptyStationDeviceDriver; import org.nl.acs.device_driver.basedriver.hailiang_one.hailiang_special_full_station.HailiangSpecialFullStationDeviceDriver; import org.nl.acs.device_driver.basedriver.hailiang_one.hailiang_special_pour_station.HailiangSpecialPourStationDeviceDriver; @@ -99,6 +103,12 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic HailiangSpecialEmptyStationDeviceDriver hailiangSpecialEmptyStationDeviceDriver; //海亮专机设备满框位 HailiangSpecialFullStationDeviceDriver hailiangSpecialFullStationDeviceDriver; + //海亮smart200专机满料位 + HailiangOldSpecialFullStationDeviceDriver hailiangOldSpecialFullStationDeviceDriver; + //海亮smarrt200专机空料位 + HailiangOldSpecialEmptyStationDeviceDriver hailiangOldSpecialEmptyStationDeviceDriver; + //海亮smart200专机倒料位 + HailiangOldSpecialPourStationDeviceDriver hailiangOldSpecialPourStationDeviceDriver; //海亮专机设备倒料位 HailiangSpecialPourStationDeviceDriver hailiangSpecialPourStationDeviceDriver; //自动缓存线 @@ -142,6 +152,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialFullStationDeviceDriver = (HailiangSpecialFullStationDeviceDriver) device.getDeviceDriver(); hailiangSpecialFullStationDeviceDriver.set(phase, index, inst); } + if (device.getDeviceDriver() instanceof HailiangOldSpecialFullStationDeviceDriver) { + log.info("开始设置phase值,到达取货点1,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); + hailiangOldSpecialFullStationDeviceDriver = (HailiangOldSpecialFullStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialFullStationDeviceDriver.set(phase, index, inst); + } if (device.getDeviceDriver() instanceof HailiangAutoCacheLineDeviceDriver) { log.info("开始设置phase值,到达出缓存线取满框点1,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); hailiangAutoCacheLineDeviceDriver = (HailiangAutoCacheLineDeviceDriver) device.getDeviceDriver(); @@ -179,6 +194,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialFullStationDeviceDriver = (HailiangSpecialFullStationDeviceDriver) device.getDeviceDriver(); hailiangSpecialFullStationDeviceDriver.set(phase, index, inst); } + if (device.getDeviceDriver() instanceof HailiangOldSpecialFullStationDeviceDriver) { + log.info("开始设置phase值,取货点1取货完成,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); + hailiangOldSpecialFullStationDeviceDriver = (HailiangOldSpecialFullStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialFullStationDeviceDriver.set(phase, index, inst); + } //入缓存线任务的起点有专机满料位 出缓存的起点是缓存线 if (device.getDeviceDriver() instanceof HailiangAutoCacheLineDeviceDriver) { log.info("开始设置phase值,缓存线取满框点1取货完成,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); @@ -217,6 +237,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialFullStationDeviceDriver = (HailiangSpecialFullStationDeviceDriver) device.getDeviceDriver(); hailiangSpecialFullStationDeviceDriver.set(phase, index, inst); } + if (device.getDeviceDriver() instanceof HailiangOldSpecialFullStationDeviceDriver) { + log.info("开始设置phase值,到达取货点2,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); + hailiangOldSpecialFullStationDeviceDriver = (HailiangOldSpecialFullStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialFullStationDeviceDriver.set(phase, index, inst); + } if (device.getDeviceDriver() instanceof HailiangAutoCacheLineDeviceDriver) { log.info("开始设置phase值,到达出缓存线取满框点2,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); hailiangAutoCacheLineDeviceDriver = (HailiangAutoCacheLineDeviceDriver) device.getDeviceDriver(); @@ -253,6 +278,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialFullStationDeviceDriver = (HailiangSpecialFullStationDeviceDriver) device.getDeviceDriver(); hailiangSpecialFullStationDeviceDriver.set(phase, index, inst); } + if (device.getDeviceDriver() instanceof HailiangOldSpecialFullStationDeviceDriver) { + log.info("开始设置phase值,取货点2取货完成,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); + hailiangOldSpecialFullStationDeviceDriver = (HailiangOldSpecialFullStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialFullStationDeviceDriver.set(phase, index, inst); + } if (device.getDeviceDriver() instanceof HailiangAutoCacheLineDeviceDriver) { log.info("开始设置phase值,出缓存线取满框点2取货完成,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); hailiangAutoCacheLineDeviceDriver = (HailiangAutoCacheLineDeviceDriver) device.getDeviceDriver(); @@ -325,6 +355,12 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialPourStationDeviceDriver.set(phase, index, inst); break; } + if (device.getDeviceDriver() instanceof HailiangOldSpecialPourStationDeviceDriver) { + log.info("开始设置phase值,到达倒料点1,设备号:{}", device_code); + hailiangOldSpecialPourStationDeviceDriver = (HailiangOldSpecialPourStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialPourStationDeviceDriver.set(phase, index, inst); + break; + } if (device.getDeviceDriver() instanceof HailiangCleaningMachineStorageStationDeviceDriver) { log.info("开始设置phase值,到达倒料点1,设备号:{}", device_code); hailiangCleaningMachineStorageStationDeviceDriver = (HailiangCleaningMachineStorageStationDeviceDriver) device.getDeviceDriver(); @@ -397,6 +433,12 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialPourStationDeviceDriver.set(phase, index, inst); break; } + if (device.getDeviceDriver() instanceof HailiangOldSpecialPourStationDeviceDriver) { + log.info("开始设置phase值,倒料点1倒料完毕,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); + hailiangOldSpecialPourStationDeviceDriver = (HailiangOldSpecialPourStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialPourStationDeviceDriver.set(phase, index, inst); + break; + } if (device.getDeviceDriver() instanceof HailiangCleaningMachineStorageStationDeviceDriver) { log.info("开始设置phase值,倒料点1倒料完毕,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); hailiangCleaningMachineStorageStationDeviceDriver = (HailiangCleaningMachineStorageStationDeviceDriver) device.getDeviceDriver(); @@ -468,6 +510,12 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialPourStationDeviceDriver.set(phase, index, inst); break; } + if (device.getDeviceDriver() instanceof HailiangOldSpecialPourStationDeviceDriver) { + log.info("开始设置phase值,到达倒料点2,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); + hailiangOldSpecialPourStationDeviceDriver = (HailiangOldSpecialPourStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialPourStationDeviceDriver.set(phase, index, inst); + break; + } if (device.getDeviceDriver() instanceof HailiangCleaningMachineStorageStationDeviceDriver) { log.info("开始设置phase值,到达倒料点2,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); hailiangCleaningMachineStorageStationDeviceDriver = (HailiangCleaningMachineStorageStationDeviceDriver) device.getDeviceDriver(); @@ -668,6 +716,12 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialPourStationDeviceDriver.set(phase, index, inst); break; } + if (device.getDeviceDriver() instanceof HailiangOldSpecialPourStationDeviceDriver) { + log.info("开始设置phase值,倒料点2倒料完毕,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); + hailiangOldSpecialPourStationDeviceDriver = (HailiangOldSpecialPourStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialPourStationDeviceDriver.set(phase, index, inst); + break; + } if (device.getDeviceDriver() instanceof HailiangCleaningMachineStorageStationDeviceDriver) { log.info("开始设置phase值,倒料点2倒料完毕,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); hailiangCleaningMachineStorageStationDeviceDriver = (HailiangCleaningMachineStorageStationDeviceDriver) device.getDeviceDriver(); @@ -707,6 +761,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialEmptyStationDeviceDriver = (HailiangSpecialEmptyStationDeviceDriver) device.getDeviceDriver(); hailiangSpecialEmptyStationDeviceDriver.set(phase, index, inst); } + if (device.getDeviceDriver() instanceof HailiangOldSpecialEmptyStationDeviceDriver) { + log.info("开始设置phase值,到达还空框1,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); + hailiangOldSpecialEmptyStationDeviceDriver = (HailiangOldSpecialEmptyStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialEmptyStationDeviceDriver.set(phase, index, inst); + } if (device.getDeviceDriver() instanceof HailiangAutoCacheLineDeviceDriver) { log.info("开始设置phase值,缓存线出库,还空框1完成,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); hailiangAutoCacheLineDeviceDriver = (HailiangAutoCacheLineDeviceDriver) device.getDeviceDriver(); @@ -745,6 +804,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialEmptyStationDeviceDriver = (HailiangSpecialEmptyStationDeviceDriver) device.getDeviceDriver(); hailiangSpecialEmptyStationDeviceDriver.set(phase, index, inst); } + if (device.getDeviceDriver() instanceof HailiangOldSpecialEmptyStationDeviceDriver) { + log.info("开始设置phase值,还空框1完成,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); + hailiangOldSpecialEmptyStationDeviceDriver = (HailiangOldSpecialEmptyStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialEmptyStationDeviceDriver.set(phase, index, inst); + } if (device.getDeviceDriver() instanceof HailiangAutoCacheLineDeviceDriver) { log.info("开始设置phase值,缓存线出库还空框1完成,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); hailiangAutoCacheLineDeviceDriver = (HailiangAutoCacheLineDeviceDriver) device.getDeviceDriver(); @@ -783,6 +847,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialEmptyStationDeviceDriver = (HailiangSpecialEmptyStationDeviceDriver) device.getDeviceDriver(); hailiangSpecialEmptyStationDeviceDriver.set(phase, index, inst); } + if (device.getDeviceDriver() instanceof HailiangOldSpecialEmptyStationDeviceDriver) { + log.info("开始设置phase值,到达还空框2,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); + hailiangOldSpecialEmptyStationDeviceDriver = (HailiangOldSpecialEmptyStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialEmptyStationDeviceDriver.set(phase, index, inst); + } if (device.getDeviceDriver() instanceof HailiangAutoCacheLineDeviceDriver) { log.info("开始设置phase值,缓存线出库到达还空框2,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); hailiangAutoCacheLineDeviceDriver = (HailiangAutoCacheLineDeviceDriver) device.getDeviceDriver(); @@ -821,6 +890,11 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic hailiangSpecialEmptyStationDeviceDriver = (HailiangSpecialEmptyStationDeviceDriver) device.getDeviceDriver(); hailiangSpecialEmptyStationDeviceDriver.set(phase, index, inst); } + if (device.getDeviceDriver() instanceof HailiangOldSpecialEmptyStationDeviceDriver) { + log.info("开始设置phase值,还空框2完成,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); + hailiangOldSpecialEmptyStationDeviceDriver = (HailiangOldSpecialEmptyStationDeviceDriver) device.getDeviceDriver(); + hailiangOldSpecialEmptyStationDeviceDriver.set(phase, index, inst); + } if (device.getDeviceDriver() instanceof HailiangAutoCacheLineDeviceDriver) { log.info("开始设置phase值,缓存线出库还空框2完成,设备号:{},指令号:{}", device_code, inst.getInstruction_code()); hailiangAutoCacheLineDeviceDriver = (HailiangAutoCacheLineDeviceDriver) device.getDeviceDriver(); @@ -853,6 +927,10 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic } //1、得到重量信息 int weight = (arr[18] * 256 + arr[19]) * 10; + if (weight < 0) { + log.info("AGV上报重量小于0不反馈AGV信息,指令号:{}", ikey); + return; + } for (Instruction inst : insts) { //校验agv上报站点编号与指令起始点相同 if (ObjectUtil.isEmpty(inst)) { diff --git a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_old_special_device/HailiangOldSpecialDeviceDriver.java b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_old_special_device/HailiangOldSpecialDeviceDriver.java index a0b0b825..e7a2715d 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_old_special_device/HailiangOldSpecialDeviceDriver.java +++ b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_old_special_device/HailiangOldSpecialDeviceDriver.java @@ -134,6 +134,13 @@ public class HailiangOldSpecialDeviceDriver extends AbstractOpcDeviceDriver impl } if (order_compel_finish != last_order_compel_finish) { + if (order_compel_finish == 1) { + Map map = new LinkedHashMap<>(); + map.put("to_confirm_finished", "1"); + map.put("to_clear", "1"); + map.put("to_order", "0"); + this.writing(map); + } logServer.deviceExecuteLog(this.device_code, "", "", "信号order_compel_finish:" + last_order_compel_finish + "->" + order_compel_finish); } if (order != last_order) { @@ -224,7 +231,7 @@ public class HailiangOldSpecialDeviceDriver extends AbstractOpcDeviceDriver impl } //修改工单状态为自动完成 - if (mode == 1 && finish != last_finish && finish == 1 && order > 0 && now_order_prod_num == order_prod_allnum) { + if (mode == 1 && finish != last_finish && finish == 1 && order_compel_finish != 1 && order > 0 && now_order_prod_num == order_prod_allnum) { ProduceshiftorderDto pdto = produceshiftorderService.findByCodeFromCache(String.valueOf(order)); if (pdto != null) { if (pdto.getOrder_status().equals(WorkerOrderEnum.PRODUCTING.getCode())) { @@ -310,8 +317,9 @@ public class HailiangOldSpecialDeviceDriver extends AbstractOpcDeviceDriver impl // if (!this.getItemProtocol().getIsonline()) { // throw new BadRequestException("设备未开机,开工失败!"); // } + this.writing("to_clear", "1"); Map map = new LinkedHashMap<>(); - map.put("to_clear", "1"); + //map.put("to_clear", "1"); map.put("to_order", dto.getOrder_code()); map.put("to_one_box_num", String.valueOf(dto.getOne_qty())); map.put("to_order_prod_num", dto.getQty().toString()); @@ -327,12 +335,12 @@ public class HailiangOldSpecialDeviceDriver extends AbstractOpcDeviceDriver impl Map map = new LinkedHashMap<>(); if (StrUtil.equals(autoFinish, WorkerOrderEnum.FORCEFINISH.getCode())) { map.put("to_order_compel_finished", "1"); - map.put("to_confirm_finished", "1"); + //map.put("to_confirm_finished", "1"); } else { map.put("to_confirm_finished", "1"); + map.put("to_order", "0"); + map.put("to_clear", "1"); } - map.put("to_order", "0"); - map.put("to_clear", "1"); this.writing(map); } diff --git a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_old_special_pour_station/HailiangOldSpecialPourStationDeviceDriver.java b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_old_special_pour_station/HailiangOldSpecialPourStationDeviceDriver.java index 9f3f29a2..8fbfe754 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_old_special_pour_station/HailiangOldSpecialPourStationDeviceDriver.java +++ b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_old_special_pour_station/HailiangOldSpecialPourStationDeviceDriver.java @@ -219,7 +219,7 @@ public class HailiangOldSpecialPourStationDeviceDriver extends AbstractOpcDevice if (agvphase == 0x0D || agvphase == 0x11) { if (mode == 1 && ObjectUtil.isNotEmpty(inst)) { //下发倒料数量 - this.writing("item_to_pour_num", inst.getQuantity()); + this.writing("to_pour_num", inst.getQuantity()); inst.setExecute_status(InstActionEnum.EXECUTE_PUT_FALL_SEND_FULL_FINISH.getCode()); instructionService.update(inst); if (inst != null) { diff --git a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_special_device/HailiangSpecialDeviceDriver.java b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_special_device/HailiangSpecialDeviceDriver.java index 06e1cad5..6d52e0ce 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_special_device/HailiangSpecialDeviceDriver.java +++ b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_special_device/HailiangSpecialDeviceDriver.java @@ -297,8 +297,9 @@ public class HailiangSpecialDeviceDriver extends AbstractOpcDeviceDriver impleme // if (!this.getItemProtocol().getIsonline()) { // throw new BadRequestException("设备未开机,开工失败!"); // } + this.writing("to_clear", "1"); Map map = new LinkedHashMap<>(); - map.put("to_clear", "1"); + //map.put("to_clear", "1"); map.put("to_order", dto.getOrder_code()); map.put("to_one_box_num", String.valueOf(dto.getOne_qty())); map.put("to_order_prod_num", dto.getQty().toString()); diff --git a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_special_pour_station/HailiangSpecialPourStationDeviceDriver.java b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_special_pour_station/HailiangSpecialPourStationDeviceDriver.java index ee150f9d..47a657f9 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_special_pour_station/HailiangSpecialPourStationDeviceDriver.java +++ b/wcs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/hailiang_one/hailiang_special_pour_station/HailiangSpecialPourStationDeviceDriver.java @@ -170,7 +170,7 @@ public class HailiangSpecialPourStationDeviceDriver extends AbstractOpcDeviceDri message = "未联机"; //有报警 } else { - this.setIsonline(true); + //this.setIsonline(true); this.setIserror(false); message = ""; @@ -221,7 +221,7 @@ public class HailiangSpecialPourStationDeviceDriver extends AbstractOpcDeviceDri if (agvphase == 0x0D || agvphase == 0x11) { //下发电气倒料数量 if (mode == 1 && ObjectUtil.isNotEmpty(inst)) { - this.writing("item_to_pour_num", inst.getQuantity()); + this.writing("to_pour_num", inst.getQuantity()); inst.setExecute_status(InstActionEnum.EXECUTE_PUT_FALL_SEND_FULL_FINISH.getCode()); instructionService.update(inst); if (inst != null) { diff --git a/wcs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java b/wcs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java index d1bea396..97ea8fbd 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java +++ b/wcs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java @@ -50,7 +50,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { .header("Authorization", token) .body(JSON.toJSONString(param)) .execute(); - log.info("acs向wms请求任务成功,请求路径:{},请求参数:{},响应参数:{}", url, JSON.toJSONString(param), JSON.toJSONString(result)); + log.info("acs向wms请求任务成功,请求路径:{},请求参数:{},响应参数:{}", url, JSON.toJSONString(param), result.body()); } catch (Exception e) { log.error("acs向wms请求任务失败,请求路径:{},请求参数:{},失败原因:{}", url, JSON.toJSONString(param), e.getMessage()); } @@ -64,10 +64,10 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { @Override public HttpResponse feedbackTaskStatusToWms(JSONArray data) { - log.info("acs开始向mes反馈任务状态,请求参数:{}", JSON.toJSONString(data)); try { MDC.put(log_file_type, log_type); if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { + log.info("acs开始向mes反馈任务状态,请求参数:{}", JSON.toJSONString(data)); String wmsurl = paramService.findByCode(AcsConfig.WMSURL).getValue(); AddressDto addressDto = addressService.findByCode("feedbackTaskStatusToWms"); String methods_url = addressDto.getMethods_url(); @@ -78,7 +78,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { .header("Authorization", token) .body(JSON.toJSONString(data)) .execute(); - log.info("acs向mes反馈任务状态成功,请求路径:{},请求参数:{},响应参数:{}", url, JSON.toJSONString(data), JSON.toJSONString(result)); + log.info("acs向mes反馈任务状态成功,请求路径:{},请求参数:{},响应参数:{}", url, JSON.toJSONString(data), result.body()); } catch (Exception e) { log.error("acs向mes反馈任务状态失败,请求路径:{},请求参数:{},失败原因:{}", url, JSON.toJSONString(data), e.getMessage()); } @@ -93,10 +93,10 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { @Override public HttpResponse feedbackOrderStatus(JSONObject param) { - log.info("acs开始向mes反馈工单状态,请求参数:{}", JSON.toJSONString(param)); try { MDC.put(log_file_type, log_type); if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { + log.info("acs开始向mes反馈工单状态,请求参数:{}", JSON.toJSONString(param)); String wmsurl = paramService.findByCode(AcsConfig.WMSURL).getValue(); AddressDto addressDto = addressService.findByCode("feedbackOrderStatus"); String methods_url = addressDto.getMethods_url(); @@ -106,7 +106,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { result = HttpRequest.post(url) .body(JSON.toJSONString(param)) .execute(); - log.info("acs向mes反馈工单状态成功,请求路径:{},请求参数:{},响应参数:{}", url, JSON.toJSONString(param), JSON.toJSONString(result.body())); + log.info("acs向mes反馈工单状态成功,请求路径:{},请求参数:{},响应参数:{}", url, JSON.toJSONString(param), result.body()); } catch (Exception e) { log.error("acs向mes反馈工单状态失败,请求路径:{},请求参数:{},失败原因:{}", url, JSON.toJSONString(param), e.getMessage()); } @@ -133,7 +133,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { result = HttpRequest.post(url) .body(JSON.toJSONString(param)) .execute(); - log.info("acs向mes反馈设备状态成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(param), url, JSON.toJSONString(result)); + log.info("acs向mes反馈设备状态成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(param), url, result.body()); } catch (Exception e) { log.error("acs向mes反馈设备状态失败,请求参数:{},请求路径:{},失败原因:{}", JSON.toJSONString(param), url, e.getMessage()); } @@ -151,7 +151,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { try { MDC.put(log_file_type, log_type); if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { - log.info("acs开始向mes反馈当前设备工单生产数量,请求参数:{}", JSON.toJSONString(param)); + //log.info("acs开始向mes反馈当前设备工单生产数量,请求参数:{}", JSON.toJSONString(param)); String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); AddressDto addressDto = addressService.findByCode("feedOrderRealQty"); String methods_url = addressDto.getMethods_url(); @@ -162,7 +162,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { .post(url) .body(JSON.toJSONString(param)) .execute(); - log.info("acs向mes反馈当前设备工单生产数量成功,请求路径:{},请求参数:{},响应参数:{}", url, JSON.toJSONString(param), JSON.toJSONString(result)); + //log.info("acs向mes反馈当前设备工单生产数量成功,请求路径:{},请求参数:{},响应参数:{}", url, JSON.toJSONString(param), JSON.toJSONString(result)); } catch (Exception e) { log.error("acs向mes反馈当前设备工单生产数量失败,请求路径:{},请求参数:{},失败原因:{}", url, JSON.toJSONString(param), e.getMessage()); } @@ -179,7 +179,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { try { MDC.put(log_file_type, log_type); if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { - log.info("acs开始向mes反馈设备数量,请求参数:{}", JSON.toJSONString(map)); + //log.info("acs开始向mes反馈设备数量,请求参数:{}", JSON.toJSONString(map)); String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); AddressDto addressDto = addressService.findByCode("feedDeviceNum"); String methods_url = addressDto.getMethods_url(); @@ -189,7 +189,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { result = HttpRequest.post(url) .body(JSON.toJSONString(map)) .execute(); - log.info("acs向mes反馈设备设备数量成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(map), url, JSON.toJSONString(result)); + //log.info("acs向mes反馈设备设备数量成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(map), url, JSON.toJSONString(result)); } catch (Exception e) { log.error("acs向mes反馈设备数量失败,请求参数:{},请求路径:{},失败原因:{}", JSON.toJSONString(map), url, e.getMessage()); } @@ -206,7 +206,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { try { MDC.put(log_file_type, log_type); if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { - log.info("acs开始向mes反馈储料仓重量和数量,请求参数:{}", JSON.toJSONString(map)); + //log.info("acs开始向mes反馈储料仓重量和数量,请求参数:{}", JSON.toJSONString(map)); String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); AddressDto addressDto = addressService.findByCode("feedDeviceNum2"); String methods_url = addressDto.getMethods_url(); @@ -216,7 +216,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { result = HttpRequest.post(url) .body(JSON.toJSONString(map)) .execute(); - log.info("acs向mes反馈储料仓重量和数量成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(map), url, JSON.toJSONString(result)); + //log.info("acs向mes反馈储料仓重量和数量成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(map), url, JSON.toJSONString(result)); } catch (Exception e) { log.error("acs向mes反馈储料仓重量和数量失败,请求参数:{},请求路径:{},失败原因:{}", JSON.toJSONString(map), url, e.getMessage()); } @@ -243,7 +243,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { result = HttpRequest.post(url) .body(JSON.toJSONString(map)) .execute(); - log.info("acs向mes申请扫码器任务成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(map), url, JSON.toJSONString(result)); + log.info("acs向mes申请扫码器任务成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(map), url, result.body()); } catch (Exception e) { log.error("acs向mes申请扫码器任务失败,请求参数:{},请求路径:{},失败原因:{}", JSON.toJSONString(map), url, e.getMessage()); } @@ -260,7 +260,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { try { MDC.put(log_file_type, log_type); if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { - log.info("acs开始向mes反馈缓存线条码,请求参数:{}", JSON.toJSONString(map)); + //log.info("acs开始向mes反馈缓存线条码,请求参数:{}", JSON.toJSONString(map)); String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); AddressDto addressDto = addressService.findByCode("feedCacheLineBarcodes"); String methods_url = addressDto.getMethods_url(); @@ -270,7 +270,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { result = HttpRequest.post(url) .body(JSON.toJSONString(map)) .execute(); - log.info("acs向mes反馈缓存线条码成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(map), url, JSON.toJSONString(result)); + //log.info("acs向mes反馈缓存线条码成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(map), url, JSON.toJSONString(result)); } catch (Exception e) { log.error("acs向mes反馈缓存线条码失败,请求参数:{},请求路径:{},失败原因:{}", JSON.toJSONString(map), url, e.getMessage()); } @@ -287,7 +287,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { try { MDC.put(log_file_type, log_type); if (StrUtil.equals(paramService.findByCode(AcsConfig.HASWMS).getValue(), "1")) { - log.info("acs开始向mes反馈缓存线任务号,请求参数:{}", JSON.toJSONString(param)); + //log.info("acs开始向mes反馈缓存线任务号,请求参数:{}", JSON.toJSONString(param)); String wmsUrl = paramService.findByCode(AcsConfig.WMSURL).getValue(); AddressDto addressDto = addressService.findByCode("feedCacheLineTask"); String methods_url = addressDto.getMethods_url(); @@ -297,7 +297,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { result = HttpRequest.post(url) .body(JSON.toJSONString(param)) .execute(); - log.info("acs向mes反馈缓存线任务号成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(param), url, JSON.toJSONString(result)); + //log.info("acs向mes反馈缓存线任务号成功,请求参数:{},请求路径:{},响应参数:{}", JSON.toJSONString(param), url, JSON.toJSONString(result)); } catch (Exception e) { log.error("acs向mes反馈缓存线任务号失败,请求参数:{},请求路径:{},失败原因:{}", JSON.toJSONString(param), url, e.getMessage()); } diff --git a/wcs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java b/wcs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java index cbcbf7b8..95c011f0 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java +++ b/wcs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java @@ -100,7 +100,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { if (StrUtil.isEmpty(task_group_id)) { JSONObject json = new JSONObject(); json.put("task_id", task_id); - json.put("message", "任务关联编号"); + json.put("message", "任务关联编号不能为空"); errArr.add(json); continue; } @@ -210,7 +210,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { resultJson.put("status", 400); } resultJson.put("errArr", errArr); - resultJson.put("message", errArr.size() > 0 ? "存在下发未成功的任务!" : "下发成功!"); + resultJson.put("message", errArr.size() > 0 ? "存在下发未成功的任务!" + JSON.toJSONString(errArr) : "下发成功!"); resultJson.put("data", new JSONObject()); log.info("createFromWms--------------:输出参数:" + resultJson.toString()); } catch (Exception e) { @@ -711,7 +711,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { if (code.equals("to_start_checking")) { hailiangAutoCacheLineDeviceDriver.writing("to_task", "1001"); } - if (code.equals("to_check_finish")){ + if (code.equals("to_check_finish")) { hailiangAutoCacheLineDeviceDriver.writing("to_task", "0"); } } diff --git a/wcs/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java b/wcs/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java index 142b7f17..4cce4820 100644 --- a/wcs/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java +++ b/wcs/nladmin-system/src/main/java/org/nl/acs/instruction/service/impl/InstructionServiceImpl.java @@ -1448,7 +1448,7 @@ public class InstructionServiceImpl implements InstructionService, ApplicationAu // } } if (next_device != null && next_device.getDeviceDriver() instanceof RemoveDevicePhase) { - removeDevicePhase = (RemoveDevicePhase) put_device.getDeviceDriver(); + removeDevicePhase = (RemoveDevicePhase) next_device.getDeviceDriver(); removeDevicePhase.set(0, 0, null); } }