mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-12 21:02:08 +08:00
order_package表适配新结构
This commit is contained in:
-50
@@ -122,8 +122,6 @@ public class PackController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@PutMapping("/unpacking")
|
@PutMapping("/unpacking")
|
||||||
@Operation(summary = "拆包-更改包裹为未封包")
|
@Operation(summary = "拆包-更改包裹为未封包")
|
||||||
@PreAuthorize("@ss.hasPermission('manage:pack:unpacking')")
|
@PreAuthorize("@ss.hasPermission('manage:pack:unpacking')")
|
||||||
@@ -135,54 +133,6 @@ public class PackController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@PostMapping("/insertOtherPack")
|
|
||||||
@Operation(summary = "新增外部配件-即新增一个包裹")
|
|
||||||
@PreAuthorize("@ss.hasPermission('manage:pack:external-parts')")
|
|
||||||
public CommonResult<OrderPackRespVO> addNewOtherPack(@Valid @RequestBody OtherPackReqVO reqVO) {
|
|
||||||
|
|
||||||
return success(packService.addNewOtherPack(reqVO));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@PutMapping("/insertOther")
|
|
||||||
@Operation(summary = "新增外部配件")
|
|
||||||
@PreAuthorize("@ss.hasPermission('manage:pack:external-parts')")
|
|
||||||
public CommonResult<OrderPartsRespVO> addNewOtherParts (@Valid @RequestBody OtherPackReqVO reqVO) {
|
|
||||||
|
|
||||||
return success(packService.addNewOtherParts(reqVO));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@DeleteMapping("/deleteOtherParts")
|
|
||||||
@Operation(summary = "删除包裹中的外部配件")
|
|
||||||
@PreAuthorize("@ss.hasPermission('manage:pack:delete')")
|
|
||||||
public CommonResult<Boolean> deleteOtherParts (@Valid @RequestBody DeleteOtherPartsReqVO reqVO) {
|
|
||||||
|
|
||||||
packService.deleteOtherParts(reqVO);
|
|
||||||
return success(true);
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@GetMapping("/getPrePackInfo")
|
|
||||||
@Operation(summary = "查询预打包优化信息")
|
|
||||||
@PreAuthorize("@ss.hasPermission('manage:pack:pre-pack')")
|
|
||||||
public CommonResult<String> getPrePackInfo ( @RequestParam("orderId") Long orderId) {
|
|
||||||
|
|
||||||
return success(packService.getPrePackInfo(orderId));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@PostMapping("/scan/correlation")
|
@PostMapping("/scan/correlation")
|
||||||
@Operation(summary = "查询扫描类型相关的板件+配件id")
|
@Operation(summary = "查询扫描类型相关的板件+配件id")
|
||||||
public CommonResult<List<Long>> getComponentCorrelation(@Valid @RequestBody PackScanComponentCorrelationReqVO reqVO) {
|
public CommonResult<List<Long>> getComponentCorrelation(@Valid @RequestBody PackScanComponentCorrelationReqVO reqVO) {
|
||||||
|
|||||||
+2
-3
@@ -3,7 +3,6 @@ package com.cf.imes.module.executor.dal.dataobject.pack;
|
|||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
@@ -13,14 +12,14 @@ import lombok.EqualsAndHashCode;
|
|||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
import lombok.ToString;
|
import lombok.ToString;
|
||||||
|
|
||||||
@TableName("order_package_new")
|
@TableName("order_package")
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
||||||
@ToString(callSuper = true)
|
@ToString(callSuper = true)
|
||||||
@Builder
|
@Builder
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
public class OrderPackagDONew extends BaseDO {
|
public class OrderPackagDO extends BaseDO {
|
||||||
|
|
||||||
// 组织 ID
|
// 组织 ID
|
||||||
@TableField(fill = FieldFill.INSERT_UPDATE)
|
@TableField(fill = FieldFill.INSERT_UPDATE)
|
||||||
-51
@@ -1,51 +0,0 @@
|
|||||||
package com.cf.imes.module.executor.dal.dataobject.pack;
|
|
||||||
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
|
||||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
|
||||||
import lombok.*;
|
|
||||||
|
|
||||||
@TableName("order_package")
|
|
||||||
@Data
|
|
||||||
@EqualsAndHashCode(callSuper = true)
|
|
||||||
@ToString(callSuper = true)
|
|
||||||
@Builder
|
|
||||||
@NoArgsConstructor
|
|
||||||
@AllArgsConstructor
|
|
||||||
public class OrderPackageDO extends BaseDO {
|
|
||||||
|
|
||||||
|
|
||||||
// 包裹ID
|
|
||||||
@TableId
|
|
||||||
private Long id;
|
|
||||||
|
|
||||||
// 组织 ID
|
|
||||||
@TableField(fill = FieldFill.INSERT_UPDATE)
|
|
||||||
private Long organId;
|
|
||||||
|
|
||||||
// 订单号
|
|
||||||
private Long orderId;
|
|
||||||
|
|
||||||
// 包裹编号
|
|
||||||
private String packageNo;
|
|
||||||
|
|
||||||
// 包裹类型,-1未定义,0板材,1配件,2其他配件
|
|
||||||
private Integer type;
|
|
||||||
|
|
||||||
// 包裹名
|
|
||||||
private String name;
|
|
||||||
|
|
||||||
// 包裹状态,0未封包,1已封包,2已入库,3已出库
|
|
||||||
private Integer status;
|
|
||||||
|
|
||||||
|
|
||||||
// 备注
|
|
||||||
private String remark;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
+46
-94
@@ -1,116 +1,68 @@
|
|||||||
package com.cf.imes.module.executor.dal.mysql.pack;
|
package com.cf.imes.module.executor.dal.mysql.pack;
|
||||||
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
|
||||||
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
|
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
|
||||||
import com.cf.imes.framework.common.enums.OrderPackageTypeEnum;
|
|
||||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
import com.cf.imes.module.executor.controller.admin.manage.pack.vo.PackRespVO;
|
import com.cf.imes.module.executor.controller.admin.manage.pack.vo.PackRespVO;
|
||||||
import com.cf.imes.module.executor.controller.admin.manage.query.vo.pack.OrderPackageVO;
|
import com.cf.imes.module.executor.controller.admin.manage.query.vo.pack.OrderPackageVO;
|
||||||
import com.cf.imes.module.executor.controller.admin.order.vo.order.LabelOrderPackData;
|
import com.cf.imes.module.executor.dal.dataobject.pack.OrderPackagDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.pack.OrderPackageDO;
|
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @author Gqr
|
||||||
|
* @since 2026/3/25 13:55
|
||||||
|
*/
|
||||||
@Mapper
|
@Mapper
|
||||||
public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
|
public interface OrderPackageMapper extends BaseMapperX<OrderPackagDO> {
|
||||||
|
/**
|
||||||
|
* 查询订单包裹数
|
||||||
void updatePackList(@Param("orderId") Long orderId, @Param("packIds") List<Long> packIds, @Param("organId") Long organId);
|
*
|
||||||
|
* @param orderIds
|
||||||
IPage<OrderPackageVO> selectByOrderNo(@Param("page") IPage page, @Param(Constants.WRAPPER) Wrapper<OrderPackageDO> wrapper);
|
* @param organId
|
||||||
|
* @return
|
||||||
default OrderPackageDO selectByPackNo(String packNo, Long organId) {
|
*/
|
||||||
return selectOne(new LambdaQueryWrapperX<OrderPackageDO>()
|
|
||||||
.eq(OrderPackageDO::getOrganId, organId)
|
|
||||||
.eqIfPresent(OrderPackageDO::getPackageNo, packNo));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
List<PackRespVO> selectPackPage(@Param("orderIds") List<Long> orderIds, @Param("organId") Long organId);
|
List<PackRespVO> selectPackPage(@Param("orderIds") List<Long> orderIds, @Param("organId") Long organId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询当前订单已经打包的板材数量
|
||||||
default OrderPackageDO selectByPackId(Long packId, Long orderId, Long organId) {
|
*
|
||||||
return selectOne(new LambdaQueryWrapperX<OrderPackageDO>()
|
* @param orderIds
|
||||||
.eq(OrderPackageDO::getOrganId, organId)
|
* @param organId
|
||||||
.eq(OrderPackageDO::getDeleted,false)
|
* @return
|
||||||
.eqIfPresent(OrderPackageDO::getOrderId,orderId)
|
*/
|
||||||
.eqIfPresent(OrderPackageDO::getId, packId));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void updateParts(@Param("packageId") Long packageId,@Param("orderId") Long orderId,@Param("organId") Long organId);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
default List<OrderPackageDO> selectPackStatus(Long orderId, Long organId) {
|
|
||||||
return selectList(new LambdaQueryWrapperX<OrderPackageDO>()
|
|
||||||
.eq(OrderPackageDO::getOrganId,organId)
|
|
||||||
.eq(OrderPackageDO::getDeleted,false)
|
|
||||||
.eqIfPresent(OrderPackageDO::getOrderId, orderId));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
default List<OrderPackageDO> selectPackList(Long orderId, Long organId) {
|
|
||||||
return selectList(new LambdaQueryWrapperX<OrderPackageDO>()
|
|
||||||
.eq(OrderPackageDO::getOrganId,organId)
|
|
||||||
.eq(OrderPackageDO::getDeleted,false)
|
|
||||||
.eqIfPresent(OrderPackageDO::getOrderId, orderId)
|
|
||||||
.eqIfPresent(OrderPackageDO::getStatus, OrderPackageStatusEnum.UNPACKED.getStatus()));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
List<PackRespVO> selectPackPieceCount(@Param("orderIds") List<Long> orderIds, @Param("organId") Long organId);
|
List<PackRespVO> selectPackPieceCount(@Param("orderIds") List<Long> orderIds, @Param("organId") Long organId);
|
||||||
|
|
||||||
|
/**
|
||||||
// 删除当前订单下所有的包裹
|
* 查询订单包裹列表
|
||||||
default void updateDelete(Long orderId,Long organId) {
|
* @param orderId
|
||||||
LambdaUpdateWrapper<OrderPackageDO> wrapper = new LambdaUpdateWrapper<OrderPackageDO>()
|
* @param organId
|
||||||
.set(OrderPackageDO::getDeleted, true)
|
* @return
|
||||||
.eq(OrderPackageDO::getOrganId,organId)
|
*/
|
||||||
.eq(OrderPackageDO::getOrderId, orderId)
|
default List<OrderPackagDO> selectPackList(Long orderId, Long organId) {
|
||||||
.eq(OrderPackageDO::getType, OrderPackageTypeEnum.PLATE.getType());
|
return selectList(new LambdaQueryWrapperX<OrderPackagDO>()
|
||||||
update(wrapper);
|
.eq(OrderPackagDO::getOrganId, organId)
|
||||||
|
.eq(OrderPackagDO::getDeleted, false)
|
||||||
|
.eqIfPresent(OrderPackagDO::getOrderId, orderId)
|
||||||
|
.eqIfPresent(OrderPackagDO::getStatus, OrderPackageStatusEnum.UNPACKED.getStatus()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
List<OrderPackageVO> selectPackListByOrderId(@Param("orderId") Long orderId,@Param("organId") Long organId);
|
* 查询订单包裹列表
|
||||||
|
*
|
||||||
|
* @param orderId
|
||||||
default List<OrderPackageDO> selectPackStatusList(Long orderId, Long organId) {
|
* @param organId
|
||||||
return selectList(new LambdaQueryWrapperX<OrderPackageDO>()
|
* @return
|
||||||
.eq(OrderPackageDO::getOrganId,organId)
|
*/
|
||||||
.eq(OrderPackageDO::getDeleted,false)
|
default List<OrderPackagDO> selectPackStatus(Long orderId, Long organId) {
|
||||||
.eqIfPresent(OrderPackageDO::getOrderId, orderId)
|
return selectList(new LambdaQueryWrapperX<OrderPackagDO>()
|
||||||
.eq(OrderPackageDO::getStatus,OrderPackageStatusEnum.PACKAGED.getStatus()));
|
.eq(OrderPackagDO::getOrganId, organId)
|
||||||
}
|
.eq(OrderPackagDO::getDeleted, false)
|
||||||
|
.eqIfPresent(OrderPackagDO::getOrderId, orderId));
|
||||||
|
|
||||||
List<LabelOrderPackData> selectLabelOrderPackData(@Param("packIds") List<Long> packIds,@Param("organId") Long organId);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
List<LabelOrderPackData> selectPartPack(@Param("orderIds") List<Long> orderIds,@Param("organId") Long organId,@Param("type") Integer type ,@Param("status") Integer status);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
default List<OrderPackageDO> selectPackListByIds(List<Long> packIds, Long organId) {
|
|
||||||
return selectList(new LambdaQueryWrapperX<OrderPackageDO>()
|
|
||||||
.eq(OrderPackageDO::getOrganId,organId)
|
|
||||||
.eq(OrderPackageDO::getDeleted,false)
|
|
||||||
.inIfPresent(OrderPackageDO::getId, packIds)
|
|
||||||
.eqIfPresent(OrderPackageDO::getStatus,OrderPackageStatusEnum.PACKAGED.getStatus())
|
|
||||||
.select(OrderPackageDO::getId,OrderPackageDO::getOrderId,OrderPackageDO::getPackageNo));
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
-15
@@ -1,15 +0,0 @@
|
|||||||
package com.cf.imes.module.executor.dal.mysql.pack;
|
|
||||||
|
|
||||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
|
||||||
import com.cf.imes.module.executor.dal.dataobject.pack.OrderPackagDONew;
|
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* @author Gqr
|
|
||||||
* @since 2026/3/25 13:55
|
|
||||||
*/
|
|
||||||
@Mapper
|
|
||||||
public interface OrderPackageNewMapper extends BaseMapperX<OrderPackagDONew> {
|
|
||||||
}
|
|
||||||
-19
@@ -60,25 +60,6 @@ public interface PackService {
|
|||||||
void deleteOrderPack(PackReqVO reqVO);
|
void deleteOrderPack(PackReqVO reqVO);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 新增外部配件包裹
|
|
||||||
OrderPackRespVO addNewOtherPack(OtherPackReqVO reqVO);
|
|
||||||
|
|
||||||
|
|
||||||
// 新增外部配件
|
|
||||||
OrderPartsRespVO addNewOtherParts(OtherPackReqVO reqVO);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 删除包裹中的外部配件
|
|
||||||
void deleteOtherParts(DeleteOtherPartsReqVO reqVO);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 查询预打包优化信息
|
|
||||||
String getPrePackInfo(Long orderId);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取部件关联板件和配件id
|
* 获取部件关联板件和配件id
|
||||||
*
|
*
|
||||||
|
|||||||
+48
-188
@@ -13,8 +13,6 @@ import com.cf.imes.framework.common.exception.ErrorCode;
|
|||||||
import com.cf.imes.framework.common.exception.ServiceException;
|
import com.cf.imes.framework.common.exception.ServiceException;
|
||||||
import com.cf.imes.framework.common.pojo.PageResult;
|
import com.cf.imes.framework.common.pojo.PageResult;
|
||||||
import com.cf.imes.framework.common.util.Assert.AssertUtils;
|
import com.cf.imes.framework.common.util.Assert.AssertUtils;
|
||||||
import com.cf.imes.framework.common.util.json.JsonUtils;
|
|
||||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
|
||||||
import com.cf.imes.framework.id.core.util.SnowflakeIdWorker3rd;
|
import com.cf.imes.framework.id.core.util.SnowflakeIdWorker3rd;
|
||||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
import com.cf.imes.module.executor.api.plan.OrderPlanApi;
|
import com.cf.imes.module.executor.api.plan.OrderPlanApi;
|
||||||
@@ -24,15 +22,12 @@ import com.cf.imes.module.executor.controller.admin.manage.query.vo.pack.Package
|
|||||||
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
|
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO;
|
import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.orderParts.OrderPartsDO;
|
import com.cf.imes.module.executor.dal.dataobject.orderParts.OrderPartsDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.pack.OrderPackagDONew;
|
import com.cf.imes.module.executor.dal.dataobject.pack.OrderPackagDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.pack.OrderPackageDO;
|
|
||||||
import com.cf.imes.module.executor.dal.dataobject.pack.OrderPrepackagedDO;
|
|
||||||
import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
|
import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
|
||||||
import com.cf.imes.module.executor.dal.mysql.order.OrderMapper;
|
import com.cf.imes.module.executor.dal.mysql.order.OrderMapper;
|
||||||
import com.cf.imes.module.executor.dal.mysql.orderItem.OrderItemMapper;
|
import com.cf.imes.module.executor.dal.mysql.orderItem.OrderItemMapper;
|
||||||
import com.cf.imes.module.executor.dal.mysql.orderParts.OrderPartsMapper;
|
import com.cf.imes.module.executor.dal.mysql.orderParts.OrderPartsMapper;
|
||||||
import com.cf.imes.module.executor.dal.mysql.pack.OrderPackageMapper;
|
import com.cf.imes.module.executor.dal.mysql.pack.OrderPackageMapper;
|
||||||
import com.cf.imes.module.executor.dal.mysql.pack.OrderPackageNewMapper;
|
|
||||||
import com.cf.imes.module.executor.dal.mysql.pack.OrderPrepackagedMapper;
|
import com.cf.imes.module.executor.dal.mysql.pack.OrderPrepackagedMapper;
|
||||||
import com.cf.imes.module.executor.dal.mysql.plate.PlateMapper;
|
import com.cf.imes.module.executor.dal.mysql.plate.PlateMapper;
|
||||||
import com.cf.imes.module.executor.enums.OrderPackageMethodEnum;
|
import com.cf.imes.module.executor.enums.OrderPackageMethodEnum;
|
||||||
@@ -48,11 +43,8 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import java.text.ParseException;
|
|
||||||
import java.text.SimpleDateFormat;
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
@@ -73,7 +65,6 @@ import static com.cf.imes.module.executor.enums.ErrorCodeConstants.PARTS_PACK_IT
|
|||||||
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.PARTS_PACK_NUM_NOT_ENOUGH;
|
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.PARTS_PACK_NUM_NOT_ENOUGH;
|
||||||
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.PART_PACK_DATA_ERROR;
|
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.PART_PACK_DATA_ERROR;
|
||||||
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.PLATE_NOT_EXISTS;
|
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.PLATE_NOT_EXISTS;
|
||||||
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.THE_CURRENT_PACKAGE_TYPE_IS_INCORRECT;
|
|
||||||
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.ORDER_PLATE_ERROR;
|
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.ORDER_PLATE_ERROR;
|
||||||
|
|
||||||
|
|
||||||
@@ -84,9 +75,6 @@ public class PackServiceImpl implements PackService {
|
|||||||
@Resource
|
@Resource
|
||||||
private OrderPackageMapper orderPackageMapper;
|
private OrderPackageMapper orderPackageMapper;
|
||||||
|
|
||||||
@Resource
|
|
||||||
private OrderPackageNewMapper orderPackageNewMapper;
|
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private OrderItemMapper orderItemMapper;
|
private OrderItemMapper orderItemMapper;
|
||||||
|
|
||||||
@@ -200,7 +188,7 @@ public class PackServiceImpl implements PackService {
|
|||||||
@Override
|
@Override
|
||||||
public PageResult<OrderPackageVO> getPageOrderPack(PackageDetailsReqVO reqVO) {
|
public PageResult<OrderPackageVO> getPageOrderPack(PackageDetailsReqVO reqVO) {
|
||||||
|
|
||||||
PageDTO<OrderPackagDONew> page = new PageDTO<>(reqVO.getPageNo(), reqVO.getPageSize());
|
PageDTO<OrderPackagDO> page = new PageDTO<>(reqVO.getPageNo(), reqVO.getPageSize());
|
||||||
|
|
||||||
List<Long> packId = null;
|
List<Long> packId = null;
|
||||||
|
|
||||||
@@ -220,21 +208,21 @@ public class PackServiceImpl implements PackService {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
IPage<OrderPackagDONew> orderPackagDONews = orderPackageNewMapper.selectPage(page, new LambdaQueryWrapperX<OrderPackagDONew>()
|
IPage<OrderPackagDO> orderPackagDOs = orderPackageMapper.selectPage(page, new LambdaQueryWrapperX<OrderPackagDO>()
|
||||||
.eq(OrderPackagDONew::getOrderId, orderId)
|
.eq(OrderPackagDO::getOrderId, orderId)
|
||||||
.likeIfPresent(OrderPackagDONew::getPackageNo, packageNo)
|
.likeIfPresent(OrderPackagDO::getPackageNo, packageNo)
|
||||||
.eqIfPresent(OrderPackagDONew::getPackageNo, packId)
|
.eqIfPresent(OrderPackagDO::getPackageNo, packId)
|
||||||
.eqIfPresent(OrderPackagDONew::getStatus, reqVO.getPackStatus())
|
.eqIfPresent(OrderPackagDO::getStatus, reqVO.getPackStatus())
|
||||||
.orderByDesc(OrderPackagDONew::getCreateTime)
|
.orderByDesc(OrderPackagDO::getCreateTime)
|
||||||
);
|
);
|
||||||
|
|
||||||
List<OrderPackagDONew> records = orderPackagDONews.getRecords();
|
List<OrderPackagDO> records = orderPackagDOs.getRecords();
|
||||||
if (CollUtil.isEmpty(records)) {
|
if (CollUtil.isEmpty(records)) {
|
||||||
return new PageResult<>();
|
return new PageResult<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return new PageResult<>(BeanUtil.copyToList(records, OrderPackageVO.class), orderPackagDONews.getTotal());
|
return new PageResult<>(BeanUtil.copyToList(records, OrderPackageVO.class), orderPackagDOs.getTotal());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -246,19 +234,19 @@ public class PackServiceImpl implements PackService {
|
|||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public OrderPackRespVO unpacking(Long packageID) {
|
public OrderPackRespVO unpacking(Long packageID) {
|
||||||
|
|
||||||
List<OrderPackagDONew> orderPackagDONews = orderPackageNewMapper.selectList(new LambdaQueryWrapper<OrderPackagDONew>()
|
List<OrderPackagDO> orderPackagDOs = orderPackageMapper.selectList(new LambdaQueryWrapper<OrderPackagDO>()
|
||||||
.eq(OrderPackagDONew::getPackageNo, packageID)
|
.eq(OrderPackagDO::getPackageNo, packageID)
|
||||||
);
|
);
|
||||||
AssertUtils.notEmpty(orderPackagDONews, ORDER_PACK_DATA_NULL_ERROR);
|
AssertUtils.notEmpty(orderPackagDOs, ORDER_PACK_DATA_NULL_ERROR);
|
||||||
|
|
||||||
// 整理出orderIds
|
// 整理出orderIds
|
||||||
List<Long> orderIds = orderPackagDONews.stream().map(OrderPackagDONew::getOrderId).distinct().toList();
|
List<Long> orderIds = orderPackagDOs.stream().map(OrderPackagDO::getOrderId).distinct().toList();
|
||||||
|
|
||||||
// 更新包裹状态
|
// 更新包裹状态
|
||||||
orderPackageNewMapper.update(new LambdaUpdateWrapper<OrderPackagDONew>()
|
orderPackageMapper.update(new LambdaUpdateWrapper<OrderPackagDO>()
|
||||||
.eq(OrderPackagDONew::getPackageNo, packageID)
|
.eq(OrderPackagDO::getPackageNo, packageID)
|
||||||
.in(OrderPackagDONew::getOrderId, orderIds)
|
.in(OrderPackagDO::getOrderId, orderIds)
|
||||||
.set(OrderPackagDONew::getStatus, OrderPackageStatusEnum.UNPACKED.getStatus())
|
.set(OrderPackagDO::getStatus, OrderPackageStatusEnum.UNPACKED.getStatus())
|
||||||
);
|
);
|
||||||
|
|
||||||
for (Long orderId : orderIds) {
|
for (Long orderId : orderIds) {
|
||||||
@@ -270,7 +258,7 @@ public class PackServiceImpl implements PackService {
|
|||||||
}
|
}
|
||||||
ordersMapper.updateById(orderDO);
|
ordersMapper.updateById(orderDO);
|
||||||
}
|
}
|
||||||
return typeConversion(orderPackagDONews.get(0), orderIds);
|
return typeConversion(orderPackagDOs.get(0), orderIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -286,21 +274,21 @@ public class PackServiceImpl implements PackService {
|
|||||||
List<PackagePartsSaveReqVO> delPartsList = packageVO.getDelPartsList();
|
List<PackagePartsSaveReqVO> delPartsList = packageVO.getDelPartsList();
|
||||||
Integer packMethod = packageVO.getPackMethod();
|
Integer packMethod = packageVO.getPackMethod();
|
||||||
|
|
||||||
OrderPackagDONew existPackageDO = validateOrdersExists(orderIds, packNo);
|
OrderPackagDO existPackageDO = validateOrdersExists(orderIds, packNo);
|
||||||
|
|
||||||
// 判断包裹ID是否为空,为空,走新增,不为空,走更新
|
// 判断包裹ID是否为空,为空,走新增,不为空,走更新
|
||||||
if (ObjectUtil.isEmpty(existPackageDO)) {
|
if (ObjectUtil.isEmpty(existPackageDO)) {
|
||||||
String packageNo = generatePackageNo();
|
String packageNo = generatePackageNo();
|
||||||
List<OrderPackagDONew> orderPackageDOS = new ArrayList<>();
|
List<OrderPackagDO> orderPackageDOS = new ArrayList<>();
|
||||||
for (Long orderId : orderIds) {
|
for (Long orderId : orderIds) {
|
||||||
OrderPackagDONew orderPackageDO = new OrderPackagDONew();
|
OrderPackagDO orderPackageDO = new OrderPackagDO();
|
||||||
orderPackageDO.setOrderId(orderId);
|
orderPackageDO.setOrderId(orderId);
|
||||||
orderPackageDO.setPackageNo(packageNo);
|
orderPackageDO.setPackageNo(packageNo);
|
||||||
orderPackageDO.setStatus((OrderPackageStatusEnum.PACKAGED.getStatus()));
|
orderPackageDO.setStatus((OrderPackageStatusEnum.PACKAGED.getStatus()));
|
||||||
orderPackageDO.setRemark(packageVO.getRemark());
|
orderPackageDO.setRemark(packageVO.getRemark());
|
||||||
orderPackageDOS.add(orderPackageDO);
|
orderPackageDOS.add(orderPackageDO);
|
||||||
}
|
}
|
||||||
orderPackageNewMapper.insertBatch(orderPackageDOS);
|
orderPackageMapper.insertBatch(orderPackageDOS);
|
||||||
// 板件明细新增包裹 ID
|
// 板件明细新增包裹 ID
|
||||||
List<List<Long>> split = CollUtil.split(addPlateIdList, 1000);
|
List<List<Long>> split = CollUtil.split(addPlateIdList, 1000);
|
||||||
if (CollUtil.isNotEmpty(split)) {
|
if (CollUtil.isNotEmpty(split)) {
|
||||||
@@ -354,11 +342,11 @@ public class PackServiceImpl implements PackService {
|
|||||||
processParts(addPartsList, packMethod, orderIds, existPackageNo, true);
|
processParts(addPartsList, packMethod, orderIds, existPackageNo, true);
|
||||||
|
|
||||||
// 更新封包状态
|
// 更新封包状态
|
||||||
orderPackageNewMapper.update(new LambdaUpdateWrapper<OrderPackagDONew>()
|
orderPackageMapper.update(new LambdaUpdateWrapper<OrderPackagDO>()
|
||||||
.eq(OrderPackagDONew::getPackageNo, existPackageNo)
|
.eq(OrderPackagDO::getPackageNo, existPackageNo)
|
||||||
.in(OrderPackagDONew::getOrderId, orderIds)
|
.in(OrderPackagDO::getOrderId, orderIds)
|
||||||
.eq(OrderPackagDONew::getStatus, OrderPackageStatusEnum.UNPACKED.getStatus())
|
.eq(OrderPackagDO::getStatus, OrderPackageStatusEnum.UNPACKED.getStatus())
|
||||||
.set(OrderPackagDONew::getStatus, OrderPackageStatusEnum.PACKAGED.getStatus()));
|
.set(OrderPackagDO::getStatus, OrderPackageStatusEnum.PACKAGED.getStatus()));
|
||||||
|
|
||||||
|
|
||||||
// 更新订单打包状态
|
// 更新订单打包状态
|
||||||
@@ -649,7 +637,7 @@ public class PackServiceImpl implements PackService {
|
|||||||
// 判断当前订单的板材和配件是否已全部打包且当前订单的包裹已全部封包
|
// 判断当前订单的板材和配件是否已全部打包且当前订单的包裹已全部封包
|
||||||
public Boolean validateOrderPack(Long orderId) {
|
public Boolean validateOrderPack(Long orderId) {
|
||||||
|
|
||||||
List<OrderPackageDO> orderPackageDOS = orderPackageMapper.selectPackList(orderId, getUserOrganId());
|
List<OrderPackagDO> orderPackageDOS = orderPackageMapper.selectPackList(orderId, getUserOrganId());
|
||||||
|
|
||||||
if (!orderPackageDOS.isEmpty()) {
|
if (!orderPackageDOS.isEmpty()) {
|
||||||
return false;
|
return false;
|
||||||
@@ -692,7 +680,7 @@ public class PackServiceImpl implements PackService {
|
|||||||
@Override
|
@Override
|
||||||
public List<OrderPackRespVO> selectPack(Long orderId) {
|
public List<OrderPackRespVO> selectPack(Long orderId) {
|
||||||
|
|
||||||
List<OrderPackageDO> orderPackageDOS = orderPackageMapper.selectPackStatus(orderId, getUserOrganId());
|
List<OrderPackagDO> orderPackageDOS = orderPackageMapper.selectPackStatus(orderId, getUserOrganId());
|
||||||
|
|
||||||
return orderPackageDOS.stream().map(this::typeConversion).toList();
|
return orderPackageDOS.stream().map(this::typeConversion).toList();
|
||||||
|
|
||||||
@@ -706,9 +694,9 @@ public class PackServiceImpl implements PackService {
|
|||||||
Long packageNo = reqVO.getPackageNo();
|
Long packageNo = reqVO.getPackageNo();
|
||||||
List<Long> orderIds = reqVO.getOrderIds();
|
List<Long> orderIds = reqVO.getOrderIds();
|
||||||
|
|
||||||
List<OrderPackagDONew> orderPackagDOS = orderPackageNewMapper.selectList(new LambdaQueryWrapper<OrderPackagDONew>()
|
List<OrderPackagDO> orderPackagDOS = orderPackageMapper.selectList(new LambdaQueryWrapper<OrderPackagDO>()
|
||||||
.eq(OrderPackagDONew::getPackageNo, packageNo)
|
.eq(OrderPackagDO::getPackageNo, packageNo)
|
||||||
.in(OrderPackagDONew::getOrderId, orderIds)
|
.in(OrderPackagDO::getOrderId, orderIds)
|
||||||
);
|
);
|
||||||
if (CollUtil.isEmpty(orderPackagDOS)) {
|
if (CollUtil.isEmpty(orderPackagDOS)) {
|
||||||
return;
|
return;
|
||||||
@@ -720,7 +708,7 @@ public class PackServiceImpl implements PackService {
|
|||||||
}
|
}
|
||||||
// 整理出该包裹对应的订单id列表
|
// 整理出该包裹对应的订单id列表
|
||||||
List<Long> packOrderIds = orderPackagDOS.stream()
|
List<Long> packOrderIds = orderPackagDOS.stream()
|
||||||
.map(OrderPackagDONew::getOrderId)
|
.map(OrderPackagDO::getOrderId)
|
||||||
.distinct()
|
.distinct()
|
||||||
.toList();
|
.toList();
|
||||||
|
|
||||||
@@ -832,9 +820,9 @@ public class PackServiceImpl implements PackService {
|
|||||||
|
|
||||||
|
|
||||||
// 移除包裹关联数据
|
// 移除包裹关联数据
|
||||||
orderPackageNewMapper.delete(new LambdaQueryWrapper<OrderPackagDONew>()
|
orderPackageMapper.delete(new LambdaQueryWrapper<OrderPackagDO>()
|
||||||
.eq(OrderPackagDONew::getPackageNo, packageNo)
|
.eq(OrderPackagDO::getPackageNo, packageNo)
|
||||||
.in(OrderPackagDONew::getOrderId, packOrderIds)
|
.in(OrderPackagDO::getOrderId, packOrderIds)
|
||||||
);
|
);
|
||||||
|
|
||||||
// 更新订单的已打包状态
|
// 更新订单的已打包状态
|
||||||
@@ -845,134 +833,6 @@ public class PackServiceImpl implements PackService {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// 新增外部配件包裹表
|
|
||||||
@Override
|
|
||||||
@Transactional(rollbackFor = Exception.class)
|
|
||||||
public OrderPackRespVO addNewOtherPack(OtherPackReqVO reqVO) {
|
|
||||||
|
|
||||||
|
|
||||||
// 配件表新增数据
|
|
||||||
OrderPartsDO orderParts = BeanUtils.toBean(reqVO, OrderPartsDO.class);
|
|
||||||
// 因为是外部配件,所以配件类型的名称固定为 “ 外部配件”
|
|
||||||
orderParts.setType("外部配件");
|
|
||||||
orderParts.setUnit(reqVO.getUnit());
|
|
||||||
orderPartsMapper.insert(orderParts);
|
|
||||||
|
|
||||||
|
|
||||||
// 在包裹表中添加包裹编号和订单号,修改包裹类型未其他配件类型
|
|
||||||
OrderPackageDO orderPackageDO = new OrderPackageDO();
|
|
||||||
orderPackageDO.setPackageNo(generatePackageNo());
|
|
||||||
orderPackageDO.setOrderId(reqVO.getOrderId());
|
|
||||||
orderPackageDO.setType(OrderPackageTypeEnum.OTHER_ACCESSORIES.getType());
|
|
||||||
|
|
||||||
// 新增包裹
|
|
||||||
orderPackageMapper.insert(orderPackageDO);
|
|
||||||
|
|
||||||
|
|
||||||
// 在订单明细表中添加数据(订单号,配件ID,包裹ID,部件数量)
|
|
||||||
OrderItemDO orderItemDO = new OrderItemDO();
|
|
||||||
orderItemDO.setOrderId(reqVO.getOrderId());
|
|
||||||
orderItemDO.setType(OrderItemTypeEnum.QUOTATIONACCESSORIES.getType());
|
|
||||||
orderItemDO.setPartsId(orderParts.getId());
|
|
||||||
orderItemDO.setPackageId(orderPackageDO.getId());
|
|
||||||
orderItemDO.setNum(reqVO.getNum());
|
|
||||||
|
|
||||||
|
|
||||||
// 在订单明细表中新增数据
|
|
||||||
orderItemMapper.insert(orderItemDO);
|
|
||||||
|
|
||||||
// 查看新增的包裹信息
|
|
||||||
return typeConversion(orderPackageDO);
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// 新增外部配件
|
|
||||||
@Override
|
|
||||||
@Transactional(rollbackFor = Exception.class)
|
|
||||||
public OrderPartsRespVO addNewOtherParts(OtherPackReqVO reqVO) {
|
|
||||||
|
|
||||||
OrderPackageDO orderPackageDO = orderPackageMapper.selectByPackNo(reqVO.getPackNo(), getUserOrganId());
|
|
||||||
if (orderPackageDO.getType() != OrderPackageTypeEnum.OTHER_ACCESSORIES.getType().longValue()) {
|
|
||||||
throw new ServiceException(THE_CURRENT_PACKAGE_TYPE_IS_INCORRECT);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// 配件表新增数据
|
|
||||||
OrderPartsDO orderParts = BeanUtils.toBean(reqVO, OrderPartsDO.class);
|
|
||||||
// 因为是外部配件,所以配件类型的名称固定为 “ 外部配件”
|
|
||||||
orderParts.setType("外部配件");
|
|
||||||
orderParts.setUnit(reqVO.getUnit());
|
|
||||||
orderPartsMapper.insert(orderParts);
|
|
||||||
|
|
||||||
// 在订单明细表中添加数据(订单号,配件ID,包裹ID,部件数量)
|
|
||||||
OrderItemDO orderItemDO = new OrderItemDO();
|
|
||||||
orderItemDO.setOrderId(reqVO.getOrderId());
|
|
||||||
orderItemDO.setPartsId(orderParts.getId());
|
|
||||||
orderItemDO.setPackageId(orderPackageDO.getId());
|
|
||||||
orderItemDO.setNum(reqVO.getNum());
|
|
||||||
|
|
||||||
// 在订单明细表中新增数据
|
|
||||||
orderItemMapper.insert(orderItemDO);
|
|
||||||
|
|
||||||
return BeanUtils.toBean(orderParts, OrderPartsRespVO.class);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// 删除包裹中的外部配件
|
|
||||||
@Override
|
|
||||||
@Transactional(rollbackFor = Exception.class)
|
|
||||||
public void deleteOtherParts(DeleteOtherPartsReqVO reqVO) {
|
|
||||||
|
|
||||||
|
|
||||||
if (reqVO.getIsOtherParts()) {
|
|
||||||
// 更新配件表中配件为逻辑删除
|
|
||||||
orderPartsMapper.updateParts(reqVO.getPartsId(), reqVO.getOrderId(), getUserOrganId());
|
|
||||||
orderItemMapper.deleteOtherParts(reqVO.getPartsId(), reqVO.getOrderId(), getUserOrganId());
|
|
||||||
}
|
|
||||||
|
|
||||||
orderItemMapper.updateParts(reqVO.getPartsId(), reqVO.getPackageId(), reqVO.getOrderId(), getUserOrganId());
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// 查询预打包优化信息
|
|
||||||
@Override
|
|
||||||
public String getPrePackInfo(Long orderId) {
|
|
||||||
|
|
||||||
|
|
||||||
OrderPrepackagedDO orderPrepackagedDO = orderPrepackagedMapper.selectOrder(orderId, getUserOrganId());
|
|
||||||
|
|
||||||
|
|
||||||
if (orderPrepackagedDO == null) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
return JsonUtils.unzipString(orderPrepackagedDO.getResult());
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// 日期格式转换
|
|
||||||
public static String convertTime(String input) {
|
|
||||||
|
|
||||||
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
|
|
||||||
SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
||||||
|
|
||||||
try {
|
|
||||||
Date date = inputFormat.parse(input);
|
|
||||||
date.setTime(date.getTime() + 8 * 60 * 60 * 1000); // 将时间转换为东夏令时
|
|
||||||
return outputFormat.format(date);
|
|
||||||
} catch (ParseException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// 生成包裹编号
|
// 生成包裹编号
|
||||||
private String generatePackageNo() {
|
private String generatePackageNo() {
|
||||||
|
|
||||||
@@ -989,14 +849,14 @@ public class PackServiceImpl implements PackService {
|
|||||||
* @param orderIds
|
* @param orderIds
|
||||||
* @param packNo
|
* @param packNo
|
||||||
*/
|
*/
|
||||||
private OrderPackagDONew validateOrdersExists(List<Long> orderIds, String packNo) {
|
private OrderPackagDO validateOrdersExists(List<Long> orderIds, String packNo) {
|
||||||
|
|
||||||
List<OrderDO> orderDO = ordersMapper.selectByIds(orderIds);
|
List<OrderDO> orderDO = ordersMapper.selectByIds(orderIds);
|
||||||
AssertUtils.notEmpty(orderDO, ORDER_PACK_ERROR);
|
AssertUtils.notEmpty(orderDO, ORDER_PACK_ERROR);
|
||||||
|
|
||||||
if (CharSequenceUtil.isNotEmpty(packNo)) {
|
if (CharSequenceUtil.isNotEmpty(packNo)) {
|
||||||
List<OrderPackagDONew> orderPackageDOS = orderPackageNewMapper.selectList(new LambdaQueryWrapper<OrderPackagDONew>()
|
List<OrderPackagDO> orderPackageDOS = orderPackageMapper.selectList(new LambdaQueryWrapper<OrderPackagDO>()
|
||||||
.eq(OrderPackagDONew::getPackageNo, packNo));
|
.eq(OrderPackagDO::getPackageNo, packNo));
|
||||||
AssertUtils.notEmpty(orderPackageDOS, ORDER_PACK_DATA_ERROR);
|
AssertUtils.notEmpty(orderPackageDOS, ORDER_PACK_DATA_ERROR);
|
||||||
return orderPackageDOS.get(0);
|
return orderPackageDOS.get(0);
|
||||||
}
|
}
|
||||||
@@ -1005,7 +865,7 @@ public class PackServiceImpl implements PackService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 类型转换
|
// 类型转换
|
||||||
private OrderPackRespVO typeConversion(OrderPackageDO orderPackageDO) {
|
private OrderPackRespVO typeConversion(OrderPackagDO orderPackageDO) {
|
||||||
return OrderPackRespVO.builder()
|
return OrderPackRespVO.builder()
|
||||||
.orderId(orderPackageDO.getOrderId())
|
.orderId(orderPackageDO.getOrderId())
|
||||||
.organId(orderPackageDO.getOrganId())
|
.organId(orderPackageDO.getOrganId())
|
||||||
@@ -1017,7 +877,7 @@ public class PackServiceImpl implements PackService {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private OrderPackRespVO typeConversion(OrderPackagDONew orderPackageDO, List<Long> orderIds) {
|
private OrderPackRespVO typeConversion(OrderPackagDO orderPackageDO, List<Long> orderIds) {
|
||||||
return OrderPackRespVO.builder()
|
return OrderPackRespVO.builder()
|
||||||
.orderIds(orderIds)
|
.orderIds(orderIds)
|
||||||
.organId(orderPackageDO.getOrganId())
|
.organId(orderPackageDO.getOrganId())
|
||||||
@@ -1204,13 +1064,13 @@ public class PackServiceImpl implements PackService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<PackageDetailsRespVO> getOrdersPackageDetails(String packageNo) {
|
public List<PackageDetailsRespVO> getOrdersPackageDetails(String packageNo) {
|
||||||
List<OrderPackagDONew> orderPackagDONews = orderPackageNewMapper.selectList(new LambdaQueryWrapper<OrderPackagDONew>()
|
List<OrderPackagDO> orderPackagDONews = orderPackageMapper.selectList(new LambdaQueryWrapper<OrderPackagDO>()
|
||||||
.eq(OrderPackagDONew::getPackageNo, packageNo));
|
.eq(OrderPackagDO::getPackageNo, packageNo));
|
||||||
|
|
||||||
if (CollUtil.isEmpty(orderPackagDONews)) {
|
if (CollUtil.isEmpty(orderPackagDONews)) {
|
||||||
return new ArrayList<>();
|
return new ArrayList<>();
|
||||||
}
|
}
|
||||||
Set<Long> orderIds = orderPackagDONews.stream().map(OrderPackagDONew::getOrderId).collect(Collectors.toSet());
|
Set<Long> orderIds = orderPackagDONews.stream().map(OrderPackagDO::getOrderId).collect(Collectors.toSet());
|
||||||
List<PackageDetailsRespVO> packPartsList = orderPartsMapper.selectPackedParts(orderIds, packageNo);
|
List<PackageDetailsRespVO> packPartsList = orderPartsMapper.selectPackedParts(orderIds, packageNo);
|
||||||
List<PackageDetailsRespVO> packPlateList = orderPlateMapper.selectPackedPlateList(orderIds, packageNo);
|
List<PackageDetailsRespVO> packPlateList = orderPlateMapper.selectPackedPlateList(orderIds, packageNo);
|
||||||
packPlateList.addAll(packPartsList);
|
packPlateList.addAll(packPartsList);
|
||||||
@@ -1219,9 +1079,9 @@ public class PackServiceImpl implements PackService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<PackageDetailsRespVO> getOrderPackageDetails(Long orderId, String packageNo) {
|
public List<PackageDetailsRespVO> getOrderPackageDetails(Long orderId, String packageNo) {
|
||||||
List<OrderPackagDONew> orderPackagDONews = orderPackageNewMapper.selectList(new LambdaQueryWrapper<OrderPackagDONew>()
|
List<OrderPackagDO> orderPackagDONews = orderPackageMapper.selectList(new LambdaQueryWrapper<OrderPackagDO>()
|
||||||
.eq(OrderPackagDONew::getPackageNo, packageNo)
|
.eq(OrderPackagDO::getPackageNo, packageNo)
|
||||||
.eq(OrderPackagDONew::getOrderId, orderId)
|
.eq(OrderPackagDO::getOrderId, orderId)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (CollUtil.isEmpty(orderPackagDONews)) {
|
if (CollUtil.isEmpty(orderPackagDONews)) {
|
||||||
|
|||||||
+49
-50
@@ -12,7 +12,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
|
||||||
import com.cf.imes.framework.common.enums.DeletedCodeEnum;
|
import com.cf.imes.framework.common.enums.DeletedCodeEnum;
|
||||||
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
|
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
|
||||||
import com.cf.imes.framework.common.enums.OrderPackageTypeEnum;
|
|
||||||
import com.cf.imes.framework.common.exception.ServiceException;
|
import com.cf.imes.framework.common.exception.ServiceException;
|
||||||
import com.cf.imes.framework.common.pojo.CommonResult;
|
import com.cf.imes.framework.common.pojo.CommonResult;
|
||||||
import com.cf.imes.framework.common.pojo.PageParam;
|
import com.cf.imes.framework.common.pojo.PageParam;
|
||||||
@@ -45,7 +44,6 @@ import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO;
|
|||||||
import com.cf.imes.module.executor.dal.dataobject.orderParts.OrderPartsDO;
|
import com.cf.imes.module.executor.dal.dataobject.orderParts.OrderPartsDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.orderParts.PartsDO;
|
import com.cf.imes.module.executor.dal.dataobject.orderParts.PartsDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.ordermodel.OrderModelDO;
|
import com.cf.imes.module.executor.dal.dataobject.ordermodel.OrderModelDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.pack.OrderPackageDO;
|
|
||||||
import com.cf.imes.module.executor.dal.dataobject.plan.PlanDO;
|
import com.cf.imes.module.executor.dal.dataobject.plan.PlanDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
|
import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.plate.PlateGoodDO;
|
import com.cf.imes.module.executor.dal.dataobject.plate.PlateGoodDO;
|
||||||
@@ -1320,7 +1318,8 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
|
|
||||||
List<Long> packIds = orderItemDOS.stream().map(OrderItemDO::getPackageId).distinct().toList();
|
List<Long> packIds = orderItemDOS.stream().map(OrderItemDO::getPackageId).distinct().toList();
|
||||||
|
|
||||||
orderPackageMapper.updatePackList(orderId, packIds, getUserOrganId());
|
// todo 删除打包内容
|
||||||
|
// orderPackageMapper.updatePackList(orderId, packIds, getUserOrganId());
|
||||||
|
|
||||||
orderItemMapper.deletePackList(orderId, packIds, getUserOrganId());
|
orderItemMapper.deletePackList(orderId, packIds, getUserOrganId());
|
||||||
|
|
||||||
@@ -1632,53 +1631,53 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
List<LabelOrderPlateData> labelOrderPlateData,
|
List<LabelOrderPlateData> labelOrderPlateData,
|
||||||
OrderAllData orderAllData){
|
OrderAllData orderAllData){
|
||||||
|
|
||||||
// 板材包裹信息
|
// // 板材包裹信息
|
||||||
List<LabelOrderPackData> labelOrderPackData = orderPackageMapper.selectLabelOrderPackData(packIds, organId);
|
// List<LabelOrderPackData> labelOrderPackData = orderPackageMapper.selectLabelOrderPackData(packIds, organId);
|
||||||
|
//
|
||||||
labelOrderPackData.forEach(f -> f.setPackNum(f.getPackageInfos().size()));
|
// labelOrderPackData.forEach(f -> f.setPackNum(f.getPackageInfos().size()));
|
||||||
|
//
|
||||||
// 查询是否有 配件 类型包裹
|
// // 查询是否有 配件 类型包裹
|
||||||
List<LabelOrderPackData> partPackList = orderPackageMapper.selectPartPack(orderIds, getUserOrganId(), OrderPackageTypeEnum.PARTS.getType(),OrderPackageStatusEnum.PACKAGED.getStatus());
|
// List<LabelOrderPackData> partPackList = orderPackageMapper.selectPartPack(orderIds, getUserOrganId(), OrderPackageTypeEnum.PARTS.getType(),OrderPackageStatusEnum.PACKAGED.getStatus());
|
||||||
|
//
|
||||||
if(CollUtil.isNotEmpty(partPackList)){
|
// if(CollUtil.isNotEmpty(partPackList)){
|
||||||
|
//
|
||||||
partPackList.forEach(f->f.setPackNum(f.getPackageInfos().size()));
|
// partPackList.forEach(f->f.setPackNum(f.getPackageInfos().size()));
|
||||||
|
//
|
||||||
// 板材包裹为空时,且配件包裹不为空,需要加入配件包裹的信息
|
// // 板材包裹为空时,且配件包裹不为空,需要加入配件包裹的信息
|
||||||
if(CollUtil.isEmpty(labelOrderPackData)){
|
// if(CollUtil.isEmpty(labelOrderPackData)){
|
||||||
partPackList.forEach(f->labelOrderPackData.add(LabelOrderPackData.builder().orderNo(f.getOrderNo()).build()));
|
// partPackList.forEach(f->labelOrderPackData.add(LabelOrderPackData.builder().orderNo(f.getOrderNo()).build()));
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
|
//
|
||||||
// 添加缺少的配件包裹信息
|
// // 添加缺少的配件包裹信息
|
||||||
labelOrderPackData.forEach(f-> {
|
// labelOrderPackData.forEach(f-> {
|
||||||
Integer packNum = partPackList.stream()
|
// Integer packNum = partPackList.stream()
|
||||||
.filter(p -> f.getOrderNo().equals(p.getOrderNo()))
|
// .filter(p -> f.getOrderNo().equals(p.getOrderNo()))
|
||||||
.mapToInt(p -> p.getPackNum() != null ? p.getPackNum() : 0)
|
// .mapToInt(p -> p.getPackNum() != null ? p.getPackNum() : 0)
|
||||||
.sum();
|
// .sum();
|
||||||
|
//
|
||||||
f.setPackNum( Optional.ofNullable(f.getPackNum()).orElse(0) + packNum);
|
// f.setPackNum( Optional.ofNullable(f.getPackNum()).orElse(0) + packNum);
|
||||||
|
//
|
||||||
f.setPackageInfos(Optional.ofNullable(f.getPackageInfos()).orElse(new ArrayList<>()));
|
// f.setPackageInfos(Optional.ofNullable(f.getPackageInfos()).orElse(new ArrayList<>()));
|
||||||
|
//
|
||||||
f.getPackageInfos().addAll(partPackList.stream()
|
// f.getPackageInfos().addAll(partPackList.stream()
|
||||||
.filter(p->p.getOrderNo().equals(f.getOrderNo()))
|
// .filter(p->p.getOrderNo().equals(f.getOrderNo()))
|
||||||
.map(LabelOrderPackData::getPackageInfos)
|
// .map(LabelOrderPackData::getPackageInfos)
|
||||||
.findAny().orElse(new ArrayList<>()));
|
// .findAny().orElse(new ArrayList<>()));
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
|
//
|
||||||
List<OrderPackageDO> packageDOS = orderPackageMapper.selectPackListByIds(packIds,getUserOrganId());
|
// List<OrderPackagDO> packageDOS = orderPackageMapper.selectPackListByIds(packIds,getUserOrganId());
|
||||||
|
//
|
||||||
labelOrderPlateData.forEach(f->
|
// labelOrderPlateData.forEach(f->
|
||||||
f.setPackageSerialNo(
|
// f.setPackageSerialNo(
|
||||||
packageDOS.stream()
|
// packageDOS.stream()
|
||||||
.filter(o->o.getId().equals(f.getPackageNo()))
|
// .filter(o->o.getId().equals(f.getPackageNo()))
|
||||||
.findFirst()
|
// .findFirst()
|
||||||
.orElse(new OrderPackageDO()).getPackageNo()));
|
// .orElse(new OrderPackagDO()).getPackageNo()));
|
||||||
|
//
|
||||||
orderAllData.setPackDataList(labelOrderPackData);
|
// orderAllData.setPackDataList(labelOrderPackData);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-143
@@ -2,23 +2,6 @@
|
|||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||||
<mapper namespace="com.cf.imes.module.executor.dal.mysql.pack.OrderPackageMapper">
|
<mapper namespace="com.cf.imes.module.executor.dal.mysql.pack.OrderPackageMapper">
|
||||||
|
|
||||||
|
|
||||||
<update id="updatePackList" parameterType="java.lang.Long">
|
|
||||||
|
|
||||||
UPDATE order_package
|
|
||||||
|
|
||||||
SET deleted = true
|
|
||||||
|
|
||||||
WHERE organ_id = #{organId}
|
|
||||||
and order_id = #{orderId}
|
|
||||||
and id in
|
|
||||||
<foreach item="packIds" collection="packIds" open="(" separator="," close=")">
|
|
||||||
#{packIds}
|
|
||||||
</foreach>
|
|
||||||
|
|
||||||
|
|
||||||
</update>
|
|
||||||
|
|
||||||
<resultMap id="PackMap" type="com.cf.imes.module.executor.controller.admin.manage.pack.vo.PackRespVO">
|
<resultMap id="PackMap" type="com.cf.imes.module.executor.controller.admin.manage.pack.vo.PackRespVO">
|
||||||
|
|
||||||
<result property="id" column="orderId"/>
|
<result property="id" column="orderId"/>
|
||||||
@@ -35,7 +18,7 @@
|
|||||||
|
|
||||||
select
|
select
|
||||||
order_id as orderId,
|
order_id as orderId,
|
||||||
id as packId
|
package_no as packId
|
||||||
|
|
||||||
from order_package
|
from order_package
|
||||||
|
|
||||||
@@ -64,7 +47,7 @@
|
|||||||
oi.plate_id as plateId
|
oi.plate_id as plateId
|
||||||
|
|
||||||
from order_package op
|
from order_package op
|
||||||
left join order_item oi on op.organ_id = oi.organ_id and op.order_id = oi.order_id and op.id = oi.package_id
|
left join order_item oi on op.organ_id = oi.organ_id and op.order_id = oi.order_id and op.package_no = oi.package_id
|
||||||
|
|
||||||
where
|
where
|
||||||
|
|
||||||
@@ -75,7 +58,6 @@
|
|||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
|
|
||||||
and op.type = 0
|
|
||||||
and op.status in (1,2,3)
|
and op.status in (1,2,3)
|
||||||
and oi.package_id != 0
|
and oi.package_id != 0
|
||||||
and oi.plate_id != 0;
|
and oi.plate_id != 0;
|
||||||
@@ -84,76 +66,6 @@
|
|||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<update id="updateParts"
|
|
||||||
parameterType="java.lang.Long">
|
|
||||||
|
|
||||||
UPDATE order_package
|
|
||||||
SET deleted = true
|
|
||||||
WHERE organ_id = #{organId} and order_id = #{orderId} and id = #{packageId}
|
|
||||||
|
|
||||||
</update>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<select id="selectByOrderNo"
|
|
||||||
resultType="com.cf.imes.module.executor.controller.admin.manage.query.vo.pack.OrderPackageVO">
|
|
||||||
|
|
||||||
select distinct
|
|
||||||
op.id,
|
|
||||||
op.order_id,
|
|
||||||
op.package_no,
|
|
||||||
op.type,
|
|
||||||
op.status,
|
|
||||||
op.organ_id,
|
|
||||||
op.creator,
|
|
||||||
op.remark as packRemark,
|
|
||||||
op.updater,
|
|
||||||
op.update_time,
|
|
||||||
op.create_time,
|
|
||||||
o.custom_order_no,
|
|
||||||
o.dealer,
|
|
||||||
o.customer,
|
|
||||||
o.address,
|
|
||||||
o.remark as orderRemark
|
|
||||||
|
|
||||||
from orders o
|
|
||||||
left join order_package op on o.organ_id = op.organ_id and o.id = op.order_id
|
|
||||||
|
|
||||||
${ew.customSqlSegment}
|
|
||||||
|
|
||||||
</select>
|
|
||||||
|
|
||||||
|
|
||||||
<select id="selectPackListByOrderId"
|
|
||||||
resultType="com.cf.imes.module.executor.controller.admin.manage.query.vo.pack.OrderPackageVO">
|
|
||||||
|
|
||||||
|
|
||||||
select distinct
|
|
||||||
id,
|
|
||||||
order_id,
|
|
||||||
package_no,
|
|
||||||
type,
|
|
||||||
status,
|
|
||||||
organ_id,
|
|
||||||
creator,
|
|
||||||
remark as packRemark,
|
|
||||||
updater,
|
|
||||||
update_time,
|
|
||||||
create_time
|
|
||||||
|
|
||||||
from order_package
|
|
||||||
|
|
||||||
where organ_id = #{organId} and deleted = false and order_id = #{orderId}
|
|
||||||
|
|
||||||
</select>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<resultMap id="OrderPackDataMap" type="com.cf.imes.module.executor.controller.admin.order.vo.order.LabelOrderPackData">
|
<resultMap id="OrderPackDataMap" type="com.cf.imes.module.executor.controller.admin.order.vo.order.LabelOrderPackData">
|
||||||
|
|
||||||
<result property="orderNo" column="orderNo"/>
|
<result property="orderNo" column="orderNo"/>
|
||||||
@@ -167,61 +79,9 @@
|
|||||||
|
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<select id="selectLabelOrderPackData"
|
|
||||||
parameterType="java.lang.Long"
|
|
||||||
resultMap="OrderPackDataMap">
|
|
||||||
|
|
||||||
|
|
||||||
select distinct
|
|
||||||
package_no as packageNo,
|
|
||||||
id as packageId,
|
|
||||||
order_id as orderNo
|
|
||||||
|
|
||||||
from order_package
|
|
||||||
|
|
||||||
where organ_id = #{organId}
|
|
||||||
and deleted = false
|
|
||||||
and id in
|
|
||||||
<foreach item="packIds" collection="packIds" open="(" separator="," close=")">
|
|
||||||
#{packIds}
|
|
||||||
</foreach>
|
|
||||||
and status = 1
|
|
||||||
|
|
||||||
|
|
||||||
</select>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<select id="selectPartPack"
|
|
||||||
parameterType="java.lang.Long"
|
|
||||||
resultMap="OrderPackDataMap">
|
|
||||||
|
|
||||||
|
|
||||||
select distinct
|
|
||||||
package_no as packageNo,
|
|
||||||
id as packageId,
|
|
||||||
order_id as orderNo
|
|
||||||
|
|
||||||
from order_package
|
|
||||||
|
|
||||||
where organ_id = #{organId}
|
|
||||||
and deleted = false
|
|
||||||
and order_id in
|
|
||||||
<foreach item="orderIds" collection="orderIds" open="(" separator="," close=")">
|
|
||||||
#{orderIds}
|
|
||||||
</foreach>
|
|
||||||
and type = #{type}
|
|
||||||
and status = #{status}
|
|
||||||
|
|
||||||
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="getPackageNoInOrderIds" resultType="com.cf.imes.module.executor.controller.admin.manage.query.vo.pack.OrderPackageVO">
|
<select id="getPackageNoInOrderIds" resultType="com.cf.imes.module.executor.controller.admin.manage.query.vo.pack.OrderPackageVO">
|
||||||
SELECT DISTINCT package_no,status
|
SELECT DISTINCT package_no,status
|
||||||
FROM order_package_new
|
FROM order_package
|
||||||
WHERE deleted = false
|
WHERE deleted = false
|
||||||
AND order_id IN
|
AND order_id IN
|
||||||
<foreach collection="orderIds" item="id" open="(" close=")" separator=",">
|
<foreach collection="orderIds" item="id" open="(" close=")" separator=",">
|
||||||
|
|||||||
Reference in New Issue
Block a user