Merge branch 'main' of ssh://192.168.1.205:9922/cf_devdept2/cf_imes_server

This commit is contained in:
lym
2024-05-11 10:23:53 +08:00
24 changed files with 587 additions and 197 deletions
@@ -1,6 +1,7 @@
package com.cf.imes.module.manage.controller.admin.pack;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.cf.imes.framework.common.pojo.CommonResult;
import com.cf.imes.framework.common.pojo.PageParam;
import com.cf.imes.framework.common.pojo.PageResult;
@@ -10,6 +11,7 @@ import com.cf.imes.framework.operatelog.core.annotations.OperateLog;
import com.cf.imes.module.manage.controller.admin.grouping.vo.OrderPackageReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.*;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleReqVO;
import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
import com.cf.imes.module.manage.service.pack.PackService;
@@ -62,20 +64,27 @@ public class PackController {
@GetMapping("/getOrderPack")
@Operation(summary = "查看生产订单对应的包裹信息")
@Parameter(name = "orderId", description = "生产单Id", required = true)
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
public CommonResult<List<OrderPackageVO>> getOrderPack(@Valid @RequestParam("orderId") Long orderId) {
List<OrderPackageDO> orderPack = packService.getOrderPack(orderId);
public CommonResult<List<OrderPackageVO>> getOrderPack(@Valid PackageDetailsReqVO reqVO) {
List<OrderPackageDO> orderPack = packService.getOrderPack(reqVO);
return success(BeanUtils.toBean(orderPack,OrderPackageVO.class));
}
@GetMapping("/queryPackageDetails")
@Operation(summary = "查看包裹对应的板材信息")
@PreAuthorize("@ss.hasPermission('manage:query:query')")
public CommonResult<PageResult<PackageDetailsRespVO>> queryPackageDetails(@Valid PackDetailsReqVO reqVO){
return CommonResult.success(productionStatusService.queryPackageDetails(reqVO));
}
@@ -83,7 +92,7 @@ public class PackController {
@Operation(summary = "查看生产订单对应的板材信息")
@Parameter(name = "orderId", description = "生产单Id", required = true)
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
public CommonResult<List<PlateDetailsRespVO>> getOrderPlateList(@Valid @RequestParam("orderId") Long orderId) {
public CommonResult<OrderPlateDetailsRespVO> getOrderPlateList(@Valid @RequestParam("orderId") Long orderId) {
return success(packService.getOrderPlateList(orderId));
@@ -112,9 +121,9 @@ public class PackController {
@GetMapping("/pagePlate")
@Operation(summary = "查看板材列表分页")
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
// @GetMapping("/pagePlate")
// @Operation(summary = "查看板材列表分页")
// @PreAuthorize("@ss.hasPermission('manage:pack:query')")
public CommonResult<PageResult<PlateDetailsRespVO>> queryPlateDetails(@Valid OrderModuleReqVO pageReqVO){
PageResult<PlateDetailsRespVO> packageDetailsRespVOPageResult = packService.queryPlateDetails(pageReqVO);
@@ -126,8 +135,6 @@ public class PackController {
@GetMapping("/getParts")
@Operation(summary = "查看配件列表分页")
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
@@ -140,13 +147,27 @@ public class PackController {
@PutMapping("/updateParts")
@Operation(summary = "更新配件")
@PreAuthorize("@ss.hasPermission('manage:pack:updateParts')")
public CommonResult<Boolean> updateParts(@Valid OrderPartsReqVO reqVO) {
packService.updateParts(reqVO);
return success(true);
}
// TODO 目前前端接口只有查询配件包裹时会调用,板材是否会调用待确认
@GetMapping("/getPartsPack")
@Operation(summary = "查看配件包裹详情")
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
// @GetMapping("/getPartsPack")
// @Operation(summary = "查看配件包裹详情")
// @PreAuthorize("@ss.hasPermission('manage:pack:query')")
public CommonResult<List<OrderPartsRespVO>> queryPackageDetails(@Valid PrintOrderPackReqVO reqVO){
return success(packService.queryPackageDetails(reqVO));
@@ -158,27 +179,63 @@ public class PackController {
@PostMapping("/insertPack")
@Operation(summary = "新增包裹")
@PreAuthorize("@ss.hasPermission('manage:pack:insertPack')")
public CommonResult<OrderPackRespVO> insertPack(@Valid @RequestBody OrderPackReqVO packageVO) {
@PutMapping("/insert")
@Operation(summary = "包裹封包-板材包裹封包")
@PreAuthorize("@ss.hasPermission('manage:pack:update')")
public CommonResult<OrderPackageDO> updatePackStatus(@Valid @RequestBody OrderPackReqVO packageVO) {
OrderPackageDO orderPackageDO = packService.insertPack(packageVO);
return success(packService.updatePackStatus(packageVO));
return success(BeanUtils.toBean(orderPackageDO, OrderPackRespVO.class));
}
@PutMapping("/updatePack")
@Operation(summary = "更新包裹")
@PreAuthorize("@ss.hasPermission('manage:pack:updatePack')")
public CommonResult<OrderPackRespVO> updatePack(@Valid @RequestBody OrderPackReqVO packageVO) {
OrderPackageDO orderPackageDO = packService.updatePack(packageVO);
return success(BeanUtils.toBean(orderPackageDO, OrderPackRespVO.class));
}
@GetMapping("/selectPack")
@Operation(summary = "查询包裹")
@Parameter(name = "orderId", description = "生产单Id", required = true)
@PreAuthorize("@ss.hasPermission('manage:pack:update')")
public CommonResult<List<OrderPackRespVO>> selectPack(@Valid @RequestParam("orderId") Long orderId) {
return success(packService.selectPack(orderId));
}
@DeleteMapping("/deletePack")
@Operation(summary = "删除包裹及其关联的包裹信息(删除全部)")
@PreAuthorize("@ss.hasPermission('manage:pack:delete')")
public CommonResult<Boolean> deleteOrderPack (@Valid @RequestBody PackReqVO reqVO) {
packService.deleteOrderPack(reqVO);
return success(true);
}
@PutMapping("/unpacking")
@Operation(summary = "拆包")
@PreAuthorize("@ss.hasPermission('manage:pack:update')")
public CommonResult<Boolean> unpacking(@Valid Long packageID) {
@Operation(summary = "拆包-更改包裹为未封包")
@Parameter(name = "packageID", description = "包裹ID", required = true)
@PreAuthorize("@ss.hasPermission('manage:pack:unpacking')")
public CommonResult<Boolean> unpacking(@Valid @RequestParam("packageID") Long packageID) {
packService.unpacking(packageID);
@@ -192,9 +249,9 @@ public class PackController {
@GetMapping("/GetOrderPlateGroup")
@Operation(summary = "显示分组房间名称")
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
// @GetMapping("/GetOrderPlateGroup")
// @Operation(summary = "显示分组房间名称")
// @PreAuthorize("@ss.hasPermission('manage:pack:query')")
public CommonResult<List<OrderPlateGroupRespVO>> GetOrderPlateGroup(@Valid Long orderId) {
return success(packService.GetOrderPlateGroup(orderId));
@@ -205,8 +262,6 @@ public class PackController {
@GetMapping("/print")
@Operation(summary = "包裹订单打印")
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
@@ -221,7 +276,7 @@ public class PackController {
@PostMapping("/insertParts")
@Operation(summary = "新增配件-即新增一个包裹")
@Operation(summary = "新增配件包裹")
@PreAuthorize("@ss.hasPermission('manage:pack:insert')")
public CommonResult<OrderPackageDO> addNewPartsPack (@Valid @RequestBody OrderPackReqVO reqVO) {
@@ -232,13 +287,20 @@ public class PackController {
@PostMapping("/insertOther")
@PostMapping("/insertOtherPack")
@Operation(summary = "新增外部配件-即新增一个包裹")
@PreAuthorize("@ss.hasPermission('manage:pack:insert')")
public CommonResult<OrderPackageDO> addNewOtherParts (@Valid @RequestBody OtherPackReqVO reqVO) {
public CommonResult<OrderPackageDO> addNewOtherPack(@Valid @RequestBody OtherPackReqVO reqVO) {
return success(packService.addNewOtherPack(reqVO));
}
@PutMapping("/insertOther")
@Operation(summary = "新增外部配件")
@PreAuthorize("@ss.hasPermission('manage:pack:insert')")
public CommonResult<OrderPartsRespVO> addNewOtherParts (@Valid @RequestBody OtherPackReqVO reqVO) {
return success(packService.addNewOtherParts(reqVO));
@@ -246,26 +308,6 @@ public class PackController {
@DeleteMapping("/delete")
@Operation(summary = "删除包裹及其关联的包裹信息(删除全部)")
@PreAuthorize("@ss.hasPermission('manage:pack:delete')")
public CommonResult<Boolean> deleteOrderPack (@Valid @RequestBody PackReqVO reqVO) {
packService.deleteOrderPack(reqVO);
return success(true);
}
@DeleteMapping("/deleteOtherParts")
@Operation(summary = "删除配件包裹中的配件(删除某一个)")
@PreAuthorize("@ss.hasPermission('manage:pack:delete')")
@@ -286,8 +328,6 @@ public class PackController {
// TODO 查询接口是否需要定义
/*
@GetMapping("/query")
@@ -14,17 +14,12 @@ public class DeleteOtherPartsReqVO {
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
private Long orderId;
@Schema(description = "包裹Id", requiredMode = Schema.RequiredMode.REQUIRED)
private Long packageId;
@Schema(description = "配件ID", requiredMode = Schema.RequiredMode.REQUIRED)
private Long partsId;
@Schema(description = "明细ID", requiredMode = Schema.RequiredMode.REQUIRED)
private Long itemId;
@Schema(description = "是否是其他类型的包裹", requiredMode = Schema.RequiredMode.REQUIRED)
private Boolean isOther;
}
@@ -13,17 +13,29 @@ import java.util.List;
public class OrderPackReqVO {
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
private Long orderId;
@Schema(description = "包裹ID", requiredMode = Schema.RequiredMode.REQUIRED)
private Long packId;
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
private Long orderId;
@Schema(description = "包裹编号", requiredMode = Schema.RequiredMode.REQUIRED)
private String packNo;
@Schema(description = "包裹类型", requiredMode = Schema.RequiredMode.REQUIRED)
private Long packageType;
//
// @Schema(description = "包裹状态", requiredMode = Schema.RequiredMode.REQUIRED)
// private Long packStatus;
@Schema(description = "备注")
private String remark;
@Schema(description = "新增的板件ID", requiredMode = Schema.RequiredMode.REQUIRED)
private List<Long> addPlateIdList;
@@ -0,0 +1,39 @@
package com.cf.imes.module.manage.controller.admin.pack.vo;
import com.baomidou.mybatisplus.annotation.TableId;
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Schema(description = "管理后台 - 生产单包裹表 Response VO")
@Data
public class OrderPackRespVO {
@Schema(description = "包裹ID", requiredMode = Schema.RequiredMode.REQUIRED)
private Long id;
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
private Long orderNo;
@Schema(description = "包裹编号", requiredMode = Schema.RequiredMode.REQUIRED)
private String packageNo;
@Schema(description = "包裹类型,-1未定义,0板材,1配件,2其他配件", requiredMode = Schema.RequiredMode.REQUIRED)
private Long type;
@Schema(description = "包裹名", requiredMode = Schema.RequiredMode.REQUIRED)
private String name;
@Schema(description = "包裹状态,0未封包,1已封包,2已入库,3已出库", requiredMode = Schema.RequiredMode.REQUIRED)
private Integer status;
@Schema(description = "组织ID", requiredMode = Schema.RequiredMode.REQUIRED)
private Long organId;
@Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED)
private String remark;
}
@@ -7,6 +7,8 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.List;
@Schema(description = "管理后台 - 生产单模块表 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@@ -17,4 +19,14 @@ public class OrderPartsReqVO extends PageParam {
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
private Long orderNo;
@Schema(description = "更新配件时传-包裹ID")
private Long packId;
@Schema(description = "更新配件时传-新增的配件ID")
private List<Long> addPartsList;
@Schema(description = "更新配件时传-删除的配件ID")
private List<Long> deletePartsList;
}
@@ -10,10 +10,10 @@ public class OrderPartsRespVO {
@Schema(description = "配件ID", requiredMode = Schema.RequiredMode.REQUIRED)
private Long partsId;
private Long id;
@Schema(description = "配件名称", requiredMode = Schema.RequiredMode.REQUIRED)
private String partsName;
private String name;
@Schema(description = "型号", requiredMode = Schema.RequiredMode.REQUIRED)
private String model;
@@ -42,7 +42,6 @@ public class OrderPartsRespVO {
private Boolean isComposite;
@Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED)
private String remark;
@@ -0,0 +1,36 @@
package com.cf.imes.module.manage.controller.admin.pack.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
@Schema(description = "管理后台 - 查看生产单对应的板件信息")
@Data
@ExcelIgnoreUnannotated
public class OrderPlateDetailsRespVO {
@Schema(description = "板件总数", requiredMode = Schema.RequiredMode.REQUIRED)
private Long plateNum;
@Schema(description = "已处理量", requiredMode = Schema.RequiredMode.REQUIRED)
private Long plateProcessedNum;
@Schema(description = "待处理量", requiredMode = Schema.RequiredMode.REQUIRED)
private Long pendingNum;
// @Schema(description = "当前包裹的板件数", requiredMode = Schema.RequiredMode.REQUIRED)
// private Long currentPackNum;
@Schema(description = "生产单对应的板件信息", requiredMode = Schema.RequiredMode.REQUIRED)
List<PlateDetailsRespVO> plateDetailsRespVO;
}
@@ -14,24 +14,24 @@ import javax.validation.constraints.NotNull;
public class OtherPackReqVO {
@Schema(description = "配件ID,主键", requiredMode = Schema.RequiredMode.REQUIRED)
private Long id;
//
// @Schema(description = "配件ID,主键", requiredMode = Schema.RequiredMode.REQUIRED)
// private Long id;
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
@NotNull(message = "生产单号不能为空")
private Long orderId;
@Schema(description = "配件名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
@NotEmpty(message = "配件名称不能为空")
private String name;
@Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "你猜")
@NotEmpty(message = "备注不能为空")
@Schema(description = "包裹编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
private String packNo;
@Schema(description = "备注")
private String remark;
@@ -0,0 +1,20 @@
package com.cf.imes.module.manage.controller.admin.pack.vo;
import com.cf.imes.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;
@Schema(description = "管理后台 - 查看包裹详情")
@Data
@ToString(callSuper = true)
public class PackDetailsReqVO extends PageParam {
@Schema(description = "包裹ID", requiredMode = Schema.RequiredMode.REQUIRED)
private Long packageId;
@Schema(description = "包裹类型", requiredMode = Schema.RequiredMode.REQUIRED)
private Long type;
}
@@ -12,7 +12,6 @@ import lombok.ToString;
public class PackReqVO {
@Schema(description = "包裹ID", requiredMode = Schema.RequiredMode.REQUIRED)
private Long packageId;
@@ -0,0 +1,32 @@
package com.cf.imes.module.manage.controller.admin.pack.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;
@Schema(description = "管理后台 - 查看生产单下对应的包裹信息")
@Data
@ToString(callSuper = true)
public class PackageDetailsReqVO {
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
private Long orderId;
@Schema(description = "板编号")
private Long plateNo;
@Schema(description = "包裹状态")
private Long packStatus;
@Schema(description = "包裹编号")
private String packageNo;
}
@@ -56,15 +56,15 @@ public class PlateDetailsRespVO {
@ExcelProperty("纹路")
private String texture;
@Schema(description = "异形数量", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "异形", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("异形")
private String specialShaped;
@Schema(description = "造型数量", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "造型", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("造型")
private String profiling;
@Schema(description = "排孔数量", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "排孔", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("排孔")
private String rowHole;
@@ -154,7 +154,8 @@ public class ProductionStatusController {
@PreAuthorize("@ss.hasPermission('manage:query:query')")
public CommonResult<List<PackageDetailsRespVO>> queryPackageDetails(@Valid @RequestParam("packId") Long packId){
return CommonResult.success(productionStatusService.queryPackageDetails(packId));
return null;
// return CommonResult.success(productionStatusService.queryPackageDetails(packId));
}
@@ -5,6 +5,7 @@ import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.cf.imes.module.manage.controller.admin.pack.vo.OtherPackReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PackRespVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PackageDetailsReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessStepNDO;
@@ -20,17 +21,19 @@ public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
default List<OrderPackageDO> selectByOrderNo(Long orderNo) {
return selectList(new LambdaQueryWrapperX<OrderPackageDO>()
.eqIfPresent(OrderPackageDO::getOrderNo, orderNo)
.orderByDesc(OrderPackageDO::getId));
}
// default List<OrderPackageDO> selectByOrderNo(PackageDetailsReqVO reqVO) {
// return selectList(new LambdaQueryWrapperX<OrderPackageDO>()
// .eqIfPresent(OrderPackageDO::getOrderNo, orderNo)
// .orderByDesc(OrderPackageDO::getId));
// }
List<OrderPackageDO> selectByOrderNo(PackageDetailsReqVO reqVO);
default OrderPackageDO selectByPackNo(Long packId) {
default OrderPackageDO selectByPackNo(String packNo) {
return selectOne(new LambdaQueryWrapperX<OrderPackageDO>()
.eqIfPresent(OrderPackageDO::getId, packId));
.eqIfPresent(OrderPackageDO::getPackageNo, packNo));
}
@@ -52,4 +55,10 @@ public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
void updateParts(@Param("packageId") Long packageId, @Param("packageNo") Long packageNo);
default List<OrderPackageDO> selectPackStatus(Long orderId) {
return selectList(new LambdaQueryWrapperX<OrderPackageDO>()
.eqIfPresent(OrderPackageDO::getId, orderId));
}
}
@@ -5,9 +5,7 @@ package com.cf.imes.module.manage.dal.mysql.query;
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.cf.imes.module.manage.controller.admin.grouping.vo.OrderPlateListRespVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.DeleteOtherPartsReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PackReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.*;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderPlateRespVO;
@@ -58,10 +56,8 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
void deleteOrderPack(@Param("reqVO") PackReqVO reqVO);
void updateParts(@Param("reqVO") DeleteOtherPartsReqVO reqVO);
void deleteOtherParts(@Param("itemId") Long itemId);
void deleteOtherParts(@Param("partsId") Long partsId);
void deleteParts(@Param("reqVO") PackReqVO reqVO);
@@ -73,7 +69,6 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
void deletePackId(@Param("deletePlateIdList") List<Long> deletePlateIdList,@Param("packId") Long packId);
void insertPartsId(@Param("packId") Long packId, @Param("addPartsIdList") List<Long> addPartsIdList);
@@ -87,4 +82,12 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
}
OrderPlateDetailsRespVO selectOrderPlateDetails(@Param("orderId") Long orderId);
void insertParts(@Param("addPartsList") List<Long> addPartsList, @Param("packId")Long packId, @Param("orderNo") Long orderNo);
void deletePartsList(@Param("deletePartsList")List<Long> deletePartsList,@Param("packId") Long packId,@Param("orderNo") Long orderNo);
}
@@ -18,7 +18,7 @@ import java.util.List;
public interface OrderPartsMapper extends BaseMapperX<OrderPartsNDO> {
List<PackageDetailsRespVO> selectParts(String packageNo);
List<PackageDetailsRespVO> selectParts(Long packageId);
List<OrderPartsRespVO> selectPartsList(Long orderId);
@@ -36,4 +36,7 @@ public interface OrderPartsMapper extends BaseMapperX<OrderPartsNDO> {
.eqIfPresent(OrderPartsNDO::getName,otherPartsName));
}
void updateParts(@Param("partsId") Long partsId);
}
@@ -17,12 +17,12 @@ public interface PackService {
// 查看生产订单对应的包裹信息
List<OrderPackageDO> getOrderPack(Long orderId);
List<OrderPackageDO> getOrderPack(PackageDetailsReqVO reqVO);
// 查看生产订单对应的板材信息
List<PlateDetailsRespVO> getOrderPlateList(Long orderId);
OrderPlateDetailsRespVO getOrderPlateList(Long orderId);
@@ -34,28 +34,34 @@ public interface PackService {
// 查看配件列表分页
PageResult<OrderPartsRespVO> getPartsList(OrderPartsReqVO reqVO);
void updateParts(OrderPartsReqVO reqVO);
// 拆包
void unpacking(Long packageID);
// 显示分组房间名称
List<OrderPlateGroupRespVO> GetOrderPlateGroup(Long orderId);
// 查看配件包裹详情
List<OrderPartsRespVO> queryPackageDetails(PrintOrderPackReqVO reqVO);
// 包裹封包
OrderPackageDO updatePackStatus(OrderPackReqVO packageVO);
// 新增包裹
OrderPackageDO insertPack(OrderPackReqVO packageVO);
// 更新包裹
OrderPackageDO updatePack(OrderPackReqVO packageVO);
// 查询包裹
List<OrderPackRespVO> selectPack(Long orderId);
// 包裹订单打印
@@ -67,8 +73,12 @@ public interface PackService {
// 新增外部配件包裹
OrderPackageDO addNewOtherPack(OtherPackReqVO reqVO);
// 新增外部配件
OrderPackageDO addNewOtherParts(OtherPackReqVO reqVO);
OrderPartsRespVO addNewOtherParts(OtherPackReqVO reqVO);
Long testpack(OrderPackageReqVO reqVO);
@@ -81,4 +91,7 @@ public interface PackService {
// 新增配件-即新增一个包裹
OrderPackageDO addNewPartsPack(OrderPackReqVO reqVO);
}
@@ -3,6 +3,7 @@ package com.cf.imes.module.manage.service.pack;
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
import com.cf.imes.framework.common.enums.OrderPackageTypeEnum;
import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.module.manage.controller.admin.grouping.vo.OrderPackageReqVO;
@@ -20,6 +21,7 @@ import com.cf.imes.module.manage.dal.mysql.query.OrderPartsMapper;
import com.cf.imes.module.manage.dal.mysql.query.ProductionStatusMapper;
import com.cf.imes.module.manage.util.packageNo.PackageNoUtil;
import com.cf.imes.module.manage.util.page.PageHelperUtil;
import com.cf.imes.module.system.enums.ErrorCodeConstants;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.stereotype.Service;
@@ -32,7 +34,7 @@ import java.util.List;
import java.util.stream.Collectors;
import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.cf.imes.module.system.enums.ErrorCodeConstants.THE_ACCESSORY_NAME_CANNOT_BE_DUPLICATED;
import static com.cf.imes.module.system.enums.ErrorCodeConstants.*;
@Service
@Validated
@@ -81,29 +83,30 @@ public class PackServiceImpl implements PackService {
}
// 查看生产订单对应的包裹信息
@Override
public List<OrderPackageDO> getOrderPack(Long orderId) {
return orderPackageMapper.selectByOrderNo(orderId);
public List<OrderPackageDO> getOrderPack(PackageDetailsReqVO reqVO) {
return orderPackageMapper.selectByOrderNo(reqVO);
}
// 查看生产订单对应的板材信息
@Override
public List<PlateDetailsRespVO> getOrderPlateList(Long orderId) {
public OrderPlateDetailsRespVO getOrderPlateList(Long orderId) {
// 查询需要返回的其他信息
OrderPlateDetailsRespVO orderPlateDetailsRespVO = orderItemMapper.selectOrderPlateDetails(orderId);
orderPlateDetailsRespVO.setPendingNum(orderPlateDetailsRespVO.getPlateNum() - orderPlateDetailsRespVO.getPlateProcessedNum());
// 查询订单对应的板件信息
List<PlateDetailsRespVO> plateDetailsRespVOS = orderItemMapper.selectOrderPlateList(orderId);
return orderPlateDetailsRespVO.setPlateDetailsRespVO(plateDetailsRespVOS);
return orderItemMapper.selectOrderPlateList(orderId);
}
// 查看板材列表分页
@Override
public PageResult<PlateDetailsRespVO> queryPlateDetails(OrderModuleReqVO pageReqVO) {
@@ -119,12 +122,10 @@ public class PackServiceImpl implements PackService {
// 查看配件列表分页
@Override
public PageResult<OrderPartsRespVO> getPartsList(OrderPartsReqVO reqVO) {
PageHelper.startPage(reqVO.getPageNo(), reqVO.getPageSize());
List<OrderPartsRespVO> orderPartsRespVOS = orderPartsMapper.selectPartsList(reqVO.getOrderNo());
PageInfo<OrderPartsRespVO> pageInfo = new PageInfo<>(orderPartsRespVOS);
@@ -134,6 +135,18 @@ public class PackServiceImpl implements PackService {
// 更新配件
@Override
public void updateParts(OrderPartsReqVO reqVO) {
// 生产明细表新增的配件ID
orderItemMapper.insertParts(reqVO.getAddPartsList(),reqVO.getPackId(),reqVO.getOrderNo());
// 生产明细表删除的配件ID
orderItemMapper.deletePartsList(reqVO.getDeletePartsList(),reqVO.getPackId(),reqVO.getOrderNo());
}
// 拆包
@Override
@@ -147,8 +160,6 @@ public class PackServiceImpl implements PackService {
}
// 显示分组房间名称
@Override
public List<OrderPlateGroupRespVO> GetOrderPlateGroup(Long orderId) {
@@ -164,8 +175,6 @@ public class PackServiceImpl implements PackService {
}
// 查看配件包裹详情
@Override
public List<OrderPartsRespVO> queryPackageDetails(PrintOrderPackReqVO reqVO) {
@@ -175,40 +184,78 @@ public class PackServiceImpl implements PackService {
}
// 包裹封包
// 新增包裹
@Override
public OrderPackageDO updatePackStatus(OrderPackReqVO packageVO) {
// 当传入的包裹ID为 -1 ,走新增的逻辑
if (packageVO.getPackId() == -1) {
OrderPackageDO orderPackageDO = new OrderPackageDO();
orderPackageDO.setOrderNo(packageVO.getOrderId());
orderPackageDO.setType(packageVO.getPackageType());
orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
orderPackageDO.setStatus((OrderPackageStatusEnum.PACKAGED.getStatus()));
orderPackageMapper.insert(orderPackageDO);
// 生产单明细表新增包裹 ID
orderItemMapper.insertPackId(packageVO.getAddPlateIdList(), orderPackageDO.getId());
return orderPackageDO;
public OrderPackageDO insertPack(OrderPackReqVO packageVO) {
List<OrderPackageDO> orderPackageDOS = orderPackageMapper.selectPackStatus(packageVO.getOrderId());
for (OrderPackageDO orderPackageDO : orderPackageDOS) {
Integer status = orderPackageDO.getStatus();
if (status.equals(OrderPackageStatusEnum.UNPACKED.getStatus())){
throw ServiceExceptionUtil.exception(ErrorCodeConstants.THE_CURRENT_PACKAGE_HAS_AN_UNSEALED_PACKAGE);
}
}
// 不为 -1 ,有包裹存在,走更新逻辑
// 当传入的包裹ID为 -1 ,走新增的逻辑
OrderPackageDO orderPackageDO = new OrderPackageDO();
orderPackageDO.setOrderNo(packageVO.getOrderId());
orderPackageDO.setType(packageVO.getPackageType());
// orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
orderPackageDO.setPackageNo(packageVO.getPackNo());
orderPackageDO.setStatus((OrderPackageStatusEnum.PACKAGED.getStatus()));
orderPackageDO.setRemark(packageVO.getRemark());
orderPackageMapper.insert(orderPackageDO);
// 生产单明细表新增包裹 ID
orderItemMapper.insertPackId(packageVO.getAddPlateIdList(), orderPackageDO.getId());
return orderPackageDO;
// // 不为 -1 ,有包裹存在,走更新逻辑
//
// // 生产明细表新增包裹ID
// orderItemMapper.insertPackId(packageVO.getAddPlateIdList(), packageVO.getPackId());
// // 移除包裹ID
// orderItemMapper.deletePackId(packageVO.getDeletePlateIdList(), packageVO.getPackId());
//
// return orderPackageMapper.selectByPackId(packageVO.getPackId()).setStatus(OrderPackageStatusEnum.PACKAGED.getStatus());
}
// 更新包裹
@Override
public OrderPackageDO updatePack(OrderPackReqVO packageVO) {
// 生产明细表新增包裹ID
orderItemMapper.insertPackId(packageVO.getAddPlateIdList(), packageVO.getPackId());
// 移除包裹ID
// 移除生产明细表中板件对应的包裹ID
orderItemMapper.deletePackId(packageVO.getDeletePlateIdList(), packageVO.getPackId());
return orderPackageMapper.selectByPackId(packageVO.getPackId()).setStatus(OrderPackageStatusEnum.PACKAGED.getStatus());
}
// 查询包裹
@Override
public List<OrderPackRespVO> selectPack(Long orderId) {
List<OrderPackageDO> orderPackageDOS = orderPackageMapper.selectPackStatus(orderId);
return BeanUtils.toBean(orderPackageDOS, OrderPackRespVO.class);
}
// 包裹订单打印
@Override
public PrintOrderPackRespVO printOrderPack(PrintOrderPackReqVO reqVO) {
@@ -240,11 +287,9 @@ public class PackServiceImpl implements PackService {
}
// 新增外部配件包裹表
@Override
public OrderPackageDO addNewOtherParts(OtherPackReqVO reqVO) {
public OrderPackageDO addNewOtherPack(OtherPackReqVO reqVO) {
// 判断配件名称是否重复
OrderPartsNDO orderPartsNDO = orderPartsMapper.selectOneParts(reqVO.getName());
@@ -259,11 +304,11 @@ public class PackServiceImpl implements PackService {
// 在包裹表中添加包裹编号和生产单号,修改包裹类型未其他配件类型
OrderPackageDO orderPackageDO = new OrderPackageDO();
orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
// orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
orderPackageDO.setPackageNo(reqVO.getPackNo());
orderPackageDO.setOrderNo(reqVO.getOrderId());
orderPackageDO.setType(OrderPackageTypeEnum.OTHER_ACCESSORIES.getType().longValue());
// 新增包裹
orderPackageMapper.insert(orderPackageDO);
@@ -280,7 +325,7 @@ public class PackServiceImpl implements PackService {
orderItemMapper.insert(orderItemDO);
// 查看新增的包裹信息
/* return orderPackageMapper.selectByPackId(orderPackageDO.getId());*/
/* return orderPackageMapper.selectByPackId(orderPackageDO.getId());*/
return orderPackageDO;
@@ -289,6 +334,35 @@ public class PackServiceImpl implements PackService {
// 新增外部配件
@Override
public OrderPartsRespVO addNewOtherParts(OtherPackReqVO reqVO) {
OrderPackageDO orderPackageDO = orderPackageMapper.selectByPackNo(reqVO.getPackNo());
if(orderPackageDO.getType()!= OrderPackageTypeEnum.OTHER_ACCESSORIES.getType().longValue()){
throw exception(THE_CURRENT_PACKAGE_TYPE_IS_INCORRECT);
}
// 配件表新增数据
OrderPartsNDO orderParts = BeanUtils.toBean(reqVO, OrderPartsNDO.class);
orderPartsMapper.insert(orderParts);
// 在生产单明细表中添加数据(生产单号,配件ID,包裹ID,部件数量(目前一直为1))
OrderItemDO orderItemDO = new OrderItemDO();
orderItemDO.setOrderId(reqVO.getOrderId());
orderItemDO.setPartsId(orderParts.getId());
orderItemDO.setPackageId(orderPackageDO.getId());
orderItemDO.setNum(Float.valueOf(1));
// 在生产单明细表中新增数据
orderItemMapper.insert(orderItemDO);
return BeanUtils.toBean(orderParts,OrderPartsRespVO.class);
}
@Override
public Long testpack(OrderPackageReqVO reqVO) {
@@ -301,28 +375,19 @@ public class PackServiceImpl implements PackService {
// 删除配件包裹中的配件(删除某一个)
@Override
public void deleteOtherParts(DeleteOtherPartsReqVO reqVO) {
// 判断,如果为true 为其他配件
if (reqVO.getIsOther() == true) {
// 更新配件表中配件为逻辑删除
orderPartsMapper.updateParts(reqVO.getPartsId());
orderItemMapper.updateParts(reqVO);
orderItemMapper.deleteOtherParts(reqVO.getItemId());
return;
}
orderItemMapper.updateParts(reqVO);
orderItemMapper.deleteOtherParts(reqVO.getPartsId());
}
// 新增配件-即新增一个包裹
@Override
public OrderPackageDO addNewPartsPack(OrderPackReqVO reqVO) {
@@ -334,7 +399,7 @@ public class PackServiceImpl implements PackService {
orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
orderPackageMapper.insert(orderPackageDO);
orderItemMapper.insertPartsId(orderPackageDO.getId(),reqVO.getAddPartsIdList());
orderItemMapper.insertPartsId(orderPackageDO.getId(), reqVO.getAddPartsIdList());
return orderPackageDO;
@@ -4,6 +4,7 @@ package com.cf.imes.module.manage.service.query;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.module.manage.controller.admin.pack.vo.OrderPartsReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PackDetailsReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
@@ -12,6 +13,7 @@ import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.*;
import com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRatePageReqVO;
import com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRateReqVO;
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
import org.ehcache.shadow.org.terracotta.offheapstore.paging.Page;
import java.util.List;
@@ -49,7 +51,7 @@ public interface ProductionStatusService {
// 查看包裹详情
List<PackageDetailsRespVO> queryPackageDetails(Long packId);
PageResult<PackageDetailsRespVO> queryPackageDetails(PackDetailsReqVO reqVO);
// 打印订单
@@ -4,6 +4,7 @@ package com.cf.imes.module.manage.service.query;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.module.manage.controller.admin.pack.vo.OrderPartsReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PackDetailsReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
@@ -146,10 +147,11 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
@Override
public List<OrderPackageVO> getPackageList(Long orderNo) {
List<OrderPackageDO> orderPackageDOS = orderPackageMapper.selectByOrderNo(orderNo);
// List<OrderPackageDO> orderPackageDOS = orderPackageMapper.selectByOrderNo(orderNo);
return BeanUtils.toBean(orderPackageDOS, OrderPackageVO.class);
// return BeanUtils.toBean(orderPackageDOS, OrderPackageVO.class);
return null;
}
@@ -157,24 +159,33 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
// 查看包裹详情
@Override
public List<PackageDetailsRespVO> queryPackageDetails(Long packId) {
public PageResult<PackageDetailsRespVO> queryPackageDetails(PackDetailsReqVO reqVO) {
OrderPackageDO orderPackageDO = orderPackageMapper.selectByPackNo(packId);
// 查看配件包裹
if(orderPackageDO.getType() == 1 || orderPackageDO.getType() == 2){
//
List<PackageDetailsRespVO> packageDetailsRespVOS = orderPartsMapper.selectParts(orderPackageDO.getPackageNo());
if(reqVO.getType() == 1 || reqVO.getType() == 2){
return packageDetailsRespVOS;
PageHelper.startPage(reqVO.getPageNo(), reqVO.getPageSize());
// 查看配件包裹
List<PackageDetailsRespVO> packageDetailsRespVOS = orderPartsMapper.selectParts(reqVO.getPackageId());
PageInfo<PackageDetailsRespVO> pageInfo = new PageInfo<>(packageDetailsRespVOS);
PageResult<PackageDetailsRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
return priceRateReqVOPageResult;
}
// 查看板材包裹
List<PackageDetailsRespVO> packageDetailsRespVOS = orderItemMapper.selectByPackageId(orderPackageDO.getId());
return packageDetailsRespVOS;
PageHelper.startPage(reqVO.getPageNo(), reqVO.getPageSize());
// 查看板材包裹
List<PackageDetailsRespVO> packageDetailsRespVOS = orderItemMapper.selectByPackageId(reqVO.getPackageId());
PageInfo<PackageDetailsRespVO> pageInfo = new PageInfo<>(packageDetailsRespVOS);
PageResult<PackageDetailsRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
return priceRateReqVOPageResult;
}
@@ -88,9 +88,6 @@
</select>
<update id="updateParts"
parameterType="java.lang.Long">
@@ -100,4 +97,43 @@
</update>
<select id="selectByOrderNo"
resultType="com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO"
parameterType="com.cf.imes.module.manage.controller.admin.pack.vo.PackageDetailsReqVO">
select distinct
opn.*
from order_package_n opn
join order_item oi on opn.id = oi.package_id
left join order_plate op on oi.plate_id = op.id
<where>
<if test="orderId !=null">
and opn.order_no = #{orderId}
</if>
<if test="plateNo !=null ">
and op.plate_no = #{plateNo}
</if>
<if test="packStatus !=null ">
and opn.status= #{packStatus}
</if>
<if test="packageNo !=null and packageNo != '' ">
and opn.package_no= #{packageNo}
</if>
</where>
-- where opn.order_no and opn.package_no and opn.status and oi.plate_id
</select>
</mapper>
@@ -132,7 +132,7 @@
<select id="selectOrderPlateList"
parameterType="java.lang.Long"
resultMap="PlateDetailsMap" >
select
select distinct
og.name as name,
ob.room_name as roomName,
ob.name as bodyName,
@@ -314,29 +314,17 @@
<update id="updateParts">
UPDATE order_parts op
SET op.deleted = true
WHERE op.id IN (
SELECT oi.parts_id
FROM order_item oi
WHERE oi.order_id = #{reqVO.orderId} AND oi.package_id = #{reqVO.packageId} AND oi.id = #{reqVO.itemId}
);
</update>
<update id="deleteOtherParts"
parameterType="java.lang.Long">
DELETE FROM order_item
WHERE id = #{itemId};
WHERE id IN (
SELECT id FROM (
SELECT oi.id
FROM order_item oi
WHERE oi.parts_id = #{partsId}
) AS subquery
);
</update>
@@ -353,6 +341,8 @@
</delete>
<update id="insertPackId" parameterType="java.lang.Long">
update order_item oi
@@ -399,6 +389,36 @@
</update>
<update id="insertParts" parameterType="java.lang.Long">
update order_item oi
set package_id = #{packId}
where order_id = #{orderNo} and
parts_id in
<foreach item="id" collection="addPartsList" open="(" separator="," close=")">
#{id}
</foreach>
</update>
<update id="deletePartsList">
update order_item oi
set package_id = 0
where package_id = #{packId} and order_id = #{orderNo} plate_id in
<foreach item="id" collection="deletePartsList" open="(" separator="," close=")">
#{id}
</foreach>
</update>
<select id="selectBodyName" resultType="java.lang.String" parameterType="java.lang.Long">
@@ -410,4 +430,31 @@
</select>
<resultMap id="OrderPlateDetailsMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.OrderPlateDetailsRespVO">
<result property="plateNum" column="plateNum"/>
<result property="plateProcessedNum" column="plateProcessedNum"/>
</resultMap>
<select id="selectOrderPlateDetails"
parameterType="java.lang.Long">
select
count(case
when oi.package_id !=0 and oi.parts_id = 0 then oi.plate_id end )as plateProcessedNum,
count(
case
when oi.plate_id !=0 then oi.plate_id end
)as plateNum
from order_item oi
where oi.order_id = #{orderId};
</select>
</mapper>
@@ -30,7 +30,7 @@
from order_package_n opn
join order_item oi on opn.id = oi.package_id
join order_parts op on oi.parts_id = op.id
where opn.id = #{packageNo}
where opn.id = #{packageId}
</select>
@@ -41,11 +41,11 @@
<resultMap id="PartsListMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.OrderPartsRespVO">
<result property="partsId" column="partsId"/>
<result property="id" column="partsId"/>
<result property="type" column="type"/>
<result property="isComposite" column="isComposite"/>
<result property="partsName" column="name"/>
<result property="name" column="name"/>
<result property="model" column="model"/>
<result property="spec" column="spec"/>
<result property="num" column="num"/>
@@ -108,4 +108,14 @@
</update>
<update id="updateParts"
parameterType="java.lang.Long">
UPDATE order_parts op
SET op.deleted = true
WHERE op.id = #{partsId};
</update>
</mapper>
@@ -244,6 +244,12 @@ public interface ErrorCodeConstants {
//=========== 柜体信息 1-002-035-000 ============
ErrorCode ORDER_GROUP_NOT_EXISTS = new ErrorCode(1_002_036_001, "加工组信息不存在");
//=========== 包裹信息 1-002-038-000 ============
ErrorCode THE_CURRENT_PACKAGE_HAS_AN_UNSEALED_PACKAGE = new ErrorCode(1_002_038_666, "当前包裹还有未封包包裹");
ErrorCode THE_CURRENT_PACKAGE_TYPE_IS_INCORRECT = new ErrorCode(1_002_038_777, "当前包裹类型错误");
//=========== 应用信息 1-002-037-000 ============
ErrorCode APPLICATION_NOT_EXISTS = new ErrorCode(1_002_037_001, "应用信息不存在");
ErrorCode APPLICATION_LOGIN_USER_DISABLED = new ErrorCode(1_002_037_001, "应用登陆失败");