| src/main/java/com/zy/asrs/controller/OpenController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/entity/param/DigitalTwinEquipmentParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/entity/param/DigitalTwinRecentDetainMatParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/entity/param/DigitalTwinWarehouseDetailParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/entity/param/VwLocDetlSummaryParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/service/OpenService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/resources/mapper/ViewWorkInMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/OpenController.java
@@ -273,4 +273,49 @@ return R.ok().add(openService.digitalTwinRecentInAndOutBound(param)); } /** * 6.5近期呆滞品 */ @RequestMapping("/digitalTwin/recentDetainMat") public R digitalTwinRecentDetainMat(@RequestHeader(required = false) String appkey, @RequestBody DigitalTwinRecentDetainMatParam param, HttpServletRequest request) { auth(appkey, param, request); if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } return R.ok().add(openService.digitalTwinRecentDetainMat(param)); } /** * 6.6设备监控 */ @RequestMapping("/digitalTwin/equipment") public R digitalTwinEquipment(@RequestHeader(required = false) String appkey, @RequestBody DigitalTwinEquipmentParam param, HttpServletRequest request) { auth(appkey, param, request); if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } return R.ok().add(openService.digitalTwinEquipment(param)); } /** * 6.7库位及库存信息 */ @RequestMapping("/digitalTwin/warehouseDetail") public R digitalTwinWarehouseDetail(@RequestHeader(required = false) String appkey, @RequestBody DigitalTwinWarehouseDetailParam param, HttpServletRequest request) { auth(appkey, param, request); if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } return R.ok().add(openService.digitalTwinWarehouseDetail(param)); } } src/main/java/com/zy/asrs/entity/param/DigitalTwinEquipmentParam.java
New file @@ -0,0 +1,32 @@ package com.zy.asrs.entity.param; import lombok.Data; import java.util.ArrayList; import java.util.List; /** * Created by vincent on 2020/6/13 */ @Data public class DigitalTwinEquipmentParam { private int areaId = 0; //库区ID,不传默认全部 private List<DataCode> dataCodeList = new ArrayList<>(); @Data public static class DataCode { private String equipmentId = "1"; //设备ID private String equipmentName = "号堆垛机"; //设备名称 private int equipmentType = 1; //设备类型:1 堆垛机;2 CTU;3 AGV; private String belongAreaId = "1"; //归属库区ID private String belongAreaName = "1"; //归属库区名称 private int verticalSpeed = 10; //垂直速度,单位:M/min private int horizontalSpeed = 10; //水平速度,单位:M/min private int voltage = 320; //电压,单位:v private int status = 1; //设备状态:1 正常;2 待机;3 故障; private int operateMethod = 1; //操作方式:1 自动;2 半自动;3 手动; } } src/main/java/com/zy/asrs/entity/param/DigitalTwinRecentDetainMatParam.java
New file @@ -0,0 +1,45 @@ package com.zy.asrs.entity.param; import lombok.Data; import java.util.List; /** * Created by vincent on 2020/6/13 */ @Data public class DigitalTwinRecentDetainMatParam { private int areaId = 0; //库区ID,不传默认全部 private int overDayNum = 30; //呆滞品认定天数,如超过10传值:10。默认30。 private int pageIndex = 1; //分页页码,从1开始。需要分页时使用。 private int pageSize = 9999; //分页页码大小。 private List<DataCode> dataCodeList; @Data public static class DataCode { private int belongAreaId; //归属库区ID private String belongAreaName; //归属库区名称 private String matId; //物料ID private String matName; //物料名称 private String lokId; //所属库位ID private String lokName; //所属库位名称 private int detainTime; //呆滞时间,计算单位:分钟 private String inBoundTime; //入库时间,格式:2025-10-11T11:15:16,预留 public DataCode() { } public DataCode(VwLocDetlSummaryParam vwLocDetlSummaryParam) { this.belongAreaId = vwLocDetlSummaryParam.getAreaId(); this.matId = vwLocDetlSummaryParam.getMatId(); this.matName = vwLocDetlSummaryParam.getMaktx(); this.lokId = vwLocDetlSummaryParam.getLocNo(); this.lokName = vwLocDetlSummaryParam.getLocNo(); this.detainTime = vwLocDetlSummaryParam.getDetainTime(); this.inBoundTime = vwLocDetlSummaryParam.getInBoundTime(); } } } src/main/java/com/zy/asrs/entity/param/DigitalTwinWarehouseDetailParam.java
New file @@ -0,0 +1,46 @@ package com.zy.asrs.entity.param; import com.zy.asrs.entity.LocDetl; import com.zy.asrs.entity.LocMast; import lombok.Data; import java.util.ArrayList; import java.util.List; /** * Created by vincent on 2020/6/13 */ @Data public class DigitalTwinWarehouseDetailParam { private int areaId = 0; //库区ID,不传默认全部 private List<DataCode> dataCodeList = new ArrayList<DataCode>(); @Data public static class DataCode { private String locNo;//设备ID private String locSts;//设备名称 private int areaId;//设备类型 private String areaName;//设备类型 private int row1;//设备类型 private int bay1;//设备类型 private int lev1;//设备类型 private List<LocMast> locMast;//设备类型 private List<LocDetl> locDetl;//设备类型 public DataCode(LocMast locMast,List<LocDetl> locDetl) { ArrayList<LocMast> locMasts = new ArrayList<>(); locMasts.add(locMast); this.locNo = locMast.getLocNo(); this.locSts = locMast.getLocSts(); this.areaId = locMast.getCrnNo(); this.areaName = ""; this.row1 = locMast.getRow1(); this.bay1 = locMast.getBay1(); this.lev1 = locMast.getLev1(); this.locMast = locMasts; this.locDetl = locDetl; } } } src/main/java/com/zy/asrs/entity/param/VwLocDetlSummaryParam.java
New file @@ -0,0 +1,22 @@ package com.zy.asrs.entity.param; import lombok.Data; /** * Created by vincent on 2020/6/13 */ @Data public class VwLocDetlSummaryParam { private String locNo; private int areaId; private String matId; private String inBoundTime; private int detainTime;//库龄(天数) // 物料编号 private String maktx; private String batch; private String zpallet; // 物料数量 private Double anfme; } src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java
@@ -3,6 +3,7 @@ import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.ViewLocDailyLogParam; import com.zy.asrs.entity.param.ViewOrderParam; import com.zy.asrs.entity.param.VwLocDetlSummaryParam; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; @@ -86,5 +87,6 @@ List<ViewOrderParam> getAsrOrderView(@Param("ymdS") String startTime, @Param("ymdD") String endTime); List<ViewLocDailyLogParam> getAsrLocDailyLogO(@Param("areaId")int areaId, @Param("ymdS") String startTime, @Param("ymdD") String endTime); List<ViewLocDailyLogParam> getAsrLocDailyLog2(@Param("areaId")int areaId, @Param("ymdS") String startTime, @Param("ymdD") String endTime); List<VwLocDetlSummaryParam> getVwLocDetlSummaryParam(@Param("areaId")int areaId,@Param("overDayNum")int overDayNum, @Param("curr") Integer curr, @Param("limit") Integer limit); void insertAsrLocDailyLog(); } src/main/java/com/zy/asrs/service/OpenService.java
@@ -52,4 +52,7 @@ DigitalTwinRecentOrderParam digitalTwinRecentOrder(DigitalTwinRecentOrderParam digitalTwinRecentOrderParam); DigitalTwinRecentIdleLocParam digitalTwinRecentIdleLoc(DigitalTwinRecentIdleLocParam digitalTwinRecentIdleLocParam); DigitalTwinRecentInAndOutBoundParam digitalTwinRecentInAndOutBound(DigitalTwinRecentInAndOutBoundParam digitalTwinRecentIdleLocParam); DigitalTwinRecentDetainMatParam digitalTwinRecentDetainMat(DigitalTwinRecentDetainMatParam digitalTwinRecentIdleLocParam); DigitalTwinEquipmentParam digitalTwinEquipment(DigitalTwinEquipmentParam digitalTwinRecentIdleLocParam); DigitalTwinWarehouseDetailParam digitalTwinWarehouseDetail(DigitalTwinWarehouseDetailParam digitalTwinRecentIdleLocParam); } src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -716,4 +716,42 @@ return param; } @Override @Transactional public DigitalTwinRecentDetainMatParam digitalTwinRecentDetainMat(DigitalTwinRecentDetainMatParam param) { List<VwLocDetlSummaryParam> vwLocDetlSummaryParam = reportQueryMapper.getVwLocDetlSummaryParam(param.getAreaId(), param.getOverDayNum(), param.getPageIndex(), param.getPageSize()); List<DigitalTwinRecentDetainMatParam.DataCode> dataCodes = new ArrayList<>(); for (VwLocDetlSummaryParam view : vwLocDetlSummaryParam) { DigitalTwinRecentDetainMatParam.DataCode dataCode = new DigitalTwinRecentDetainMatParam.DataCode(view); dataCodes.add(dataCode); } param.setDataCodeList(dataCodes); return param; } @Override @Transactional public DigitalTwinEquipmentParam digitalTwinEquipment(DigitalTwinEquipmentParam param) { DigitalTwinEquipmentParam.DataCode dataCode = new DigitalTwinEquipmentParam.DataCode(); dataCode.setEquipmentId(""+param.getAreaId()); dataCode.setEquipmentName(param.getAreaId()+dataCode.getEquipmentName()); dataCode.setBelongAreaId(""+param.getAreaId()); dataCode.setBelongAreaName(""+param.getAreaId()); param.getDataCodeList().add(dataCode); return param; } @Override @Transactional public DigitalTwinWarehouseDetailParam digitalTwinWarehouseDetail(DigitalTwinWarehouseDetailParam param) { List<LocMast> locMastList = locMastService.selectList(new EntityWrapper<>()); for (LocMast locMast : locMastList) { List<LocDetl> locDetlList = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo())); DigitalTwinWarehouseDetailParam.DataCode dataCode = new DigitalTwinWarehouseDetailParam.DataCode(locMast,locDetlList); param.getDataCodeList().add(dataCode); } return param; } } src/main/resources/mapper/ViewWorkInMapper.xml
@@ -218,5 +218,23 @@ WHERE loc_sts = 'O' GROUP BY crn_no; </insert> <select id="getVwLocDetlSummaryParam" resultType="com.zy.asrs.entity.param.VwLocDetlSummaryParam"> SELECT * FROM ( select ROW_NUMBER() OVER(Order by a.areaId desc) as row , * FROM( SELECT * FROM vw_loc_detl_summary WHERE 1=1 and detainTime >= #{overDayNum} <if test="areaId != null and areaId != 0"> and area = #{areaId} </if> ) a ) b WHERE 1=1 and b.row between ((#{curr}-1)*#{limit}+1) and (#{curr}*#{limit}) </select> </mapper>