diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/cockpit/service/impl/CockpitServiceImpl.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/cockpit/service/impl/CockpitServiceImpl.java index 3d5d1c9..9d29919 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/cockpit/service/impl/CockpitServiceImpl.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/cockpit/service/impl/CockpitServiceImpl.java @@ -15,6 +15,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.nl.common.exception.BadRequestException; import org.nl.common.utils.ColaBeanUtils; +import org.nl.common.utils.RedisUtils; import org.nl.common.utils.SecurityUtils; import org.nl.wms.cockpit.service.CockpitService; import org.nl.wms.cockpit.service.dao.CommonData; @@ -88,6 +89,9 @@ public class CockpitServiceImpl implements CockpitService { @Autowired PdmBdSolidifyPlanServiceImpl pdmBdSolidifyPlanServiceImpl; + @Autowired + private RedisUtils redisUtils; + /** * 总览 @@ -313,48 +317,69 @@ public class CockpitServiceImpl implements CockpitService { switch (point.getRegion_code()) { case RegionCodeConstant.COATED_PLATE_LINE_AREA: // hint: 涂板线是作为一整台设备显示。point:设备点 + JSONArray baoshijian= (JSONArray) redisUtils.get("baoshijian"); points = pointService.getSubSites(deviceCode); res.put("device_code", deviceCode); res.put("device_name", point.getPoint_name()); - res.put("mode", "2"); - res.put("status", "1"); - res.put("error", "0"); - res.put("open_time", DateUtil.now()); - res.put("standby_time", 20); - res.put("production_time", 20); - res.put("error_time", 0); - res.put("material", "01200000"); +// res.put("mode", "2"); +// res.put("status", "1"); +// res.put("error", "0"); +// res.put("open_time", DateUtil.now()); +// res.put("standby_time", 20); +// res.put("production_time", 20); +// res.put("error_time", 0); +// res.put("material", "01200000"); JSONArray array = new JSONArray(); + // 获取最近3条工单数据 + List targetAchievementList = cockpitMapper.getDeviceLimitOrders(deviceCode, 3); + JSONArray productionTask = JSONArray.parseArray(JSON.toJSONString(targetAchievementList)); + res.put("production_tasks", productionTask); for (int i = 0; i < points.size(); i++) { SchBasePoint pointObj = points.get(i); JSONObject one = new JSONObject(); one.put("device_code", pointObj.getPoint_code()); one.put("device_name", pointObj.getPoint_name()); - one.put("mode", "2"); - one.put("move", "0"); - one.put("material_type", pointObj.getCan_vehicle_type()); - one.put("error", "0"); +// one.put("mode", "2"); + for(Object object:baoshijian){ + JSONObject jsonObject= (JSONObject) object; + if(pointObj.getPoint_code().equals(jsonObject.getString("device_code"))){ + one.put("move",jsonObject.getString("move")==null?"0":jsonObject.getString("move")); + } + } +// one.put("move", "0"); + one.put("material_name", targetAchievementList.size()!=0?targetAchievementList.get(0).getMaterial_name():null); +// one.put("error", "0"); array.add(one); } res.put("details", array); - // 获取最近3条工单数据 - List targetAchievementList = cockpitMapper.getDeviceLimitOrders(deviceCode, 3); - JSONArray productionTask = JSONArray.parseArray(JSON.toJSONString(targetAchievementList)); - res.put("production_tasks", productionTask); break; case RegionCodeConstant.CURING_ZONE: // hint: 固化室,需要显示整个设备+内部位置明细 points = pointService.getSubSites(deviceCode); // 小固化位置以及进出口(入口是不管的) + JSONArray guhuashi= (JSONArray) redisUtils.get("guhuashi"); + for(Object object:guhuashi){ + JSONObject jsonObject= (JSONObject) object; + if(deviceCode.equals(jsonObject.getString("device_code"))){ + res.put("temperature_setting", jsonObject.getString("temperature_setting")); + res.put("temperature", jsonObject.getString("temperature")); + res.put("humidity_setting", jsonObject.getString("humidity_setting")); + res.put("humidity", jsonObject.getString("humidity")); + res.put("total_running_time", jsonObject.getString("total_running_time")); + res.put("current_stage", jsonObject.getString("current_stage")); + res.put("executing_stage_num", jsonObject.getString("executing_stage_num")); + res.put("device_statue", jsonObject.getString("device_statue")); + } + } res.put("device_code", deviceCode); res.put("device_name", point.getPoint_name()); - res.put("temperature_setting", 50); - res.put("temperature", 20); - res.put("humidity_setting", 20); - res.put("humidity", 10); - res.put("total_running_time", 8); - res.put("current_stage", 0); - res.put("executing_stage_num", 1); - res.put("device_statue", 1); +// res.put("temperature_setting", 50); +// res.put("temperature", 20); +// res.put("humidity_setting", 20); +// res.put("humidity", 10); +// res.put("total_running_time", 8); +// res.put("current_stage", 0); +// res.put("executing_stage_num", 1); +// res.put("device_statue", 1); JSONArray ghsArray = new JSONArray(); for (int i = 0; i < points.size(); i++) { SchBasePoint pointObj = points.get(i); @@ -375,11 +400,11 @@ public class CockpitServiceImpl implements CockpitService { points = pointService.getSubSites(deviceCode); res.put("device_code", deviceCode); res.put("device_name", point.getPoint_name()); - res.put("mode", 0); - res.put("open_time", DateUtil.now()); - res.put("standby_time", 20); - res.put("production_time", 10); - res.put("error_time", 8); +// res.put("mode", 0); +// res.put("open_time", DateUtil.now()); +// res.put("standby_time", 20); +// res.put("production_time", 10); +// res.put("error_time", 8); res.put("material_type", ObjectUtil.isNotEmpty(point.getVehicle_type()) ? point.getVehicle_type() : "-"); res.put("end_time", "-"); JSONArray ssxArray = new JSONArray(); @@ -404,7 +429,7 @@ public class CockpitServiceImpl implements CockpitService { // 货位直接显示,获取组盘信息,组装数据反馈 res.put("device_code", deviceCode); res.put("device_name", point.getPoint_name()); - res.put("vehicle_code", ObjectUtil.isNotEmpty(point.getVehicle_code()) ? point.getPoint_code() : "-"); + res.put("vehicle_code", ObjectUtil.isNotEmpty(point.getVehicle_code()) ? point.getVehicle_code() : "-"); res.put("vehicle_type", ObjectUtil.isNotEmpty(point.getVehicle_type()) ? point.getVehicle_type() : "-"); if (ObjectUtil.isNotEmpty(point.getVehicle_type()) && ObjectUtil.isNotEmpty(point.getVehicle_code())) { JSONObject groupInfo = cockpitMapper.getVehicleGroupInfo(point.getVehicle_code(), point.getVehicle_type()); @@ -456,119 +481,85 @@ public class CockpitServiceImpl implements CockpitService { Random random = new Random(); int lowerBound = 10000; int upperBound = 18000; - for (int i = 1; i <= 4; i++) { - JSONObject agv = new JSONObject(); - agv.put("device_name", "AGV" + i); - agv.put("device_code", i); - agv.put("device_status", "IDLE"); - agv.put("energyLevel", 80); - agv.put("transportOrder", null); - agv.put("positionX", random.nextInt(upperBound - lowerBound + 1) + lowerBound); - agv.put("positionY", random.nextInt(upperBound - lowerBound + 1) + lowerBound); - agv.put("positionAngle", 90); - array.add(agv); - } - for (int i = 1; i <= 7; i++) { - JSONObject rgv_z = new JSONObject(); - rgv_z.put("vehicle", "RGV-Z-" + i); - rgv_z.put("energyLevel", 80); - rgv_z.put("status", "IDLE"); - rgv_z.put("task_code", null); - rgv_z.put("angle", 90); - rgv_z.put("rfid", "1-" + i + "-2"); - rgv_z.put("Relation_vehicle", null); - rgv_z.put("end_time", null); - rgv_z.put("open_time", DateUtil.now()); - rgv_z.put("standby_time", 0); - rgv_z.put("production_time", 0); - rgv_z.put("error_time", 0); - array.add(rgv_z); - } - for (int i = 1; i <= 13; i++) { - JSONObject rgv_m = new JSONObject(); - rgv_m.put("vehicle", "RGV-M-" + i); - rgv_m.put("energyLevel", 80); - rgv_m.put("status", "IDLE"); - rgv_m.put("angle", 90); - rgv_m.put("rfid", "2-" + i + "-2"); - rgv_m.put("Relation_vehicle", null); - rgv_m.put("end_time", null); - rgv_m.put("open_time", DateUtil.now()); - rgv_m.put("standby_time", 0); - rgv_m.put("production_time", 0); - rgv_m.put("error_time", 0); - array.add(rgv_m); - } - List tbx = pointService.list(new LambdaQueryWrapper().eq(SchBasePoint::getPoint_type, "1").eq(SchBasePoint::getRegion_code, "TBX")); - List tbxList = tbx.stream().map(SchBasePoint::getPoint_code).collect(Collectors.toList()); - tbxList.forEach(s -> { - JSONObject object = new JSONObject(); - object.put("device_code", s); - object.put("device_name", s); - object.put("mode", "2"); - object.put("status", "1"); - object.put("error", "0"); - object.put("open_time", DateUtil.now()); - object.put("standby_time", 20); - object.put("production_time", 20); - object.put("error_time", 0); - object.put("material", "01200000"); - array.add(object); - }); - List tbxDjw = pointService.list(new LambdaQueryWrapper().eq(SchBasePoint::getPoint_type, "2").eq(SchBasePoint::getRegion_code, "TBX")); - List tbxDjwList = tbxDjw.stream().map(SchBasePoint::getPoint_code).collect(Collectors.toList()); - tbxDjwList.forEach(s -> { - JSONObject object = new JSONObject(); - object.put("device_code", s); - object.put("device_name", s); - object.put("mode", "2"); - object.put("move", "0"); - object.put("error", 0); - array.add(object); - }); + JSONArray baoshijian= (JSONArray) redisUtils.get("baoshijian"); + JSONArray guhuashi= (JSONArray) redisUtils.get("guhuashi"); + JSONArray AGV= (JSONArray) redisUtils.get("AGV"); + JSONArray RGV= (JSONArray) redisUtils.get("RGV"); + JSONArray site= (JSONArray) redisUtils.get("site"); + array.add(baoshijian); + array.add(guhuashi); + array.add(AGV); + array.add(RGV); +// List tbx = pointService.list(new LambdaQueryWrapper().eq(SchBasePoint::getPoint_type, "1").eq(SchBasePoint::getRegion_code, "TBX")); +// List tbxList = tbx.stream().map(SchBasePoint::getPoint_code).collect(Collectors.toList()); +// tbxList.forEach(s -> { +// JSONObject object = new JSONObject(); +// object.put("device_code", s); +// object.put("device_name", s); +// object.put("mode", "2"); +// object.put("status", "1"); +// object.put("error", "0"); +// object.put("open_time", DateUtil.now()); +// object.put("standby_time", 20); +// object.put("production_time", 20); +// object.put("error_time", 0); +// object.put("material", "01200000"); +// array.add(object); +// }); +// List tbxDjw = pointService.list(new LambdaQueryWrapper().eq(SchBasePoint::getPoint_type, "2").eq(SchBasePoint::getRegion_code, "TBX")); +// List tbxDjwList = tbxDjw.stream().map(SchBasePoint::getPoint_code).collect(Collectors.toList()); +// tbxDjwList.forEach(s -> { +// JSONObject object = new JSONObject(); +// object.put("device_code", s); +// object.put("device_name", s); +// object.put("mode", "2"); +// object.put("move", "0"); +// object.put("error", 0); +// array.add(object); +// }); // 缓存位 - List hcx = pointService.list(new LambdaQueryWrapper().eq(SchBasePoint::getPoint_type, "3").eq(SchBasePoint::getRegion_code, "TBX")); - List hcxList = hcx.stream().map(SchBasePoint::getPoint_code).collect(Collectors.toList()); - hcxList.forEach(s -> { - JSONObject object = new JSONObject(); - object.put("device_code", s); - object.put("device_name", s); - object.put("move", "0"); - array.add(object); - }); - List gh = pointService.list(new LambdaQueryWrapper().eq(SchBasePoint::getPoint_type, "1").eq(SchBasePoint::getRegion_code, "GH")); - List ghList = gh.stream().map(SchBasePoint::getPoint_code).collect(Collectors.toList()); - ghList.forEach(s -> { - JSONObject object = new JSONObject(); - object.put("device_code", s); - object.put("device_name", s); - object.put("temperature_setting", 50); - object.put("temperature", 20); - object.put("humidity_setting", 20); - object.put("humidity", 10); - object.put("total_running_time", 8); - object.put("current_stage", 0); - object.put("executing_stage_num", 1); - object.put("device_statue", 1); - object.put("front_door", 1); - object.put("back_door", 0); - array.add(object); - }); +// List hcx = pointService.list(new LambdaQueryWrapper().eq(SchBasePoint::getPoint_type, "3").eq(SchBasePoint::getRegion_code, "TBX")); +// List hcxList = hcx.stream().map(SchBasePoint::getPoint_code).collect(Collectors.toList()); +// hcxList.forEach(s -> { +// JSONObject object = new JSONObject(); +// object.put("device_code", s); +// object.put("device_name", s); +// object.put("move", "0"); +// array.add(object); +// }); +// List gh = pointService.list(new LambdaQueryWrapper().eq(SchBasePoint::getPoint_type, "1").eq(SchBasePoint::getRegion_code, "GH")); +// List ghList = gh.stream().map(SchBasePoint::getPoint_code).collect(Collectors.toList()); +// ghList.forEach(s -> { +// JSONObject object = new JSONObject(); +// object.put("device_code", s); +// object.put("device_name", s); +// object.put("temperature_setting", 50); +// object.put("temperature", 20); +// object.put("humidity_setting", 20); +// object.put("humidity", 10); +// object.put("total_running_time", 8); +// object.put("current_stage", 0); +// object.put("executing_stage_num", 1); +// object.put("device_statue", 1); +// object.put("front_door", 1); +// object.put("back_door", 0); +// array.add(object); +// }); // 整体 - List kjzc = pointService.list(new LambdaQueryWrapper().eq(SchBasePoint::getPoint_type, "5").eq(SchBasePoint::getRegion_code, "KJZC")); - List kjzcList = kjzc.stream().map(SchBasePoint::getPoint_code).collect(Collectors.toList()); - kjzcList.forEach(s -> { - JSONObject object = new JSONObject(); - object.put("device_code", s); - object.put("device_name", s); - object.put("mode", 0); - object.put("open_time", DateUtil.now()); - object.put("standby_time", 20); - object.put("production_time", 10); - object.put("error_time", 8); - object.put("material_type", "1"); - array.add(object); - }); +// List kjzc = pointService.list(new LambdaQueryWrapper().eq(SchBasePoint::getPoint_type, "5").eq(SchBasePoint::getRegion_code, "KJZC")); +// List kjzcList = kjzc.stream().map(SchBasePoint::getPoint_code).collect(Collectors.toList()); +// kjzcList.forEach(s -> { +// JSONObject object = new JSONObject(); +// object.put("device_code", s); +// object.put("device_name", s); +// object.put("mode", 0); +// object.put("open_time", DateUtil.now()); +// object.put("standby_time", 20); +// object.put("production_time", 10); +// object.put("error_time", 8); +// object.put("material_type", "1"); +// array.add(object); +// }); // 固化室详情 JSONArray ghsInteriorList = cockpitMapper.getGHSInteriorList(); JSONObject ghsDetail = new JSONObject(); diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/cockpit/service/mapper/CockpitMapper.xml b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/cockpit/service/mapper/CockpitMapper.xml index 1249739..53c9962 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/cockpit/service/mapper/CockpitMapper.xml +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/cockpit/service/mapper/CockpitMapper.xml @@ -14,6 +14,7 @@ AND w.point_code = #{deviceCode} + order by w.create_time desc LIMIT #{number} @@ -166,11 +167,11 @@ FROM sch_base_vehiclematerialgroup vg LEFT JOIN md_base_material ma ON vg.material_id = ma.material_id WHERE 1 = 1 - - AND vg.vehicle_code = #{vehicle_code} + + AND vg.vehicle_code = #{vehicleCode} - - AND vg.vehicle_type = #{vehicle_type} + + AND vg.vehicle_type = #{vehicleType} AND vg.is_delete = '0' diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/tbx/mapper/TBXMapper.xml b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/tbx/mapper/TBXMapper.xml index e60a48c..bf2779d 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/tbx/mapper/TBXMapper.xml +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/tbx/mapper/TBXMapper.xml @@ -61,8 +61,7 @@ AND p4.point_type = '2' AND p4.is_used = TRUE) AND #{materialId} IN ( SELECT vg.material_id FROM sch_base_point p2 - LEFT JOIN sch_base_vehiclematerialgroup vg ON vg.vehicle_code = p2.vehicle_code AND vg.vehicle_type = - p2.vehicle_type AND vg.is_delete = '0' AND vg.group_bind_material_status = '2' + LEFT JOIN sch_base_vehiclematerialgroup vg ON vg.vehicle_code = p2.vehicle_code AND vg.is_delete = '0' AND vg.group_bind_material_status = '2' WHERE p2.parent_point_code = p.point_code AND p2.point_type = '2' AND p2.point_status = '2' ) AND p.region_code IN