diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java b/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java index 726188fbc..2aabe95e5 100644 --- a/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java +++ b/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java @@ -8,7 +8,7 @@ public interface ModuleNameConstant { /** * 如果不需要 "" */ - public static final String DEVAUTH ="-pref"; + public static final String DEVAUTH ="-zhy"; /** diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockupScan.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockupScan.java new file mode 100644 index 000000000..9ffc05662 --- /dev/null +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockupScan.java @@ -0,0 +1,55 @@ +package com.logpm.distribution.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.core.tenant.mp.TenantEntity; + +@Data +@TableName("logpm_distribution_stockup_scan") +@ApiModel(value = "ReservationStockupScan对象", description = "备货扫描表") +@EqualsAndHashCode(callSuper = true) +public class DistributionStockupScan extends TenantEntity { + + /** + * 预留1 + */ + @ApiModelProperty(value = "预留1") + private String reserve1; + /** + * 预留2 + */ + @ApiModelProperty(value = "预留2") + private String reserve2; + /** + * 预留3 + */ + @ApiModelProperty(value = "预留3") + private String reserve3; + /** + * 预留4 + */ + @ApiModelProperty(value = "预留4") + private String reserve4; + /** + * 预留5 + */ + @ApiModelProperty(value = "预留5") + private String reserve5; + + @ApiModelProperty(value = "包件码") + private String packetBarCode; + + @ApiModelProperty(value = "节点") + private Integer nodeType; + + @ApiModelProperty(value = "扫码类型 1 pda扫码 2 手填") + private Integer scanType; + + @ApiModelProperty(value = "包件类型 1 包件 2 库存品") + private Integer packageType; + + +} diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupListVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupListVO.java new file mode 100644 index 000000000..2b6316e0b --- /dev/null +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupListVO.java @@ -0,0 +1,32 @@ +package com.logpm.distribution.vo; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class DistributionStockupListVO implements Serializable { + + private Long reservationId;//预约单id + + private Integer typeService;//服务类型 + private String typeServiceStr; + + private Integer stockupStatus;//备货状态 + private String stockupStatusStr; + + private String customer;//客户 + + private String stockupArea;//备货区 + + private String warehouseArea;//库位 + + private String trays;//托盘 + + private Integer orderNum;//订单总数 + + private Integer planNum;//计划件数 + + private Integer realNum;//件数 + +} diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupOrderListVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupOrderListVO.java new file mode 100644 index 000000000..d0976148b --- /dev/null +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupOrderListVO.java @@ -0,0 +1,25 @@ +package com.logpm.distribution.vo; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 备货客户订单列表 + */ +@Data +public class DistributionStockupOrderListVO implements Serializable { + + private String allocation;//库位 + + private String orderCode;//订单编号 + + private String pallet;//托盘 + + private Integer containerNum;//容器件数 + + private Integer planNum;//计划件数 + + private Integer scanNum;//扫描件数 + +} diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupStockListVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupStockListVO.java new file mode 100644 index 000000000..fcbf8aade --- /dev/null +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupStockListVO.java @@ -0,0 +1,14 @@ +package com.logpm.distribution.vo; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class DistributionStockupStockListVO implements Serializable { + + +// private String + + +} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionReservationAppController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionReservationAppController.java new file mode 100644 index 000000000..f19df5576 --- /dev/null +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionReservationAppController.java @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: Chill 庄骞 (smallchill@163.com) + */ +package com.logpm.distribution.appcontroller; + +import com.logpm.distribution.service.IDistributionReservationService; +import io.swagger.annotations.Api; +import lombok.AllArgsConstructor; +import org.springblade.core.boot.ctrl.BladeController; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * 预约列表 控制器 + * + * @author TJJ + * @since 2023-06-12 + */ +@RestController +@AllArgsConstructor +@RequestMapping("/app/reservation") +@Api(value = "预约列表", tags = "预约列表接口") +public class DistributionReservationAppController extends BladeController { + + private final IDistributionReservationService reservationService; + +// /** +// * 预约列表 详情 +// */ +// @GetMapping("/list") +// @ApiOperationSupport(order = 1) +// @ApiOperation(value = "详情", notes = "传入distrbutionReservation") +// public R detail(DistributionReservationEntity distributionReservationEntity) { +//// DistributionReservationVO distributionReservationVO = reservationService.getReservationDetail(reservationId); +// DistributionReservationEntity detail = reservationService.getOne(Condition.getQueryWrapper(distributionReservationEntity)); +// return R.data(detail); +// } + + + + +} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java new file mode 100644 index 000000000..95bd617de --- /dev/null +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: Chill 庄骞 (smallchill@163.com) + */ +package com.logpm.distribution.appcontroller; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.logpm.distribution.dto.app.StockupDTO; +import com.logpm.distribution.service.IDistributionStockupService; +import com.logpm.distribution.vo.DistributionStockupListVO; +import com.logpm.distribution.vo.DistributionStockupOrderListVO; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.tool.api.R; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 备货信息表 app控制器 + * + * @author zhy + * @since 2023-07-19 + */ +@RestController +@AllArgsConstructor +@RequestMapping("/app/distributionStockup") +@Api(value = "备货信息表", tags = "备货信息表接口") +public class DistributionStockupAppController extends BladeController { + + private final IDistributionStockupService distributionStockupService; + + /** + * 备货信息表 分页列表 + */ + @GetMapping("/pageList") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "分页列表", notes = "传入stockupDTO") + public R> pageList(StockupDTO stockupDTO) { + IPage pages = distributionStockupService.selectStockupPage(stockupDTO); + return R.data(pages); + } + + @GetMapping("/orderList") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "分页列表", notes = "传入stockupDTO") + public R> orderList(StockupDTO stockupDTO) { + Integer orderStatus = stockupDTO.getOrderStatus(); + Map map = new HashMap<>(); + if(orderStatus.equals(1)) { + //查询客户订单对应的 + List list = distributionStockupService.selectStockupOrderList(stockupDTO); + map.put("orderList",list); + }else if(orderStatus.equals(2)){ + //查询客户订单对应的库存品 +// List list = distributionStockupService.selectStockupStockList(stockupDTO); + }else{ + return R.fail("未知的查询类型"); + } + return R.data(map); + } + + +} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/app/StockupDTO.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/app/StockupDTO.java new file mode 100644 index 000000000..58e1e1dd5 --- /dev/null +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/app/StockupDTO.java @@ -0,0 +1,24 @@ +package com.logpm.distribution.dto.app; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class StockupDTO implements Serializable { + + private String stockupDate;//备货日期 + + private Integer status;//0未完成 1已完成 + + @ApiModelProperty("当前页") + private Integer currentPage; + @ApiModelProperty("每页的数量") + private Integer size; + + private Integer orderStatus;//1 客户订单 2库存品 + + private Long reservationId;//预约单id + +} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.java index eb682f242..ba85bc968 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.java @@ -16,15 +16,15 @@ */ package com.logpm.distribution.mapper; -import com.logpm.distribution.entity.DistributionReservationEntity; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.logpm.distribution.entity.DistributionStockArticleEntity; +import com.logpm.distribution.entity.DistributionReservationEntity; import com.logpm.distribution.excel.DistributionReservationExcel; import com.logpm.distribution.vo.DistributionReservationVO; -import com.logpm.distribution.vo.DistributionStockArticleVO; +import com.logpm.distribution.vo.DistributionStockupOrderListVO; import org.apache.ibatis.annotations.Param; + import java.util.List; /** @@ -58,4 +58,8 @@ public interface DistributionReservationMapper extends BaseMapper getStockArticleList(@Param("id") String reservationId); + + List getAllPackagePallet(@Param("id")Long id); + + List selectStockupOrderList(@Param("reservationId")Long reservationId); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml index 27b1f984d..e4f480c89 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml @@ -157,4 +157,31 @@ + + + + + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java index 10227af89..aed2c332a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java @@ -16,13 +16,16 @@ */ package com.logpm.distribution.mapper; -import com.logpm.distribution.entity.DistributionStockupEntity; -import com.logpm.distribution.vo.DistributionStockupVO; -import com.logpm.distribution.excel.DistributionStockupExcel; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.distribution.dto.app.StockupDTO; +import com.logpm.distribution.entity.DistributionStockupEntity; +import com.logpm.distribution.excel.DistributionStockupExcel; +import com.logpm.distribution.vo.DistributionStockupListVO; +import com.logpm.distribution.vo.DistributionStockupVO; import org.apache.ibatis.annotations.Param; + import java.util.List; /** @@ -52,4 +55,10 @@ public interface DistributionStockupMapper extends BaseMapper exportDistributionStockup(@Param("ew") Wrapper queryWrapper); IPage pageList(IPage page,@Param("param") DistributionStockupEntity distributionStockupEntity); + + IPage selectStockupPage(IPage page, @Param("param") StockupDTO stockupDTO); + + Integer getAllPackageNum(@Param("reservationId") Long reservationId); + + Integer getAllStockNum(@Param("reservationId") Long reservationId); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml index 6ca693e18..b7445c6e0 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml @@ -62,4 +62,49 @@ SELECT * FROM logpm_distribution_stockup ${ew.customSqlSegment} + + + + + + + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationService.java index 73af11b41..4cf035211 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationService.java @@ -23,6 +23,7 @@ import com.logpm.distribution.dto.DistributionReservationDTO; import com.logpm.distribution.entity.DistributionReservationEntity; import com.logpm.distribution.excel.DistributionReservationExcel; import com.logpm.distribution.vo.DistributionReservationVO; +import com.logpm.distribution.vo.DistributionStockupOrderListVO; import org.springblade.core.mp.base.BaseService; import org.springblade.core.tool.api.R; @@ -140,4 +141,10 @@ public interface IDistributionReservationService extends BaseService getReservationPackageList(String reservationId); + List selectListByIds(List reservationIds); + + List getAllPackagePallet(Long id); + + List selectStockupOrderList(Long reservationId); + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupInfoService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupInfoService.java index 9d940ee6f..6b8b3d1f0 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupInfoService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupInfoService.java @@ -49,4 +49,5 @@ public interface IDistributionStockupInfoService extends BaseService exportReservationStockup(Wrapper queryWrapper); + List selectReservationIdListByStockupId(Long stockupId); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupService.java index c6c558e63..4320f4ee7 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupService.java @@ -17,11 +17,15 @@ package com.logpm.distribution.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.distribution.dto.app.StockupDTO; import com.logpm.distribution.entity.DistributionStockupEntity; -import com.logpm.distribution.vo.DistributionStockupVO; import com.logpm.distribution.excel.DistributionStockupExcel; -import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.distribution.vo.DistributionStockupListVO; +import com.logpm.distribution.vo.DistributionStockupOrderListVO; +import com.logpm.distribution.vo.DistributionStockupVO; import org.springblade.core.mp.base.BaseService; + import java.util.List; import java.util.Map; @@ -53,4 +57,8 @@ public interface IDistributionStockupService extends BaseService pageList(IPage page, Map distributionStockup); + + IPage selectStockupPage(StockupDTO stockupDTO); + + List selectStockupOrderList(StockupDTO stockupDTO); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java index e1075bbb3..03905b2fe 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java @@ -16,7 +16,9 @@ */ package com.logpm.distribution.service.impl; +import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.toolkit.SqlHelper; import com.logpm.distribution.dto.*; import com.logpm.distribution.entity.*; @@ -28,10 +30,12 @@ import com.logpm.distribution.mapper.DistributionReservationStocklistMapper; import com.logpm.distribution.service.*; import com.logpm.distribution.vo.DistributionReservationStockarticleVO; import com.logpm.distribution.vo.DistributionReservationVO; +import com.logpm.distribution.vo.DistributionStockupOrderListVO; import com.logpm.distribution.vo.DistributionStockArticleVO; import com.logpm.distribution.vo.DistributionStockListVO; import lombok.AllArgsConstructor; import org.springblade.common.serviceConstant.ServiceConstant; +import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.mp.support.Condition; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; @@ -39,16 +43,12 @@ import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.RandomType; import org.springframework.stereotype.Service; -import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import org.springblade.core.mp.base.BaseServiceImpl; import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.interceptor.TransactionAspectSupport; import java.math.BigDecimal; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.time.LocalDate; import java.util.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicReference; @@ -834,7 +834,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl distributionStockArticleDTOS = storeClient.get(""); Map> mallClient = distributionStockArticleDTOS.stream().collect(Collectors.groupingBy(DistributionStockArticleDTO::getMallName)); //3、维护订单和客户 - storeClient.forEach((k, v) -> mallClient.merge(k, v, (v1, v2) -> v2)); + storeClient.forEach((k,v)->mallClient.merge(k,v,(v1,v2)->v2)); //统计客户数 AtomicInteger clientNum = new AtomicInteger(); @@ -1040,4 +1040,19 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl distributionParcelListEntityList = distributionReservationPackageMapper.getReservationPackageList(reservationId); return R.data(distributionParcelListEntityList); } + + @Override + public List selectListByIds(List reservationIds) { + return baseMapper.selectBatchIds(reservationIds); + } + + @Override + public List getAllPackagePallet(Long id) { + return baseMapper.getAllPackagePallet(id); + } + + @Override + public List selectStockupOrderList(Long reservationId) { + return baseMapper.selectStockupOrderList(reservationId); + } } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupInfoServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupInfoServiceImpl.java index 9a6ac3312..b88565136 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupInfoServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupInfoServiceImpl.java @@ -16,6 +16,7 @@ */ package com.logpm.distribution.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.logpm.distribution.entity.DistributionStockupInfoEntity; import com.logpm.distribution.excel.DistributionStockupInfoExcel; import com.logpm.distribution.mapper.DistributionStockupInfoMapper; @@ -25,6 +26,8 @@ import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseServiceImpl; + +import java.util.ArrayList; import java.util.List; /** @@ -51,4 +54,16 @@ public class DistributionStockupInfoServiceImpl extends BaseServiceImpl selectReservationIdListByStockupId(Long stockupId) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("stockup_id",stockupId); + List distributionStockupInfoEntities = baseMapper.selectList(queryWrapper); + List list = new ArrayList<>(); + for (DistributionStockupInfoEntity distributionStockupInfoEntity:distributionStockupInfoEntities){ + list.add(distributionStockupInfoEntity.getId()); + } + return list; + } + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java index c494db131..e6fef1ea2 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java @@ -17,24 +17,31 @@ package com.logpm.distribution.service.impl; import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.logpm.distribution.dto.app.StockupDTO; +import com.logpm.distribution.entity.DistributionReservationEntity; import com.logpm.distribution.entity.DistributionStockupEntity; -import com.logpm.distribution.vo.DistributionStockupVO; import com.logpm.distribution.excel.DistributionStockupExcel; import com.logpm.distribution.mapper.DistributionStockupMapper; -import com.logpm.distribution.service.IDistributionStockupService; +import com.logpm.distribution.service.*; +import com.logpm.distribution.vo.DistributionStockupListVO; +import com.logpm.distribution.vo.DistributionStockupOrderListVO; +import com.logpm.distribution.vo.DistributionStockupVO; +import lombok.AllArgsConstructor; +import org.springblade.common.constant.DictBizConstant; +import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; +import org.springblade.core.tool.utils.StringUtil; +import org.springblade.system.cache.DictBizCache; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; -import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import org.springblade.core.mp.base.BaseServiceImpl; import org.springframework.transaction.annotation.Transactional; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; /** * 备货信息表 服务实现类 @@ -43,8 +50,17 @@ import java.util.Map; * @since 2023-06-15 */ @Service +@AllArgsConstructor public class DistributionStockupServiceImpl extends BaseServiceImpl implements IDistributionStockupService { + private final IDistributionReservationService distributionReservationService; + + private final IDistributionStockupInfoService distributionStockupInfoService; + + private final IDistributionParcelListService distributionParcelListService; + + private final IDistributionStockService distributionStockService; + @Override public IPage selectDistributionStockupPage(IPage page, DistributionStockupVO distributionStockup) { return page.setRecords(baseMapper.selectDistributionStockupPage(page, distributionStockup)); @@ -89,4 +105,118 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl selectStockupPage(StockupDTO stockupDTO) { + IPage page = new Page<>(); + page.setCurrent(stockupDTO.getCurrentPage()); + page.setSize(stockupDTO.getSize()); + + IPage distributionStockupEntityIPage = baseMapper.selectStockupPage(page, stockupDTO); + List records = distributionStockupEntityIPage.getRecords(); + for (DistributionStockupListVO vo:records) { + intToStrDistributionStockupListVO(vo); + //拿到对应的备货状态 + Integer stockupStatus = vo.getStockupStatus(); + if(stockupStatus.equals(2)||stockupStatus.equals(3)){ + vo.setStockupStatusStr("否"); + }else if(stockupStatus.equals(4)){ + vo.setStockupStatusStr("是"); + } + } + distributionStockupEntityIPage.setRecords(records); + return distributionStockupEntityIPage; + +// //查询该备货单上对应的客户 +// //1.通过备货任务id查询得到所有的预约单 +// List reservationIds = distributionStockupInfoService.selectReservationIdListByStockupId(stockupId); +// //2.通过预约id查到所有的预约单 +// List reservationEntities = distributionReservationService.selectListByIds(reservationIds); +// //3.拼接客户名称 +// vo.setCustomer(getCustomer(reservationEntities)); +// //4.拿到所有包件的托盘信息 +// vo.setTrays(getTrays(reservationEntities)); +// //5.查询订单总数 计划数量 备货件数 +// Map nums = getNums(reservationEntities); +// vo.setOrderNum(nums.get("orderNum")); +// vo.setPlanNum(nums.get("stockNum")); +// //6.查询已扫描备货的数据 TODO 还需要查询逻辑 +// vo.setRealNum(0); +// } + + + + } + + private Map getNums(List reservationEntities){ + Map map = new HashMap<>(); + + Set set = new TreeSet(); + Integer packageNum = 0; + Integer stockNum = 0; + for (DistributionReservationEntity reservationEntity:reservationEntities){ + + String stockArticleId = reservationEntity.getStockArticleId(); + Long reservationId = reservationEntity.getId(); + String[] split = stockArticleId.split(","); + List list = new ArrayList<>(); + boolean b = Collections.addAll(list, split); + if(b){ + set.addAll(list); + } + //查询所有包件数量 + packageNum = packageNum + baseMapper.getAllPackageNum(reservationId); + stockNum = stockNum + baseMapper.getAllStockNum(reservationId); + } + map.put("orderNum",set.size()); + map.put("planNum",packageNum+stockNum); + return map; + } + + private String getTrays(List reservationEntities){ + Set set = new TreeSet<>(); + StringBuilder sb = new StringBuilder(); + for (DistributionReservationEntity reservationEntity:reservationEntities){ + List list = distributionReservationService.getAllPackagePallet(reservationEntity.getId()); + set.addAll(list); + } + for (String pallet:set){ + if(StringUtil.hasLength(sb.toString())){ + sb.append(pallet); + }else{ + sb.append(",").append(pallet); + } + } + return sb.toString(); + } + + + private String getCustomer(List reservationEntities){ + StringBuilder customerSb = new StringBuilder(); + for (DistributionReservationEntity reservationEntity:reservationEntities){ + //循环拼接所有客户的名称 + if(!StringUtil.hasLength(customerSb.toString())){ + customerSb.append(reservationEntity.getConsignee()); + }else{ + customerSb.append(",").append(reservationEntity.getConsignee()); + } + } + return customerSb.toString(); + } + + + private void intToStrDistributionStockupListVO(DistributionStockupListVO vo){ + String typeServiceStr = DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, vo.getTypeService()); + vo.setTypeServiceStr(typeServiceStr); + } + + + @Override + public List selectStockupOrderList(StockupDTO stockupDTO) { + Long reservationId = stockupDTO.getReservationId();//预约单id + //1.根据预约单id 查询到对应的数据 + List list = distributionReservationService.selectStockupOrderList(reservationId); + return list; + } + + } diff --git a/blade-service/logpm-distribution/src/main/java/wrapper/DistributionStockupWrapper.java b/blade-service/logpm-distribution/src/main/java/wrapper/DistributionStockupWrapper.java new file mode 100644 index 000000000..4eaada78b --- /dev/null +++ b/blade-service/logpm-distribution/src/main/java/wrapper/DistributionStockupWrapper.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: Chill 庄骞 (smallchill@163.com) + */ +package wrapper; + +import com.logpm.distribution.entity.DistributionStockupEntity; +import com.logpm.distribution.vo.DistributionStockupVO; +import org.springblade.core.mp.support.BaseEntityWrapper; +import org.springblade.core.tool.utils.BeanUtil; + +import java.util.Objects; + +/** + * 运单表 包装类,返回视图层所需的字段 + * + * @author zhy + * @since 2023-07-10 + */ +public class DistributionStockupWrapper extends BaseEntityWrapper { + + public static DistributionStockupWrapper build() { + return new DistributionStockupWrapper(); + } + + @Override + public DistributionStockupVO entityVO(DistributionStockupEntity distributionStockupEntity) { + DistributionStockupVO distributionStockupVO = Objects.requireNonNull(BeanUtil.copy(distributionStockupEntity, DistributionStockupVO.class)); +// String deliveryMethodStr = DictBizCache.getValue(DictBizConstant.DELIVERY_METHOD, distributionStockupVO.getDeliveryMethod()); +// distributionStockupVO.setDeliveryMethodStr(deliveryMethodStr); + + return distributionStockupVO; + } + + +}