Browse Source

库存品签收、司机上传图片、预约单选择订单搜索包件功能部分

single_db
汤建军 1 year ago
parent
commit
c621290403
  1. 11
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationController.java
  2. 7
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java
  3. 10
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.java
  4. 99
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml
  5. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationService.java
  6. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockArticleService.java
  7. 53
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java
  8. 6
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java
  9. 18
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java

11
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationController.java

@ -385,14 +385,9 @@ public class DistributionReservationController extends BladeController {
@GetMapping("/getReservationPackageListByOrderId")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "详情", notes = "传入distrbutionReservation")
public R getReservationPackageListByorderId(@ApiIgnore @RequestParam Long orderId, @ApiIgnore @RequestParam Long reservationId, Query query) {
R parcelListVOIPage = reservationService.getReservationPackageListByOrderId(orderId,reservationId,Condition.getPage(query));
public R getReservationPackageListByorderId(@ApiIgnore @RequestParam Map<String,Object> packageDTO, Query query) {
R parcelListVOIPage = reservationService.getReservationPackageListByOrderId(packageDTO,Condition.getPage(query));
return R.data(parcelListVOIPage);
}
}

7
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java

@ -146,8 +146,11 @@ public class DistributionStockArticleController extends BladeController {
@GetMapping("/getPackageListByStockArticleId")
@ApiOperationSupport(order = 2)
@ApiOperation(value = "分页", notes = "传入distributionStockArticle")
public R<IPage<DistributionParcelListVO>> getPackageListByStockArticleId(@ApiIgnore @RequestParam Long orderId, Query query) {
IPage<DistributionParcelListVO> pages = distributionStockArticleService.getPackageListByStockArticleId(Condition.getPage(query), orderId);
public R<IPage<DistributionParcelListVO>> getPackageListByStockArticleId(@ApiIgnore @RequestParam Map<String,Object> packageDTO, Query query) {
if (Func.isEmpty(packageDTO.get("id"))){
return null;
}
IPage<DistributionParcelListVO> pages = distributionStockArticleService.getPackageListByStockArticleId(Condition.getPage(query), packageDTO);
return R.data(pages);
}

10
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.java

@ -20,6 +20,7 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.distribution.dto.DistributionStockArticleOweDTO;
import com.logpm.distribution.entity.DistributionParcelListEntity;
import com.logpm.distribution.entity.DistributionStockArticleEntity;
import com.logpm.distribution.vo.DistributionParcelNumberVO;
import com.logpm.distribution.vo.DistributionStockArticleGroundingVO;
@ -140,4 +141,13 @@ public interface DistributionStockArticleMapper extends BaseMapper<DistributionS
void addIncomingNumk(@Param("orderId") Long orderId,@Param("num") Integer num);
IPage<JSONObject> findZeroListByWarehouseId(IPage<Object> page,@Param("warehouseId") Long warehouseId);
/**
* 查询订单包件信息
* @param packageDTO
* @param id
* @return
*/
List<DistributionParcelListEntity> selectOrderPackageListByMap(@Param("param") Map<String, Object> packageDTO,@Param("warehouseId") Long id);
}

99
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml

@ -888,5 +888,104 @@
where ldsa.is_zero = 1
and ldsa.warehouse_id = #{warehouseId}
</select>
<select id="selectOrderPackageListByMap"
resultType="com.logpm.distribution.entity.DistributionParcelListEntity">
SELECT
ldpl.id,
ldpl.tenant_id,
ldpl.create_user,
ldpl.create_time,
ldpl.update_user,
ldpl.update_time,
ldpl.status,
ldpl.is_deleted,
ldpl.create_dept,
ldpl.reserve1,
ldpl.reserve2,
ldpl.reserve3,
ldpl.reserve4,
ldpl.reserve5,
ldpl.warehouse_id,
ldpl.warehouse,
ldpl.conditions,
ldpl.order_package_code,
ldpl.cargo_title,
ldpl.shelf_title,
ldpl.goods_allocation,
ldpl.pallet,
ldpl.firsts_code,
ldpl.firsts,
ldpl.second_code,
ldpl.second,
ldpl.third_code,
ldpl.third_product,
ldpl.quantity,
ldpl.train_number,
ldpl.stock_article_id,
ldpl.order_code,
ldpl.service_number,
ldpl.material_id,
ldpl.material_name,
ldpl.material_code,
ldpl.material_unit,
ldpl.brand_id,
ldpl.brand_name,
ldpl.order_package_status,
ldpl.order_package_freeze_status,
ldpl.order_package_grounding_status,
ldpl.order_package_stockup_status,
ldpl.order_package_reservation_status,
ldpl.order_package_loading_status,
ldpl.waybill_number,
ldpl.waybill_id,
ldpl.warehouse_entry_time_end,
ldpl.dealer_name,
ldpl.dealer_code,
ldpl.send_warehouse_id,
ldpl.send_warehouse_name,
ldpl.accept_warehouse_id,
ldpl.accept_warehouse_name,
ldpl.order_package_delivery_status,
ldpl.weight,
ldpl.volume
FROM
logpm_distribution_parcel_list AS ldpl
WHERE
ldpl.order_package_reservation_status = 10 and ldpl.order_package_freeze_status = 10 AND ldpl.order_package_loading_status = 10 AND order_package_status IN (10,20)
and ldpl.stock_article_id = #{param.id} and ldpl.warehouse_id = #{warehouseId}
<if test="param.waybillNumber != null and param.waybillNumber != ''">
and ldpl.waybill_number like concat('%',#{param.waybillNumber},'%')
</if>
<if test="param.serviceNumber != null and param.serviceNumber != ''">
and ldpl.service_number like concat('%',#{param.serviceNumber},'%')
</if>
<if test="param.orderCode != null and param.orderCode != ''">
and ldpl.order_code like concat('%',#{param.orderCode},'%')
</if>
<if test="param.orderCode != null and param.orderCode != ''">
and ldpl.order_code like concat('%',#{param.orderCode},'%')
</if>
<if test="param.orderPackageCode != null and param.orderPackageCode != ''">
and ldpl.order_package_code like concat('%',#{param.orderPackageCode},'%')
</if>
<if test="param.warehouse != null and param.warehouse != ''">
and ldpl.warehouse like concat('%',#{param.warehouse},'%')
</if>
<if test="param.warehouse != null and param.warehouse != ''">
and ldpl.warehouse like concat('%',#{param.warehouse},'%')
</if>
<if test="param.sendWarehouseName != null and param.sendWarehouseName != ''">
and ldpl.send_warehouse_name like concat('%',#{param.sendWarehouseName},'%')
</if>
<if test="param.firsts != null and param.firsts != ''">
and ldpl.firsts like concat('%',#{param.firsts},'%')
</if>
<if test="param.second != null and param.second != ''">
and ldpl.second like concat('%',#{param.second},'%')
</if>
<if test="param.thirdProduct != null and param.thirdProduct != ''">
and ldpl.third_product like concat('%',#{param.thirdProduct},'%')
</if>
</select>
</mapper>

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

@ -223,7 +223,7 @@ public interface IDistributionReservationService extends BaseService<Distributio
* @param reservationId
* @return
*/
R getReservationPackageListByOrderId(Long orderId, Long reservationId,IPage<DistributionReservationOrderPackageVO> page);
R getReservationPackageListByOrderId(Map<String,Object> packageDTO,IPage<DistributionReservationOrderPackageVO> page);
/**

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

@ -178,7 +178,7 @@ public interface IDistributionStockArticleService extends BaseService<Distributi
*/
List<DistributionStockArticleEntity> findStockArticleByCodeAndMarketAndWarehouseId(String code, String marketNames,Long warehouseId);
IPage<DistributionParcelListVO> getPackageListByStockArticleId(IPage<DistributionParcelListVO> page, Long orderId);
IPage<DistributionParcelListVO> getPackageListByStockArticleId(IPage<DistributionParcelListVO> page, Map<String,Object> packageDTO);
List<DistributionStockArticleQRCodeVO> selectTemplate(List<Long> ids);

53
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java

@ -3358,31 +3358,38 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
}
@Override
public R getReservationPackageListByOrderId(Long orderId, Long reservationId, IPage<DistributionReservationOrderPackageVO> page) {
List<DistributionParcelListVO> allPackageList = new ArrayList<>();
List<DistributionReservationPackageEntity> reservationPackageEntityList = distributionReservationPackageService.list(Wrappers.<DistributionReservationPackageEntity>query().lambda().eq(DistributionReservationPackageEntity::getReservationId, reservationId).eq(DistributionReservationPackageEntity::getStockArticleId, orderId).ne(DistributionReservationPackageEntity::getPacketBarStatus, ReservationPackageStatusConstant.quxiao.getValue()));
DistributionReservationOrderPackageVO reservationOrderPackageVO = new DistributionReservationOrderPackageVO();
List<DistributionParcelListEntity> parcelListEntities = distributionParcelListService.list(Wrappers.<DistributionParcelListEntity>query().lambda().eq(DistributionParcelListEntity::getStockArticleId, orderId)
.eq(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.daiyuyue.getValue())
.notIn(DistributionParcelListEntity::getOrderPackageStatus, OrderPackageStatusConstant.yiqianshou.getValue(), OrderPackageStatusConstant.yichuku.getValue()));
if (Func.isNotEmpty(reservationPackageEntityList)) {
List<Long> packageIds = reservationPackageEntityList.stream().map(DistributionReservationPackageEntity::getParceListId).collect(Collectors.toList());
List<DistributionParcelListEntity> reservationPackageList = distributionParcelListService.listByIds(packageIds);
String packageListIds = reservationPackageEntityList.stream().map(DistributionReservationPackageEntity::getParceListId).map(String::valueOf).collect(Collectors.joining(","));
List<DistributionParcelListVO> parcelListVOS = DistributionParcelListWrapper.build().listVO(reservationPackageList);
allPackageList.addAll(parcelListVOS);
reservationOrderPackageVO.setReservationPackageList(parcelListVOS);
reservationOrderPackageVO.setPackageListIds(packageListIds);
}
if (Func.isNotEmpty(parcelListEntities)) {
allPackageList.addAll(DistributionParcelListWrapper.build().listVO(parcelListEntities));
}
if (Func.isEmpty(allPackageList)) {
log.error("###########################包件查询结果异常:{}", allPackageList);
public R getReservationPackageListByOrderId(Map<String,Object> packageDTO, IPage<DistributionReservationOrderPackageVO> page) {
if (Func.isEmpty(packageDTO.get("orderId"))){
return null;
}
if (Func.isEmpty(packageDTO.get("reservationId"))){
return null;
}
List<DistributionParcelListVO> allPackageList = new ArrayList<>();
List<DistributionReservationPackageEntity> reservationPackageEntityList = distributionReservationPackageService.list(Wrappers.<DistributionReservationPackageEntity>query().lambda().eq(DistributionReservationPackageEntity::getReservationId, packageDTO.get("reservationId")).eq(DistributionReservationPackageEntity::getStockArticleId, packageDTO.get("orderId")).ne(DistributionReservationPackageEntity::getPacketBarStatus, ReservationPackageStatusConstant.quxiao.getValue()));
DistributionReservationOrderPackageVO reservationOrderPackageVO = new DistributionReservationOrderPackageVO();
// List<DistributionParcelListEntity> parcelListEntities = distributionParcelListService.list(Wrappers.<DistributionParcelListEntity>query().lambda().eq(DistributionParcelListEntity::getStockArticleId, orderId)
// .eq(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.daiyuyue.getValue())
// .notIn(DistributionParcelListEntity::getOrderPackageStatus, OrderPackageStatusConstant.yiqianshou.getValue(), OrderPackageStatusConstant.yichuku.getValue()));
//
// if (Func.isNotEmpty(reservationPackageEntityList)) {
// List<Long> packageIds = reservationPackageEntityList.stream().map(DistributionReservationPackageEntity::getParceListId).collect(Collectors.toList());
// List<DistributionParcelListEntity> reservationPackageList = distributionParcelListService.listByIds(packageIds);
// String packageListIds = reservationPackageEntityList.stream().map(DistributionReservationPackageEntity::getParceListId).map(String::valueOf).collect(Collectors.joining(","));
// List<DistributionParcelListVO> parcelListVOS = DistributionParcelListWrapper.build().listVO(reservationPackageList);
// allPackageList.addAll(parcelListVOS);
// reservationOrderPackageVO.setReservationPackageList(parcelListVOS);
// reservationOrderPackageVO.setPackageListIds(packageListIds);
// }
// if (Func.isNotEmpty(parcelListEntities)) {
// allPackageList.addAll(DistributionParcelListWrapper.build().listVO(parcelListEntities));
// }
// if (Func.isEmpty(allPackageList)) {
// log.error("###########################包件查询结果异常:{}", allPackageList);
// return null;
// }
reservationOrderPackageVO.setPackageList(allPackageList);
return R.data(reservationOrderPackageVO);
}

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

@ -983,6 +983,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
List<DistributionSignPrintEntity> distributionSignPrintList = new ArrayList<>();
distributionSignfor.getMap().forEach((k, v) -> {
v.stream().forEach(i -> {
i.setId(null);
DistributionSignPrintEntity distributionSignPrint = new DistributionSignPrintEntity();
BeanUtils.copyProperties(i, distributionSignPrint);
distributionSignPrint.setReservationId(distributionSignfor.getReservationId());
@ -1379,6 +1380,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
}
}
//查询已完成备货的库存品包件
List<DisStockListDetailEntity> detailEntities = distributionReservationMapper.selectInventoryListByReservation(distrilbutionloadingscanDTO.getReservationId());
if (Func.isEmpty(detailEntities)) {
return Resp.scanFail("此码无效", "此码无效");
@ -1386,7 +1388,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
boolean isHaveCode = detailEntities.stream().anyMatch(inven -> Func.isNotEmpty(inven.getStockPackageCode()));
if (isHaveCode) {
List<DisStockListDetailEntity> inventory = detailEntities.stream().filter(i -> i.getStockPackageCode().equals(distrilbutionloadingscanDTO.getBarcode())).collect(Collectors.toList());
List<DisStockListDetailEntity> inventory = detailEntities.stream().filter(i ->Func.isNotEmpty(i.getStockPackageCode()) && i.getStockPackageCode().equals(distrilbutionloadingscanDTO.getBarcode())).collect(Collectors.toList());
if (Func.isNotEmpty(inventory) && inventory.size() == 1) {
//查看这个库存品是否进行装车,
DistributionLoadscaninvnEntity loadscaninvnEntity = distributionLoadscaninvnService.getOne(Wrappers.<DistributionLoadscaninvnEntity>query().lambda()
@ -1490,7 +1492,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
log.error("同一个配送任务中出现了相同的库存品码");
return Resp.scanFail("服务器正忙", "服务器正忙");
} else {
return R.fail(3006, "该库存品并未装车处理");
return Resp.scanFail("不属于当前车次", "不属于当前车次");
}
} else {
log.error("出现重复库存品包件码:{}", inventory);

18
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java

@ -1215,11 +1215,19 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl<Distrib
}
@Override
public IPage<DistributionParcelListVO> getPackageListByStockArticleId(IPage<DistributionParcelListVO> page, Long orderId) {
List<DistributionParcelListEntity> parcelListEntityList = distributionParcelListService.list(Wrappers.<DistributionParcelListEntity>query().lambda().eq(DistributionParcelListEntity::getStockArticleId, orderId)
.eq(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.daiyuyue.getValue())
.ne(DistributionParcelListEntity::getConditions,2)
.notIn(DistributionParcelListEntity::getOrderPackageStatus, OrderPackageStatusConstant.yiqianshou.getValue(), OrderPackageStatusConstant.yichuku.getValue()));
public IPage<DistributionParcelListVO> getPackageListByStockArticleId(IPage<DistributionParcelListVO> page, Map<String,Object> packageDTO) {
// List<DistributionParcelListEntity> parcelListEntityList = distributionParcelListService.list(Wrappers.<DistributionParcelListEntity>query().lambda().eq(DistributionParcelListEntity::getStockArticleId, orderId)
// .eq(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.daiyuyue.getValue())
// .ne(DistributionParcelListEntity::getConditions,2)
// .notIn(DistributionParcelListEntity::getOrderPackageStatus, OrderPackageStatusConstant.yiqianshou.getValue(), OrderPackageStatusConstant.yichuku.getValue()));
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
if (Func.isEmpty(myCurrentWarehouse)){
log.error("无仓库信息~~");
return null;
}
List<DistributionParcelListEntity> parcelListEntityList = baseMapper.selectOrderPackageListByMap(packageDTO,myCurrentWarehouse.getId());
List<DistributionParcelListVO> parcelListVOS = DistributionParcelListWrapper.build().listVO(parcelListEntityList);
return page.setRecords(parcelListVOS);
}

Loading…
Cancel
Save