diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/controller/PushProDataUseInfoController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/controller/PushProDataUseInfoController.java index ea342df8..554f48e9 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/controller/PushProDataUseInfoController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/controller/PushProDataUseInfoController.java @@ -4,10 +4,7 @@ import com.bonus.common.core.exception.ServiceException; import com.bonus.common.core.web.controller.BaseController; import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.common.core.web.page.TableDataInfo; -import com.bonus.material.push.domain.CostPushBean; -import com.bonus.material.push.domain.MachineInfoBean; -import com.bonus.material.push.domain.ProIdsBean; -import com.bonus.material.push.domain.StaticsNumsBean; +import com.bonus.material.push.domain.*; import com.bonus.material.push.service.ProDataUseInfoService; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -15,6 +12,8 @@ import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.HashMap; import java.util.List; /** @@ -28,6 +27,7 @@ public class PushProDataUseInfoController extends BaseController { @Resource private ProDataUseInfoService service; + /** * 查询推送数据使用信息 * @@ -44,6 +44,7 @@ public class PushProDataUseInfoController extends BaseController { throw new ServiceException("数据查询异常,请联系运维人员查询日志处理"); } } + /** * 查询每个分类机具详情 * @@ -60,6 +61,7 @@ public class PushProDataUseInfoController extends BaseController { throw new ServiceException("数据查询异常,请联系运维人员查询日志处理"); } } + // 查询七大类设备保有量、在用量、再修量、库存量 @GetMapping(value = "getNumsByStatics") public AjaxResult getNumsByStatics(ProIdsBean bean) { @@ -71,6 +73,7 @@ public class PushProDataUseInfoController extends BaseController { throw new ServiceException("数据查询异常,请联系运维人员查询日志处理"); } } + // 检验临期和检验超期数量 @GetMapping(value = "getApproachingAndTimeout") public AjaxResult getApproachingAndTimeout(ProIdsBean bean) { @@ -82,6 +85,7 @@ public class PushProDataUseInfoController extends BaseController { throw new ServiceException("数据查询异常,请联系运维人员查询日志处理"); } } + // 临期、超期设备详情 @GetMapping(value = "getApproachingDetails") public TableDataInfo getApproachingDetails(ProIdsBean bean) { @@ -94,4 +98,45 @@ public class PushProDataUseInfoController extends BaseController { } } + @GetMapping(value = "getCompletionNotRefunded") + public AjaxResult getCompletionNotRefunded(ProIdsBean bean) { + try { + List results = service.getCompletionNotRefunded(bean); + return AjaxResult.success(results); + } catch (Exception e) { + logger.error(e.toString(), e); + throw new ServiceException("数据查询异常,请联系运维人员查询日志处理"); + } + } + + @GetMapping(value = "getCompletionNotRefundedDetails") + public AjaxResult getCompletionNotRefundedDetails(ProIdsBean bean) { + try { + HashMap map = new HashMap<>(); + List results = service.getCompletionNotRefundedDetails(bean); + BigDecimal totalNum = new BigDecimal(0); + for (MachineInfoBean completionNotRefundedDetail : results) { + totalNum.add(completionNotRefundedDetail.getNum()); + } + map.put("results", results); + map.put("totalNum", totalNum); + return AjaxResult.success(map); + } catch (Exception e) { + logger.error(e.toString(), e); + throw new ServiceException("数据查询异常,请联系运维人员查询日志处理"); + } + } + + // 施工机具库存预警 (7大类) + @GetMapping(value = "getInventoryAlert") + public AjaxResult getInventoryAlert(ProIdsBean bean) { + try { + List results = service.getInventoryAlert(bean); + return AjaxResult.success(results); + } catch (Exception e) { + logger.error(e.toString(), e); + throw new ServiceException("数据查询异常,请联系运维人员查询日志处理"); + } + } + } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/domain/InventoryAlertBean.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/domain/InventoryAlertBean.java new file mode 100644 index 00000000..6f72d4c9 --- /dev/null +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/domain/InventoryAlertBean.java @@ -0,0 +1,24 @@ +package com.bonus.material.push.domain; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @Author:liang.chao + * @Date:2025/8/24 - 11:09 + */ +@Data +public class InventoryAlertBean { + private String typeName; + private String typeModelName; + + // 预警值 + private BigDecimal warnNum; + + // 库存 + private BigDecimal num; + + // 差值 + private BigDecimal poorNum; +} diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/domain/MachineInfoBean.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/domain/MachineInfoBean.java index 955b92ea..a822bfad 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/domain/MachineInfoBean.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/domain/MachineInfoBean.java @@ -2,6 +2,7 @@ package com.bonus.material.push.domain; import lombok.Data; +import java.math.BigDecimal; import java.util.List; /** @@ -10,6 +11,8 @@ import java.util.List; */ @Data public class MachineInfoBean { + // 设备id + private String typeId; // 设备名称 private String typeName; // 规格型号 @@ -17,7 +20,7 @@ public class MachineInfoBean { // 计量单位 private String unit; // 数量 - private Integer num; + private BigDecimal num; // 固定资产编号 private String assetsCode; //租赁价格 @@ -28,6 +31,8 @@ public class MachineInfoBean { private String status; // 实施组织 private String deptName; + // 实施组织id + private Integer deptId; // 工程名称 private String proName; // 项目管理部 diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/domain/ProIdsBean.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/domain/ProIdsBean.java index d0fab77f..0ca855e6 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/domain/ProIdsBean.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/domain/ProIdsBean.java @@ -2,6 +2,7 @@ package com.bonus.material.push.domain; import lombok.Data; +import java.math.BigDecimal; import java.util.List; /** @@ -15,7 +16,7 @@ public class ProIdsBean { private String proName; private Integer typeId; private String typeName; - private Integer typeNum; + private BigDecimal typeNum; // 1 牵张设备 2 抱杆 3动力设备 4 变电专业设备 5安全工器具 6自主创新设备 7其他 private Integer isStatics; diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/mapper/ProDataUseInfoMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/mapper/ProDataUseInfoMapper.java index 66d561dc..4d2e1047 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/mapper/ProDataUseInfoMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/mapper/ProDataUseInfoMapper.java @@ -29,4 +29,10 @@ public interface ProDataUseInfoMapper { List getApproachingAndTimeout(ProIdsBean bean); List getApproachingDetails(ProIdsBean bean); + + List getCompletionNotRefunded(ProIdsBean bean); + + List getCompletionNotRefundedDetails(ProIdsBean bean); + + List getInventoryAlert(ProIdsBean bean); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/service/ProDataUseInfoService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/service/ProDataUseInfoService.java index 68424b35..d10cd47f 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/service/ProDataUseInfoService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/service/ProDataUseInfoService.java @@ -1,5 +1,6 @@ package com.bonus.material.push.service; +import com.bonus.material.push.domain.InventoryAlertBean; import com.bonus.material.push.domain.ProIdsBean; import com.bonus.material.push.domain.MachineInfoBean; import com.bonus.material.push.domain.StaticsNumsBean; @@ -20,4 +21,10 @@ public interface ProDataUseInfoService { List getApproachingAndTimeout(ProIdsBean bean); List getApproachingDetails(ProIdsBean bean); + + List getCompletionNotRefunded(ProIdsBean bean); + + List getCompletionNotRefundedDetails(ProIdsBean bean); + + List getInventoryAlert(ProIdsBean bean); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/service/impl/ProDataUseInfoImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/service/impl/ProDataUseInfoImpl.java index 12f79538..5f85005d 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/service/impl/ProDataUseInfoImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/push/service/impl/ProDataUseInfoImpl.java @@ -1,5 +1,6 @@ package com.bonus.material.push.service.impl; +import com.bonus.material.push.domain.InventoryAlertBean; import com.bonus.material.push.domain.MachineInfoBean; import com.bonus.material.push.domain.ProIdsBean; @@ -9,6 +10,7 @@ import com.bonus.material.push.service.ProDataUseInfoService; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; @@ -38,7 +40,7 @@ public class ProDataUseInfoImpl implements ProDataUseInfoService { // 入参 proId /isStatics List machineDetails = proDataUseInfoMapper.getMachineDetails(bean); for (MachineInfoBean machineDetail : machineDetails) { - String typeKeeperName = proDataUseInfoMapper.getTypeKeeperName(machineDetail); + String typeKeeperName = proDataUseInfoMapper.getTypeKeeperName(machineDetail); machineDetail.setTypeKeeperName(typeKeeperName); } return machineDetails; @@ -58,4 +60,19 @@ public class ProDataUseInfoImpl implements ProDataUseInfoService { public List getApproachingDetails(ProIdsBean bean) { return proDataUseInfoMapper.getApproachingDetails(bean); } + + @Override + public List getCompletionNotRefunded(ProIdsBean bean) { + return proDataUseInfoMapper.getCompletionNotRefunded(bean); + } + + @Override + public List getCompletionNotRefundedDetails(ProIdsBean bean) { + return proDataUseInfoMapper.getCompletionNotRefundedDetails(bean); + } + + @Override + public List getInventoryAlert(ProIdsBean bean) { + return proDataUseInfoMapper.getInventoryAlert(bean); + } } diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/push/ProDataUseInfoMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/push/ProDataUseInfoMapper.xml index 92ae5c74..ab7a69ad 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/push/ProDataUseInfoMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/push/ProDataUseInfoMapper.xml @@ -137,4 +137,71 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" GROUP BY bp.pro_id + + +