Browse Source

库存预警,库存区域

master
wangpengfei 7 months ago
parent
commit
2de68a6821
  1. 5
      wms/src/main/java/com/yxt/wms/apiadmin/aggregation/WarehouseAreaRest.java
  2. 36
      wms/src/main/java/com/yxt/wms/apiadmin/aggregation/WarehouseAreaWarningRest.java
  3. 5
      wms/src/main/java/com/yxt/wms/apiadmin/aggregation/WarehouseInventoryRest.java
  4. 76
      wms/src/main/java/com/yxt/wms/apiadmin/aggregation/WarehouseZoneRest.java
  5. 2
      wms/src/main/java/com/yxt/wms/biz/func/warehousearea/WarehouseArea.java
  6. 4
      wms/src/main/java/com/yxt/wms/biz/func/warehousearea/WarehouseAreaDto.java
  7. 3
      wms/src/main/java/com/yxt/wms/biz/func/warehousearea/WarehouseAreaService.java
  8. 4
      wms/src/main/java/com/yxt/wms/biz/func/warehousearea/WarehouseAreaVo.java
  9. 25
      wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarning.java
  10. 22
      wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningDto.java
  11. 22
      wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningMapper.java
  12. 8
      wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningMapper.xml
  13. 22
      wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningQuery.java
  14. 35
      wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningService.java
  15. 24
      wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningVo.java
  16. 1
      wms/src/main/java/com/yxt/wms/biz/func/warehouseinfo/WarehouseInfo.java
  17. 1
      wms/src/main/java/com/yxt/wms/biz/func/warehouseinfo/WarehouseInfoDto.java
  18. 1
      wms/src/main/java/com/yxt/wms/biz/func/warehouseinfo/WarehouseInfoVo.java
  19. 4
      wms/src/main/java/com/yxt/wms/biz/func/warehouseinventory/WarehouseInventoryQuery.java
  20. 20
      wms/src/main/java/com/yxt/wms/biz/func/warehouseinventory/WarehouseInventoryService.java
  21. 2
      wms/src/main/java/com/yxt/wms/biz/func/warehouseinventory/WarehouseInventoryVo.java
  22. 2
      wms/src/main/java/com/yxt/wms/biz/func/warehouserack/WarehouseRack.java
  23. 4
      wms/src/main/java/com/yxt/wms/biz/func/warehouserack/WarehouseRackDto.java
  24. 4
      wms/src/main/java/com/yxt/wms/biz/func/warehouserack/WarehouseRackVo.java
  25. 21
      wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZone.java
  26. 21
      wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneAllVo.java
  27. 26
      wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneDto.java
  28. 24
      wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneInitVo.java
  29. 34
      wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneMapper.java
  30. 5
      wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneMapper.xml
  31. 28
      wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneQuery.java
  32. 111
      wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneService.java
  33. 25
      wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneVo.java
  34. 3
      wms/src/main/java/com/yxt/wms/feign/warehouse/warehousearea/WarehouseAreaFeign.java
  35. 5
      wms/src/main/java/com/yxt/wms/feign/warehouse/warehousearea/WarehouseAreaFeignFallback.java
  36. 43
      wms/src/main/java/com/yxt/wms/feign/warehouse/warehouseareawarning/WarehouseAreaWarningFeign.java
  37. 4
      wms/src/main/java/com/yxt/wms/feign/warehouse/warehousesinventory/WarehouseInventoryFeign.java
  38. 5
      wms/src/main/java/com/yxt/wms/feign/warehouse/warehousesinventory/WarehouseInventoryFeignFallback.java
  39. 67
      wms/src/main/java/com/yxt/wms/feign/warehouse/warehousezone/WarehouseZoneFeign.java

5
wms/src/main/java/com/yxt/wms/apiadmin/aggregation/WarehouseAreaRest.java

@ -71,4 +71,9 @@ public class WarehouseAreaRest {
public ResultBean<List<WarehouseAreaAllVo>> selectAll(@RequestParam("ckSid") String ckSid){
return wmsWarehouseAreaService.selectAll(ckSid);
}
@ApiOperation("根据区域sid查询所有库区")
@GetMapping("/selectAreaAll")
public ResultBean<List<WarehouseAreaAllVo>> selectAreaAll(@RequestParam("qySid") String qySid){
return wmsWarehouseAreaService.selectAreaAll(qySid);
}
}

36
wms/src/main/java/com/yxt/wms/apiadmin/aggregation/WarehouseAreaWarningRest.java

@ -0,0 +1,36 @@
package com.yxt.wms.apiadmin.aggregation;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.wms.biz.func.warehouseareawarning.WarehouseAreaWarningDto;
import com.yxt.wms.biz.func.warehouseareawarning.WarehouseAreaWarningService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @author wangpengfei
* @date 2024/3/18 14:57
*/
@Api(tags = "库区预警信息")
@RestController
@RequestMapping("/apiadmin/warehouseareawarning")
public class WarehouseAreaWarningRest {
@Autowired
WarehouseAreaWarningService warehouseAreaWarningService;
@ApiOperation("保存修改")
@PostMapping("/saveOrUpdate")
public ResultBean<String> saveOrUpdate(@RequestBody List<WarehouseAreaWarningDto> dtos) {
return warehouseAreaWarningService.saveOrUpdate(dtos);
}
}

5
wms/src/main/java/com/yxt/wms/apiadmin/aggregation/WarehouseInventoryRest.java

@ -37,6 +37,11 @@ public class WarehouseInventoryRest {
public ResultBean<PagerVo<WarehouseInventoryVo>> locationListPage(@RequestBody PagerQuery<WarehouseInventoryQuery> pq) {
return warehouseInventoryService.locationListPage(pq);
}
@ApiOperation("库位预警分页列表")
@PostMapping("/areaWarningListPage")
public ResultBean<PagerVo<WarehouseInventoryVo>> areaWarningListPage(@RequestBody PagerQuery<WarehouseInventoryQuery> pq) {
return warehouseInventoryService.areaWarningListPage(pq);
}
@ApiOperation("查询库位商品数量")
@PostMapping("/getRackCountBySid")
ResultBean getRackCountBySid(@RequestBody WarehouseInventoryRackCountQuery query) {

76
wms/src/main/java/com/yxt/wms/apiadmin/aggregation/WarehouseZoneRest.java

@ -0,0 +1,76 @@
package com.yxt.wms.apiadmin.aggregation;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.wms.biz.func.warehousezone.*;
import com.yxt.wms.utils.OrgPathQuery;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @author wangpengfei
* @date 2024/2/28 8:53
*/
@Api(tags = "区域信息")
@RestController
@RequestMapping("/apiadmin/warehousezone")
public class WarehouseZoneRest {
@Autowired
private WarehouseZoneService warehouseZoneService;
@ApiOperation("分页列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<WarehouseZoneVo>> listPage(@RequestBody PagerQuery<WarehouseZoneQuery> pq) {
return warehouseZoneService.listPage(pq);
}
@ApiOperation("查询所有的库区")
@PostMapping("/listAll")
public ResultBean<List<WarehouseZone>> listAll(@RequestBody OrgPathQuery query) {
return warehouseZoneService.getAllType(query);
}
@ApiOperation("保存修改")
@PostMapping("/saveOrUpdate")
public ResultBean<String> saveOrUpdate(@RequestBody WarehouseZoneDto dto) {
return warehouseZoneService.saveZone(dto);
}
@ApiOperation("初始化")
@GetMapping("/initialization/{sid}")
public ResultBean<WarehouseZoneInitVo> initialization(@PathVariable("sid") String sid) {
return warehouseZoneService.initialization(sid);
}
@ApiOperation("删除")
@DeleteMapping("/delete/{sid}")
public ResultBean delete(@PathVariable("sid") String sid) {
return warehouseZoneService.delete(sid);
}
@ApiOperation("根据sid批量删除")
@DeleteMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
warehouseZoneService.delAll(sids);
return rb.success();
}
@ApiOperation("更改可用状态")
@GetMapping("/updateIsEnable/{sid}/{isEnable}")
public ResultBean updateIsEnable(@PathVariable("sid") String sid,@PathVariable("isEnable")String isEnable) {
return warehouseZoneService.updateIsEnable(sid,isEnable);
}
@ApiOperation("根据仓库sid查询所有库位")
@GetMapping("/selectAll")
public ResultBean<List<WarehouseZoneAllVo>> selectAll(@RequestParam("ckSid") String ckSid){
ResultBean rb = ResultBean.fireFail();
return warehouseZoneService.selectAll(ckSid);
}
}

2
wms/src/main/java/com/yxt/wms/biz/func/warehousearea/WarehouseArea.java

@ -24,5 +24,7 @@ public class WarehouseArea extends BaseEntity {
private String useOrgSid;//创建组织sid
private String createOrgSid;//创建组织sid
private String zoneSid;//区域
}

4
wms/src/main/java/com/yxt/wms/biz/func/warehousearea/WarehouseAreaDto.java

@ -28,5 +28,9 @@ public class WarehouseAreaDto implements Dto {
private String createOrgSid;//创建组织sid
private String userSid; //登录用户sid
private String orgPath; //组织全路径
private String zoneSid;//区域
private String zoneName;//区域
private String zoneCode;//区域
}

3
wms/src/main/java/com/yxt/wms/biz/func/warehousearea/WarehouseAreaService.java

@ -125,4 +125,7 @@ public class WarehouseAreaService extends MybatisBaseService<WarehouseAreaMapper
public ResultBean<List<WarehouseAreaAllVo>> selectAll(String ckSid) {
return warehouseAreaFeign.selectAll(ckSid);
}
public ResultBean<List<WarehouseAreaAllVo>> selectAreaAll(String qySid) {
return warehouseAreaFeign.selectAreaAll(qySid);
}
}

4
wms/src/main/java/com/yxt/wms/biz/func/warehousearea/WarehouseAreaVo.java

@ -35,4 +35,8 @@ public class WarehouseAreaVo implements Vo {
private String createOrgSid;//创建组织sid
private String userSid; //登录用户sid
private String orgPath; //组织全路径
private String zoneSid;//区域
private String zoneName;//区域
private String zoneCode;//区域
}

25
wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarning.java

@ -0,0 +1,25 @@
package com.yxt.wms.biz.func.warehouseareawarning;
import com.yxt.common.core.domain.BaseEntity;
import lombok.Data;
/**
* @author wangpengfei
* @date 2024/2/28 8:38
*/
@Data
public class WarehouseAreaWarning extends BaseEntity {
private String warehouseAreaSid;//库区sid
private String goodsSpuSid;//商品spu
private String goodsSpuName;//商品spu
private String goodsSpuCode;//
private String goodsSkuSid;//sku
private String goodsSkuTitle;//创建组织sid
private String goodsSkuSpec;//创建组织sid
private String alertUpperLimit;//上限
private String warningLowerLimit;//下限
private String type;
}

22
wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningDto.java

@ -0,0 +1,22 @@
package com.yxt.wms.biz.func.warehouseareawarning;
import com.yxt.common.core.dto.Dto;
import lombok.Data;
/**
* @author wangpengfei
* @date 2024/2/26 13:38
*/
@Data
public class WarehouseAreaWarningDto implements Dto {
private String id;
private String sid;
private String warehouseAreaSid;//库区sid
private String goodsSpuSid;//商品spu
private String goodsSpuName;//商品spu
private String goodsSpuCode;//
private String alertUpperLimit;//上限
private String warningLowerLimit;//下限
private String type;
}

22
wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningMapper.java

@ -0,0 +1,22 @@
package com.yxt.wms.biz.func.warehouseareawarning;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @author wangpengfei
* @date 2024/2/26 13:40
*/
@Mapper
public interface WarehouseAreaWarningMapper extends BaseMapper<WarehouseAreaWarning> {
IPage<WarehouseAreaWarningVo> listPage(IPage<WarehouseAreaWarning> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseAreaWarning> qw);
WarehouseAreaWarningVo initialization (@Param("sid") String sid);
int updateBySidIsDelete(List<String> list);
List<WarehouseAreaWarningVo> listAll(@Param("orgPath")String orgPath);
}

8
wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningMapper.xml

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.wms.biz.func.warehouseareawarning.WarehouseAreaWarningMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
</mapper>

22
wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningQuery.java

@ -0,0 +1,22 @@
package com.yxt.wms.biz.func.warehouseareawarning;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author wangpengfei
* @date 2024/2/26 13:37
*/
@Data
public class WarehouseAreaWarningQuery implements Query {
private String name;
private String orgLevelKey;//
private int index;
@ApiModelProperty("菜单路由")
private String menuUrl;
@ApiModelProperty("组织全路径sid")
private String orgPath;
@ApiModelProperty("用户sid")
private String userSid;
}

35
wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningService.java

@ -0,0 +1,35 @@
package com.yxt.wms.biz.func.warehouseareawarning;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.wms.feign.warehouse.warehouseareawarning.WarehouseAreaWarningFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author wangpengfei
* @date 2024/2/26 13:40
*/
@Service
public class WarehouseAreaWarningService extends MybatisBaseService<WarehouseAreaWarningMapper, WarehouseAreaWarning> {
@Autowired
WarehouseAreaWarningFeign warehouseAreaWarningFeign;
public ResultBean<String> saveOrUpdate(List<WarehouseAreaWarningDto> dtos) {
return warehouseAreaWarningFeign.saveOrUpdate(dtos);
}
}

24
wms/src/main/java/com/yxt/wms/biz/func/warehouseareawarning/WarehouseAreaWarningVo.java

@ -0,0 +1,24 @@
package com.yxt.wms.biz.func.warehouseareawarning;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
/**
* @author wangpengfei
* @date 2024/2/26 13:37
*/
@Data
public class WarehouseAreaWarningVo implements Vo {
private String id;
private String sid;
private String warehouseAreaSid;//库区sid
private String goodsSpuSid;//商品spu
private String goodsSpuName;//商品spu
private String goodsSpuCode;//
private String goodsSkuSid;//sku
private String goodsSkuTitle;//创建组织sid
private String goodsSkuSpec;//创建组织sid
private String alertUpperLimit;//上限
private String warningLowerLimit;//下限
private String type;
}

1
wms/src/main/java/com/yxt/wms/biz/func/warehouseinfo/WarehouseInfo.java

@ -21,6 +21,7 @@ public class WarehouseInfo extends BaseEntity {
private String manager;//主管
private String areaSid;//地区sid
private String address;//地址
private String belongingPlace;//归属地
private String lngAndLat;//经纬度
private String longitude;//经度
private String latitude;//纬度

1
wms/src/main/java/com/yxt/wms/biz/func/warehouseinfo/WarehouseInfoDto.java

@ -32,6 +32,7 @@ public class WarehouseInfoDto implements Dto {
private String manager;//主管
private String areaSid;//地区sid
private String address;//地址
private String belongingPlace;//归属地
private String lngAndLat;//经纬度
private String longitude;//经度
private String latitude;//纬度

1
wms/src/main/java/com/yxt/wms/biz/func/warehouseinfo/WarehouseInfoVo.java

@ -33,6 +33,7 @@ public class WarehouseInfoVo implements Vo {
private String manager;//主管
private String areaSid;//地区sid
private String address;//地址
private String belongingPlace;//归属地
private String lngAndLat;//经纬度
private String longitude;//经度
private String latitude;//纬度

4
wms/src/main/java/com/yxt/wms/biz/func/warehouseinventory/WarehouseInventoryQuery.java

@ -21,11 +21,13 @@ public class WarehouseInventoryQuery implements Query {
private String warehouseAreaSid;
@ApiModelProperty("商品名称")
private String goodsSpuSid;
private String goodsSpuName;
private String brandSid;
private String goodsTypeSid;
private String spec;
private String countStart;
private String countEnd;
private String ifWarning;
@ApiModelProperty("条码")
private String barCode;

20
wms/src/main/java/com/yxt/wms/biz/func/warehouseinventory/WarehouseInventoryService.java

@ -3,7 +3,9 @@ package com.yxt.wms.biz.func.warehouseinventory;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
@ -81,6 +83,24 @@ public class WarehouseInventoryService extends MybatisBaseService<WarehouseInven
record.setGoodsSpuCode(v.getGoodsCode());
// for (WarehouseInventoryVo child : record.getChildren()) {
// child.setSid(child.getGoodsSkuSid());
// }
}
return rb.success().setData(warehouseInventoryVoPagerVo);
}
public ResultBean<PagerVo<WarehouseInventoryVo>> areaWarningListPage(PagerQuery<WarehouseInventoryQuery> pq) {
ResultBean rb=new ResultBean().fail();
WarehouseInventoryQuery query=pq.getParams();
DataRule dataRule=commonMethod.dataRule(query.getOrgPath(),query.getMenuUrl(),query.getUserSid()).getData();
pq.getParams().setOrgLevelKey(dataRule.getDataRuleId());
pq.getParams().setIndex(dataRule.getIndex());
PagerVo<WarehouseInventoryVo>warehouseInventoryVoPagerVo=warehouseInventoryFeign.areaWarningListPage(pq).getData();
for (WarehouseInventoryVo record : warehouseInventoryVoPagerVo.getRecords()) {
BaseGoodsSpuVo v=baseGoodsSpuFeign.initialization(record.getGoodsSpuSid()).getData();
record.setSid(record.getGoodsSpuSid());
record.setBarCode(v.getBarCode());
record.setGoodsSpuCode(v.getGoodsCode());
// for (WarehouseInventoryVo child : record.getChildren()) {
// child.setSid(child.getGoodsSkuSid());
// }
}
return rb.success().setData(warehouseInventoryVoPagerVo);

2
wms/src/main/java/com/yxt/wms/biz/func/warehouseinventory/WarehouseInventoryVo.java

@ -69,6 +69,8 @@ public class WarehouseInventoryVo implements Vo {
private String serialNumber;
private String brandName;
private String typeName;
private String alertUpperLimit;//上限
private String warningLowerLimit;//下限
private List<WarehouseInventoryVo> children=new ArrayList<>();
}

2
wms/src/main/java/com/yxt/wms/biz/func/warehouserack/WarehouseRack.java

@ -21,4 +21,6 @@ public class WarehouseRack extends BaseEntity {
private String locationSid;//库位sid
private String useOrgSid;//创建组织sid
private String createOrgSid;//创建组织sid
private String zoneSid;//区域
}

4
wms/src/main/java/com/yxt/wms/biz/func/warehouserack/WarehouseRackDto.java

@ -26,4 +26,8 @@ public class WarehouseRackDto implements Dto {
private String createOrgSid;//创建组织sid
private String userSid; //登录用户sid
private String orgPath; //组织全路径
private String zoneSid;//区域
private String zoneName;//区域
private String zoneCode;//区域
}

4
wms/src/main/java/com/yxt/wms/biz/func/warehouserack/WarehouseRackVo.java

@ -33,5 +33,9 @@ public class WarehouseRackVo implements Vo {
private String createOrgSid;//创建组织sid
private String userSid;
private String orgPath;
private String zoneSid;//区域
private String zoneName;//区域
private String zoneCode;//区域
}

21
wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZone.java

@ -0,0 +1,21 @@
package com.yxt.wms.biz.func.warehousezone;
import com.yxt.common.core.domain.BaseEntity;
import lombok.Data;
import java.math.BigDecimal;
/**
* @author wangpengfei
* @date 2024/2/28 8:38
*/
@Data
public class WarehouseZone extends BaseEntity {
private String zoneName;//库位名称
private String zoneCode;//库位编码
private String warehouseSid;//仓库sid
private BigDecimal volume;//库位容量
private String unit;//计量单位
private String useOrgSid;//使用组织sid
private String createOrgSid;//创建组织sid
}

21
wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneAllVo.java

@ -0,0 +1,21 @@
package com.yxt.wms.biz.func.warehousezone;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/9/14 14:58
*/
@Data
public class WarehouseZoneAllVo implements Vo {
private String sid;
@ApiModelProperty("区域名称")
private String zoneName;
@ApiModelProperty("区域编码")
private String zoneCode;
}

26
wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneDto.java

@ -0,0 +1,26 @@
package com.yxt.wms.biz.func.warehousezone;
import com.yxt.common.core.dto.Dto;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/9/14 14:37
*/
@Data
public class WarehouseZoneDto implements Dto {
private String sid;
private String remarks;
private String zoneName;//区域名称
private String zoneCode;//区域编码
private String warehouseSid;//仓库sid
private String warehouseName;//仓库
private String volume;//区域面积
private String unit;//计量单位
private String useOrgSid;//创建组织sid
private String createOrgSid;//创建组织sid
private String userSid; //登录用户sid
private String orgPath; //组织全路径
}

24
wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneInitVo.java

@ -0,0 +1,24 @@
package com.yxt.wms.biz.func.warehousezone;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/9/14 14:39
*/
@Data
public class WarehouseZoneInitVo {
private String sid;
private String remarks;
private String zoneName;//区域名称
private String zoneCode;//区域编码
private String warehouseSid;//仓库sid
private String warehouseName;//仓库
private String volume;//区域面积
private String unit;//计量单位
private String userSid; //用户sid
}

34
wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneMapper.java

@ -0,0 +1,34 @@
package com.yxt.wms.biz.func.warehousezone;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @author wangpengfei
* @date 2024/2/26 13:40
*/
@Mapper
public interface WarehouseZoneMapper extends BaseMapper<WarehouseZone> {
IPage<WarehouseZoneVo> listPage(IPage<WarehouseZone> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseZone> qw);
List<WarehouseZone> listAll(@Param("useOrgSid") String useOrgSid);
WarehouseZone checkForInsert(@Param("zoneCode") String zoneCode, @Param("warehouseSid") String warehouseSid);
int selectNum(@Param("warehouseCode") String warehouseCode);
WarehouseZone checkForUpdate(@Param("zoneCode") String zoneCode, @Param("warehouseSid")String warehouseSid, @Param("sid") String sid);
WarehouseZoneInitVo initialization(String sid);
int updateBySidIsDelete(List<String> list);
List<WarehouseZoneAllVo> selectAll(String ckSid);
}

5
wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneMapper.xml

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.wms.biz.func.warehousezone.WarehouseZoneMapper">
</mapper>

28
wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneQuery.java

@ -0,0 +1,28 @@
package com.yxt.wms.biz.func.warehousezone;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/9/14 14:24
*/
@Data
public class WarehouseZoneQuery implements Query {
private String name;//名字
private String code;//编码
private String warehouseSid;//仓库
@ApiModelProperty("菜单路由")
private String menuUrl;
@ApiModelProperty("组织全路径sid")
private String orgPath;
@ApiModelProperty("用户sid")
private String userSid;
private String orgLevelKey;//
private int index;//下标
}

111
wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneService.java

@ -0,0 +1,111 @@
package com.yxt.wms.biz.func.warehousezone;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.wms.biz.func.commonmethod.CommonMethod;
import com.yxt.wms.biz.func.commonmethod.DataRule;
import com.yxt.wms.biz.func.sysorganization.SysOrganizationVo;
import com.yxt.wms.biz.func.warehouserack.WarehouseRackQuery;
import com.yxt.wms.feign.portal.sysorganization.SysOrganizationFeign;
import com.yxt.wms.feign.portal.sysstafforg.SysStaffOrgFeign;
import com.yxt.wms.feign.portal.sysuser.SysUserFeign;
import com.yxt.wms.feign.warehouse.warehousezone.WarehouseZoneFeign;
import com.yxt.wms.feign.warehouse.wmswarehouserack.WarehouseRackFeign;
import com.yxt.wms.utils.OrgPathQuery;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author Fan
* @description
* @date 2024/9/14 14:19
*/
@Service
public class WarehouseZoneService extends MybatisBaseService<WarehouseZoneMapper, WarehouseZone> {
@Autowired
CommonMethod commonMethod;
@Autowired
WarehouseRackFeign warehouseRackFeign;
@Autowired
SysOrganizationFeign sysOrganizationFeign;
@Autowired
SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
SysUserFeign sysUserFeign;
@Autowired
private WarehouseZoneFeign warehouseZoneFeign;
public ResultBean<PagerVo<WarehouseZoneVo>> listPage(PagerQuery<WarehouseZoneQuery> pq) {
WarehouseZoneQuery query = pq.getParams();
//通用组装方法 根据用户sid、菜单、组织全路径sid 获取组装参数
DataRule dataRule=commonMethod.dataRule(query.getOrgPath(),query.getMenuUrl(),query.getUserSid()).getData();
pq.getParams().setOrgLevelKey(dataRule.getDataRuleId());
pq.getParams().setIndex(dataRule.getIndex());
return warehouseZoneFeign.listPage(pq);
}
public ResultBean<List<WarehouseZone>> getAllType(OrgPathQuery query) {
return warehouseZoneFeign.listAll(query);
}
public ResultBean<String> saveZone(WarehouseZoneDto dto) {
String orgPath = dto.getOrgPath();
if (StringUtils.isBlank(dto.getSid())) {
String deptSid = "";
String createOrgSid = "";
if (StringUtils.isNotBlank(orgPath)) {
List<String> split = Arrays.asList(orgPath.split("/"));
if (split.size() > 1) {
//获取本级sid获取本级部门信息
SysOrganizationVo sysOrganization1 = sysOrganizationFeign.fetchBySid(split.get(split.size() - 1)).getData();
deptSid = sysOrganization1.getSid();
} else {
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(0)).getData();
deptSid = sysOrganization.getSid();
}
dto.setUseOrgSid(deptSid);
createOrgSid = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData();
//创建组织使用组织
ResultBean<SysOrganizationVo> organizationResultBean = sysOrganizationFeign.fetchBySid(createOrgSid);
if (organizationResultBean.getData() != null) {
dto.setCreateOrgSid(createOrgSid);
}
}
}
return warehouseZoneFeign.saveOrUpdate(dto);
}
public ResultBean<WarehouseZoneInitVo> initialization(String sid) {
return warehouseZoneFeign.initialization(sid);
}
public ResultBean delete(String sid) {
return warehouseZoneFeign.delete(sid);
}
public void delAll(String[] sids) {
warehouseZoneFeign.delBySids(sids);
}
public ResultBean updateIsEnable(String sid, String isEnable) {
ResultBean rb = ResultBean.fireFail();
return warehouseZoneFeign.updateIsEnable(sid, isEnable);
}
public ResultBean<List<WarehouseZoneAllVo>> selectAll(String ckSid) {
return warehouseZoneFeign.selectAll(ckSid);
}
}

25
wms/src/main/java/com/yxt/wms/biz/func/warehousezone/WarehouseZoneVo.java

@ -0,0 +1,25 @@
package com.yxt.wms.biz.func.warehousezone;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/9/14 14:24
*/
@Data
public class WarehouseZoneVo implements Vo {
private String sid;
private String remarks;
private String isEnable;
private String isDelete;
private String zoneName;//区域名称
private String zoneCode;//区域编码
private String volume;//区域面积
private String unit;//计量单位
private String warehouseName;//仓库名称
private String useOrgSid;//使用组织sid
private String createOrgSid;//创建组织sid
}

3
wms/src/main/java/com/yxt/wms/feign/warehouse/warehousearea/WarehouseAreaFeign.java

@ -63,4 +63,7 @@ public interface WarehouseAreaFeign {
@ApiOperation("根据仓库sid查询所有库位")
@GetMapping("/selectAll")
public ResultBean<List<WarehouseAreaAllVo>> selectAll(@RequestParam("ckSid") String ckSid);
@ApiOperation("根据区域sid查询所有库区")
@GetMapping("/selectAreaAll")
public ResultBean<List<WarehouseAreaAllVo>> selectAreaAll(@RequestParam("qySid") String qySid);
}

5
wms/src/main/java/com/yxt/wms/feign/warehouse/warehousearea/WarehouseAreaFeignFallback.java

@ -68,4 +68,9 @@ public class WarehouseAreaFeignFallback implements WarehouseAreaFeign {
public ResultBean<List<WarehouseAreaAllVo>> selectAll(String ckSid) {
return null;
}
@Override
public ResultBean<List<WarehouseAreaAllVo>> selectAreaAll(String qySid) {
return null;
}
}

43
wms/src/main/java/com/yxt/wms/feign/warehouse/warehouseareawarning/WarehouseAreaWarningFeign.java

@ -0,0 +1,43 @@
package com.yxt.wms.feign.warehouse.warehouseareawarning;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.wms.biz.func.warehousearea.*;
import com.yxt.wms.biz.func.warehouseareawarning.WarehouseAreaWarningDto;
import com.yxt.wms.feign.warehouse.warehousearea.WarehouseAreaFeignFallback;
import com.yxt.wms.utils.OrgPathQuery;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* Project: anrui_portal(门户建设) <br/>
* File: SysRoleFeign.java <br/>
* Class: com.yxt.anrui.portal.api.sysrole.SysRoleFeign <br/>
* Description: 角色. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-08-03 00:24:29 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "库区")
@FeignClient(
contextId = "ss-common-warehouse-WarehouseAreaWarning",
name = "ss-common-warehouse",
path = "/apiadmin/warehouseareawarning")
public interface WarehouseAreaWarningFeign {
@ApiOperation("保存修改")
@PostMapping("/saveOrUpdate")
public ResultBean<String> saveOrUpdate(@RequestBody List<WarehouseAreaWarningDto> dtos);
}

4
wms/src/main/java/com/yxt/wms/feign/warehouse/warehousesinventory/WarehouseInventoryFeign.java

@ -38,7 +38,9 @@ public interface WarehouseInventoryFeign {
@ApiOperation("分页列表")
@PostMapping("/locationListPage")
public ResultBean<PagerVo<WarehouseInventoryVo>> locationListPage(@RequestBody PagerQuery<WarehouseInventoryQuery> pq);
@ApiOperation("库位预警分页列表")
@PostMapping("/areaWarningListPage")
public ResultBean<PagerVo<WarehouseInventoryVo>> areaWarningListPage(@RequestBody PagerQuery<WarehouseInventoryQuery> pq);
@ApiOperation("查询库位商品数量")
@PostMapping("/getRackCountBySid")
ResultBean getRackCountBySid(@RequestBody WarehouseInventoryRackCountQuery query);

5
wms/src/main/java/com/yxt/wms/feign/warehouse/warehousesinventory/WarehouseInventoryFeignFallback.java

@ -34,6 +34,11 @@ public class WarehouseInventoryFeignFallback implements WarehouseInventoryFeign
return null;
}
@Override
public ResultBean<PagerVo<WarehouseInventoryVo>> areaWarningListPage(PagerQuery<WarehouseInventoryQuery> pq) {
return null;
}
@Override
public ResultBean getRackCountBySid(WarehouseInventoryRackCountQuery query) {
return null;

67
wms/src/main/java/com/yxt/wms/feign/warehouse/warehousezone/WarehouseZoneFeign.java

@ -0,0 +1,67 @@
package com.yxt.wms.feign.warehouse.warehousezone;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.wms.biz.func.warehousezone.*;
import com.yxt.wms.utils.OrgPathQuery;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* Project: anrui_portal(门户建设) <br/>
* File: SysRoleFeign.java <br/>
* Class: com.yxt.anrui.portal.api.sysrole.SysRoleFeign <br/>
* Description: 角色. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-08-03 00:24:29 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "货架")
@FeignClient(
contextId = "ss-common-warehouse-WarehouseZone",
name = "ss-common-warehouse",
path = "/apiadmin/warehousezone")
public interface WarehouseZoneFeign {
@ApiOperation("分页列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<WarehouseZoneVo>> listPage(@RequestBody PagerQuery<WarehouseZoneQuery> pq);
@ApiOperation("查询所有的库区")
@PostMapping("/listAll")
public ResultBean<List<WarehouseZone>> listAll(@RequestBody OrgPathQuery query);
@ApiOperation("保存修改")
@PostMapping("/saveOrUpdate")
public ResultBean<String> saveOrUpdate(@RequestBody WarehouseZoneDto dto);
@ApiOperation("初始化")
@GetMapping("/initialization/{sid}")
public ResultBean<WarehouseZoneInitVo> initialization(@PathVariable("sid") String sid);
@ApiOperation("删除")
@DeleteMapping("/delete/{sid}")
public ResultBean delete(@PathVariable("sid") String sid);
@ApiOperation("根据sid批量删除")
@DeleteMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("更改可用状态")
@GetMapping("/updateIsEnable/{sid}/{isEnable}")
public ResultBean updateIsEnable(@PathVariable("sid") String sid,@PathVariable("isEnable")String isEnable);
@ApiOperation("根据仓库sid查询所有库位")
@GetMapping("/selectAll")
public ResultBean<List<WarehouseZoneAllVo>> selectAll(@RequestParam("ckSid") String ckSid);
@ApiOperation("根据库区sid查询所有库位")
@GetMapping("/getAllTypeByAreaSid")
public ResultBean<List<WarehouseZoneVo>> getAllTypeByAreaSid(@RequestParam("areaSid") String areaSid);
}
Loading…
Cancel
Save