From 01dba10d0c546baf14bd31410372ef303b161f1f Mon Sep 17 00:00:00 2001 From: liuxy Date: Fri, 2 Sep 2022 16:18:40 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../acs/service/impl/AcsToWmsServiceImpl.java | 50 +- .../rest/CallMaterialController.java | 39 ++ .../service/CallMaterialService.java | 19 + .../service/impl/CallMaterialServiceImpl.java | 60 +++ .../callmaterial/wql/PDA_CALLMATERIAL_01.wql | 77 +++ .../rest/CallVehicleController.java | 40 ++ .../service/CallVehicleService.java | 19 + .../service/impl/CallVehicleServiceImpl.java | 62 +++ .../callvehicle/wql/PDA_CALLVEHICLE_01.wql | 77 +++ .../rest/EmptyAndQtyController.java | 32 ++ .../service/EmptyAndQtyService.java | 13 + .../service/impl/EmptyAndQtyServiceImpl.java | 51 ++ .../login/rest/HandLoginController.java | 11 +- .../login/service/HandLoginService.java | 2 +- .../service/impl/HandLoginServiceImpl.java | 35 +- .../nl/wms/pda/login/wql/QPADSTSETSERVICE.wql | 492 ++++++++++++++++++ .../rest/SendMaterialController.java | 39 ++ .../service/SendMaterialService.java | 19 + .../service/impl/SendMaterialServiceImpl.java | 62 +++ .../sendmaterial/wql/PDA_SENDMATERIAL_01.wql | 77 +++ .../rest/SendVehicleController.java | 41 ++ .../service/SendVehicleService.java | 19 + .../service/impl/SendVehicleServiceImpl.java | 70 +++ .../sendvehicle/wql/PDA_SENDVEHICLE_01.wql | 99 ++++ .../org/nl/wms/sch/service/dto/PointDto.java | 5 + .../wms/sch/service/wql/QSCH_BASE_POINT.wql | 3 +- .../java/org/nl/wms/sch/service/wql/sch.xls | Bin 169472 -> 169472 bytes .../org/nl/wms/sch/tasks/RegionTypeEnum.java | 7 +- .../nl/wms/sch/tasks/SendMaterialTask.java | 10 +- .../src/test/java/org/nl/Test3.java | 78 ++- mes/qd/src/views/wms/sch/point/index.vue | 23 +- 31 files changed, 1584 insertions(+), 47 deletions(-) create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/rest/CallMaterialController.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/CallMaterialService.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/impl/CallMaterialServiceImpl.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/wql/PDA_CALLMATERIAL_01.wql create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/rest/CallVehicleController.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/CallVehicleService.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/impl/CallVehicleServiceImpl.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/wql/PDA_CALLVEHICLE_01.wql create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/rest/EmptyAndQtyController.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/service/EmptyAndQtyService.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/service/impl/EmptyAndQtyServiceImpl.java rename mes/hd/nladmin-system/src/main/java/org/nl/wms/{ext => pda}/login/rest/HandLoginController.java (97%) rename mes/hd/nladmin-system/src/main/java/org/nl/wms/{ext => pda}/login/service/HandLoginService.java (92%) rename mes/hd/nladmin-system/src/main/java/org/nl/wms/{ext => pda}/login/service/impl/HandLoginServiceImpl.java (82%) create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/wql/QPADSTSETSERVICE.wql create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/rest/SendMaterialController.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/SendMaterialService.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/impl/SendMaterialServiceImpl.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/wql/PDA_SENDMATERIAL_01.wql create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/rest/SendVehicleController.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/SendVehicleService.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/wql/PDA_SENDVEHICLE_01.wql 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 1896d19..78db202 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 @@ -167,6 +167,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { * 5.油漆线空盘入库 * 6.一楼空盘入库 (有载具号) * 7.油漆线->输送线 + * 8.豪凯自动线下料入库 */ JSONObject resuft = new JSONObject(); try { @@ -331,13 +332,19 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { } else if (StrUtil.equals(type, "6")) { // 6.一楼空盘入库 (有载具号): 调用空托盘入库处理类创建任务 if (ObjectUtil.isEmpty(vehicle_code)) throw new BadRequestException("载具号不能为空"); - // 查询载具号对应的数量 - JSONObject jsonVeQty = veQtyTab.query("vehicle_code = '" + vehicle_code + "' and is_task = '0' order by create_time DESC").uniqueResult(0); - if (ObjectUtil.isEmpty(jsonVeQty)) throw new BadRequestException("请先手持扫码"); - JSONObject param = new JSONObject(); - param.put("start_point_code", point_code); + + // 查询载具号对应的数量 + JSONObject jsonVeQty = new JSONObject(); + if (ObjectUtil.isEmpty(qty)) { + jsonVeQty = veQtyTab.query("vehicle_code = '" + vehicle_code + "' and is_task = '0' order by create_time DESC").uniqueResult(0); + if (ObjectUtil.isEmpty(jsonVeQty)) throw new BadRequestException("请先手持扫码"); + } else { + jsonVeQty.put("qty", qty); + } + param.put("qty", jsonVeQty.getString("qty")); + param.put("start_point_code", point_code); param.put("vehicle_code", vehicle_code); // 创建任务 SendEmpVehicleTask taskBean = SpringContextHolder.getBean(SendEmpVehicleTask.class); @@ -372,6 +379,39 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { resuft.put("status", "200"); resuft.put("message", ""); + } else if (StrUtil.equals(type, "8")) { + // 8.豪凯自动线下料入库 + JSONObject param = new JSONObject(); + param.put("start_point_code", point_code); + SendMaterialTask taskBean = SpringContextHolder.getBean(SendMaterialTask.class); + String task_id = taskBean.createTask(param); + + JSONObject jsonTask = taskTab.query("task_id = '" + task_id + "'").uniqueResult(0); + // 插入区域出入库表 + param.put("next_point_code", jsonTask.getString("next_point_code")); + if (ObjectUtil.isEmpty(qty)) { + param.put("qty", "1"); // 为空先写死1 + } else { + param.put("qty", qty); + } + param.put("task_id", task_id); + param.put("io_type", "0"); + JSONObject json = this.inCreateRegion(param); + // 回显任务载具类型 + jsonTask.put("vehicle_type", json.getString("vehicle_type")); + taskTab.update(jsonTask); + + // 下发 + JSONObject jsonObject = taskBean.renotifyAcs(task_id); + if (StrUtil.equals(jsonObject.getString("status"), "200")) { + // 成功返回 更新任务状态 + resuft.put("status", "200"); + resuft.put("message", ""); + jsonTask.put("task_status", "05"); + taskTab.update(jsonTask); + } else { + throw new BadRequestException(jsonObject.getString("message")); + } } } catch (Exception e) { resuft.put("status", ((BadRequestException) e).getStatus()); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/rest/CallMaterialController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/rest/CallMaterialController.java new file mode 100644 index 0000000..2fed835 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/rest/CallMaterialController.java @@ -0,0 +1,39 @@ +package org.nl.wms.pda.callmaterial.rest; + +import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.annotation.Log; +import org.nl.wms.pda.callmaterial.service.CallMaterialService; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +@Api(tags = "手持叫料") +@RequestMapping("api/pda/callMaterial") +@Slf4j +public class CallMaterialController { + + private final CallMaterialService callMaterialService; + + @PostMapping("/queryPoint") + @Log("查询区域点位") + @ApiOperation("查询区域点位") + public ResponseEntity queryPoint() { + return new ResponseEntity<>(callMaterialService.queryPoint(), HttpStatus.OK); + } + + @PostMapping("/confirm") + @Log("叫料确定") + @ApiOperation("叫料确定") + public ResponseEntity confirm(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(callMaterialService.confirm(whereJson), HttpStatus.OK); + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/CallMaterialService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/CallMaterialService.java new file mode 100644 index 0000000..e85a64b --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/CallMaterialService.java @@ -0,0 +1,19 @@ +package org.nl.wms.pda.callmaterial.service; + +import com.alibaba.fastjson.JSONObject; + +public interface CallMaterialService { + + /** + * 查询区域点位 + * @return json + */ + JSONObject queryPoint(); + + /** + * 叫料确定 + * @param whereJson / + * @return JSONObject + */ + JSONObject confirm(JSONObject whereJson); +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/impl/CallMaterialServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/impl/CallMaterialServiceImpl.java new file mode 100644 index 0000000..0b12878 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/impl/CallMaterialServiceImpl.java @@ -0,0 +1,60 @@ +package org.nl.wms.pda.callmaterial.service.impl; + +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.wms.ext.acs.service.AcsToWmsService; +import org.nl.wms.pda.callmaterial.service.CallMaterialService; +import org.nl.wql.WQL; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +@Service +@RequiredArgsConstructor +@Slf4j +public class CallMaterialServiceImpl implements CallMaterialService { + private final AcsToWmsService acsToWmsService; + + @Override + public JSONObject queryPoint() { + JSONObject result = new JSONObject(); + // 1.查询区域:油漆区域 YQQY01 + JSONArray regionArr = WQL.getWO("PDA_CALLMATERIAL_01").addParam("flag", "1").process().getResultJSONArray(0); + // 2.根据区域查询对应的物料上料位 + JSONObject resultJson = new JSONObject(); + for (int i = 0; i < regionArr.size(); i++) { + JSONObject jsonRegion = regionArr.getJSONObject(i); + JSONArray pointArr = WQL.getWO("PDA_CALLMATERIAL_01").addParam("flag", "2").addParam("region_id", jsonRegion.getString("region_id")).process().getResultJSONArray(0); + jsonRegion.put("pointArr", pointArr); + } + resultJson.put("result", regionArr); + result.put("srb", resultJson); + result.put("code", "1"); + result.put("desc", "查询成功"); + return result; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public JSONObject confirm(JSONObject whereJson) { + JSONObject result = new JSONObject(); + // 1、准备参数:point_code、type = 4 + JSONObject param = new JSONObject(); + param.put("type","4"); + param.put("point_code",whereJson.getString("point_code")); + // 2、调用接口 + JSONObject json = acsToWmsService.apply(param); + if (StrUtil.equals(json.getString("status"), "200")) { + result.put("srb", ""); + result.put("code", "1"); + result.put("desc", "操作成功"); + } else { + result.put("srb", ""); + result.put("code", "0"); + result.put("desc", "操作失败:"+json.getString("message")); + } + return result; + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/wql/PDA_CALLMATERIAL_01.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/wql/PDA_CALLMATERIAL_01.wql new file mode 100644 index 0000000..3c39c5e --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/wql/PDA_CALLMATERIAL_01.wql @@ -0,0 +1,77 @@ +[交易说明] + 交易名: 手持叫料查询 + 所属模块: + 功能简述: + 版权所有: + 表引用: + 版本经历: + +[数据库] + --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 + +[IO定义] + ################################################# + ## 表字段对应输入参数 + ################################################# + 输入.flag TYPEAS s_string + 输入.region_id TYPEAS s_string + +[临时表] + --这边列出来的临时表就会在运行期动态创建 + +[临时变量] + --所有中间过程变量均可在此处定义 + +[业务过程] + + ########################################## + # 1、输入输出检查 # + ########################################## + + + ########################################## + # 2、主过程前处理 # + ########################################## + + + ########################################## + # 3、业务主过程 # + ########################################## + + IF 输入.flag = "1" + QUERY + SELECT + region_id, + region_code, + region_name + FROM + sch_base_region + WHERE + is_used = '1' + AND region_code = 'YQQY01' + + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "2" + QUERY + SELECT + point_id, + point_code, + point_name + FROM + sch_base_point + WHERE + is_used = '1' + AND is_delete = '0' + AND is_host = '0' + AND device_point_type = '3' + + OPTION 输入.region_id <> "" + region_id = 输入.region_id + ENDOPTION + + ENDSELECT + ENDQUERY + ENDIF \ No newline at end of file diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/rest/CallVehicleController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/rest/CallVehicleController.java new file mode 100644 index 0000000..d677063 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/rest/CallVehicleController.java @@ -0,0 +1,40 @@ +package org.nl.wms.pda.callvehicle.rest; + +import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.annotation.Log; +import org.nl.wms.pda.callvehicle.service.CallVehicleService; +import org.nl.wms.pda.sendmaterial.service.SendMaterialService; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +@Api(tags = "手持呼叫空托盘") +@RequestMapping("api/pda/callVehicle") +@Slf4j +public class CallVehicleController { + + private final CallVehicleService callVehicleService; + + @PostMapping("/queryPoint") + @Log("查询区域点位") + @ApiOperation("查询区域点位") + public ResponseEntity queryPoint() { + return new ResponseEntity<>(callVehicleService.queryPoint(), HttpStatus.OK); + } + + @PostMapping("/confirm") + @Log("呼叫空托盘确定") + @ApiOperation("呼叫空托盘确定") + public ResponseEntity confirm(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(callVehicleService.confirm(whereJson), HttpStatus.OK); + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/CallVehicleService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/CallVehicleService.java new file mode 100644 index 0000000..66d4c7b --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/CallVehicleService.java @@ -0,0 +1,19 @@ +package org.nl.wms.pda.callvehicle.service; + +import com.alibaba.fastjson.JSONObject; + +public interface CallVehicleService { + + /** + * 查询区域点位 + * @return JSONObject + */ + JSONObject queryPoint(); + + /** + * 呼叫空托盘确定 + * @param whereJson / + * @return JSONObject + */ + JSONObject confirm(JSONObject whereJson); +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/impl/CallVehicleServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/impl/CallVehicleServiceImpl.java new file mode 100644 index 0000000..ae3f46d --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/impl/CallVehicleServiceImpl.java @@ -0,0 +1,62 @@ +package org.nl.wms.pda.callvehicle.service.impl; + +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.wms.ext.acs.service.AcsToWmsService; +import org.nl.wms.pda.callvehicle.service.CallVehicleService; +import org.nl.wql.WQL; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +@Service +@RequiredArgsConstructor +@Slf4j +public class CallVehicleServiceImpl implements CallVehicleService { + + private final AcsToWmsService acsToWmsService; + + @Override + public JSONObject queryPoint() { + JSONObject result = new JSONObject(); + // 1.查询区域:油漆区域 YQQY01、共挤区域 GJQY01 + JSONArray regionArr = WQL.getWO("PDA_CALLVEHICLE_01").addParam("flag", "1").process().getResultJSONArray(0); + // 2.根据区域查询对应的物料上料位 + JSONObject resultJson = new JSONObject(); + for (int i = 0; i < regionArr.size(); i++) { + JSONObject jsonRegion = regionArr.getJSONObject(i); + JSONArray pointArr = WQL.getWO("PDA_CALLVEHICLE_01").addParam("flag", "2").addParam("region_id", jsonRegion.getString("region_id")).process().getResultJSONArray(0); + jsonRegion.put("pointArr", pointArr); + } + resultJson.put("result", regionArr); + result.put("srb", resultJson); + result.put("code", "1"); + result.put("desc", "查询成功"); + return result; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public JSONObject confirm(JSONObject whereJson) { + JSONObject result = new JSONObject(); + // 1、准备参数:point_code、type:1为共挤区域,3为油漆区域 + JSONObject param = new JSONObject(); + param.put("type",whereJson.getString("type")); + param.put("point_code",whereJson.getString("point_code")); + param.put("qty",whereJson.getString("qty")); + // 2、调用接口 + JSONObject json = acsToWmsService.apply(param); + if (StrUtil.equals(json.getString("status"), "200")) { + result.put("srb", ""); + result.put("code", "1"); + result.put("desc", "操作成功"); + } else { + result.put("srb", ""); + result.put("code", "0"); + result.put("desc", "操作失败:"+json.getString("message")); + } + return result; + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/wql/PDA_CALLVEHICLE_01.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/wql/PDA_CALLVEHICLE_01.wql new file mode 100644 index 0000000..339dd16 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/wql/PDA_CALLVEHICLE_01.wql @@ -0,0 +1,77 @@ +[交易说明] + 交易名: 手持呼叫空托盘查询 + 所属模块: + 功能简述: + 版权所有: + 表引用: + 版本经历: + +[数据库] + --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 + +[IO定义] + ################################################# + ## 表字段对应输入参数 + ################################################# + 输入.flag TYPEAS s_string + 输入.region_id TYPEAS s_string + +[临时表] + --这边列出来的临时表就会在运行期动态创建 + +[临时变量] + --所有中间过程变量均可在此处定义 + +[业务过程] + + ########################################## + # 1、输入输出检查 # + ########################################## + + + ########################################## + # 2、主过程前处理 # + ########################################## + + + ########################################## + # 3、业务主过程 # + ########################################## + + IF 输入.flag = "1" + QUERY + SELECT + region_id, + region_code, + region_name + FROM + sch_base_region + WHERE + is_used = '1' + AND region_code in ('YQQY01','GJQY01') + + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "2" + QUERY + SELECT + point_id, + point_code, + point_name + FROM + sch_base_point + WHERE + is_used = '1' + AND is_delete = '0' + AND is_host = '0' + AND device_point_type = '1' + + OPTION 输入.region_id <> "" + region_id = 输入.region_id + ENDOPTION + + ENDSELECT + ENDQUERY + ENDIF \ No newline at end of file diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/rest/EmptyAndQtyController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/rest/EmptyAndQtyController.java new file mode 100644 index 0000000..01d0c6e --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/rest/EmptyAndQtyController.java @@ -0,0 +1,32 @@ +package org.nl.wms.pda.emptyandqty.rest; + +import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.annotation.Log; +import org.nl.wms.pda.emptyandqty.service.EmptyAndQtyService; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +@Api(tags = "手持空托盘与数量绑定") +@RequestMapping("api/pda/emptyAndQty") +@Slf4j +public class EmptyAndQtyController { + + private final EmptyAndQtyService emptyAndQtyService; + + @PostMapping("/confirm") + @Log("绑定") + @ApiOperation("绑定") + public ResponseEntity confirm(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(emptyAndQtyService.confirm(whereJson), HttpStatus.OK); + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/service/EmptyAndQtyService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/service/EmptyAndQtyService.java new file mode 100644 index 0000000..70a1bd8 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/service/EmptyAndQtyService.java @@ -0,0 +1,13 @@ +package org.nl.wms.pda.emptyandqty.service; + +import com.alibaba.fastjson.JSONObject; + +public interface EmptyAndQtyService { + + /** + * 绑定 + * @param whereJson / + * @return JSONObject + */ + JSONObject confirm(JSONObject whereJson); +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/service/impl/EmptyAndQtyServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/service/impl/EmptyAndQtyServiceImpl.java new file mode 100644 index 0000000..6525b33 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/emptyandqty/service/impl/EmptyAndQtyServiceImpl.java @@ -0,0 +1,51 @@ +package org.nl.wms.pda.emptyandqty.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONObject; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.utils.SecurityUtils; +import org.nl.utils.SpringContextHolder; +import org.nl.wms.basedata.master.service.StoragevehicleinfoService; +import org.nl.wms.basedata.master.service.dto.StoragevehicleinfoDto; +import org.nl.wms.ext.acs.service.AcsToWmsService; +import org.nl.wms.pda.emptyandqty.service.EmptyAndQtyService; +import org.nl.wql.core.bean.WQLObject; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +@Service +@RequiredArgsConstructor +@Slf4j +public class EmptyAndQtyServiceImpl implements EmptyAndQtyService { + + @Override + @Transactional(rollbackFor = Exception.class) + public JSONObject confirm(JSONObject whereJson) { + String vehicle_code = whereJson.getString("vehicle_code"); + String qty = whereJson.getString("qty"); + + WQLObject vqTab = WQLObject.getWQLObject("PDM_BI_vehicleQty"); + StoragevehicleinfoDto byCode = SpringContextHolder.getBean(StoragevehicleinfoService.class).findByCode(vehicle_code); + + // 插入记录 + JSONObject json = new JSONObject(); + json.put("vehicleqty_id", IdUtil.getSnowflake(1, 1).nextId()); + json.put("vehicle_id", byCode.getStoragevehicle_id()); + json.put("vehicle_code", vehicle_code); + json.put("qty", qty); + json.put("is_task", "0"); + json.put("create_id", SecurityUtils.getCurrentUserId()); + json.put("create_name", SecurityUtils.getNickName()); + json.put("create_time", DateUtil.now()); + vqTab.insert(json); + // 返回成功 + JSONObject result = new JSONObject(); + result.put("srb", ""); + result.put("code", "1"); + result.put("desc", "操作成功"); + return result; + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/login/rest/HandLoginController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/rest/HandLoginController.java similarity index 97% rename from mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/login/rest/HandLoginController.java rename to mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/rest/HandLoginController.java index 24789fa..02e61c3 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/login/rest/HandLoginController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/rest/HandLoginController.java @@ -1,14 +1,14 @@ -package org.nl.wms.ext.login.rest; +package org.nl.wms.pda.login.rest; import cn.hutool.core.map.MapUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONObject; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import com.alibaba.fastjson.JSONObject; import org.nl.annotation.Log; import org.nl.config.RsaProperties; import org.nl.exception.BadRequestException; @@ -18,10 +18,9 @@ import org.nl.modules.security.service.OnlineUserService; import org.nl.modules.security.service.dto.JwtUserDto; import org.nl.modules.system.service.UserService; import org.nl.modules.system.service.dto.UserDto; - import org.nl.utils.RsaUtils; import org.nl.utils.SecurityUtils; -import org.nl.wms.ext.login.service.HandLoginService; +import org.nl.wms.pda.login.service.HandLoginService; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; @@ -45,7 +44,7 @@ import java.util.Map; @RestController @RequiredArgsConstructor @Api(tags = "手持登陆") -@RequestMapping("api/bigScreenScreen") +@RequestMapping("api/pda") @Slf4j public class HandLoginController { private final HandLoginService handLoginService; @@ -56,7 +55,7 @@ public class HandLoginController { private final TokenProvider tokenProvider; private final OnlineUserService onlineUserService; - @PostMapping("/login") + @PostMapping("/handlogin") @Log("手持登陆验证") @ApiOperation("手持登陆验证") public ResponseEntity handlogin(@RequestBody Map whereJson, HttpServletRequest request) { diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/login/service/HandLoginService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/service/HandLoginService.java similarity index 92% rename from mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/login/service/HandLoginService.java rename to mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/service/HandLoginService.java index a1d5dd8..a397669 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/login/service/HandLoginService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/service/HandLoginService.java @@ -1,4 +1,4 @@ -package org.nl.wms.ext.login.service; +package org.nl.wms.pda.login.service; import java.util.Map; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/login/service/impl/HandLoginServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/service/impl/HandLoginServiceImpl.java similarity index 82% rename from mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/login/service/impl/HandLoginServiceImpl.java rename to mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/service/impl/HandLoginServiceImpl.java index 34dfd72..357d385 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext/login/service/impl/HandLoginServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/service/impl/HandLoginServiceImpl.java @@ -1,11 +1,11 @@ -package org.nl.wms.ext.login.service.impl; +package org.nl.wms.pda.login.service.impl; import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import lombok.RequiredArgsConstructor; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; import org.nl.config.RsaProperties; import org.nl.modules.security.config.bean.SecurityProperties; import org.nl.modules.security.security.TokenProvider; @@ -15,7 +15,7 @@ import org.nl.modules.system.service.UserService; import org.nl.modules.system.service.dto.UserDto; import org.nl.utils.RsaUtils; import org.nl.utils.SecurityUtils; -import org.nl.wms.ext.login.service.HandLoginService; +import org.nl.wms.pda.login.service.HandLoginService; import org.nl.wql.WQL; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.Authentication; @@ -44,22 +44,6 @@ public class HandLoginServiceImpl implements HandLoginService { JSONObject resultJson = new JSONObject(); String user = jsonObject.get("user"); String password = jsonObject.get("password"); - String device_id = jsonObject.get("device_id"); - if (StrUtil.isEmpty("user")) { - resultJson.put("code", "0"); - resultJson.put("desc", "用户不能为空"); - return resultJson; - } - if (StrUtil.isEmpty("device_id")) { - resultJson.put("code", "0"); - resultJson.put("desc", "设备不能为空"); - return resultJson; - } - if (StrUtil.isEmpty("password")) { - resultJson.put("code", "0"); - resultJson.put("desc", "密码不能为空!"); - return resultJson; - } boolean is_match = false; Long account_id = 0L; try { @@ -86,7 +70,6 @@ public class HandLoginServiceImpl implements HandLoginService { final JwtUserDto jwtUserDto = (JwtUserDto) authentication.getPrincipal(); // 保存在线信息 onlineUserService.save(jwtUserDto, token, null); - JSONObject jo = new JSONObject(); jo.put("user_name", user); jo.put("token", properties.getTokenStartWith() + token); @@ -109,17 +92,19 @@ public class HandLoginServiceImpl implements HandLoginService { JSONObject result = WQL.getWO("QPADSTSETSERVICE").addParam("flag", "4").addParam("accountId", accountId).addParam("component", "0").process().uniqueResult(0); //查询二级 - JSONArray SecondResults = WQL.getWO("QPADSTSETSERVICE").addParam("flag", "4").addParam("accountId", accountId).addParam("component", "1").process().getResultJSONArray(0); + //JSONArray SecondResults = WQL.getWO("QPADSTSETSERVICE").addParam("flag", "4").addParam("accountId", accountId).addParam("component", "1").process().getResultJSONArray(0); //查询三级 - JSONArray roleTree = new JSONArray(); + /* JSONArray roleTree = new JSONArray(); for (int i = 0; i < SecondResults.size(); i++) { JSONObject row = SecondResults.getJSONObject(i); String menu_id = row.getString("menu_id"); JSONArray ThirdResults = WQL.getWO("QPADSTSETSERVICE").addParam("flag", "4").addParam("accountId", accountId).addParam("component", "2").addParam("pid", menu_id).process().getResultJSONArray(0); row.put("sonTree", ThirdResults); roleTree.add(row); - } - result.put("sonTree", roleTree); + }*/ + JSONArray ThirdResults = WQL.getWO("QPADSTSETSERVICE").addParam("flag", "4").addParam("accountId", accountId).addParam("component", "2").process().getResultJSONArray(0); + + result.put("sonTree", ThirdResults); returnjo.put("code", "1"); returnjo.put("desc", "查询成功!"); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/wql/QPADSTSETSERVICE.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/wql/QPADSTSETSERVICE.wql new file mode 100644 index 0000000..a2aece6 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/login/wql/QPADSTSETSERVICE.wql @@ -0,0 +1,492 @@ +[交易说明] + 交易名: 库区分页查询 + 所属模块: + 功能简述: + 版权所有: + 表引用: + 版本经历: + +[数据库] + --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 + +[IO定义] + ################################################# + ## 表字段对应输入参数 + ################################################# + 输入.flag TYPEAS s_string + 输入.searchbar TYPEAS s_string + 输入.option_type TYPEAS s_string + 输入.bag_id TYPEAS s_string + 输入.bucketunique TYPEAS s_string + 输入.class_code TYPEAS s_string + 输入.component TYPEAS s_string + 输入.pid TYPEAS s_string + 输入.accountId TYPEAS s_string + 输入.workprocedure_code TYPEAS s_string + 输入.dict_type TYPEAS s_string + + + + + +[临时表] + --这边列出来的临时表就会在运行期动态创建 + +[临时变量] + --所有中间过程变量均可在此处定义 + +[业务过程] + + ########################################## + # 1、输入输出检查 # + ########################################## + + + ########################################## + # 2、主过程前处理 # + ########################################## + + + ########################################## + # 3、业务主过程 # + ########################################## + + IF 输入.flag = "1" + PAGEQUERY + SELECT + class.class_name, + class.class_code, + base.material_id, + base.material_code, + base.material_name, + base.material_spec, + base.material_type_id, + class.class_desc AS material_dtl_scode_name, + base.base_unit_id, + unit.unit_name AS base_unit_id_name, + ext.standard_weight as standard_weight1 , + "50" as standard_weight + FROM + MD_ME_MaterialBase base + LEFT JOIN md_pb_classstandard class ON class.class_id = base.material_type_id + LEFT JOIN MD_PB_MeasureUnit unit ON unit.measure_unit_id = base.base_unit_id + LEFT JOIN MD_ME_ProducMaterialExt ext ON ext.material_id = base.material_id + WHERE + 1 = 1 + OPTION 输入.searchbar <> "" + (base.material_code like "%" 输入.searchbar "%" + OR + base.material_name like "%" 输入.searchbar "%") + ENDOPTION + OPTION 输入.class_code <> "" + class.class_code = 输入.class_code + ENDOPTION + ENDSELECT + ENDPAGEQUERY + ENDIF + + + IF 输入.flag = "2" + QUERY + SELECT + bag.bagrecord_id, + bag.bag_id, + bag.material_id, + material.material_code as material_code , + material.material_name as material_name, + bag.pcsn, + bag.qty_unit_id, + bag.qty_unit_name, + bag.storage_qty, + bag.return_person, + bag.status, + case bag.status when '01' then '生成' + when '02' then '组桶' + when '03' then '清洗' + else '' end as status_name, + bag.waste_type, + dictdtl.label as waste_type_name + FROM + MD_PB_BagRecord AS bag + LEFT JOIN MD_ME_MaterialBase material ON material.material_id = bag.material_id + left join sys_dict_detail dictdtl on dictdtl.value =bag.waste_type and dictdtl.dict_id='46' + WHERE + 1 =1 + OPTION 输入.bag_id <> "" + bag.bag_id = 输入.bag_id + ENDOPTION + ENDSELECT + ENDQUERY + ENDIF + + + IF 输入.flag = "3" + QUERY + SELECT + curdate( ) AS create_date, + bag.bagrecord_id, + bag.bag_id, + bag.material_id, + ext_id, + material.material_code, + material.material_name, + bag.print_type, + bag.return_person, + bag.pcsn, + bag.storage_qty, + bag.print_times, + DATE_FORMAT( bag.input_time, '%Y-%m-%d' ) as input_time + FROM + MD_PB_BagRecord AS bag + LEFT JOIN md_me_materialbase AS material ON material.material_id = bag.material_id + where 1=1 + OPTION 输入.bag_id <> "" + bag.bag_id = 输入.bag_id + ENDOPTION + ENDSELECT + ENDQUERY + ENDIF + + + IF 输入.flag = "4" + QUERY + SELECT + max( sys_user.user_id )as accountId, + max( sys_user.username ) as username, + max( sys_roles_menus.menu_id ) as menu_id, + max( sys_menu.component ) as component, + max( sys_menu.path ) as path, + max( sys_menu.NAME ) as name + FROM + sys_user AS sys_user + LEFT JOIN sys_users_roles AS sys_users_roles ON sys_users_roles.user_id = sys_user.user_id + LEFT JOIN sys_role AS sys_role ON sys_role.role_id = sys_users_roles.role_id + LEFT JOIN sys_roles_menus AS sys_roles_menus ON sys_roles_menus.role_id = sys_role.role_id + LEFT JOIN sys_menu AS sys_menu ON sys_menu.menu_id = sys_roles_menus.menu_id + WHERE + sys_menu.path LIKE 'RF%' + AND sys_menu.hidden = 1 + OPTION 输入.accountId <> "" + sys_user.user_id = 输入.accountId + ENDOPTION + OPTION 输入.component <> "" + sys_menu.component = 输入.component + ENDOPTION + OPTION 输入.pid <> "" + sys_menu.pid = 输入.pid + ENDOPTION + + GROUP BY + sys_menu.menu_id, + sys_menu.title, + sys_menu.component, + sys_menu.path, + sys_menu.NAME, + sys_menu.menu_sort + ORDER BY sys_menu.menu_sort + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "5" + QUERY + SELECT + bucket.bucket_record_id, + bucket.bucketunique, + bucket.material_id, + bucket.print_type, + material_code, + material_name, + bucket.pcsn, + bucket.qty_unit_id, + bucket.qty_unit_name, + bucket.storage_qty, + bucket.STATUS, + bucket.record_order, + DATE_FORMAT( bucket.create_time, '%Y-%m-%d' ) AS date, + DATE_FORMAT( bucket.create_time, '%Y-%m-%d' ) as input_time, + ext_id, + bucket.record_order, + bucket.is_active, + "否" as is_new_name, + "0" as is_new, + case bucket.status when '01' then '生成' + when '02' then '组盘' + when '03' then '入库' + when '04' then '出库' + when '05' then '入立库' + else '' end as status_name + FROM + md_pb_bucketrecord bucket + LEFT JOIN md_me_materialbase material ON material.material_id = bucket.material_id + where 1=1 + OPTION 输入.bucketunique <> "" + bucket.bucketunique = 输入.bucketunique + ENDOPTION + ENDSELECT + ENDQUERY + ENDIF + + + IF 输入.flag = "6" + QUERY + SELECT + bag.bag_id, + bag.material_id, + material.material_code, + material.material_name, + bag.print_type, + bag.storage_qty , + "否" as is_new_name, + "0" as is_new, + bag.pcsn, + bag.return_person, + DATE_FORMAT( bag.input_time, '%Y-%m-%d' ) AS date, + DATE_FORMAT( bag.input_time, '%Y-%m-%d' ) AS input_time, + bag.bucketunique, + ext_id + FROM + MD_PB_BagRecord AS bag + LEFT JOIN md_me_materialbase AS material ON material.material_id = bag.material_id + where 1=1 + OPTION 输入.bucketunique <> "" + bag.bucketunique = 输入.bucketunique + ENDOPTION + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "7" + QUERY + SELECT + bag.bag_id, + bag.material_id, + material.material_code, + material.material_name, + bag.print_type, + bag.storage_qty, + bag.pcsn, + "是" as is_new_name, + "1" as is_new, + bag.bucketunique + FROM + MD_PB_BagRecord AS bag + LEFT JOIN md_me_materialbase AS material ON material.material_id = bag.material_id + where 1=1 + OPTION 输入.bag_id <> "" + bag.bag_id = 输入.bag_id + ENDOPTION + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "8" + QUERY + SELECT + curdate( ) AS create_date, + DATE_FORMAT( bucket.create_time, '%Y-%m-%d' ) as input_time, + ext_id, + bucket.bucket_record_id, + bucket.record_order, + bucket.is_active, + bucket.bucketunique, + bucket.material_id, + material_code, + material_name, + bucket.pcsn, + bucket.qty_unit_id, + bucket.qty_unit_name, + bucket.storage_qty, + bucket.print_type + FROM + md_pb_bucketrecord bucket + LEFT JOIN md_me_materialbase material ON material.material_id = bucket.material_id + WHERE + 1 =1 + OPTION 输入.bucketunique <> "" + bucket.bucketunique = 输入.bucketunique + ENDOPTION + ENDSELECT + ENDQUERY + ENDIF + + + IF 输入.flag = "9" + QUERY + SELECT + bucket.bucket_record_id, + bucket.bucketunique, + bucket.material_id, + material_code, + material_name, + bucket.pcsn, + bucket.qty_unit_id, + bucket.qty_unit_name, + bucket.storage_qty, + bucket.STATUS, + case bucket.status when '01' then '生成' + when '02' then '组盘' + when '03' then '入库' + when '04' then '出库' + when '05' then '入立库' + else '' end as status_name + FROM + md_pb_bucketrecord bucket + LEFT JOIN md_me_materialbase material ON material.material_id = bucket.material_id + where 1=1 + OPTION 输入.bucketunique <> "" + bucket.bucketunique = 输入.bucketunique + ENDOPTION + ENDSELECT + ENDQUERY + ENDIF + + + IF 输入.flag = "10" + QUERY + SELECT + dtl.VALUE AS waste_type, + dtl.label AS waste_type_name + FROM + sys_dict dict + LEFT JOIN sys_dict_detail dtl ON dict.dict_id = dtl.dict_id + WHERE + dict.NAME = 'MD_MATERIAL_WASTE_TYPE' + ENDSELECT + ENDQUERY + ENDIF + + + IF 输入.flag = "11" + PAGEQUERY + SELECT + device.device_id, + device.device_code, + device.device_name, + device.device_model, + device.device_specification, + device.workprocedure_id, + device.workprocedure_code, + device.workprocedure_name + FROM + em_bi_deviceinfo device + WHERE + 1 = 1 + OPTION 输入.searchbar <> "" + (device.device_code like "%" 输入.searchbar "%" + OR + device.device_name like "%" 输入.searchbar "%") + ENDOPTION + OPTION 输入.workprocedure_code <> "" + device.workprocedure_code = 输入.workprocedure_code + ENDOPTION + ENDSELECT + ENDPAGEQUERY + ENDIF + + IF 输入.flag = "12" + QUERY + SELECT + bucket.bucket_record_id, + bucket.bucketunique, + bucket.material_id, + material_code, + material_name, + bucket.pcsn, + bucket.qty_unit_id, + bucket.qty_unit_name, + bucket.storage_qty, + bucket.STATUS, + bucket.record_order, + case bucket.status when '01' then '生成' + when '02' then '组盘' + when '03' then '入库' + when '04' then '出库' + when '05' then '入立库' + when '06' then '线下处理' + else '' end as status_name, + case bucket.status when '06' then '1' + else '0' end as is_offline_hand + FROM + md_pb_bucketrecord bucket + LEFT JOIN md_me_materialbase material ON material.material_id = bucket.material_id + where 1=1 + and bucket.status in(01,02,03,06) + OPTION 输入.bucketunique <> "" + bucket.bucketunique = 输入.bucketunique + ENDOPTION + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "13" + QUERY + SELECT + bucket.*, + mb.material_code, + mb.ext_id, + mb.material_name, + DATE_FORMAT( bucket.create_time, '%Y-%m-%d' ) as input_time + FROM + pdm_bi_formulabucketrecord bucket + LEFT JOIN md_me_materialbase mb ON mb.material_id = bucket.material_id + WHERE + 1=1 + AND + bucket.bucketunique = 输入.bucketunique + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "14" + QUERY + SELECT + bucket.*, + mb.material_code, + mb.material_name, + mb.ext_id, + DATE_FORMAT( bucket.create_time, '%Y-%m-%d' ) as input_time + FROM + md_pb_bucketrecord bucket + LEFT JOIN md_me_materialbase mb ON mb.material_id = bucket.material_id + WHERE + 1=1 + AND + bucket.bucketunique = 输入.bucketunique + AND + bucket.status IN ('01','02','03') + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "15" + QUERY + SELECT + detaial.label, + detaial.`value` + FROM + sys_dict_detail detaial + LEFT JOIN sys_dict dict ON dict.dict_id = detaial.dict_id + WHERE + dict.`name` = 输入.dict_type + OPTION 输入.dict_type = "sch_area_type" + detaial.value IN ('22','23','24') + ENDOPTION + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "16" + QUERY + SELECT + point.point_id, + point.point_code, + point.point_name + FROM + sch_base_point point + WHERE + point_name LIKE '分拣机械手%' + and device_point_type='01' + ENDSELECT + ENDQUERY + ENDIF \ No newline at end of file diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/rest/SendMaterialController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/rest/SendMaterialController.java new file mode 100644 index 0000000..4da2622 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/rest/SendMaterialController.java @@ -0,0 +1,39 @@ +package org.nl.wms.pda.sendmaterial.rest; + +import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.annotation.Log; +import org.nl.wms.pda.sendmaterial.service.SendMaterialService; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +@Api(tags = "手持送料") +@RequestMapping("api/pda/sendMaterial") +@Slf4j +public class SendMaterialController { + + private final SendMaterialService sendMaterialService; + + @PostMapping("/queryPoint") + @Log("查询区域点位") + @ApiOperation("查询区域点位") + public ResponseEntity queryPoint() { + return new ResponseEntity<>(sendMaterialService.queryPoint(), HttpStatus.OK); + } + + @PostMapping("/confirm") + @Log("送料确定") + @ApiOperation("送料确定") + public ResponseEntity confirm(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(sendMaterialService.confirm(whereJson), HttpStatus.OK); + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/SendMaterialService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/SendMaterialService.java new file mode 100644 index 0000000..8e00ec0 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/SendMaterialService.java @@ -0,0 +1,19 @@ +package org.nl.wms.pda.sendmaterial.service; + +import com.alibaba.fastjson.JSONObject; + +public interface SendMaterialService { + + /** + * 查询区域点位 + * @return JSONObject + */ + JSONObject queryPoint(); + + /** + * 送料确定 + * @param whereJson / + * @return JSONObject + */ + JSONObject confirm(JSONObject whereJson); +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/impl/SendMaterialServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/impl/SendMaterialServiceImpl.java new file mode 100644 index 0000000..19d533d --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/impl/SendMaterialServiceImpl.java @@ -0,0 +1,62 @@ +package org.nl.wms.pda.sendmaterial.service.impl; + +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.wms.ext.acs.service.AcsToWmsService; +import org.nl.wms.pda.sendmaterial.service.SendMaterialService; +import org.nl.wql.WQL; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +@Service +@RequiredArgsConstructor +@Slf4j +public class SendMaterialServiceImpl implements SendMaterialService { + + private final AcsToWmsService acsToWmsService; + + @Override + public JSONObject queryPoint() { + JSONObject result = new JSONObject(); + // 1.查询区域:豪凯区域 HKQY01、共挤区域 GJQY01 + JSONArray regionArr = WQL.getWO("PDA_SENDMATERIAL_01").addParam("flag", "1").process().getResultJSONArray(0); + // 2.根据区域查询对应的物料上料位 + JSONObject resultJson = new JSONObject(); + for (int i = 0; i < regionArr.size(); i++) { + JSONObject jsonRegion = regionArr.getJSONObject(i); + JSONArray pointArr = WQL.getWO("PDA_SENDMATERIAL_01").addParam("flag", "2").addParam("region_id", jsonRegion.getString("region_id")).process().getResultJSONArray(0); + jsonRegion.put("pointArr", pointArr); + } + resultJson.put("result", regionArr); + result.put("srb", resultJson); + result.put("code", "1"); + result.put("desc", "查询成功"); + return result; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public JSONObject confirm(JSONObject whereJson) { + JSONObject result = new JSONObject(); + // 1、准备参数:point_code、type:2为共挤区域,8为豪凯区域 + JSONObject param = new JSONObject(); + param.put("type",whereJson.getString("type")); + param.put("point_code",whereJson.getString("point_code")); + param.put("qty",whereJson.getString("qty")); + // 2、调用接口 + JSONObject json = acsToWmsService.apply(param); + if (StrUtil.equals(json.getString("status"), "200")) { + result.put("srb", ""); + result.put("code", "1"); + result.put("desc", "操作成功"); + } else { + result.put("srb", ""); + result.put("code", "0"); + result.put("desc", "操作失败:"+json.getString("message")); + } + return result; + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/wql/PDA_SENDMATERIAL_01.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/wql/PDA_SENDMATERIAL_01.wql new file mode 100644 index 0000000..5c5c7ce --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/wql/PDA_SENDMATERIAL_01.wql @@ -0,0 +1,77 @@ +[交易说明] + 交易名: 手持送料查询 + 所属模块: + 功能简述: + 版权所有: + 表引用: + 版本经历: + +[数据库] + --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 + +[IO定义] + ################################################# + ## 表字段对应输入参数 + ################################################# + 输入.flag TYPEAS s_string + 输入.region_id TYPEAS s_string + +[临时表] + --这边列出来的临时表就会在运行期动态创建 + +[临时变量] + --所有中间过程变量均可在此处定义 + +[业务过程] + + ########################################## + # 1、输入输出检查 # + ########################################## + + + ########################################## + # 2、主过程前处理 # + ########################################## + + + ########################################## + # 3、业务主过程 # + ########################################## + + IF 输入.flag = "1" + QUERY + SELECT + region_id, + region_code, + region_name + FROM + sch_base_region + WHERE + is_used = '1' + AND region_code in ('HKQY01','GJQY01') + + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "2" + QUERY + SELECT + point_id, + point_code, + point_name + FROM + sch_base_point + WHERE + is_used = '1' + AND is_delete = '0' + AND is_host = '0' + AND device_point_type = '2' + + OPTION 输入.region_id <> "" + region_id = 输入.region_id + ENDOPTION + + ENDSELECT + ENDQUERY + ENDIF \ No newline at end of file diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/rest/SendVehicleController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/rest/SendVehicleController.java new file mode 100644 index 0000000..7d31a5b --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/rest/SendVehicleController.java @@ -0,0 +1,41 @@ +package org.nl.wms.pda.sendvehicle.rest; + +import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.annotation.Log; +import org.nl.wms.pda.callvehicle.service.CallVehicleService; +import org.nl.wms.pda.sendmaterial.service.SendMaterialService; +import org.nl.wms.pda.sendvehicle.service.SendVehicleService; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +@Api(tags = "手持送空托盘") +@RequestMapping("api/pda/sendVehicle") +@Slf4j +public class SendVehicleController { + + private final SendVehicleService sendVehicleService; + + @PostMapping("/queryPoint") + @Log("查询区域点位") + @ApiOperation("查询区域点位") + public ResponseEntity queryPoint() { + return new ResponseEntity<>(sendVehicleService.queryPoint(), HttpStatus.OK); + } + + @PostMapping("/confirm") + @Log("送空托盘确定") + @ApiOperation("送空托盘确定") + public ResponseEntity confirm(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(sendVehicleService.confirm(whereJson), HttpStatus.OK); + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/SendVehicleService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/SendVehicleService.java new file mode 100644 index 0000000..f4d5ad0 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/SendVehicleService.java @@ -0,0 +1,19 @@ +package org.nl.wms.pda.sendvehicle.service; + +import com.alibaba.fastjson.JSONObject; + +public interface SendVehicleService { + + /** + * 查询区域点位 + * @return JSONObject + */ + JSONObject queryPoint(); + + /** + * 送空托盘确定 + * @param whereJson / + * @return JSONObject + */ + JSONObject confirm(JSONObject whereJson); +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java new file mode 100644 index 0000000..857fed9 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java @@ -0,0 +1,70 @@ +package org.nl.wms.pda.sendvehicle.service.impl; + +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.wms.ext.acs.service.AcsToWmsService; +import org.nl.wms.pda.callvehicle.service.CallVehicleService; +import org.nl.wms.pda.sendvehicle.service.SendVehicleService; +import org.nl.wms.sch.tasks.RegionTypeEnum; +import org.nl.wql.WQL; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +@Service +@RequiredArgsConstructor +@Slf4j +public class SendVehicleServiceImpl implements SendVehicleService { + + private final AcsToWmsService acsToWmsService; + + @Override + public JSONObject queryPoint() { + JSONObject result = new JSONObject(); + // 1.查询区域:输送区域 SSX01、油漆区域 YQQY01 + JSONArray regionArr = WQL.getWO("PDA_SENDVEHICLE_01").addParam("flag", "1").process().getResultJSONArray(0); + // 2.根据区域查询对应的物料上料位 + JSONObject resultJson = new JSONObject(); + for (int i = 0; i < regionArr.size(); i++) { + JSONObject jsonRegion = regionArr.getJSONObject(i); + if (StrUtil.equals(jsonRegion.getString("region_id"), RegionTypeEnum.SSX.getId())) { + JSONArray pointArr = WQL.getWO("PDA_SENDVEHICLE_01").addParam("flag", "2").addParam("region_id", jsonRegion.getString("region_id")).process().getResultJSONArray(0); + jsonRegion.put("pointArr", pointArr); + } else { + JSONArray pointArr = WQL.getWO("PDA_SENDVEHICLE_01").addParam("flag", "3").addParam("region_id", jsonRegion.getString("region_id")).process().getResultJSONArray(0); + jsonRegion.put("pointArr", pointArr); + } + } + resultJson.put("result", regionArr); + result.put("srb", resultJson); + result.put("code", "1"); + result.put("desc", "查询成功"); + return result; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public JSONObject confirm(JSONObject whereJson) { + JSONObject result = new JSONObject(); + // 1、准备参数:point_code、type:6为输送线区域,5为油漆区域 + JSONObject param = new JSONObject(); + param.put("type",whereJson.getString("type")); + param.put("point_code",whereJson.getString("point_code")); + param.put("vehicle_code",whereJson.getString("vehicle_code")); + param.put("qty",whereJson.getString("qty")); + // 2、调用接口 + JSONObject json = acsToWmsService.apply(param); + if (StrUtil.equals(json.getString("status"), "200")) { + result.put("srb", ""); + result.put("code", "1"); + result.put("desc", "操作成功"); + } else { + result.put("srb", ""); + result.put("code", "0"); + result.put("desc", "操作失败:"+json.getString("message")); + } + return result; + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/wql/PDA_SENDVEHICLE_01.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/wql/PDA_SENDVEHICLE_01.wql new file mode 100644 index 0000000..4c7fdef --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/wql/PDA_SENDVEHICLE_01.wql @@ -0,0 +1,99 @@ +[交易说明] + 交易名: 手持送空托盘查询 + 所属模块: + 功能简述: + 版权所有: + 表引用: + 版本经历: + +[数据库] + --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 + +[IO定义] + ################################################# + ## 表字段对应输入参数 + ################################################# + 输入.flag TYPEAS s_string + 输入.region_id TYPEAS s_string + +[临时表] + --这边列出来的临时表就会在运行期动态创建 + +[临时变量] + --所有中间过程变量均可在此处定义 + +[业务过程] + + ########################################## + # 1、输入输出检查 # + ########################################## + + + ########################################## + # 2、主过程前处理 # + ########################################## + + + ########################################## + # 3、业务主过程 # + ########################################## + + IF 输入.flag = "1" + QUERY + SELECT + region_id, + region_code, + region_name + FROM + sch_base_region + WHERE + is_used = '1' + AND region_code in ('SSX01','YQQY01') + + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "2" + QUERY + SELECT + point_id, + point_code, + point_name + FROM + sch_base_point + WHERE + is_used = '1' + AND is_delete = '0' + AND is_host = '0' + AND device_point_type = '6' + + OPTION 输入.region_id <> "" + region_id = 输入.region_id + ENDOPTION + + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "3" + QUERY + SELECT + point_id, + point_code, + point_name + FROM + sch_base_point + WHERE + is_used = '1' + AND is_delete = '0' + AND is_host = '0' + AND device_point_type = '4' + + OPTION 输入.region_id <> "" + region_id = 输入.region_id + ENDOPTION + + ENDSELECT + ENDQUERY + ENDIF \ No newline at end of file diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/dto/PointDto.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/dto/PointDto.java index 3fc8fef..4e53a94 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/dto/PointDto.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/dto/PointDto.java @@ -120,4 +120,9 @@ public class PointDto implements Serializable { * 修改时间 */ private String update_time; + + /** + * 设备点位类型 + */ + private String device_point_type; } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql index 3fed283..221d83b 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/QSCH_BASE_POINT.wql @@ -76,7 +76,8 @@ point.update_optname, point.update_time, point.vehicle_type, - point.is_host + point.is_host, + point.device_point_type FROM sch_base_point point LEFT JOIN SCH_BASE_Region region ON point.region_id = region.region_id diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/sch.xls b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/service/wql/sch.xls index 281a5db4669387c9259bcbda4463221cad93615f..71b7df81ce4633589ec8937ca96725fe6fd537c5 100644 GIT binary patch delta 8810 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 delta 8664 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 diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/RegionTypeEnum.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/RegionTypeEnum.java index d1f456e..3e17c10 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/RegionTypeEnum.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/RegionTypeEnum.java @@ -4,7 +4,7 @@ package org.nl.wms.sch.tasks; * 任务状态枚举 */ public enum RegionTypeEnum { - CPQY(1, "CPQY01", "成品区域","1557538851726168064"), + CPQYA(1, "CPQYA01", "成品区域A","1557538851726168064"), YSQA(2, "YSQA01", "养生A区","1557539288307077120"), YSQB(3, "YSQB01", "养生B区","1557539423292362752"), GJQY(4, "GJQY01", "共挤区","1557539744848678912"), @@ -12,7 +12,10 @@ public enum RegionTypeEnum { DPJQA(6, "DPJQA01", "叠盘架A区","1558015562792177664"), DPJQB(7, "DPJQB01", "叠盘架B区","1558015634472833024"), KTPHCQA(8, "KTPHCQA01", "空托盘缓存A区","1558015810096730112"), - KTPHCQB(8, "KTPHCQB01", "空托盘缓存B区","1558015870570205184"); + KTPHCQB(9, "KTPHCQB01", "空托盘缓存B区","1558015870570205184"), + HKQY(10, "HKQY01", "豪凯区域","1564862312702152704"), + CPQYB(11, "CPQYB01", "成品区域B","1564874102089584640"), + SSX(12, "SSX01", "输送线区域","1559374522581389312"); private int index; private String code; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendMaterialTask.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendMaterialTask.java index c9e927d..4efa901 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendMaterialTask.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendMaterialTask.java @@ -295,8 +295,14 @@ public class SendMaterialTask extends AbstractAcsTask { if (ObjectUtil.isEmpty(jsonEndPoint)) throw new BadRequestException("仓位不足"); next_point_code = jsonEndPoint.getString("point_code"); - } else { - throw new BadRequestException("业务类型错误"); + } else if (StrUtil.equals(jsonStartRegion.getString("region_code"),RegionTypeEnum.HKQY.getCode())) { + JSONObject map = new JSONObject(); + map.put("flag", "2"); + map.put("region_code", RegionTypeEnum.CPQYA.getCode()); + JSONObject jsonEndPoint = WQL.getWO("ST_REGION_IN_01").addParamMap(map).process().uniqueResult(0); + + if (ObjectUtil.isEmpty(jsonEndPoint)) throw new BadRequestException("仓位不足"); + next_point_code = jsonEndPoint.getString("point_code"); } JSONObject resuft = new JSONObject(); diff --git a/mes/hd/nladmin-system/src/test/java/org/nl/Test3.java b/mes/hd/nladmin-system/src/test/java/org/nl/Test3.java index 6b21fdd..1b35e89 100644 --- a/mes/hd/nladmin-system/src/test/java/org/nl/Test3.java +++ b/mes/hd/nladmin-system/src/test/java/org/nl/Test3.java @@ -1241,7 +1241,7 @@ public class Test3 extends BaseTest { } JSONObject json = new JSONObject(); json.put("struct_id", IdUtil.getSnowflake(1,1).nextId()); - json.put("struct_code", code1+"01"+ code); + json.put("struct_code", "YA"+code1+"-01-"+ code); json.put("struct_name", String.valueOf(i) + "排" + "1 层" + String.valueOf(j) + "列"); json.put("simple_name",json.getString("struct_name")); json.put("region_id", "1557539288307077120"); @@ -1261,6 +1261,82 @@ public class Test3 extends BaseTest { System.out.println("创建成功"); } + @Test + public void createPoint2() { + WQLObject tab = WQLObject.getWQLObject("ST_IVT_StructAttr"); + // 成品A 4排 5层 46列 成品B 4排 5层16列 + for (int i = 1; i <=4; i++) { + String code1 = ""; + if (i<10) { + code1 = "0"+ String.valueOf(i); + } else { + code1 = String.valueOf(i); + } + for (int j = 1; j <= 5; j++) { + String code = ""; + if (j<10) { + code = "0"+ String.valueOf(j); + } else { + code = String.valueOf(j); + } + for (int k = 1; k <= 16; k++) { + String code3 = ""; + if (j<10) { + code3 = "0"+ String.valueOf(k); + } else { + code3 = String.valueOf(k); + } + JSONObject json = new JSONObject(); + json.put("struct_id", IdUtil.getSnowflake(1,1).nextId()); + json.put("struct_code", "CA"+code1+"-"+code+"-"+ code3); + json.put("struct_name", String.valueOf(i) + "排" + String.valueOf(j)+"层" + String.valueOf(k) + "列"); + json.put("simple_name",json.getString("struct_name")); + json.put("region_id", "1564874102089584640"); + json.put("region_code","CPQYB01"); + json.put("region_name","成品区域B"); + json.put("stor_id","1528627964823080960"); + json.put("stor_code","F103"); + json.put("stor_name","永裕仓库"); + json.put("stor_type","01"); + json.put("create_id","1"); + json.put("create_name","管理员"); + json.put("create_time", DateUtil.now()); + json.put("material_height_type", "1"); + tab.insert(json); + } + } + } + System.out.println("创建成功"); + } } + + +class A implements Runnable { + static A a = new A(); // 创建类变量 + + @Override + public void run() { + this.method(); + } + + public synchronized void method() { + System.out.println("我是线程" + Thread.currentThread().getName()); + try { + Thread.sleep(3000); + } catch (Exception e) { + e.printStackTrace(); + } + System.out.println(Thread.currentThread().getName() + "结束"); + } +} + +class B { + public static void main(String[] args) { + Thread thread1 = new Thread(A.a); + Thread thread2 = new Thread(A.a); + thread1.start(); + thread2.start(); + } +} diff --git a/mes/qd/src/views/wms/sch/point/index.vue b/mes/qd/src/views/wms/sch/point/index.vue index 69781bc..90664b1 100644 --- a/mes/qd/src/views/wms/sch/point/index.vue +++ b/mes/qd/src/views/wms/sch/point/index.vue @@ -129,9 +129,9 @@ :before-close="crud.cancelCU" :visible.sync="crud.status.cu > 0" :title="crud.status.title" - width="500px" + width="520px" > - + @@ -171,6 +171,21 @@ /> + + + + + @@ -289,10 +304,10 @@ import udOperation from '@crud/UD.operation' import pagination from '@crud/Pagination' /*import checkoutbill from '@/api/wms/st/core/outbill/checkoutbill'*/ -const defaultForm = { point_id: null, is_host: null, point_code: null, point_name: null, area_type: null, point_type: '00', point_status: '00', lock_type: '00', vehicle_code: null, source_id: null, remark: null, is_used: null, is_delete: null, create_id: null, create_name: null, create_time: null, update_optid: null, update_optname: null, update_time: null } +const defaultForm = { device_point_type: null, point_id: null, is_host: null, point_code: null, point_name: null, area_type: null, point_type: '00', point_status: '00', lock_type: '00', vehicle_code: null, source_id: null, remark: null, is_used: null, is_delete: null, create_id: null, create_name: null, create_time: null, update_optid: null, update_optname: null, update_time: null } export default { name: 'Point', - dicts: ['sch_point_type', 'sch_area_type', 'sch_point_status', 'is_used', 'd_lock_type', 'SCH_TASK_TYPE_DTL', 'storagevehicle_type', 'IS_HOST'], + dicts: ['sch_point_type', 'sch_area_type', 'sch_point_status', 'is_used', 'd_lock_type', 'SCH_TASK_TYPE_DTL', 'storagevehicle_type', 'IS_HOST', 'device_point_type'], components: { pagination, crudOperation, rrOperation, udOperation }, mixins: [presenter(), header(), form(defaultForm), crud()], cruds() { From e5a1fc8c1839c12dc65f32f95e59fdddb514bbe5 Mon Sep 17 00:00:00 2001 From: liuxy Date: Fri, 9 Sep 2022 15:33:48 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CallMaterialServiceImpl.java | 8 ++++---- .../rest/CallVehicleController.java | 2 +- .../service/impl/CallVehicleServiceImpl.java | 19 +++++++++++++------ .../service/impl/SendMaterialServiceImpl.java | 17 ++++++++++++----- .../rest/SendVehicleController.java | 2 +- .../service/impl/SendVehicleServiceImpl.java | 19 +++++++++++++------ 6 files changed, 44 insertions(+), 23 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/impl/CallMaterialServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/impl/CallMaterialServiceImpl.java index 0b12878..5f17db7 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/impl/CallMaterialServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callmaterial/service/impl/CallMaterialServiceImpl.java @@ -29,8 +29,8 @@ public class CallMaterialServiceImpl implements CallMaterialService { JSONArray pointArr = WQL.getWO("PDA_CALLMATERIAL_01").addParam("flag", "2").addParam("region_id", jsonRegion.getString("region_id")).process().getResultJSONArray(0); jsonRegion.put("pointArr", pointArr); } - resultJson.put("result", regionArr); - result.put("srb", resultJson); + resultJson.put("regionja", regionArr); + result.put("result", resultJson); result.put("code", "1"); result.put("desc", "查询成功"); return result; @@ -47,11 +47,11 @@ public class CallMaterialServiceImpl implements CallMaterialService { // 2、调用接口 JSONObject json = acsToWmsService.apply(param); if (StrUtil.equals(json.getString("status"), "200")) { - result.put("srb", ""); + result.put("result", ""); result.put("code", "1"); result.put("desc", "操作成功"); } else { - result.put("srb", ""); + result.put("result", ""); result.put("code", "0"); result.put("desc", "操作失败:"+json.getString("message")); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/rest/CallVehicleController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/rest/CallVehicleController.java index d677063..f94232a 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/rest/CallVehicleController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/rest/CallVehicleController.java @@ -18,7 +18,7 @@ import org.springframework.web.bind.annotation.RestController; @RestController @RequiredArgsConstructor @Api(tags = "手持呼叫空托盘") -@RequestMapping("api/pda/callVehicle") +@RequestMapping("api/pda/callEmpty") @Slf4j public class CallVehicleController { diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/impl/CallVehicleServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/impl/CallVehicleServiceImpl.java index ae3f46d..ebb0fb4 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/impl/CallVehicleServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/callvehicle/service/impl/CallVehicleServiceImpl.java @@ -8,6 +8,7 @@ import lombok.extern.slf4j.Slf4j; import org.nl.wms.ext.acs.service.AcsToWmsService; import org.nl.wms.pda.callvehicle.service.CallVehicleService; import org.nl.wql.WQL; +import org.nl.wql.core.bean.WQLObject; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -30,8 +31,8 @@ public class CallVehicleServiceImpl implements CallVehicleService { JSONArray pointArr = WQL.getWO("PDA_CALLVEHICLE_01").addParam("flag", "2").addParam("region_id", jsonRegion.getString("region_id")).process().getResultJSONArray(0); jsonRegion.put("pointArr", pointArr); } - resultJson.put("result", regionArr); - result.put("srb", resultJson); + resultJson.put("regionja", regionArr); + result.put("result", resultJson); result.put("code", "1"); result.put("desc", "查询成功"); return result; @@ -43,17 +44,23 @@ public class CallVehicleServiceImpl implements CallVehicleService { JSONObject result = new JSONObject(); // 1、准备参数:point_code、type:1为共挤区域,3为油漆区域 JSONObject param = new JSONObject(); - param.put("type",whereJson.getString("type")); + + String region_id = whereJson.getString("region_id"); + JSONObject jsonObject = WQLObject.getWQLObject("sch_base_region").query("region_id ='" + region_id + "'").uniqueResult(0); + String region_code = jsonObject.getString("region_code"); + if (StrUtil.equals(region_code, "GJQY01")) param.put("type","1"); + if (StrUtil.equals(region_code, "YQQY01")) param.put("type","3"); + param.put("point_code",whereJson.getString("point_code")); - param.put("qty",whereJson.getString("qty")); + param.put("vehicle_num",whereJson.getString("qty")); // 2、调用接口 JSONObject json = acsToWmsService.apply(param); if (StrUtil.equals(json.getString("status"), "200")) { - result.put("srb", ""); + result.put("result", ""); result.put("code", "1"); result.put("desc", "操作成功"); } else { - result.put("srb", ""); + result.put("result", ""); result.put("code", "0"); result.put("desc", "操作失败:"+json.getString("message")); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/impl/SendMaterialServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/impl/SendMaterialServiceImpl.java index 19d533d..ecc44bc 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/impl/SendMaterialServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendmaterial/service/impl/SendMaterialServiceImpl.java @@ -8,6 +8,7 @@ import lombok.extern.slf4j.Slf4j; import org.nl.wms.ext.acs.service.AcsToWmsService; import org.nl.wms.pda.sendmaterial.service.SendMaterialService; import org.nl.wql.WQL; +import org.nl.wql.core.bean.WQLObject; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -30,8 +31,8 @@ public class SendMaterialServiceImpl implements SendMaterialService { JSONArray pointArr = WQL.getWO("PDA_SENDMATERIAL_01").addParam("flag", "2").addParam("region_id", jsonRegion.getString("region_id")).process().getResultJSONArray(0); jsonRegion.put("pointArr", pointArr); } - resultJson.put("result", regionArr); - result.put("srb", resultJson); + resultJson.put("regionja", regionArr); + result.put("result", resultJson); result.put("code", "1"); result.put("desc", "查询成功"); return result; @@ -43,17 +44,23 @@ public class SendMaterialServiceImpl implements SendMaterialService { JSONObject result = new JSONObject(); // 1、准备参数:point_code、type:2为共挤区域,8为豪凯区域 JSONObject param = new JSONObject(); - param.put("type",whereJson.getString("type")); + + String region_id = whereJson.getString("region_id"); + JSONObject jsonObject = WQLObject.getWQLObject("sch_base_region").query("region_id ='" + region_id + "'").uniqueResult(0); + String region_code = jsonObject.getString("region_code"); + if (StrUtil.equals(region_code, "GJQY01")) param.put("type","2"); + if (StrUtil.equals(region_code, "HKQY01")) param.put("type","8"); + param.put("point_code",whereJson.getString("point_code")); param.put("qty",whereJson.getString("qty")); // 2、调用接口 JSONObject json = acsToWmsService.apply(param); if (StrUtil.equals(json.getString("status"), "200")) { - result.put("srb", ""); + result.put("result", ""); result.put("code", "1"); result.put("desc", "操作成功"); } else { - result.put("srb", ""); + result.put("result", ""); result.put("code", "0"); result.put("desc", "操作失败:"+json.getString("message")); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/rest/SendVehicleController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/rest/SendVehicleController.java index 7d31a5b..894c99f 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/rest/SendVehicleController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/rest/SendVehicleController.java @@ -19,7 +19,7 @@ import org.springframework.web.bind.annotation.RestController; @RestController @RequiredArgsConstructor @Api(tags = "手持送空托盘") -@RequestMapping("api/pda/sendVehicle") +@RequestMapping("api/pda/sendEmpty") @Slf4j public class SendVehicleController { diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java index 857fed9..bba5b77 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java @@ -10,6 +10,7 @@ import org.nl.wms.pda.callvehicle.service.CallVehicleService; import org.nl.wms.pda.sendvehicle.service.SendVehicleService; import org.nl.wms.sch.tasks.RegionTypeEnum; import org.nl.wql.WQL; +import org.nl.wql.core.bean.WQLObject; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -37,8 +38,8 @@ public class SendVehicleServiceImpl implements SendVehicleService { jsonRegion.put("pointArr", pointArr); } } - resultJson.put("result", regionArr); - result.put("srb", resultJson); + resultJson.put("regionja", regionArr); + result.put("result", resultJson); result.put("code", "1"); result.put("desc", "查询成功"); return result; @@ -50,18 +51,24 @@ public class SendVehicleServiceImpl implements SendVehicleService { JSONObject result = new JSONObject(); // 1、准备参数:point_code、type:6为输送线区域,5为油漆区域 JSONObject param = new JSONObject(); - param.put("type",whereJson.getString("type")); + + String region_id = whereJson.getString("region_id"); + JSONObject jsonObject = WQLObject.getWQLObject("sch_base_region").query("region_id ='" + region_id + "'").uniqueResult(0); + String region_code = jsonObject.getString("region_code"); + if (StrUtil.equals(region_code, "SSX01")) param.put("type","6"); + if (StrUtil.equals(region_code, "YQQY01")) param.put("type","5"); + param.put("point_code",whereJson.getString("point_code")); param.put("vehicle_code",whereJson.getString("vehicle_code")); - param.put("qty",whereJson.getString("qty")); + param.put("vehicle_num",whereJson.getString("qty")); // 2、调用接口 JSONObject json = acsToWmsService.apply(param); if (StrUtil.equals(json.getString("status"), "200")) { - result.put("srb", ""); + result.put("result", ""); result.put("code", "1"); result.put("desc", "操作成功"); } else { - result.put("srb", ""); + result.put("result", ""); result.put("code", "0"); result.put("desc", "操作失败:"+json.getString("message")); }