Browse Source

装车预约播报调整

single_db
汤建军 1 year ago
parent
commit
90f336bfb5
  1. 2
      blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/snm/feign/IMtOrderMainClinet.java
  2. 2
      blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/snm/feign/IStationLineNumClient.java
  3. 9
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataGoodsAllocationController.java
  4. 11
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataGoodsAllocationMapper.java
  5. 15
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataGoodsAllocationMapper.xml
  6. 21
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/IBasicdataGoodsAllocationService.java
  7. 68
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataGoodsAllocationServiceImpl.java
  8. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml
  9. 30
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java

2
blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/snm/feign/IMtOrderMainClinet.java

@ -23,7 +23,7 @@ public interface IMtOrderMainClinet {
*
* @return
*/
@GetMapping(TOP)
@GetMapping(TOP+"/mtOrderPackageRelation")
R<List<MTOrderPackageRelationVO>> mtOrderPackageRelation();
}

2
blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/snm/feign/IStationLineNumClient.java

@ -42,7 +42,7 @@ public interface IStationLineNumClient {
*
* @return
*/
@GetMapping(TOP)
@GetMapping(TOP+"/stationLineNum")
R<List<StationlinenumEntity>> stationLineNumByAll();
}

9
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataGoodsAllocationController.java

@ -199,6 +199,14 @@ public class BasicdataGoodsAllocationController extends BladeController {
return R.data(pages);
}
@GetMapping("/getStockUpAllocation")
@ApiOperationSupport(order = 2)
@ApiOperation(value = "查询备货库位信息", notes = "传入BasicdataGoodsAllocation")
public R<List<BasicdataNodeVO>> getStockUpAllocation() {
List<BasicdataNodeVO> pages = basicdataGoodsAllocationService.getStockUpAllocation();
return R.data(pages);
}
/**
* 货位获取模板信息
@ -209,7 +217,6 @@ public class BasicdataGoodsAllocationController extends BladeController {
public R<?> getPrintTemplate(@ApiIgnore @RequestParam("ids") String ids) {
FreightSpaceVO result = basicdataGoodsAllocationService.getPrintTemplate(ids);
return R.data(result);
}

11
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataGoodsAllocationMapper.java

@ -55,7 +55,7 @@ public interface BasicdataGoodsAllocationMapper extends BaseMapper<BasicdataGood
*/
List<BasicdataGoodsAllocationExcel> exportBasicdataGoodsAllocation(@Param("ew") Wrapper<BasicdataGoodsAllocationEntity> queryWrapper);
List<BasicdataNodeVO> selectSecondNode(@Param("warehouseId")String warehouseId);
List<BasicdataNodeVO> selectSecondNode(@Param("warehouseId")String warehouseId,@Param("areaType") String areaType);
List<BasicdataNodeVO> selectThirdNode(@Param("warehouseId")String warehouseId,@Param("areaId") String areaId);
@ -68,4 +68,13 @@ public interface BasicdataGoodsAllocationMapper extends BaseMapper<BasicdataGood
* @return
*/
WarehouseAllocationInfoVO selectAllocationInfo(@Param("id") String id);
/**
* 查询备货区库位
* @param warehouseId
* @param areaId
* @param goodsShelfId
* @return
*/
List<BasicdataNodeVO> selectFourthNode(@Param("warehouseId") String warehouseId,@Param("areaId") String areaId,@Param("goodsShelfId") String goodsShelfId);
}

15
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataGoodsAllocationMapper.xml

@ -50,6 +50,9 @@
is_deleted = 0
AND
warehouse_id = #{warehouseId}
<if test="areaType != null and areaType != ''">
and area_type = #{areaType}
</if>
</select>
<select id="selectThirdNode" resultType="com.logpm.basicdata.vo.BasicdataNodeVO">
SELECT
@ -158,5 +161,17 @@
where lwga.is_deleted = 0
and CONCAT(lwga2.headline,'-',lwgs.goods_shelf_name,'-',lwga.goods_allocation_name) = #{allocationCode}
</select>
<select id="selectFourthNode" resultType="com.logpm.basicdata.vo.BasicdataNodeVO">
SELECT
lwga.id AS
VALUE
,
lwga.goods_allocation_name AS label,
( FALSE ) AS leaf
FROM
logpm_warehouse_goods_allocation AS lwga
WHERE
lwga1.is_deleted = 0 AND lwga.warehouse_id = #{warehouseId} AND lwga.goods_area_id = #{areaId} and lwga.goods_shelf_id = #{goodsShelfId}
</select>
</mapper>

21
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/IBasicdataGoodsAllocationService.java

@ -103,4 +103,25 @@ public interface IBasicdataGoodsAllocationService extends BaseService<BasicdataG
* 货位禁用
*/
R disableGoodsAllocation(String ids);
/**
* 查询备货区
* @param fragment
* @return
*/
List<BasicdataGoodsAllocationEntity> findListStockUpAllocationByName(String fragment);
/**
*
* @param stockUpAreaCode
* @return
*/
BasicdataGoodsAllocationEntity scanStockUpAllocationByCode(String stockUpAreaCode);
/**
* 查询当前仓库的备货库位
* @return
*/
List<BasicdataNodeVO> getStockUpAllocation();
}

68
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataGoodsAllocationServiceImpl.java

@ -20,6 +20,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
import com.logpm.basic.entity.BasicPrintTemplateEntity;
import com.logpm.basic.feign.IBasicPrintTemplateClient;
@ -137,7 +138,7 @@ public class BasicdataGoodsAllocationServiceImpl extends BaseServiceImpl<Basicda
List<BasicdataNodeVO> basicdataWarehouseVOList = goodsAreaMapper.selectFirstNode(collect);
//遍历仓库节点查询货区节点信息
for (BasicdataNodeVO basicdataNodeVO : basicdataWarehouseVOList) {
List<BasicdataNodeVO> goodeAreaNodes = goodsAllocationMapper.selectSecondNode(basicdataNodeVO.getValue());
List<BasicdataNodeVO> goodeAreaNodes = goodsAllocationMapper.selectSecondNode(basicdataNodeVO.getValue(), null);
//判断仓库下是否存在货区节点,存在则添加,不存在则设置没有下级节点
if (!Func.isEmpty(goodeAreaNodes)) {
basicdataNodeVO.setChildren(goodeAreaNodes);
@ -163,7 +164,7 @@ public class BasicdataGoodsAllocationServiceImpl extends BaseServiceImpl<Basicda
public boolean insertGoodsAllocation(BasicdataGoodsAllocationDTO basicdataGoodsAllocationDto) {
BasicdataGoodsAllocationEntity basicdataGoodsAllocationEntity = new BasicdataGoodsAllocationEntity();
if (Func.isEmpty(basicdataGoodsAllocationDto)) {
log.error("参数不合法:{}" , basicdataGoodsAllocationDto);
log.error("参数不合法:{}", basicdataGoodsAllocationDto);
return false;
}
BeanUtils.copyProperties(basicdataGoodsAllocationDto, basicdataGoodsAllocationEntity);
@ -184,7 +185,7 @@ public class BasicdataGoodsAllocationServiceImpl extends BaseServiceImpl<Basicda
String code = tenantCodeClient.shelfCode(user.getTenantId(), "5");
String allocationCode = code + "-" + basicdataGoodsAllocationEntity.getColumnNum() + "-" + basicdataGoodsAllocationEntity.getLayerNum() + "-" + basicdataGoodsAllocationEntity.getGoodsAllocationName();
basicdataGoodsAllocationEntity.setQrCode(allocationCode);
return SqlHelper.retBool(goodsAllocationMapper.insert(basicdataGoodsAllocationEntity));
return SqlHelper.retBool(goodsAllocationMapper.insert(basicdataGoodsAllocationEntity));
}
@Override
@ -196,8 +197,8 @@ public class BasicdataGoodsAllocationServiceImpl extends BaseServiceImpl<Basicda
List<Long> collect = myWatchWarehouse.stream()
.map(BasicdataWarehouseEntity::getId)
.collect(Collectors.toList());
basicdataGoodsAllocation.put("warehouseList",collect);
return goodsAllocationMapper.selectGoodsAllocationList(page, basicdataGoodsAllocation);
basicdataGoodsAllocation.put("warehouseList", collect);
return goodsAllocationMapper.selectGoodsAllocationList(page, basicdataGoodsAllocation);
}
@ -205,7 +206,7 @@ public class BasicdataGoodsAllocationServiceImpl extends BaseServiceImpl<Basicda
public boolean updateGoodsAllocation(BasicdataGoodsAllocationDTO basicdataGoodsAllocationDto) {
boolean result = false;
if (Func.isEmpty(basicdataGoodsAllocationDto)) {
log.error("参数不合法:{}" , basicdataGoodsAllocationDto);
log.error("参数不合法:{}", basicdataGoodsAllocationDto);
return result;
}
BasicdataGoodsAllocationEntity basicdataGoodsAllocationEntity = new BasicdataGoodsAllocationEntity();
@ -265,22 +266,69 @@ public class BasicdataGoodsAllocationServiceImpl extends BaseServiceImpl<Basicda
boolean update = this.update(new UpdateWrapper<BasicdataGoodsAllocationEntity>().lambda()
.set(BasicdataGoodsAllocationEntity::getEnableStatus, 1)
.in(BasicdataGoodsAllocationEntity::getId, Func.toLongList(ids)));
return update?R.success("成功"):R.fail("失败");
return update ? R.success("成功") : R.fail("失败");
}
@Override
public R disableGoodsAllocation(String ids) {
log.info("传入参数>>>>>>>>>>{}",ids);
log.info("传入参数>>>>>>>>>>{}", ids);
//查询该货位有无货物
// List<Long> longs = Func.toLongList(ids);
Integer integer = warehouseUpdownGoodsClient.selectCountByAllo(ids);
if (integer>0){
if (integer > 0) {
return R.fail("有货物,无法禁用");
}
boolean update = this.update(new UpdateWrapper<BasicdataGoodsAllocationEntity>().lambda()
.set(BasicdataGoodsAllocationEntity::getEnableStatus, 2)
.in(BasicdataGoodsAllocationEntity::getId, Func.toLongList(ids)));
return update?R.success("成功"):R.fail("失败");
return update ? R.success("成功") : R.fail("失败");
}
@Override
public List<BasicdataGoodsAllocationEntity> findListStockUpAllocationByName(String fragment) {
BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse();
if (Func.isEmpty(myCurrentWarehouse)) {
return null;
}
return this.list(Wrappers.<BasicdataGoodsAllocationEntity>query().lambda()
.like(BasicdataGoodsAllocationEntity::getGoodsAllocationName, fragment)
.eq(BasicdataGoodsAllocationEntity::getWarehouseId, myCurrentWarehouse.getId())
.eq(BasicdataGoodsAllocationEntity::getEnableStatus, "1")
);
}
@Override
public BasicdataGoodsAllocationEntity scanStockUpAllocationByCode(String stockUpAreaCode) {
return this.getById(stockUpAreaCode);
}
@Override
public List<BasicdataNodeVO> getStockUpAllocation() {
BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseService.getMyCurrentWarehouse();
if (Func.isEmpty(myCurrentWarehouse)) {
return null;
}
List<BasicdataNodeVO> nodeS = new ArrayList<>();
List<BasicdataNodeVO> goodeAreaNodes = goodsAllocationMapper.selectSecondNode(myCurrentWarehouse.getId().toString(), "1");
if (Func.isNotEmpty(goodeAreaNodes)) {
for (BasicdataNodeVO goodeAreaNode : goodeAreaNodes) {
List<BasicdataNodeVO> goodsShelfNode = goodsAllocationMapper.selectThirdNode(myCurrentWarehouse.getId().toString(), goodeAreaNode.getValue());
if (Func.isNotEmpty(goodsShelfNode)) {
for (BasicdataNodeVO basicdataNodeVO : goodsShelfNode) {
List<BasicdataNodeVO> goodsAllocationNode = goodsAllocationMapper.selectFourthNode(myCurrentWarehouse.getId().toString(), goodeAreaNode.getValue(), basicdataNodeVO.getValue());
if (Func.isNotEmpty(goodsAllocationNode)) {
goodeAreaNode.setChildren(goodsShelfNode);
basicdataNodeVO.setChildren(goodsAllocationNode);
nodeS.add(goodeAreaNode);
}
}
}
}
}
return null;
}
}

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

@ -1598,7 +1598,7 @@
INNER JOIN logpm_distribution_signfor AS lds ON lddl.id = lds.delivery_id
INNER JOIN logpm_distribution_reservation AS ldr ON lds.reservation_id = ldr.id
INNER JOIN logpm_distribution_reservation_stockarticle As ldrs ON ldrs.reservation_id = ldr.id
INNER JOIN logpm_distribution_stock_article As ldsa ON ldsa.id = ldrs.stockarticle_id
INNER JOIN logpm_distribution_stock_article As ldsa ON ldsa.id = ldrs.stock_article_id
WHERE lddl.id = #{delivaryListId} and ldrs.stock_article_status != 2
</select>
<select id="getReservationStockArticleByDeliveryId"

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

@ -909,20 +909,20 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
@NotNull
private String getLoadingMsg(DistrilbutionloadingscanDTO distrilbutionloadingscanDTO) {
List<DistributionLoadscanEntity> distributionLoadscanEntitiesflag = distributionLoadscanMapper.selectList(new QueryWrapper<DistributionLoadscanEntity>().lambda().eq(DistributionLoadscanEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId()).ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()));
List<DistributionLoadscanEntity> distributionLoadscanEntitiesflag = distributionLoadscanMapper.selectList(new QueryWrapper<DistributionLoadscanEntity>().lambda().eq(DistributionLoadscanEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId()).ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()).eq(DistributionLoadscanEntity::getIsAbnormalLoading,1));
List<DistributionLoadscaninvnEntity> distributionLoadscaninvnEntities = distributionLoadscaninvnMapper.selectList(new QueryWrapper<DistributionLoadscaninvnEntity>().lambda().eq(DistributionLoadscaninvnEntity::getDeliveryId, distrilbutionloadingscanDTO.getDeliveryId()).ne(DistributionLoadscaninvnEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()));
AtomicInteger loadingNum = new AtomicInteger();
AtomicInteger abnormalLoadingNum = new AtomicInteger();
// AtomicInteger abnormalLoadingNum = new AtomicInteger();
if (Func.isNotEmpty(distributionLoadscanEntitiesflag)) {
//统计装车包件
// Long yijingLoadingNum = distributionLoadscanEntitiesflag.stream().count();
int yijingLoadingNum = distributionLoadscanEntitiesflag.stream().mapToInt(DistributionLoadscanEntity::getLoadedNub).sum();
loadingNum.getAndAdd(yijingLoadingNum);
int yichangLoadingNum = distributionLoadscanEntitiesflag.stream().filter(f -> Func.equals(f.getIsAbnormalLoading(), 2)).mapToInt(DistributionLoadscanEntity::getLoadedNub).sum();
if (yichangLoadingNum > 0) {
abnormalLoadingNum.getAndAdd(yichangLoadingNum);
}
// int yichangLoadingNum = distributionLoadscanEntitiesflag.stream().filter(f -> Func.equals(f.getIsAbnormalLoading(), 2)).mapToInt(DistributionLoadscanEntity::getLoadedNub).sum();
// if (yichangLoadingNum > 0) {
// abnormalLoadingNum.getAndAdd(yichangLoadingNum);
// }
}
if (Func.isNotEmpty(distributionLoadscaninvnEntities)) {
@ -932,9 +932,9 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
}
StringBuilder str = new StringBuilder();
str.append("装车").append(loadingNum.get() + "件");
if (abnormalLoadingNum.get() > 0) {
str.append("异常").append(abnormalLoadingNum.get() + "件");
}
// if (abnormalLoadingNum.get() > 0) {
// str.append("异常").append(abnormalLoadingNum.get() + "件");
// }
return str.toString();
}
@ -5155,8 +5155,18 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
log.error("#################出现相同的包件信息:{}", parcelListEntities);
return Resp.scanFail("操作失败", "服务器正忙...");
}
//查询异常装车件数
List<DistributionLoadscanEntity> abnormalLoadingPack = distributionLoadscanService.list(Wrappers.<DistributionLoadscanEntity>query().lambda()
.eq(DistributionLoadscanEntity::getDeliveryId, deliveryListEntity.getId())
.eq(DistributionLoadscanEntity::getReservationId, distrilbutionloadingscanDTO.getReservationId())
.eq(DistributionLoadscanEntity::getIsAbnormalLoading, 2)
);
int abnormalTotal = 0;
if (Func.isNotEmpty(abnormalLoadingPack)){
abnormalTotal = abnormalLoadingPack.stream().mapToInt(DistributionLoadscanEntity::getLoadedNub).sum();
}
return Resp.scanSuccess("操作成功", "操作成功");
return Resp.scanSuccess("操作成功", "异常"+abnormalTotal+"件");
}
@Override

Loading…
Cancel
Save