rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java
@@ -60,6 +60,13 @@ } @PreAuthorize("hasAuthority('manager:loc:list')") @ApiOperation(("获取库位使用率")) @PostMapping("/loc/pie/list") public R locPie() { return R.ok().add(locService.getLocPies()); } @PreAuthorize("hasAuthority('manager:loc:list')") @PostMapping("/loc/areaNoUse/list") public R areaNoUselist(@RequestBody Map<String, Object> map) { String locCode = map.get("locCode").toString(); rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/dto/LocUsageDto.java
New file @@ -0,0 +1,21 @@ package com.vincent.rsf.server.manager.controller.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; import java.io.Serializable; @Data @Accessors(chain = true) @ApiModel(value = "LocUsageDto", description = "库位使用率") public class LocUsageDto implements Serializable { @ApiModelProperty("库位类型") private String name; @ApiModelProperty("库位使用率") private Double value; @ApiModelProperty("库位类型数量") private Integer count; } rsf-server/src/main/java/com/vincent/rsf/server/manager/mapper/LocMapper.java
@@ -1,10 +1,13 @@ package com.vincent.rsf.server.manager.mapper; import com.vincent.rsf.server.manager.controller.dto.LocUsageDto; import com.vincent.rsf.server.manager.entity.Loc; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Update; import org.springframework.stereotype.Repository; import java.util.List; @Mapper @Repository @@ -12,4 +15,6 @@ @Update("truncate table man_loc") boolean deleteAll(); List<LocUsageDto> getLocPies(); } rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocService.java
@@ -17,4 +17,6 @@ boolean updateLoc(Loc loc); R batchBindLocs(LocModifyParams locs); R getLocPies(); } rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java
@@ -5,6 +5,7 @@ import com.vincent.rsf.framework.common.Cools; import com.vincent.rsf.framework.common.R; import com.vincent.rsf.framework.exception.CoolException; import com.vincent.rsf.server.manager.controller.dto.LocUsageDto; import com.vincent.rsf.server.manager.controller.params.LocMastInitParam; import com.vincent.rsf.server.manager.controller.params.LocModifyParams; import com.vincent.rsf.server.manager.entity.*; @@ -40,6 +41,8 @@ @Autowired private LocTypeRelaMapper locTypeRelaMapper; @Autowired private LocService locService; @Override public R modifyLocs(LocModifyParams locs) { @@ -217,4 +220,14 @@ return R.ok(); } /** * 获取库位使用情况 * @return */ @Override public R getLocPies() { List<LocUsageDto> locPies = this.baseMapper.getLocPies(); return R.ok().add(locPies); } } rsf-server/src/main/resources/mapper/manager/LocMapper.xml
@@ -2,4 +2,15 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.vincent.rsf.server.manager.mapper.LocMapper"> <select id="getLocPies" resultType="com.vincent.rsf.server.manager.controller.dto.LocUsageDto"> SELECT use_status AS `name`, COUNT(`code`) `value`, SUM(loi.anfme) anfme FROM man_loc l INNER JOIN man_loc_item loi ON l.id = loi.loc_id GROUP BY use_status </select> </mapper>