From 1ee9d7362bee81636ea321ce63fa3e54c0e800c6 Mon Sep 17 00:00:00 2001 From: zhangzhiqiang Date: Sun, 23 Apr 2023 14:04:45 +0800 Subject: [PATCH] =?UTF-8?q?rev:=E4=BF=AE=E6=94=B9=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/nl/common/ConstantParam.java | 2 +- .../java/org/nl/common/enums/StatusEnum.java | 3 + .../org/nl/common/utils/RedissonUtils.java | 3 +- .../org/nl/modules/system/util/CodeUtil.java | 8 +- .../impl/StoragevehicleinfoServiceImpl.java | 39 ++----- .../org/nl/wms/basedata/master/wql/mdpb.xls | Bin 192512 -> 193024 bytes .../java/org/nl/wms/basedata/st/wql/stivt.xls | Bin 225792 -> 227328 bytes .../wms/ext/acs/rest/AcsToWmsController.java | 3 - .../acs/service/impl/AcsToWmsServiceImpl.java | 78 +++++++------- .../ext/acs/service/impl/AgvInstService.java | 28 +---- .../nl/wms/sch/tasks/SpeMachineryTask.java | 68 ++++++------ .../nl/wms/sch/tasks/WashMachineryTask.java | 78 +++++++------- .../java/org/nl/wms/sch/wql/sch_point.wql | 4 +- .../in/service/impl/ProductInServiceImpl.java | 98 +++++++++++------- .../nl/wms/st/wql/QST_IVT_PRODUCTIN_01.wql | 3 +- .../org/nl/wms/st/wql/QST_IVT_STORPUBLIC.wql | 4 +- .../wms/basedata/pdm/workProcedure/index.vue | 2 +- .../views/wms/cacheline/position/index.vue | 21 ++-- .../src/views/wms/cacheline/vehicle/index.vue | 6 +- .../src/views/wms/mps/produce/ViewDialog.vue | 6 +- mes/qd/src/views/wms/mps/produce/index.vue | 8 +- mes/qd/src/views/wms/pdm/device/index.vue | 40 +++---- mes/qd/src/views/wms/pub/StructDialog.vue | 3 +- mes/qd/src/views/wms/sch/point/index.vue | 5 +- mes/qd/src/views/wms/sch/region/index.vue | 8 +- mes/qd/src/views/wms/sch/task/index.vue | 26 ++--- .../src/views/wms/st/productIn/AddDialog.vue | 17 ++- .../src/views/wms/st/productIn/DivDialog.vue | 30 ++++-- .../src/views/wms/st/productIn/ViewDialog.vue | 3 +- mes/qd/src/views/wms/st/productIn/index.vue | 6 +- .../src/views/wms/st/productOut/AddDialog.vue | 23 ++-- .../src/views/wms/st/productOut/DivDialog.vue | 8 +- .../views/wms/st/productOut/ViewDialog.vue | 2 +- mes/qd/src/views/wms/st/productOut/index.vue | 5 +- .../views/wms/st/semiProductIn/AddDialog.vue | 4 +- .../views/wms/st/semiProductIn/ViewDialog.vue | 2 +- .../src/views/wms/st/semiProductIn/index.vue | 8 +- .../views/wms/st/semiProductOut/AddDialog.vue | 22 ++-- .../views/wms/st/semiProductOut/DivDialog.vue | 8 +- .../wms/st/semiProductOut/ViewDialog.vue | 2 +- .../src/views/wms/st/semiProductOut/index.vue | 4 +- 41 files changed, 338 insertions(+), 350 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/common/ConstantParam.java b/mes/hd/nladmin-system/src/main/java/org/nl/common/ConstantParam.java index 77874934..b110bde0 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/common/ConstantParam.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/common/ConstantParam.java @@ -6,7 +6,7 @@ package org.nl.common; */ public class ConstantParam { //深坑清洗区域编码 - public static String SK_REGION = "QSQX"; + public static String SK_REGION = "A1_SKQX"; //发货区编码 public static String FHQ = "KQ001"; public static String RK_POINT = "A1_RK01"; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/StatusEnum.java b/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/StatusEnum.java index 69e439a3..5545b9e6 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/StatusEnum.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/StatusEnum.java @@ -69,6 +69,9 @@ public enum StatusEnum { IOS_CREATE("01","生成",""), IOS_RUNNING("02","执行中",""), IOS_FINISH("99","完成",""), + //载具超限 + OVERSTRUCT_STANDARD("1","标准",""), + OVERSTRUCT_LIMIT("2","超限",""), ; private String code; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/common/utils/RedissonUtils.java b/mes/hd/nladmin-system/src/main/java/org/nl/common/utils/RedissonUtils.java index eb103b37..579487cd 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/common/utils/RedissonUtils.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/common/utils/RedissonUtils.java @@ -8,6 +8,7 @@ import org.redisson.api.RLock; import org.redisson.api.RedissonClient; import java.util.concurrent.TimeUnit; +import java.util.function.Supplier; /* * @author ZZQ @@ -21,7 +22,7 @@ public class RedissonUtils { * @param seconds 尝试获取锁的等待时间,允许为空 */ @SneakyThrows - public static void lock(LockProcess process, String key, Integer seconds){ + public static void lock(LockProcess process, String key, Integer seconds){ RedissonClient redissonClient = SpringContextHolder.getBean(RedissonClient.class); RLock lock = redissonClient.getLock(key); boolean isLock; 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..22aaaac9 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 @@ -9,15 +9,11 @@ import java.util.HashMap; public class CodeUtil{ public static String getNewCode(String ruleCode) { - final String[] code = {""}; + HashMap map = new HashMap<>(); map.put("flag", "1"); map.put("code", ruleCode); GenCodeService service = SpringContextHolder.getBean(GenCodeServiceImpl.class); - String codeId = service.queryIdByCode(ruleCode); - RedissonUtils.lock(() -> { - code[0] = service.codeDemo(map); - }, codeId, 3); - return code[0]; + return service.codeDemo(map); } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/master/service/impl/StoragevehicleinfoServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/master/service/impl/StoragevehicleinfoServiceImpl.java index 98a176c4..c3b2ae17 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/master/service/impl/StoragevehicleinfoServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/master/service/impl/StoragevehicleinfoServiceImpl.java @@ -92,49 +92,24 @@ public class StoragevehicleinfoServiceImpl implements StoragevehicleinfoService if (!ObjectUtil.isEmpty(jsonObject)) { throw new BadRequestException("此载具已存在"); } - String currentUserId = SecurityUtils.getCurrentUserId(); - String nickName = SecurityUtils.getCurrentNickName(); - - - String storagevehicle_type = (String) map.get("storagevehicle_type"); - String code = ""; - switch (storagevehicle_type) { - case "00": - code = "VEHICCLE_CODE_XMTPT"; - break; - case "01": - code = "VEHICCLE_CODE_CDMTP"; - break; - case "02": - code = "VEHICCLE_CODE_TLD"; - break; - case "03": - code = "VEHICCLE_CODE_TTP"; - break; - case "04": - code = "VEHICCLE_CODE_XMTPC"; - break; - case "05": - code = "VEHICCLE_CODE_LX"; - break; - } JSONArray resultCodeArr = new JSONArray(); int num = MapUtil.getInt(map, "num"); for (int i = 0; i < num; i++) { StoragevehicleinfoDto dto = new StoragevehicleinfoDto(); dto.setStoragevehicle_id(IdUtil.getSnowflake(1, 1).nextId()); - dto.setStoragevehicle_code(CodeUtil.getNewCode(code)); - dto.setCreate_id(currentUserId); + dto.setStoragevehicle_code((String) map.get("storagevehicle_code")); + dto.setCreate_id(SecurityUtils.getCurrentUserId()); dto.setStoragevehicle_name(dto.getStoragevehicle_code()); - dto.setCreate_name(nickName); - dto.setUpdate_id(currentUserId); - dto.setUpdate_name(nickName); + dto.setCreate_name(SecurityUtils.getCurrentNickName()); + dto.setUpdate_id(SecurityUtils.getCurrentUserId()); + dto.setUpdate_name(SecurityUtils.getCurrentNickName()); dto.setUpdate_time(DateUtil.now()); dto.setCreate_time(DateUtil.now()); + dto.setOverstruct_type((String) map.get("overstruct_type")); dto.setStoragevehicle_type((String) map.get("storagevehicle_type")); JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto)); wo.insert(json); - resultCodeArr.add(dto.getStoragevehicle_code()); + resultCodeArr.add(dto); } return resultCodeArr; } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/mdpb.xls b/mes/hd/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/mdpb.xls index 52df3b8617ed429b5ce9260449299ece164ec667..d7f777ebbbe3b600e3c3defdcf41cba1cee4d4fb 100644 GIT binary patch literal 193024 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

Lw;$)RV}I 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⁣!t1weX>E$1xswro*4C`<=-S?0HVrp@ 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 delta 23610 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 V^5=~-Z)Nw^zBM=ALpDrr{J%GI=sy4e diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java index a8eb0377..be2d0252 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/rest/AcsToWmsController.java @@ -37,9 +37,6 @@ import java.util.Map; @SaIgnore public class AcsToWmsController { private final AcsToWmsService acsToWmsService; - private final SpeMachineryTask speMachineryTask; - private final CacheLineHandService cacheLineHandService; - private final TaskScheduleService taskScheduleService; private final WashMachineryTask washMachineryTask; @PostMapping("/apply") 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 9e63bbde..83e9919d 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 @@ -17,8 +17,10 @@ import org.nl.common.utils.MapOf; import org.nl.common.utils.RedissonUtils; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.core.bean.WQLObject; +import org.nl.modules.wql.util.SpringContextHolder; import org.nl.wms.ext.acs.service.AcsToWmsService; import org.nl.wms.pda.service.CacheLineHandService; +import org.nl.wms.sch.manage.AbstractAcsTask; import org.nl.wms.sch.service.TaskService; import org.nl.wms.sch.service.dto.TaskDto; import org.nl.wms.sch.tasks.SpeMachineryTask; @@ -27,6 +29,7 @@ import org.nl.wms.sch.tasks.callMaterial.WrapCallMaterialTask; import org.nl.wms.sch.tasks.sendEmpty.WrapSendEmptyTask; import org.nl.wms.sch.tasks.sendMaterial.PlotterSendMaterialTask; import org.nl.wms.sch.tasks.WashMachineryTask; +import org.redisson.api.RLock; import org.redisson.api.RedissonClient; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; @@ -34,59 +37,45 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; +import javax.annotation.PostConstruct; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; +import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.Map; +import java.util.concurrent.TimeUnit; +import java.util.function.Consumer; +import java.util.function.Supplier; @Service -@RequiredArgsConstructor @Slf4j public class AcsToWmsServiceImpl implements AcsToWmsService{ + + private static Map Task_Factory = new HashMap<>(); @Autowired private TaskService taskService; + @Autowired + private CacheLineHandService cacheLineHandService; + + - private final CacheLineHandService cacheLineHandService; - private final SpeMachineryTask speMachineryTask; - private final WashMachineryTask washMachineryTask; - private final PlotterSendMaterialTask plotterSendMaterialTask; - private final PlotterCallEmptyTask plotterCallEmptyTask; - private final WrapCallMaterialTask wrapCallMaterialTask; - private final WrapSendEmptyTask wrapSendEmptyTask; @Override + @Transactional public Map apply(JSONObject param) { + Assert.notNull(param,"请求参数不存在"); Map result = MapOf.of("status", HttpStatus.OK.value(), "message", "ACS向WMS申请任务成功!"); - String type = param.getString("type"); - AcsTaskEnum taskEnum = AcsTaskEnum.getType(type, "REQUEST_"); + AcsTaskEnum taskEnum = AcsTaskEnum.getType(param.getString("type"), "REQUEST_"); + try { + RedissonUtils.lock(() -> { + },"ddd",3); RedissonUtils.lock(()->{ - switch (taskEnum){ - //1.专机设备满料请求 2.专机设备缺料请求:专机 - case REQUEST_CALLTYPE_FULL: case REQUEST_CALLTYPE_EMP: - speMachineryTask.createTask(param); - break; - //清洗机缺料请求: - case REQUEST_WASH_EMP: - washMachineryTask.createTask(param); - break; - case REQUEST_PLOTTER_SEND_FULL: - plotterSendMaterialTask.createTask(param); - break; - case REQUEST_PLOTTER_CALL_EMP: - plotterCallEmptyTask.createTask(param); - break; - case REQUEST_WARP_CALL_FULL: - wrapCallMaterialTask.createTask(param); - break; - case REQUEST_WARP_SEND_EMP: - wrapSendEmptyTask.createTask(param); - break; - default: - throw new BadRequestException("任务请求类型错误!"); - } - },type,5); + //业务处理 + Task_Factory.get(taskEnum).createTask(param); + + },param.getString("type"),5); }catch (Exception ex){ result.put("status", HttpStatus.BAD_REQUEST.value()); result.put("message",ex.getMessage()); @@ -94,6 +83,13 @@ public class AcsToWmsServiceImpl implements AcsToWmsService{ return result; } + public static void main(String[] args) { + ArrayList list = new ArrayList<>(); + list.forEach(a->{ + a.getClass(); + }); + } + /** * 更新缓存线的点位实时任务信息 * ACS给WMS发送缓存线的实时任务编号 @@ -205,7 +201,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService{ public Map washOrderFinish(JSONObject param) { JSONObject result = new JSONObject(); try { - washMachineryTask.updateTaskStatus(param,StatusEnum.TASK_FINISH.getCode()); + SpringContextHolder.getBean(WashMachineryTask.class).updateTaskStatus(param,StatusEnum.TASK_FINISH.getCode()); } catch (Exception e){ result.put("status", 400); result.put("message", e.getMessage()); @@ -322,5 +318,13 @@ public class AcsToWmsServiceImpl implements AcsToWmsService{ wo.update(MapOf.of("real_qty",real_qty),"workorder_id = '"+workorder_id+"'"); } } - + @PostConstruct + public void init() { + Task_Factory.put(AcsTaskEnum.REQUEST_CALLTYPE_FULL, SpringContextHolder.getBean(SpeMachineryTask.class)); + Task_Factory.put(AcsTaskEnum.REQUEST_CALLTYPE_EMP, SpringContextHolder.getBean(SpeMachineryTask.class)); + Task_Factory.put(AcsTaskEnum.REQUEST_WASH_EMP, SpringContextHolder.getBean(WashMachineryTask.class)); + Task_Factory.put(AcsTaskEnum.REQUEST_PLOTTER_SEND_FULL, SpringContextHolder.getBean(PlotterSendMaterialTask.class)); + Task_Factory.put(AcsTaskEnum.REQUEST_WARP_CALL_FULL, SpringContextHolder.getBean(WrapCallMaterialTask.class)); + Task_Factory.put(AcsTaskEnum.REQUEST_WARP_SEND_EMP, SpringContextHolder.getBean(WrapSendEmptyTask.class)); + } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AgvInstService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AgvInstService.java index 3790e1cc..89edd4b5 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AgvInstService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AgvInstService.java @@ -2,41 +2,23 @@ package org.nl.wms.ext.acs.service.impl; import cn.hutool.core.date.DateUtil; import cn.hutool.core.lang.Assert; -import cn.hutool.core.util.StrUtil; import cn.hutool.crypto.digest.MD5; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.nl.common.ConstantParam; -import org.nl.common.enums.AcsTaskEnum; import org.nl.common.enums.StatusEnum; import org.nl.common.utils.MapOf; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; import org.nl.modules.wql.core.bean.WQLObject; import org.nl.utils.PointLockUtils; -import org.nl.wms.sch.tasks.SpeMachineryTask; -import org.redisson.api.RLock; -import org.redisson.api.RReadWriteLock; import org.redisson.api.RedissonClient; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.PlatformTransactionManager; -import org.springframework.transaction.TransactionDefinition; -import org.springframework.transaction.TransactionStatus; -import org.springframework.transaction.support.DefaultTransactionDefinition; -import org.springframework.transaction.support.DefaultTransactionStatus; -import java.lang.reflect.Method; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Iterator; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.locks.Lock; -import java.util.concurrent.locks.ReadWriteLock; -import java.util.concurrent.locks.ReentrantReadWriteLock; -import java.util.function.Function; import java.util.stream.Collectors; /* @@ -90,7 +72,7 @@ public class AgvInstService { JSONObject cacheLine = cacheLineSearch.query("region_code = '"+devicePoint.getString("region_code")+"'").uniqueResult(0); nextPoint = cacheLine.getString("cacheline_code"); //满料请求:查询缓存线空载具列表 - cacheVehile = getCacheVehile(nextPoint, null); + cacheVehile = getEmpCacheVehile(nextPoint, null); if (StringUtils.isBlank(cacheVehile)) { throw new BadRequestException(OPT_NAME+"缓存线:"+nextPoint+"没有可用空载具"); } @@ -118,16 +100,15 @@ public class AgvInstService { WQLObject cacheLineTable = WQLObject.getWQLObject("SCH_cacheLine_region_relation"); WQLObject taskTable = WQLObject.getWQLObject("SCH_base_task"); //参数 - String point_code = task.getString("next_point_code"); String material_id = task.getString("material_id"); - JSONObject devicePoint = basePointTable.query("point_code = '" + point_code + "' and is_delete = 0 and is_used = 1").uniqueResult(0); + JSONObject devicePoint = basePointTable.query("point_code = '" + task.getString("next_point_code") + "' and is_delete = 0 and is_used = 1").uniqueResult(0); JSONObject cacheLine = cacheLineTable.query("region_code = '"+devicePoint.getString("region_code")+"' and is_active = '"+StatusEnum.STATUS_TRUE.getCode()+"'").uniqueResult(0); Assert.notNull(cacheLine, String.format(OPT_NAME+"区域%s对应缓存线信息不存在", devicePoint.getString("region_code"))); //缓存线位置编码 :缺料请求获取缓存线满载具列表 String startPoint = cacheLine.getString("cacheline_code"); - String cacheVehile = getCacheVehile(startPoint, material_id); + String cacheVehile = getEmpCacheVehile(startPoint, material_id); if (StringUtils.isBlank(cacheVehile)) { throw new BadRequestException(OPT_NAME+"缓存线:"+startPoint+"没有可用载具"); } @@ -146,9 +127,8 @@ public class AgvInstService { } - public String getCacheVehile(String cacheLine,String materialId){ + public String getEmpCacheVehile(String cacheLine, String materialId){ WQLObject taskTable = WQLObject.getWQLObject("sch_base_task"); - StringBuffer sql = new StringBuffer("vehicle_status = '"); JSONArray runingTask = taskTable.query("point_code2 = '" + cacheLine + "' and task_status < '" + StatusEnum.TASK_FINISH.getCode() + "'").getResultJSONArray(0); String status = StringUtils.isBlank(materialId) ? StatusEnum.CACHE_VEL_EMT.getCode() : StatusEnum.CACHE_VEL_FULL.getCode(); JSONArray result = WQL.getWO("sch_point").addParamMap(MapOf.of("flag", "6", "vehicle_status", status, "material_id", materialId)).process().getResultJSONArray(0); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SpeMachineryTask.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SpeMachineryTask.java index bfa64e94..9af11adc 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SpeMachineryTask.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SpeMachineryTask.java @@ -2,7 +2,6 @@ package org.nl.wms.sch.tasks; import cn.hutool.core.date.DateUtil; import cn.hutool.core.lang.Assert; -import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; @@ -12,6 +11,7 @@ import org.nl.common.ConstantParam; import org.nl.common.enums.AcsTaskEnum; import org.nl.common.enums.InterfaceLogType; import org.nl.common.enums.StatusEnum; +import org.nl.common.utils.IdUtil; import org.nl.common.utils.MapOf; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.system.util.CodeUtil; @@ -65,29 +65,23 @@ public class SpeMachineryTask extends AbstractAcsTask { @Override public String createTask(JSONObject param) { - WQLObject taskTab = WQLObject.getWQLObject("sch_base_task"); - WQLObject workOrder = WQLObject.getWQLObject("PDM_produce_workOrder"); - String workorder = param.getString("workorder_code");// - String point_code = param.getString("device_code"); - String quantity = param.getString("quantity"); - String type = param.getString("type"); - JSONObject order = workOrder.query("workorder_code = '" + workorder + "' and is_delete = 0 and workorder_status != "+StatusEnum.TASK_FINISH.getCode()).uniqueResult(0); - Assert.notNull(order, String.format("下发工单%s不存在未完成工单", workorder)); + + JSONObject order = WQLObject.getWQLObject("PDM_produce_workOrder").query("workorder_code = '" + param.getString("workorder_code") + "' and is_delete = 0 and workorder_status != "+StatusEnum.TASK_FINISH.getCode()).uniqueResult(0); + Assert.notNull(order, String.format("下发工单%s不存在未完成工单", param.getString("workorder_code"))); JSONObject form = null; - if (AcsTaskEnum.REQUEST_CALLTYPE_FULL.getCode().equals(type)){ - JSONObject empPoint = WQL.getWO("sch_point").addParamMap(MapOf.of("flag", "2", "point_code", point_code, "point_type", StatusEnum.POINT_LOCATION_EMP.getCode())).process().uniqueResult(0); - form = new JSONObject(MapOf.of("start_point_code",point_code, + + if (AcsTaskEnum.REQUEST_CALLTYPE_FULL.getCode().equals(param.getString("type"))){ + JSONObject empPoint = WQL.getWO("sch_point").addParamMap(MapOf.of("flag", "2", "point_code", param.getString("device_code"), "point_type", StatusEnum.POINT_LOCATION_EMP.getCode())).process().uniqueResult(0); + form = new JSONObject(MapOf.of("start_point_code",param.getString("device_code"), "next_point_code","","return_point_code", empPoint,"vehicle_code", - "","product_area","quantity", quantity,order.getString("product_area"),"type",type,"material_id", order.getString("material_id"))); + "","product_area","quantity", param.getString("quantity"),order.getString("product_area"),"type",param.getString("type"),"material_id", order.getString("material_id"))); } - if (AcsTaskEnum.REQUEST_CALLTYPE_EMP.getCode().equals(type)){ + if (AcsTaskEnum.REQUEST_CALLTYPE_EMP.getCode().equals(param.getString("type"))){ form = new JSONObject(MapOf.of("start_point_code","", - "next_point_code",point_code,"return_point_code", "","vehicle_code", - "","product_area","quantity", quantity,order.getString("product_area"),"type",type,"material_id", order.getString("material_id"))); + "next_point_code",param.getString("device_code"),"return_point_code", "","vehicle_code", + "","product_area","quantity", param.getString("quantity"),order.getString("product_area"),"type",param.getString("type"),"material_id", order.getString("material_id"))); } - JSONObject task = new JSONObject(); - String taskdtl_id = IdUtil.getSnowflake(1, 1).nextId() + ""; - packageParam(type, form, task, taskdtl_id); + JSONObject task = packageParam(param.getString("type"), form); WQLObject.getWQLObject("SCH_BASE_Task").insert(task); try { pointConfirm(task); @@ -95,42 +89,40 @@ public class SpeMachineryTask extends AbstractAcsTask { }catch (Exception ex){ task.put("task_status",TaskStatusEnum.SURE_START_ERROR.getCode()); task.put("remark",ex.getMessage()); - taskTab.update(task); + WQLObject.getWQLObject("sch_base_task").update(task); } - return taskdtl_id; + return task.getString("task_id"); } - private void packageParam(String type, JSONObject form, JSONObject task, String taskdtl_id) { + private JSONObject packageParam(String type, JSONObject reqestPram) { + JSONObject task = new JSONObject(); 参数封装:{ - String task_name = form.getString("task_name"); - String start_point_code = form.getString("point_code1"); - String next_point_code = form.getString("point_code2"); - String vehicle_code = form.getString("vehicle_code"); - String vehicle_code2 = form.getString("vehicle_code2"); - String material_id = form.getString("material_id"); - task.put("task_id", taskdtl_id); - task.put("task_name", task_name); + task.put("task_id", IdUtil.getStringId()); + task.put("task_name", reqestPram.getString("task_name")); task.put("task_code", CodeUtil.getNewCode("TASK_CODE")); task.put("task_type", type); task.put("task_status", TaskStatusEnum.CREATED.getCode()); - task.put("point_code1", start_point_code); - task.put("point_code2", next_point_code); - task.put("vehicle_code2", vehicle_code2); - task.put("vehicle_code", vehicle_code); - task.put("material_id", material_id); + task.put("point_code1", reqestPram.getString("point_code1")); + task.put("point_code2", reqestPram.getString("point_code2")); + task.put("vehicle_code2", reqestPram.getString("vehicle_code2")); + task.put("vehicle_code", reqestPram.getString("vehicle_code")); + task.put("material_id", reqestPram.getString("material_id")); task.put("handle_class", this.getClass().getName()); task.put("finished_type", "1"); task.put("is_delete", "0"); String currentUserId = SecurityUtils.getCurrentUserId(); task.put("create_id", currentUserId); task.put("create_name", SecurityUtils.getCurrentNickName()); - task.put("update_optid", currentUserId); - task.put("update_optname", SecurityUtils.getCurrentNickName()); + task.put("update_id", currentUserId); + task.put("update_name", SecurityUtils.getCurrentNickName()); task.put("create_time", DateUtil.now()); task.put("update_time", DateUtil.now()); - task.put("priority", "1");} + task.put("priority", "1"); + } + return task; } + @Override public void cancel(String taskId) { log.info(OPT_NAME+"cancel taskID:{}",taskId); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/WashMachineryTask.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/WashMachineryTask.java index c2e72603..e87a4918 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/WashMachineryTask.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/WashMachineryTask.java @@ -12,6 +12,7 @@ import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.checkerframework.checker.units.qual.A; +import org.jetbrains.annotations.NotNull; import org.nl.common.ConstantParam; import org.nl.common.enums.AcsTaskEnum; import org.nl.common.enums.InterfaceLogType; @@ -97,51 +98,26 @@ public class WashMachineryTask extends AbstractAcsTask { @Override @SneakyThrows public String createTask(JSONObject param) { - WQLObject pointTab = WQLObject.getWQLObject("SCH_BASE_Point"); - WQLObject materialTab = WQLObject.getWQLObject("md_me_materialbase"); - String pointCode = param.getString("device_code"); - JSONObject device = WQL.getWO("sch_point").addParamMap(MapOf.of("flag", "8", "point_code", pointCode)).process().uniqueResult(0); + //清洗机设备 + JSONObject device = WQL.getWO("sch_point").addParamMap(MapOf.of("flag", "8", "point_code", param.getString("device_code"))).process().uniqueResult(0); //is_used = '0'人工下料:入料仓上线inupperlimit_qty;is_artificial人工 - Double inupperlimitQty = device.getDouble("inupperlimit_qty"); - String deviceCode = device.getString("device_code"); - String artificial = device.getString("is_artificial").equals("1")?"0":"1"; - JSONArray points = pointTab.query("region_code = 'SKQX' and material_id is not null and point_status = '2' and is_used = '"+artificial+"' order by vehicle_qty desc").getResultJSONArray(0); + JSONArray points = WQLObject.getWQLObject("SCH_BASE_Point").query("region_code = "+ConstantParam.SK_REGION+" and material_id is not null and point_status = '2' and is_used = '"+(device.getString("is_artificial").equals("1")?"0":"1")+"' order by vehicle_qty desc").getResultJSONArray(0); //查询深坑相同物料类型的点位:深坑单位:重量 if (points.size()>0){ - Map> materialCollent = points.stream().collect(Collectors.groupingBy(o -> ((JSONObject) o).getString("material_id"))); - //查询清洗设备最大重量 - Resource resource = loader.getResource("classpath:/groovyFile.groovy"); - Script script = groovyShell.parse(resource.getFile()); - ArrayList result = (ArrayList)script.invokeMethod("getPoints", new Object[]{points, materialCollent, inupperlimitQty}); - //确认acs参数 创建工单下发acs - if (!CollectionUtils.isEmpty(result)){ - String material_id = result.get(0).getString("material_id"); - JSONObject material = materialTab.query("material_id = '" + material_id + "' and is_delete = 0").uniqueResult(0); - Double qty = result.stream().mapToDouble(value -> value.getDouble("qty")).sum(); - PdmProduceWashorder washorder = new PdmProduceWashorder(); - washorder.setWorkorderId(IdUtil.getStringId()); - washorder.setWorkorderCode(IdUtil.getStringId()); - washorder.setIsNeedmove("0"); - washorder.setDeviceCode(deviceCode); - washorder.setMaterialWeight(new BigDecimal(qty)); - washorder.setMaterialCode(material.getString("material_code")); - washorder.setCreateTime(DateUtil.now()); - washorder.setInDevices(result.stream().map(a->a.getString("point_code")).collect(Collectors.joining(","))); - washorder.setProductArea(device.getString("product_area")); - washorder.setCreateId("1"); - washorder.setCreateName("acs"); - washorder.setStatus(StatusEnum.TASK_CREATE.getCode()); + ArrayList SKPoints = getDistributeSKPoint(device, points); + //确认acs参数 创建工单下发acs + if (!CollectionUtils.isEmpty(SKPoints)){ + PdmProduceWashorder washorder = packageParam(device, SKPoints); //下发" JSONArray request = new JSONArray(); - JSONObject jsonObject = new JSONObject(MapOf.of("workorder_id", washorder.getWorkorderId() + request.add(new JSONObject(MapOf.of("workorder_id", washorder.getWorkorderId() , "workorder_code", washorder.getWorkorderCode() , "qty", washorder.getMaterialWeight() , "material_code", washorder.getMaterialCode() - , "device_code", pointCode + , "device_code", param.getString("device_code") , "is_needmove", "0" , "in_devices", washorder.getInDevices() - )); - request.add(jsonObject); + ))); Map response = wmsToAcsService.order(request); if (response.get("status").equals(HttpStatus.BAD_REQUEST)){ washorder.setErrorInfo((String) response.get("message")); @@ -154,6 +130,38 @@ public class WashMachineryTask extends AbstractAcsTask { return null; } + private ArrayList getDistributeSKPoint(JSONObject device, JSONArray points) throws IOException { + Map> materialCollent = points.stream() + .collect(Collectors.groupingBy(o -> ((JSONObject) o) + .getString("material_id"))); + //查询清洗设备最大重量 + Resource resource = loader.getResource("classpath:/groovyFile.groovy"); + Script script = groovyShell.parse(resource.getFile()); + ArrayList result = (ArrayList)script.invokeMethod("getPoints", new Object[]{points, materialCollent, device.getDouble("inupperlimit_qty")}); + return result; + } + + @NotNull + private PdmProduceWashorder packageParam(JSONObject device, ArrayList SKPoints) { + + JSONObject material = WQLObject.getWQLObject("md_me_materialbase").query("material_id = '" + SKPoints.get(0).getString("material_id") + "' and is_delete = 0").uniqueResult(0); + + PdmProduceWashorder washorder = new PdmProduceWashorder(); + washorder.setWorkorderId(IdUtil.getStringId()); + washorder.setWorkorderCode(IdUtil.getStringId()); + washorder.setIsNeedmove("0"); + washorder.setDeviceCode(device.getString("device_code")); + washorder.setMaterialWeight(new BigDecimal(SKPoints.stream().mapToDouble(value -> value.getDouble("qty")).sum())); + washorder.setMaterialCode(material.getString("material_code")); + washorder.setCreateTime(DateUtil.now()); + washorder.setInDevices(SKPoints.stream().map(a->a.getString("point_code")).collect(Collectors.joining(","))); + washorder.setProductArea(device.getString("product_area")); + washorder.setCreateId("1"); + washorder.setCreateName("acs"); + washorder.setStatus(StatusEnum.TASK_CREATE.getCode()); + return washorder; + } + @Override public void cancel(String taskId) { diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/wql/sch_point.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/wql/sch_point.wql index 6e1f57a7..6e1498ba 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/wql/sch_point.wql +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/wql/sch_point.wql @@ -96,7 +96,7 @@ sch_base_point LEFT JOIN pdm_bi_device ON sch_base_point.device_code = pdm_bi_device.device_code LEFT JOIN sch_base_task ON sch_base_point.point_code = point_code2 and task_status<7 - WHERE 1=1 + WHERE sch_base_point.lock_type = '0' and is_used = '1' OPTION 输入.region_code <> "" sch_base_point.region_code = 输入.region_code ENDOPTION @@ -167,7 +167,7 @@ sch_base_point.* from sch_base_point left JOIN sch_base_task ON sch_base_point.point_code = point_code2 and task_status < 7 - where 1=1 + where sch_base_point.lock_type = '0' and is_used = '1' OPTION 输入.region_code <> "" sch_base_point.region_code = 输入.region_code ENDOPTION diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/in/service/impl/ProductInServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/in/service/impl/ProductInServiceImpl.java index 7232521a..00e2bcc3 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/in/service/impl/ProductInServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/in/service/impl/ProductInServiceImpl.java @@ -14,7 +14,6 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.nl.common.enums.AcsTaskEnum; import org.nl.common.enums.StatusEnum; -import org.nl.common.handler.LockProcess; import org.nl.common.utils.MapOf; import org.nl.common.utils.RedissonUtils; import org.nl.common.utils.SecurityUtils; @@ -25,6 +24,7 @@ import org.nl.modules.wql.core.bean.WQLObject; import org.nl.modules.wql.util.SpringContextHolder; import org.nl.modules.wql.util.WqlUtil; import org.nl.system.service.param.impl.SysParamServiceImpl; +import org.nl.wms.basedata.master.service.StoragevehicleinfoService; import org.nl.wms.basedata.st.service.StorattrService; import org.nl.wms.basedata.st.service.StructattrService; import org.nl.wms.basedata.st.service.dto.StructattrDto; @@ -38,9 +38,7 @@ import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; +import java.util.*; /** * PC端出入库新增 @@ -58,6 +56,8 @@ public class ProductInServiceImpl implements ProductInService { private final StorPublicService storPublicService; + private final StoragevehicleinfoService storagevehicleinfoService; + @Override public Map pageQuery(Map whereJson, Pageable page) { @@ -67,6 +67,7 @@ public class ProductInServiceImpl implements ProductInService { String begin_time = MapUtil.getStr(whereJson, "begin_time"); String end_time = MapUtil.getStr(whereJson, "end_time"); String bill_status = MapUtil.getStr(whereJson, "bill_status"); + String bill_type = MapUtil.getStr(whereJson, "bill_type"); JSONObject map = new JSONObject(); map.put("flag", "1"); @@ -74,7 +75,7 @@ public class ProductInServiceImpl implements ProductInService { map.put("begin_time",begin_time); map.put("end_time",end_time); map.put("bill_status",bill_status); - map.put("bill_type", "0001"); + map.put("bill_type", bill_type); if (ObjectUtil.isNotEmpty(bill_code)) map.put("bill_code","%"+bill_code+"%"); JSONObject jo = WQL.getWO("QST_IVT_PRODUCTIN_01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "create_time desc"); @@ -505,38 +506,23 @@ public class ProductInServiceImpl implements ProductInService { @Override public void unDivStruct(JSONObject jo) { WQLObject dis_wql = WQLObject.getWQLObject("ST_IVT_IOStorInvDis"); - WQLObject point_table = WQLObject.getWQLObject("SCH_BASE_Point"); - WQLObject materTab = WQLObject.getWQLObject("md_me_materialbase"); + WQLObject structattrTable = WQLObject.getWQLObject("st_ivt_structattr"); + WQLObject vehicleTable = WQLObject.getWQLObject("md_pb_storagevehicleinfo"); - JSONArray rows = jo.getJSONArray("tableMater"); - JSONObject whereJson = rows.getJSONObject(0); + JSONObject iosInvDisInfo = jo.getJSONArray("tableMater").getJSONObject(0); + String StructCodes = getReleaseStructByVehicleLimit(structattrTable, vehicleTable, iosInvDisInfo); //解锁原货位点位 - JSONObject jsonPoint1 = point_table.query("point_code = '" + whereJson.getString("struct_code") + "'").uniqueResult(0); - jsonPoint1.put("lock_type", StatusEnum.LOCK_OFF.getCode()); - point_table.update(jsonPoint1); - - // 判断此物料是否超长 - JSONObject jsonMater = materTab.query("material_id = '" + whereJson.getString("material_id") + "'").uniqueResult(0); - - String length_up = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode("MATERIAL_LENGTH_UP").getValue(); - double material_length = jsonMater.getDoubleValue("length"); - double material_length_up = Double.valueOf(length_up); - - if (material_length > material_length_up) { - // 超长则解锁对应点位 - JSONObject jsonPoint2 = point_table.query("point_id = '" + jsonPoint1.getString("control_point") + "'").uniqueResult(0); - jsonPoint2.put("lock_type", StatusEnum.LOCK_OFF.getCode()); - point_table.update(jsonPoint2); - } + structattrTable.update(MapOf.of("lock_type", StatusEnum.LOCK_OFF.getCode()),"struct_code in ('"+StructCodes+"')"); //减去原货位的待入数 - JSONArray dis_rows = dis_wql.query("struct_code = '" + whereJson.get("struct_code") + "' AND work_status < '99'").getResultJSONArray(0); + JSONArray dis_rows = dis_wql.query("struct_code = '" + iosInvDisInfo.get("struct_code") + "' AND work_status < '99'").getResultJSONArray(0); if (dis_rows.size() <= 0) { throw new BadRequestException("数据参数有误!"); } - JSONObject mst_jo = WQLObject.getWQLObject("ST_IVT_IOStorInv").query("iostorinv_id = '" + dis_rows.getJSONObject(0).getString("iostorinv_id") + "'").uniqueResult(0); + JSONObject mst_jo = WQLObject.getWQLObject("ST_IVT_IOStorInv").query("iostorinv_id" + + " = '" + dis_rows.getJSONObject(0).getString("iostorinv_id") + "'").uniqueResult(0); for (int i = 0; i < dis_rows.size(); i++) { JSONObject i_form = new JSONObject(); JSONObject dis_row = dis_rows.getJSONObject(i); @@ -562,12 +548,12 @@ public class ProductInServiceImpl implements ProductInService { map.put("struct_code", ""); map.put("struct_name", ""); map.put("work_status", "00"); - WQLObject.getWQLObject("ST_IVT_IOStorInvDis").update(map, "iostorinvdtl_id = '" + whereJson.getString("iostorinvdtl_id") + "'"); + WQLObject.getWQLObject("ST_IVT_IOStorInvDis").update(map, "iostorinvdtl_id = '" + iosInvDisInfo.getString("iostorinvdtl_id") + "'"); //修改明细状态 HashMap dtl_map = new HashMap<>(); dtl_map.put("bill_status", "10"); - WQLObject.getWQLObject("ST_IVT_IOStorInvDtl").update(dtl_map, "iostorinvdtl_id = '" + whereJson.get("iostorinvdtl_id") + "'"); + WQLObject.getWQLObject("ST_IVT_IOStorInvDtl").update(dtl_map, "iostorinvdtl_id = '" + iosInvDisInfo.get("iostorinvdtl_id") + "'"); //更新主表状态 JSONArray dtl_rows = WQLObject.getWQLObject("ST_IVT_IOStorInvDtl").query("iostorinv_id = '" + mst_jo.get("iostorinv_id") + "' AND bill_status IN ('20','30')").getResultJSONArray(0); @@ -579,6 +565,17 @@ public class ProductInServiceImpl implements ProductInService { WQLObject.getWQLObject("ST_IVT_IOStorInv").update(mst_jo); } + private String getReleaseStructByVehicleLimit(WQLObject structattrTable, WQLObject vehicleTable, JSONObject iosInvDisInfo) { + String StructCode = iosInvDisInfo.getString("struct_code"); + if (vehicleTable.query("storagevehicle_code = '" + iosInvDisInfo.getString("storagevehicle_code") + "'").uniqueResult(0).getString("occupystruct_qty").equals(StatusEnum.OVERSTRUCT_STANDARD.getCode())){ + String controlStruct = structattrTable.query("struct_code = '" + StructCode + "'").uniqueResult(0).getString("control_point"); + if (!StringUtils.isEmpty(controlStruct)){ + StructCode = StructCode +"','"+controlStruct; + } + } + return StructCode; + } + @Transactional(rollbackFor = Exception.class) @Override public void divPoint(JSONObject whereJson) { @@ -752,20 +749,20 @@ public class ProductInServiceImpl implements ProductInService { @Override @Transactional(rollbackFor = Exception.class) - public void confirmvehicle(JSONObject whereJson) { + public void confirmvehicle(JSONObject form) { WQLObject vehicleTab = WQLObject.getWQLObject("md_pb_storagevehicleinfo"); - WQLObject vehicleMaterialTab = WQLObject.getWQLObject("md_pb_storagevehicleext"); WQLObject disTab = WQLObject.getWQLObject("st_ivt_iostorinvdis"); - String storagevehicle_code = whereJson.getString("storagevehicle_code"); - // 校验载具是否存在 - JSONObject jsonVehicle = vehicleTab.query("storagevehicle_code = '" + storagevehicle_code + "' and is_delete = '0' and is_used = '1'").uniqueResult(0); - if (ObjectUtil.isEmpty(jsonVehicle)) throw new BadRequestException("载具不存在"); - JSONArray vehicleMaterial = vehicleMaterialTab.query("storagevehicle_code = '" + storagevehicle_code + "' and material_id IS not NULL ").getResultJSONArray(0); - if (vehicleMaterial.size()>0){ - throw new BadRequestException("载具已被占用"); + + JSONObject jsonVehicle; + if (!StringUtils.isEmpty(form.getString("storagevehicle_code"))){ + jsonVehicle = vehicleTab.query("storagevehicle_code = '" + form.getString("storagevehicle_code") + "' and is_delete = '0' and is_used = '1'").uniqueResult(0); + checkVehicle(form, jsonVehicle); // 校验载具是否存在 + }else { + jsonVehicle = storagevehicleinfoService.create(MapOf.of("overstruct_type", form.getString("overstruct_type"), "storagevehicle_code", UUID.randomUUID().toString(), "storagevehicle_type", "01","num",1)).getJSONObject(0); } + // 更新分配明细载具号 - JSONObject jsonDis = disTab.query("iostorinvdis_id = '" + whereJson.getString("iostorinvdis_id") + "'").uniqueResult(0); + JSONObject jsonDis = disTab.query("iostorinvdis_id = '" + form.getString("iostorinvdis_id") + "'").uniqueResult(0); // 校验此明细是否已经分配 if (ObjectUtil.isNotEmpty(jsonDis.getString("struct_id"))) { throw new BadRequestException("此明细已分配不可组盘!"); @@ -775,6 +772,27 @@ public class ProductInServiceImpl implements ProductInService { disTab.update(jsonDis); } + private void checkVehicle(JSONObject form, JSONObject jsonVehicle) { + WQLObject vehicleMaterialTab = WQLObject.getWQLObject("md_pb_storagevehicleext"); + if (ObjectUtil.isEmpty(jsonVehicle)) { + throw new BadRequestException("载具不存在"); + } + JSONArray vehicleMaterial = vehicleMaterialTab.query("storagevehicle_code = '" + form.getString("storagevehicle_code") + "' and material_id IS not NULL ").getResultJSONArray(0); + if (vehicleMaterial.size()>0){ + throw new BadRequestException("载具已被占用"); + } + } + + public static void main(String[] args) { + ArrayList list = new ArrayList<>(); + list.add("a"); + list.add("b"); + list.add("c"); + for (Object o : list) { + list.remove("a"); + } + } + @Override public JSONArray getDisTask(JSONObject whereJson) { //查询该明细下的所有入库分配明细 diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/wql/QST_IVT_PRODUCTIN_01.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/wql/QST_IVT_PRODUCTIN_01.wql index 315af984..4b1c9b9b 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/wql/QST_IVT_PRODUCTIN_01.wql +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/wql/QST_IVT_PRODUCTIN_01.wql @@ -125,7 +125,8 @@ mater.material_code, mater.material_name, mater.material_spec, - point.point_code + point.point_code, + '' as overstruct_type FROM ST_IVT_IOStorInvDis dis LEFT JOIN sch_base_point point ON point.point_id = dis.point_id diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/wql/QST_IVT_STORPUBLIC.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/wql/QST_IVT_STORPUBLIC.wql index 36db8c12..cc7ce0d6 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/wql/QST_IVT_STORPUBLIC.wql +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/wql/QST_IVT_STORPUBLIC.wql @@ -49,7 +49,7 @@ ivt.* FROM st_ivt_structivt ivt - LEFT JOIN sch_base_point point ON point.point_id = ivt.struct_id + LEFT JOIN st_ivt_structattr point ON point.struct_id = ivt.struct_id WHERE 1=1 @@ -109,4 +109,4 @@ ENDSELECT ENDQUERY - ENDIF \ No newline at end of file + ENDIF diff --git a/mes/qd/src/views/wms/basedata/pdm/workProcedure/index.vue b/mes/qd/src/views/wms/basedata/pdm/workProcedure/index.vue index e1bb2274..ee248f83 100644 --- a/mes/qd/src/views/wms/basedata/pdm/workProcedure/index.vue +++ b/mes/qd/src/views/wms/basedata/pdm/workProcedure/index.vue @@ -52,7 +52,7 @@ - + - + + width="710px" + > - + - + @@ -152,16 +153,16 @@ - + - + - + - +