Browse Source

Merge branch 'dev' into pre-production

newStockUp
pref_mail@163.com 1 year ago
parent
commit
20d86c2117
  1. 33
      blade-biz-common/src/main/java/org/springblade/common/cache/CacheObjNames.java
  2. 8
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionAddvaluePackageVO.java
  3. 25
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataWarehouseController.java
  4. 14
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataWarehouseServiceImpl.java
  5. 5
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionAddvalueAppController.java
  6. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java
  7. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueDetailMapper.java
  8. 8
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueDetailMapper.xml
  9. 1
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueMapper.xml
  10. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvaluePackageMapper.java
  11. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryInfoMapper.xml
  12. 3
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml
  13. 1
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml
  14. 37
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAddvalueServiceImpl.java
  15. 1
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java
  16. 101
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java
  17. 60
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java
  18. 1
      blade-service/logpm-factory/src/main/java/com/logpm/factory/receiver/OrderStatusHandler.java

33
blade-biz-common/src/main/java/org/springblade/common/cache/CacheObjNames.java vendored

@ -0,0 +1,33 @@
package org.springblade.common.cache;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.Getter;
/**
* 系统查询缓存名称定义
*/
@AllArgsConstructor
@Getter
public enum CacheObjNames {
/**
* 基础数据模块 当前登陆人操作仓库的缓存
*/
basic_data_warehourse_list("getMyWarehouseList","basicdataWarehouseList");
/**
* 缓存名称
*/
final String cacheName;
/**
* 缓存前缀
*/
final String keyPrefix;
}

8
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionAddvaluePackageVO.java

@ -32,6 +32,14 @@ import lombok.EqualsAndHashCode;
public class DistributionAddvaluePackageVO extends DistributionAddvaluePackageEntity {
private static final long serialVersionUID = 1L;
/**
* 最大操作数量 零担需要先进行装车
*/
private Integer maxQuantity;
/**
* 计划数量
*/
private Integer planQuantity;
}

25
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataWarehouseController.java

@ -18,6 +18,7 @@ package com.logpm.basicdata.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.logpm.basicdata.dto.BasicdataWarehouseDTO;
import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
@ -32,11 +33,15 @@ import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.AllArgsConstructor;
import lombok.extern.log4j.Log4j2;
import org.springblade.common.cache.CacheObjNames;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.cache.utils.CacheUtil;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.redis.cache.BladeRedis;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.utils.DateUtil;
@ -66,6 +71,8 @@ public class BasicdataWarehouseController extends BladeController {
private final IBasicdataWarehouseClient basicdataWarehouseClient;
private final BladeRedis bladeRedis;
/**
* 仓库 详情
*/
@ -177,6 +184,8 @@ public class BasicdataWarehouseController extends BladeController {
@ApiOperationSupport(order = 4)
@ApiOperation(value = "新增", notes = "传入warehouseWarehouse")
public R save(@Valid @RequestBody BasicdataWarehouseEntity warehouseWarehouse) {
BladeUser user = AuthUtil.getUser();
CacheUtil.evict(CacheObjNames.basic_data_warehourse_list.getCacheName(), CacheObjNames.basic_data_warehourse_list.getKeyPrefix(),user.getUserId());
warehouseWarehouse.setEnableStatus("2");
return R.status(warehouseService.save(warehouseWarehouse));
}
@ -198,6 +207,8 @@ public class BasicdataWarehouseController extends BladeController {
@ApiOperationSupport(order = 6)
@ApiOperation(value = "新增或修改", notes = "传入warehouseWarehouse")
public R submit(@Valid @RequestBody BasicdataWarehouseEntity warehouseWarehouse) {
BladeUser user = AuthUtil.getUser();
CacheUtil.evict(CacheObjNames.basic_data_warehourse_list.getCacheName(), CacheObjNames.basic_data_warehourse_list.getKeyPrefix(),user.getUserId());
return R.status(warehouseService.saveOrUpdate(warehouseWarehouse));
}
@ -211,6 +222,10 @@ public class BasicdataWarehouseController extends BladeController {
@ApiOperationSupport(order = 7)
@ApiOperation(value = "逻辑删除", notes = "传入ids")
public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
BladeUser user = AuthUtil.getUser();
CacheUtil.evict(CacheObjNames.basic_data_warehourse_list.getCacheName(), CacheObjNames.basic_data_warehourse_list.getKeyPrefix(),user.getUserId());
boolean result = warehouseService.removeWarehouse(ids);
if (result) {
return R.status(true);
@ -274,7 +289,15 @@ public class BasicdataWarehouseController extends BladeController {
@GetMapping("/getMyWarehouseList")
@ApiOperationSupport(order = 3)
public R<List<BasicdataWarehouseEntity>> getMyWarehouseList() {
List<BasicdataWarehouseEntity> basicdataGoodsShelfVOList = warehouseService.getMyWarehouseList();
BladeUser user = AuthUtil.getUser();
List<BasicdataWarehouseEntity> basicdataGoodsShelfVOList = CacheUtil.get(CacheObjNames.basic_data_warehourse_list.getCacheName(), CacheObjNames.basic_data_warehourse_list.getKeyPrefix(), user.getUserId(),List.class);
if(ObjectUtils.isNull(basicdataGoodsShelfVOList)){
basicdataGoodsShelfVOList = warehouseService.getMyWarehouseList();
CacheUtil.put(CacheObjNames.basic_data_warehourse_list.getCacheName(), CacheObjNames.basic_data_warehourse_list.getKeyPrefix(),user.getUserId(),basicdataGoodsShelfVOList);
}
return R.data(basicdataGoodsShelfVOList);
}

14
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataWarehouseServiceImpl.java

@ -179,16 +179,10 @@ public class BasicdataWarehouseServiceImpl extends BaseServiceImpl<BasicdataWare
});
}
}
List<BasicdataWarehouseEntity> warehouseEntityList = baseMapper.selectList(Wrappers.<BasicdataWarehouseEntity>query().lambda().in(BasicdataWarehouseEntity::getDepartment, deptIds));
// String json = redis.get(CacheNames.tenantKeyObj(user.getTenantId(), CacheNames.USER_WAREHOUSE_KEY, user.getUserId()));
// if (warehouseEntityList.size() <= 1) {
// redis.setEx(CacheNames.tenantKeyObj(user.getTenantId(), CacheNames.USER_WAREHOUSE_KEY, user.getUserId()), warehouseEntityList.get(0), 30 * 24 * 60 * 60L);
// }
return warehouseEntityList;
if(deptIds.isEmpty()){
return null;
}
return baseMapper.selectList(Wrappers.<BasicdataWarehouseEntity>query().lambda().in(BasicdataWarehouseEntity::getDepartment, deptIds));
}
@Override

5
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionAddvalueAppController.java

@ -95,7 +95,6 @@ public class DistributionAddvalueAppController {
return r;
}
/**
* 编辑保存
*/
@ -107,8 +106,6 @@ public class DistributionAddvalueAppController {
return r;
}
/**
* 查询编辑增值服务数据
*/
@ -120,8 +117,6 @@ public class DistributionAddvalueAppController {
return r;
}
/**
* 查询增值服务数据
*/

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionSignforController.java

@ -130,7 +130,7 @@ public class DistributionSignforController extends BladeController {
@ApiOperationSupport(order = 1)
@ApiOperation(value = "详情", notes = "传入distributionSignfor")
public R<List<DistributionParcelListVO>> signforPackageList(Long signforId) {
List<DistributionParcelListVO> distributionSignforsnmbVO = distributionSignforService.signforPackageList(signforId);
List<DistributionParcelListVO> distributionSignforsnmbVO= distributionSignforService.signforPackageList(signforId);
return R.data(distributionSignforsnmbVO);
}

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueDetailMapper.java

@ -53,7 +53,7 @@ public interface DistributionAddvalueDetailMapper extends BaseMapper<Distributio
/**
* 删除增值服务详情
* @param id
* @param addvalueId
*/
void deleteAddvalueDetail(@Param("addvalueId") Long id);
void deleteAddvalueDetail(@Param("addvalueId") Long addvalueId);
}

8
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueDetailMapper.xml

@ -3,7 +3,8 @@
<mapper namespace="com.logpm.distribution.mapper.DistributionAddvalueDetailMapper">
<!-- 通用查询映射结果 -->
<resultMap id="distributionAddvalueDetailResultMap" type="com.logpm.distribution.entity.DistributionAddvalueDetailEntity">
<resultMap id="distributionAddvalueDetailResultMap"
type="com.logpm.distribution.entity.DistributionAddvalueDetailEntity">
<result column="tenant_id" property="tenantId"/>
<result column="create_user" property="createUser"/>
<result column="create_time" property="createTime"/>
@ -27,7 +28,7 @@
<result column="distance" property="distance"/>
</resultMap>
<delete id="deleteAddvalueDetail">
DELETE FROM logpm_distribution_addvalue_detil WHERE addvalue_id = #{addvalueId}
DELETE FROM logpm_distribution_addvalue_detail WHERE addvalue_id = #{addvalueId}
</delete>
@ -36,7 +37,8 @@
</select>
<select id="exportDistributionAddvalueDetail" resultType="com.logpm.distribution.excel.DistributionAddvalueDetailExcel">
<select id="exportDistributionAddvalueDetail"
resultType="com.logpm.distribution.excel.DistributionAddvalueDetailExcel">
SELECT * FROM logpm_distribution_addvalue_detail ${ew.customSqlSegment}
</select>

1
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvalueMapper.xml

@ -61,6 +61,7 @@
ldad.num AS num,
ldad.flool_num AS floolNum,
ldad.distance AS distance,
lda.addvalue_id AS addvalueId,
ldad.id AS addvalueDetailId,
GROUP_CONCAT(ldap.package_id) AS packageListIds,
ldad.record_type AS isAll

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionAddvaluePackageMapper.java

@ -57,7 +57,7 @@ public interface DistributionAddvaluePackageMapper extends BaseMapper<Distributi
* @param reservationId
* @param id
*/
void deleteAddvaluePackageList(@Param("reservationId") Long reservationId,@Param("addvalueDetailIds") Long id);
void deleteAddvaluePackageList(@Param("reservationId") Long reservationId,@Param("addvalueDetailId") Long addvalueDetailId);
/**
* 删除指定增值服务包件

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryInfoMapper.xml

@ -346,8 +346,8 @@
) ordNub,
COALESCE ( lds.received_quantity + lds.receivedin_quantity, 0 ) signNub,
ldsk.stockup_area stockupArea,
COALESCE ( ldrs.reservation_num, 0 ) inventoryNub,
COUNT(DISTINCT lwtg.tray_id) AS trayNum
COALESCE ( ldrs.reservation_num, 0 ) inventoryNub
-- COUNT(DISTINCT lwtg.tray_id) AS trayNum
FROM
logpm_distribution_signfor lds
LEFT JOIN logpm_distribution_reservation ldr ON ldr.id = lds.reservation_id

3
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml

@ -666,6 +666,7 @@
reservation_id,
stock_article_id,
stock_article_status,
is_zero,
reservation_num
FROM logpm_distribution_reservation_stockarticle
<where>
@ -1037,7 +1038,7 @@
resultType="com.logpm.distribution.vo.DistributionAddvaluePackageVO">
SELECT
ldrzp.parcel_list_id,
ldrzp.quantity AS quantity,
ldrzp.quantity AS reservationNum,
ldrzp.reservation_id AS reservationId,
3 AS conditions,
ldsa.order_code AS orderCode,

1
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml

@ -555,6 +555,7 @@
CASE WHEN lds.positioning IS NOT NULL THEN true ELSE false END AS positioning,
(SELECT COALESCE(COUNT(*), 0) from logpm_distribution_reservation_stockarticle ldrs WHERE ldrs.reservation_id =ldr.id ) ordNub,
COALESCE(lds.received_quantity + lds.receivedin_quantity, 0) signNub,
COALESCE(lds.loaded_number + lds.loadedin_number, 0) signNub,
COALESCE(ldr.reservation_num + ldr.reservation_stock_list_num, 0) reservationNum
FROM
logpm_distribution_signfor lds

37
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAddvalueServiceImpl.java

@ -190,18 +190,20 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl<Distributio
@Override
@Transactional
public R saveAddvalueInfo(DistributionAppAddvalueDTO distributionAppAddvalueDTO) {
List<DistributionAddvaluePackageDTO> packageEntityList = distributionAppAddvalueDTO.getPackageEntityList().stream().filter(p->p.getQuantity()>0).collect(Collectors.toList());
List<DistributionAddvaluePackageDTO> packageEntityList = distributionAppAddvalueDTO.getPackageEntityList();
List<DistributionAddvaluePackageDTO> packageDTOList = packageEntityList.stream().filter(p -> Func.isNotEmpty(p.getQuantity()) && p.getQuantity() > 0).collect(Collectors.toList());
if (Func.isEmpty(packageDTOList)){
return Resp.scanFail("操作失败","无可用包件信息");
}
//查询是否重复添加
DistributionAddvalueEntity addvalueEntity = distributionAddvalueMapper.selectOne(Wrappers.<DistributionAddvalueEntity>query().lambda()
.eq(DistributionAddvalueEntity::getAddvalueId, distributionAppAddvalueDTO.getAddvalueType())
.eq(DistributionAddvalueEntity::getRefId, distributionAppAddvalueDTO.getReservationId())
.eq(DistributionAddvalueEntity::getRefType, 1));
if (Func.isNotEmpty(addvalueEntity)){
return Resp.scanFail("操作失败", "存在该类型增值服务项,如需更改请编辑");
}
if (Func.isEmpty(packageEntityList)) {
return Resp.scanFail("请添加包件", "请添加包件");
}
DistributionAddvalueDetailEntity distributionAddvalueDetailEntity = new DistributionAddvalueDetailEntity();
if (Func.isEmpty(distributionAppAddvalueDTO.getNum())) {
return Resp.scanFail("添加失败", "错误的包件数量");
@ -211,7 +213,6 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl<Distributio
DistributionReservationEntity reservationEntity = distributionReservationMapper.selectById(distributionAppAddvalueDTO.getReservationId());
if (Func.isEmpty(reservationEntity)){
return Resp.scanFail("添加失败", "客户信息错误");
}
// 上楼 超区 平移 搬运 分拣 专车
switch (distributionAppAddvalueDTO.getAddvalueType()) {
@ -336,6 +337,18 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl<Distributio
// distributionAddvalueDetailEntity.setNum(distributionAppAddvalueDTO.getNum());
// }
// 上楼 超区 平移 搬运 分拣 专车
if (Func.isEmpty(packageEntityList) && packageEntityList.size() == 0) {
//没有包件信息,对该增值服务进行清除
DistributionAddvalueEntity distributionAddvalueEntity = distributionAddvalueMapper.selectOne(Wrappers.<DistributionAddvalueEntity>query().lambda()
.eq(DistributionAddvalueEntity::getRefId, distributionAppAddvalueDTO.getReservationId())
.eq(DistributionAddvalueEntity::getAddvalueId, distributionAppAddvalueDTO.getAddvalueType()));
DistributionAddvalueDetailEntity addvalueDetailEntity = distributionAddvalueDetailService.getOne(Wrappers.<DistributionAddvalueDetailEntity>query().lambda()
.eq(DistributionAddvalueDetailEntity::getAddvalueId, distributionAddvalueEntity.getId()));
distributionAddvaluePackageMapper.deleteAddvaluePackageList(distributionAppAddvalueDTO.getReservationId(), addvalueDetailEntity.getId());
distributionAddvalueDetailMapper.deleteAddvalueDetail(distributionAddvalueEntity.getId());
distributionAddvalueMapper.deleteAddvalue(distributionAppAddvalueDTO.getReservationId(), distributionAppAddvalueDTO.getAddvalueType());
return Resp.scanSuccess("操作成功","操作成功");
}
switch (distributionAppAddvalueDTO.getAddvalueType()) {
case "1":
if (Func.isEmpty(distributionAppAddvalueDTO.getFloolNum())) {
@ -377,18 +390,6 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl<Distributio
return Resp.scanFail("添加失败", "服务器正忙");
}
distributionAddvalueDetailMapper.updateById(detailEntity);
if (Func.isEmpty(packageEntityList) && packageEntityList.size() == 0) {
//没有包件信息,对该增值服务进行清除
DistributionAddvalueEntity distributionAddvalueEntity = distributionAddvalueMapper.selectOne(Wrappers.<DistributionAddvalueEntity>query().lambda()
.eq(DistributionAddvalueEntity::getRefId, distributionAppAddvalueDTO.getReservationId())
.eq(DistributionAddvalueEntity::getAddvalueId, distributionAppAddvalueDTO.getAddvalueType()));
DistributionAddvalueDetailEntity addvalueDetailEntity = distributionAddvalueDetailService.getOne(Wrappers.<DistributionAddvalueDetailEntity>query().lambda()
.eq(DistributionAddvalueDetailEntity::getAddvalueId, distributionAddvalueEntity.getId()));
distributionAddvalueMapper.deleteAddvalue(distributionAppAddvalueDTO.getReservationId(), distributionAppAddvalueDTO.getAddvalueType());
distributionAddvalueDetailMapper.deleteAddvalueDetail(distributionAddvalueEntity.getId());
distributionAddvaluePackageMapper.deleteAddvaluePackageList(distributionAppAddvalueDTO.getReservationId(), addvalueDetailEntity.getId());
} else {
//查询出原来的包件信息
DistributionAddvalueVO addvalueVO = distributionAddvalueMapper.selectReservationAddvalue(distributionAppAddvalueDTO.getReservationId(), distributionAppAddvalueDTO.getAddvalueType());
String packageListIds = addvalueVO.getPackageListIds();
@ -454,7 +455,7 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl<Distributio
});
}
}
}
return Resp.scanSuccess("保存成功", "保存成功");
}

1
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java

@ -1037,7 +1037,6 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService {
stockArticleEntity.setDeliveryQuantity(stockArticleEntity.getDeliveryQuantity() + outboundQuantity);
}
distributionStockArticleService.updateById(stockArticleEntity);
}

101
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java

@ -43,6 +43,7 @@ import com.logpm.distribution.vo.app.*;
import com.logpm.distribution.vo.print.PrintPreviewVO;
import com.logpm.distribution.wrapper.*;
import com.logpm.warehouse.entity.WarehouseTrayGoodsEntity;
import com.logpm.warehouse.feign.IWarehouseTrayGoodsClient;
import com.logpm.warehouse.feign.IWarehouseTrayTypeClient;
import com.logpm.warehouse.feign.IWarehouseUpdownTypeClient;
import com.logpm.warehouse.vo.TrayTypeDataVO;
@ -146,6 +147,8 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
private final IDistributionLoadscanAbnormalService distributionLoadscanAbnormalService;
private final IDistributionReservationZeroPackageService distributionReservationZeroPackageService;
private final IDistributionParcelNumberService distributionParcelNumberService;
private final IWarehouseTrayGoodsClient warehouseTrayGoodsClient;
// private final DistributionStockMapper distributionStockMapper;
// private final BladeRedis redis;
@ -2437,24 +2440,104 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
//查询客户
List<DistributionAppReservationVO> customList = distributionDeliveryInfoMapper.selectAppcustomListPage(page, distributionDeliveryList.getId());
for (DistributionAppReservationVO distributionAppReservationVO : customList) {
List<DistributionParcelListEntity> parcelListEntities = distributionReservationMapper.selectPackageListByReservationId(distributionAppReservationVO.getId());
List<DistributionReservationStockarticleEntity> reservationStockarticleEntityList = distributionReservationMapper.selectStockArticleByReservationId(distributionAppReservationVO.getId());
List<DistributionStockEntity> distributionStockEntities = new ArrayList<>();
List<DistributionLoadscanEntity> loadscanEntityList = new ArrayList<>();
List<WarehouseTrayGoodsEntity> trayList = new ArrayList<>();
for (DistributionReservationStockarticleEntity reservationStockarticleEntity : reservationStockarticleEntityList) {
if (reservationStockarticleEntity.equals(IsOrNoConstant.no.getValue())){
//查询订制品备货数量
List<DistributionStockEntity> packageListStockUpScan = distributionStockMapper.selectList(Wrappers.<DistributionStockEntity>query().lambda()
.eq(DistributionStockEntity::getType, 1)
.eq(DistributionStockEntity::getParcelListId, reservationStockarticleEntity.getStockArticleId())
.eq(DistributionStockEntity::getReservationId, reservationStockarticleEntity.getReservationId()));
if (Func.isNotEmpty(packageListStockUpScan)){
distributionStockEntities.addAll(packageListStockUpScan);
}
//统计托盘数
//查询所有包件
List<DistributionParcelListEntity> parcelListEntities = distributionReservationMapper.selectPackageByReservationAndStockArticle(reservationStockarticleEntity.getReservationId(), reservationStockarticleEntity.getStockArticleId());
parcelListEntities.forEach(p->{
WarehouseTrayGoodsEntity warehouseTrayGoodsEntity = new WarehouseTrayGoodsEntity();
warehouseTrayGoodsEntity.setAssociationId(p.getId());
warehouseTrayGoodsEntity.setAssociationType("1");
List<WarehouseTrayGoodsEntity> trayGoodsClientTrayList = warehouseTrayGoodsClient.getTrayList(warehouseTrayGoodsEntity);
if (Func.isNotEmpty(trayGoodsClientTrayList)){
trayList.addAll(trayGoodsClientTrayList);
}
});
//查询订制品装车数量
List<DistributionLoadscanEntity> packageListLoadingScan = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda()
.eq(DistributionLoadscanEntity::getReservationId, reservationStockarticleEntity.getReservationId())
.eq(DistributionLoadscanEntity::getOrderId, reservationStockarticleEntity.getStockArticleId())
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()));
if (Func.isNotEmpty(packageListLoadingScan)){
loadscanEntityList.addAll(packageListLoadingScan);
}
}else if (reservationStockarticleEntity.equals(IsOrNoConstant.yes.getValue())){
//查询零担备货数量
List<DistributionStockEntity> zeroPackageListStockUpScan = distributionStockMapper.selectList(Wrappers.<DistributionStockEntity>query().lambda()
.eq(DistributionStockEntity::getType, 2)
.eq(DistributionStockEntity::getParcelListId, reservationStockarticleEntity.getStockArticleId())
.eq(DistributionStockEntity::getReservationId, reservationStockarticleEntity.getReservationId()));
if (Func.isNotEmpty(zeroPackageListStockUpScan)){
distributionStockEntities.addAll(zeroPackageListStockUpScan);
}
//查询零担装车数量
List<DistributionLoadscanEntity> zeroPackageListLoadingScan = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda()
.eq(DistributionLoadscanEntity::getReservationId, reservationStockarticleEntity.getReservationId())
.eq(DistributionLoadscanEntity::getOrderId, reservationStockarticleEntity.getStockArticleId())
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()));
if (Func.isNotEmpty(zeroPackageListLoadingScan)){
loadscanEntityList.addAll(zeroPackageListLoadingScan);
}
}
}
distributionAppReservationVO.setTrayNum(0);
if (Func.isNotEmpty(trayList)){
Long count = trayList.stream().map(WarehouseTrayGoodsEntity::getTrayId).count();
distributionAppReservationVO.setTrayNum(count.intValue());
}
List<DisStockListDetailEntity> stockListDetailEntityList = distributionReservationMapper.selectInventoryListByReservation(distributionAppReservationVO.getId());
boolean stockArticleStockupStatus = parcelListEntities.stream().allMatch(s -> Func.isNotEmpty(s.getOrderPackageStockupStatus()) && s.getOrderPackageStockupStatus().equals(OrderPackageStockupStatusConstant.yibeihu.getValue()));
boolean inventoryStockupStatus = stockListDetailEntityList.stream().allMatch(i -> Func.isNotEmpty(i.getStockPackageCode()));
if (stockArticleStockupStatus && inventoryStockupStatus) {
// boolean inventoryStockupStatus = stockListDetailEntityList.stream().allMatch(i -> Func.isNotEmpty(i.getStockPackageCode()));
//备货数和计划数一致时完成备货
if (distributionStockEntities.size()+stockListDetailEntityList.stream().filter(s->Func.isNotEmpty(s.getStockPackageCode())).count() == distributionAppReservationVO.getReservationNum()){
distributionAppReservationVO.setIsstock("是");
} else {
}else {
distributionAppReservationVO.setIsstock("否");
}
boolean stockArticleLoadingStatus = parcelListEntities.stream().allMatch(s -> Func.isNotEmpty(s.getOrderPackageLoadingStatus()) && s.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.yizhuangche.getValue()));
boolean inventoryLoadingStatus = stockListDetailEntityList.stream().allMatch(i -> Func.isNotEmpty(i.getStockPackageCode()) && i.getStockLockingStatus().equals(InventoryLoadingStatusConstant.yizhuangche.getValue()));
if (stockArticleLoadingStatus && inventoryLoadingStatus) {
int packageListScanNum = loadscanEntityList.stream().mapToInt(DistributionLoadscanEntity::getLoadedNub).sum();
long inventoryListScanNum = stockListDetailEntityList.stream().filter(i -> Func.isNotEmpty(i.getStockPackageCode()) && i.getStockLockingStatus().equals(InventoryLoadingStatusConstant.yizhuangche.getValue())).count();
if (packageListScanNum + inventoryListScanNum ==distributionAppReservationVO.getReservationNum() ) {
distributionAppReservationVO.setIsload("是");
} else {
distributionAppReservationVO.setIsload("否");
}
// List<DistributionParcelListEntity> parcelListEntities = distributionReservationMapper.selectPackageListByReservationId(distributionAppReservationVO.getId());
//
// boolean stockArticleStockupStatus = parcelListEntities.stream().allMatch(s -> Func.isNotEmpty(s.getOrderPackageStockupStatus()) && s.getOrderPackageStockupStatus().equals(OrderPackageStockupStatusConstant.yibeihu.getValue()));
// if (stockArticleStockupStatus && inventoryStockupStatus) {
// distributionAppReservationVO.setIsstock("是");
// } else {
// distributionAppReservationVO.setIsstock("否");
// }
// boolean stockArticleLoadingStatus = parcelListEntities.stream().allMatch(s -> Func.isNotEmpty(s.getOrderPackageLoadingStatus()) && s.getOrderPackageLoadingStatus().equals(OrderPackageLoadingStatusConstant.yizhuangche.getValue()));
// boolean inventoryLoadingStatus = stockListDetailEntityList.stream().allMatch(i -> Func.isNotEmpty(i.getStockPackageCode()) && i.getStockLockingStatus().equals(InventoryLoadingStatusConstant.yizhuangche.getValue()));
// if (stockArticleLoadingStatus && inventoryLoadingStatus) {
// distributionAppReservationVO.setIsload("是");
// } else {
// distributionAppReservationVO.setIsload("否");
// }
// //查询备货是否完成
// int aLong = distributionStockMapper.selectCount(new QueryWrapper<DistributionStockEntity>().lambda()
// .eq(DistributionStockEntity::getReservationId, distributionAppReservationVO.getId())

60
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java

@ -287,7 +287,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
return Resp.scanFail("窜货", "窜货");
} else {
//判断该货物是否属于该客户
//TODO 这里对于出现计划之外的包件 待确定
// 异常签收
// return Resp.scanFail("异常签收包件","异常签收包件");
return R.fail(3006, "异常签收");
}
@ -1835,7 +1835,9 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
//查询出该签收的客户信息
DistributionSignforEntity signforEntity = this.getById(signforId);
List<DistributionParcelListEntity> parcelListEntities = baseMapper.getSignforPackageList(signforEntity.getReservationId());
List<DistributionReservationStockarticleEntity> reservationStockarticleEntityList = distributionReservationStockarticleService.list(Wrappers.<DistributionReservationStockarticleEntity>query().lambda().eq(DistributionReservationStockarticleEntity::getReservationId, signforEntity.getReservationId()).ne(DistributionReservationStockarticleEntity::getStockArticleStatus, ReservationOrderStatusConstant.quxiao.getValue()));
List<DistributionReservationStockarticleEntity> reservationStockarticleEntityList = distributionReservationStockarticleService.list(Wrappers.<DistributionReservationStockarticleEntity>query().lambda()
.eq(DistributionReservationStockarticleEntity::getReservationId, signforEntity.getReservationId())
.ne(DistributionReservationStockarticleEntity::getStockArticleStatus, ReservationOrderStatusConstant.quxiao.getValue()));
List<DistributionParcelListVO> parcelListVOS = new ArrayList<>();
if (Func.isNotEmpty(reservationStockarticleEntityList)){
reservationStockarticleEntityList.forEach(rs->{
@ -1843,6 +1845,9 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
List<DistributionParcelListEntity> parcelListEntityList = distributionReservationMapper.selectPackageByReservationAndStockArticle(rs.getReservationId(), rs.getStockArticleId());
List<DistributionParcelListVO> parcelListVOList = DistributionParcelListWrapper.build().listVO(parcelListEntityList);
parcelListVOList.forEach(p -> {
p.setReservationNum(p.getQuantity());
p.setLoadingNub(0);
p.setSigningNub(0);
DistributionLoadscanEntity distributionLoadscanEntity = distributionLoadscanMapper.selectOne(Wrappers.<DistributionLoadscanEntity>query().lambda().eq(DistributionLoadscanEntity::getPackageId, p.getId()));
if (Func.isNotEmpty(distributionLoadscanEntity)) {
//该包件存在扫描记录
@ -1861,6 +1866,8 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
p.setScanStatus(LoadingStatusConstant.yijianzhuangche.getName());
break;
}
p.setLoadingNub(distributionLoadscanEntity.getLoadedNub());
p.setSigningNub(distributionLoadscanEntity.getReceivedQuantity());
if (Func.isNotEmpty(distributionLoadscanEntity.getSigningTime())) {
p.setSigningTime(distributionLoadscanEntity.getSigningTime());
}
@ -1872,15 +1879,54 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
}
}
});
parcelListVOS.addAll(parcelListVOS);
parcelListVOS.addAll(parcelListVOList);
}else if (rs.getIsZero().equals(IsOrNoConstant.yes.getValue())){
List<DistributionParcelNumberDTO> distributionParcelNumberDTOS = distributionReservationMapper.selectZeroPackageListByReservationId(rs.getReservationId());
distributionParcelNumberDTOS.forEach(zp->{
DistributionParcelListEntity parcelListEntity = distributionParcelListService.getById(zp.getParcelListId());
DistributionParcelListVO parcelListVO = DistributionParcelListWrapper.build().entityVO(parcelListEntity);
// DistributionParcelListVO parcelListVO = Func.copy(parcelListEntity, DistributionParcelListVO.class);
// parcelListVO.setReservationNum(zp.get);
parcelListVO.setReservationNum(zp.getReservationNum());
parcelListVO.setLoadingNub(0);
parcelListVO.setSigningNub(0);
DistributionLoadscanEntity distributionLoadscanEntity = distributionLoadscanMapper.selectOne(Wrappers.<DistributionLoadscanEntity>query().lambda()
.eq(DistributionLoadscanEntity::getPackageId, zp.getParcelListId())
.eq(DistributionLoadscanEntity::getReservationId,rs.getReservationId()));
if (Func.isNotEmpty(distributionLoadscanEntity)) {
//该包件存在扫描记录
String scanStatus = distributionLoadscanEntity.getScanStatus();
switch (scanStatus) {
case "1":
parcelListVO.setScanStatus(LoadingStatusConstant.quxiao.getName());
break;
case "2":
parcelListVO.setScanStatus(LoadingStatusConstant.saomiao.getName());
break;
case "3":
parcelListVO.setScanStatus(LoadingStatusConstant.queren.getName());
break;
case "4":
parcelListVO.setScanStatus(LoadingStatusConstant.yijianzhuangche.getName());
break;
}
parcelListVO.setLoadingNub(distributionLoadscanEntity.getLoadedNub());
parcelListVO.setSigningNub(distributionLoadscanEntity.getReceivedQuantity());
if (Func.isNotEmpty(distributionLoadscanEntity.getSigningTime())) {
parcelListVO.setSigningTime(distributionLoadscanEntity.getSigningTime());
}
if (Func.isNotEmpty(distributionLoadscanEntity.getScanUser())) {
parcelListVO.setScanUser(distributionLoadscanEntity.getScanUser());
}
if (Func.isNotEmpty(distributionLoadscanEntity.getDriverName())) {
parcelListVO.setDriverName(distributionLoadscanEntity.getDriverName());
}
}
parcelListVOS.add(parcelListVO);
});
}
});
}
return parcelListVOS;
}

1
blade-service/logpm-factory/src/main/java/com/logpm/factory/receiver/OrderStatusHandler.java

@ -97,7 +97,6 @@ public class OrderStatusHandler {
break;
case FactoryConstant.OUPAI:
// todo cangku peizhi xinxi cunzai went
// r = ouPaiFactoryService.handleStatusData(orderStatusDTO);
// if (r.getCode() == 400 || r.getCode() == 200) {
// log.info("TAG {} ##################orderStatusHandler: 该条数据不用处理 orderNo={}", FactoryConstant.OUPAI, orderSelfNum);

Loading…
Cancel
Save