From f1a3407130d88ad15320ab9fcfabd109e5127c78 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期日, 27 四月 2025 14:01:27 +0800 Subject: [PATCH] 获取堆垛机状态及所属巷道库位统计信息 --- src/main/java/com/zy/asrs/entity/CrnLaneWayInfoDto.java | 53 ++++++++++++++++++++++++++ src/main/java/com/zy/asrs/mapper/BasCrnpMapper.java | 7 +++ src/main/java/com/zy/asrs/controller/OpenController.java | 8 ++++ src/main/resources/mapper/BasCrnpMapper.xml | 21 ++++++++++ src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 14 +++++-- src/main/java/com/zy/asrs/service/OpenService.java | 5 ++ 6 files changed, 104 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index c07c41c..93e089d 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -193,6 +193,14 @@ return openService.getUnfulfilledOrders(); } + @PostMapping("/getCrnLaneWayInfo") + @AppAuth(memo = "鑾峰彇鍫嗗灈鏈虹姸鎬佸強鎵�灞炲贩閬撳簱浣嶇粺璁′俊鎭�") + public synchronized R getCrnLaneWayInfo(@RequestHeader(required = false) String appkey, + HttpServletRequest request) { + auth(appkey, null, request); + return openService.getCrnLaneWayInfo(); + } + /*@PostMapping("/order/matSync/default/v1") @AppAuth(memo = "鍟嗗搧淇℃伅鍚屾鎺ュ彛") diff --git a/src/main/java/com/zy/asrs/entity/CrnLaneWayInfoDto.java b/src/main/java/com/zy/asrs/entity/CrnLaneWayInfoDto.java new file mode 100644 index 0000000..dba42b2 --- /dev/null +++ b/src/main/java/com/zy/asrs/entity/CrnLaneWayInfoDto.java @@ -0,0 +1,53 @@ +package com.zy.asrs.entity; + +import lombok.Data; + +/** + * @author pang.jiabao + * @description 鍫嗗灈鏈虹姸鎬佸強鎵�灞炲贩閬撶粺璁′俊鎭� + * @createDate 2025/4/27 13:37 + */ +@Data +public class CrnLaneWayInfoDto { + + /** + * 鍫嗗灈鏈哄彿 + */ + private Integer crnNo; + + /** + * 鍫嗗灈鏈虹姸鎬� -1.绂荤嚎, 0.缁翠慨, 1.鎵嬪姩,2.鍗婅嚜鍔�,3.鑷姩,100.鍏朵粬 + */ + private Integer crnSts; + + /** + * 鍫嗗灈鏈烘槸鍚﹀紓甯� 0.鏈紓甯革紝1.寮傚父 + */ + private Integer crnErr; + + /** + * 宸烽亾搴撲綅鎬绘暟 + */ + private Integer count; + + /** + * 鍦ㄥ簱鏁� + */ + private Integer stockQty; + + /** + * 绌烘墭鐩樻暟 + */ + private Integer emptyPalletQty; + + /** + * 绌哄簱浣嶆暟 + */ + private Integer emptySlotQty; + + /** + * 鍏朵粬鐘舵�佸簱浣嶆暟 + */ + private Integer otherQty; + +} diff --git a/src/main/java/com/zy/asrs/mapper/BasCrnpMapper.java b/src/main/java/com/zy/asrs/mapper/BasCrnpMapper.java index baffc35..389fa94 100644 --- a/src/main/java/com/zy/asrs/mapper/BasCrnpMapper.java +++ b/src/main/java/com/zy/asrs/mapper/BasCrnpMapper.java @@ -2,11 +2,18 @@ import com.baomidou.mybatisplus.mapper.BaseMapper; import com.zy.asrs.entity.BasCrnp; +import com.zy.asrs.entity.CrnLaneWayInfoDto; import org.apache.ibatis.annotations.Mapper; import org.springframework.stereotype.Repository; + +import java.util.List; @Mapper @Repository public interface BasCrnpMapper extends BaseMapper<BasCrnp> { + /** + * 鑾峰彇鍫嗗灈鏈虹姸鎬佸強鎵�灞炲贩閬撳簱浣嶇粺璁′俊鎭� + */ + List<CrnLaneWayInfoDto> getCrnLaneWayInfo(); } diff --git a/src/main/java/com/zy/asrs/service/OpenService.java b/src/main/java/com/zy/asrs/service/OpenService.java index aab0d10..4f8c1e0 100644 --- a/src/main/java/com/zy/asrs/service/OpenService.java +++ b/src/main/java/com/zy/asrs/service/OpenService.java @@ -90,6 +90,11 @@ */ R getUnfulfilledOrders(); + /** + * 鑾峰彇鍫嗗灈鏈虹姸鎬佸強鎵�灞炲贩閬撳簱浣嶇粺璁′俊鎭� + */ + R getCrnLaneWayInfo(); + /** * 娣诲姞鍏ュ簱鍗� diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index eb6bf8a..13537f8 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -15,10 +15,7 @@ import com.zy.asrs.entity.result.StockVo; import com.zy.asrs.entity.result.ZphjcdgzVo; import com.zy.asrs.entity.result.ZphjcdwcVo; -import com.zy.asrs.mapper.LocDetlMapper; -import com.zy.asrs.mapper.MatMapper; -import com.zy.asrs.mapper.OrderMapper; -import com.zy.asrs.mapper.TagMapper; +import com.zy.asrs.mapper.*; import com.zy.asrs.service.*; import com.zy.asrs.utils.MatUtils; import com.zy.common.constant.MesConstant; @@ -111,6 +108,9 @@ @Resource private OrderMapper orderMapper; + + @Resource + private BasCrnpMapper basCrnpMapper; @Override @Transactional @@ -1973,6 +1973,12 @@ return R.ok(unfulfilledOrders); } + @Override + public R getCrnLaneWayInfo() { + List<CrnLaneWayInfoDto> crnLaneWayInfo = basCrnpMapper.getCrnLaneWayInfo(); + return R.ok(crnLaneWayInfo); + } + /** * 鍒涘缓妗佹灦鐞嗚揣鍑哄簱鐨勫伐浣滄。 */ diff --git a/src/main/resources/mapper/BasCrnpMapper.xml b/src/main/resources/mapper/BasCrnpMapper.xml index 50d9755..9ee2944 100644 --- a/src/main/resources/mapper/BasCrnpMapper.xml +++ b/src/main/resources/mapper/BasCrnpMapper.xml @@ -27,5 +27,26 @@ <result column="tank_qty1" property="tankQty1" /> <result column="origin" property="origin" /> </resultMap> + <select id="getCrnLaneWayInfo" resultType="com.zy.asrs.entity.CrnLaneWayInfoDto"> + select + crn.crn_no crnNo , + crn.crn_sts crnSts, + case when crn.crn_err != 0 then 1 else 0 end as crnErr, + count(loc.loc_no) count, + count(case when loc.loc_sts = 'F' then 1 end) stockQty, + count(case when loc.loc_sts = 'D' then 1 end) emptyPalletQty, + count(case when loc.loc_sts = 'O' then 1 end) emptySlotQty, + count(case when loc.loc_sts != 'O' and loc.loc_sts != 'D' and loc.loc_sts != 'F' then 1 end) otherQty + from + asr_bas_crnp crn + left join asr_loc_mast loc on + crn.crn_no = loc.crn_no + group by + crn.crn_no, + crn.crn_sts, + crn.crn_err + order by + crn.crn_no + </select> </mapper> -- Gitblit v1.9.1