生产工序代码-生产工序-工序板件信息查看

This commit is contained in:
liuzhaotian
2024-05-08 11:05:47 +08:00
parent 0ab10aec86
commit ed6b6c5052
15 changed files with 156 additions and 83 deletions
@@ -119,4 +119,11 @@ public class PlateController {
return success(plateService.getPlateModelByPlateId(bodyIds));
}
@GetMapping("/selectPlate")
@Operation(summary = "查看工序对应的板件信息")
public CommonResult<List<BodyPlateDetailVO> > selectPlate(@Valid ProcessPlateReqVO reqVO){
return success(plateService.selectPlate(reqVO));
}
}
@@ -1,9 +1,8 @@
package com.cf.imes.module.manage.controller.admin.process.vo;
package com.cf.imes.module.executor.controller.admin.plate.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
@Schema(description = "管理后台 - 查询板件")
@@ -11,13 +10,13 @@ import lombok.ToString;
@ToString(callSuper = true)
public class ProcessPlateReqVO {
@Schema(description = "工序类型",requiredMode = Schema.RequiredMode.REQUIRED)
private Long processType;
@Schema(description = "生产单号",requiredMode = Schema.RequiredMode.REQUIRED)
private Long orderId;
@Schema(description = "工序明细ID",requiredMode = Schema.RequiredMode.REQUIRED)
private Long stepItemId;
@@ -0,0 +1,44 @@
package com.cf.imes.module.executor.dal.dataobject.processStepItem;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
@TableName(value = "order_process_step_item", autoResultMap = true) // 由于 SQL Server 的 system_user 是关键字,所以使用 system_users
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class OrderProcessStepItemDO {
@TableId
private Long id;
// 工序项目名
private String name;
// 生产单工序 id
private Long orderProcessId;
// 工序状态
private Boolean status;
// 工序步骤 id
private Long processStepId;
// 工序组名
private String groupName;
// 柜体 ID
private Long bodyId;
// 加工组 ID
private Long groupId;
}
@@ -1,6 +1,7 @@
package com.cf.imes.module.executor.dal.mysql.orderItem;
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO;
import com.cf.imes.module.executor.dal.dataobject.orderModuleExtra.OrderModuleExtraDO;
import org.apache.ibatis.annotations.Mapper;
@@ -18,4 +19,11 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
List<OrderItemDO> selectExtraById(@Param("orderId")Long orderId, @Param("roomId")Long roomId , @Param("bodyId")Long bodyId);
default List<OrderItemDO> selectByOrderId(Long orderId) {
return selectList(new LambdaQueryWrapperX<OrderItemDO>()
.eqIfPresent(OrderItemDO::getOrderId,orderId));
}
}
@@ -0,0 +1,19 @@
package com.cf.imes.module.executor.dal.mysql.processStepItem;
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.cf.imes.module.executor.dal.dataobject.processStepItem.OrderProcessStepItemDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface ProcessStepItemMapper extends BaseMapperX<OrderProcessStepItemDO> {
default List<OrderProcessStepItemDO> selectBodyIds(Long stepItemId) {
return selectList(new LambdaQueryWrapperX<OrderProcessStepItemDO>()
.eqIfPresent(OrderProcessStepItemDO::getId,stepItemId));
}
}
@@ -90,4 +90,7 @@ public interface PlateService {
void updatePlateByRawGoodsId(List<GoodsSaveReqVO> createReqVOS);
List<BodyPlateDetailVO> getPlateModelByPlateId(List<Long> bodyIds);
// 查看工序对应的板件信息
List<BodyPlateDetailVO> selectPlate(ProcessPlateReqVO reqVO);
}
@@ -18,7 +18,9 @@ import com.cf.imes.framework.mybatis.core.query.MPJLambdaWrapperX;
import com.cf.imes.module.executor.controller.admin.goods.vo.GoodsSaveReqVO;
import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO;
import com.cf.imes.module.executor.dal.dataobject.ordermodel.OrderModelDO;
import com.cf.imes.module.executor.dal.dataobject.processStepItem.OrderProcessStepItemDO;
import com.cf.imes.module.executor.dal.mysql.orderItem.OrderItemMapper;
import com.cf.imes.module.executor.dal.mysql.processStepItem.ProcessStepItemMapper;
import com.cf.imes.module.executor.util.RandomUtils;
import com.cf.imes.module.system.enums.ErrorCodeConstants;
import lombok.SneakyThrows;
@@ -65,6 +67,9 @@ public class PlateServiceImpl implements PlateService {
@Resource
private ElasticsearchClient elasticsearchClient;
@Resource
private ProcessStepItemMapper processStepItemMapper;
@Override
public Long createPlate(PlateSaveReqVO createReqVO) {
// 插入
@@ -189,6 +194,28 @@ public class PlateServiceImpl implements PlateService {
}
// 查看工序对应的板件信息
@Override
public List<BodyPlateDetailVO> selectPlate(ProcessPlateReqVO reqVO) {
if(reqVO.getProcessType() == 7){
// 等于 7(组件加工) ,根据明细ID查询对应的柜体ID,再传入方法查询对应的板材信息
List<OrderProcessStepItemDO> orderProcessStepItemNDOS = processStepItemMapper.selectBodyIds(reqVO.getStepItemId());
List<Long> bodyIds = orderProcessStepItemNDOS.stream().map(item -> item.getBodyId()).collect(Collectors.toList());
return getPlateModelByPlateId(bodyIds);
}
// 不等于 7(组件加工) ,直接根据订单号查询所有的柜体id,再传入方法查询对应的板材信息
List<OrderItemDO> orderItemDOS = orderItemMapper.selectByOrderId(reqVO.getOrderId());
List<Long> bodyIds = orderItemDOS.stream().map(item -> item.getBodyId()).collect(Collectors.toList());
return getPlateModelByPlateId(bodyIds);
}
private List<OrderModelDO> buildRespByPlateIds(Collection<Long> plateIds, String index) {
List<FieldValue> fieldValues = plateIds.stream().map(FieldValue::of).toList();
SearchRequest.Builder builder = new SearchRequest.Builder();
@@ -3,7 +3,6 @@ package com.cf.imes.module.manage.controller.admin.process;
import com.cf.imes.framework.common.pojo.CommonResult;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.module.executor.controller.admin.plate.vo.BodyPlateDetailVO;
import com.cf.imes.module.manage.controller.admin.process.vo.*;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderPlateRespVO;
@@ -78,10 +77,10 @@ public class ProductionProcessController {
@GetMapping("/selectPlateName")
@Operation(summary = "查看板材信息的组合名称")
@Parameter(name = "stepItemId", description = "工序明细ID", required = true, example = "1")
@PreAuthorize("@ss.hasPermission('manage:process:query')")
// @GetMapping("/selectPlateName")
// @Operation(summary = "查看板材信息的组合名称")
// @Parameter(name = "stepItemId", description = "工序明细ID", required = true, example = "1")
// @PreAuthorize("@ss.hasPermission('manage:process:query')")
public CommonResult<List<OrderModuleVO>> selectPlateName(@Valid @RequestParam("stepItemId") Long stepItemId){
@@ -91,21 +90,13 @@ public class ProductionProcessController {
@GetMapping("/pagePlate")
@Operation(summary = "查看板材信息分页")
@PreAuthorize("@ss.hasPermission('manage:process:query')")
//
// @GetMapping("/pagePlate")
// @Operation(summary = "查看板材信息分页")
// @PreAuthorize("@ss.hasPermission('manage:process:query')")
public CommonResult<PageResult<OrderPlateRespVO>> queryPlate(@Valid PlatePageVO pageReqVO){
return success(productionStatusService.getOrderPlatePage(pageReqVO));
}
@GetMapping("/aaabb")
@Operation(summary = "查看板件信息")
@PreAuthorize("@ss.hasPermission('manage:process:query')")
public CommonResult<List<BodyPlateDetailVO> > abc(@Valid ProcessPlateReqVO reqVO){
return success(productionProcessService.getOrderPlate(reqVO));
}
}
@@ -1,42 +0,0 @@
package com.cf.imes.module.manage.dal.dataobject.process;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
import lombok.*;
@TableName(value = "order_process") // 由于 SQL Server 的 system_user 是关键字,所以使用 system_users
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class OrderProcessNDO extends BaseDO {
@TableId
private Long id;
// 生产单号
private Long orderId;
// 工序名
private String name;
// 工序状态
private Boolean status;
// 工序组 id
private Long groupId;
// 板材大小
private Float size;
// 下一工序Id
private Long nextStepId;
}
@@ -36,5 +36,13 @@ public class OrderProcessStepItemNDO {
private String groupName;
// 柜体 ID
private Long bodyId;
// 加工组 ID
private Long groupId;
}
@@ -41,4 +41,11 @@ public interface ProcessStepItemMapper extends BaseMapperX<OrderProcessStepItemN
}
default List<OrderProcessStepItemNDO> selectBodyIds(Long stepItemId) {
return selectList(new LambdaQueryWrapperX<OrderProcessStepItemNDO>()
.eqIfPresent(OrderProcessStepItemNDO::getId,stepItemId));
}
}
@@ -3,6 +3,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;
@@ -11,6 +12,7 @@ import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRe
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderPlateRespVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.PlatePageVO;
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessStepItemNDO;
import com.cf.imes.module.manage.dal.dataobject.query.OrderItemDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -76,4 +78,13 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
String selectBodyName(@Param("plateId") Long plateId);
default List<OrderItemDO> selectByOrderId(Long orderId) {
return selectList(new LambdaQueryWrapperX<OrderItemDO>()
.eqIfPresent(OrderItemDO::getOrderId,orderId));
}
}
@@ -2,7 +2,6 @@ package com.cf.imes.module.manage.service.process;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.module.executor.controller.admin.plate.vo.BodyPlateDetailVO;
import com.cf.imes.module.manage.controller.admin.process.vo.*;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
import com.cf.imes.module.manage.dal.dataobject.process.ProcessDO;
@@ -30,6 +29,4 @@ public interface ProductionProcessService {
// 查看板材信息的组合名称
List<OrderModuleVO> selectPlateName(Long stepItemId);
List<BodyPlateDetailVO> getOrderPlate(ProcessPlateReqVO reqVO);
}
@@ -2,34 +2,41 @@ package com.cf.imes.module.manage.service.process;
import com.cf.imes.framework.common.enums.ProcessingStatusEnum;
import com.cf.imes.framework.common.exception.ServiceException;
import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
import com.cf.imes.module.executor.controller.admin.plate.vo.BodyPlateDetailVO;
import com.cf.imes.module.executor.service.plate.PlateServiceImpl;
import com.cf.imes.module.manage.config.VocieParameters;
import com.cf.imes.module.manage.controller.admin.process.vo.*;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessStepItemNDO;
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessStepNDO;
import com.cf.imes.module.manage.dal.dataobject.process.ProcessDO;
import com.cf.imes.module.manage.dal.dataobject.query.OrderItemDO;
import com.cf.imes.module.manage.dal.mysql.process.ProcessMapper;
import com.cf.imes.module.manage.dal.mysql.process.ProcessStepItemMapper;
import com.cf.imes.module.manage.dal.mysql.process.ProcessStepMapper;
import com.cf.imes.module.manage.dal.mysql.process.ProductionProcessMapper;
import com.cf.imes.module.manage.dal.mysql.query.OrderItemMapper;
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.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.security.core.parameters.P;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.stream.Collectors;
import static com.baomidou.mybatisplus.core.toolkit.Wrappers.update;
import static com.cf.imes.framework.common.exception.enums.GlobalErrorCodeConstants.INTERNAL_SERVER_ERROR;
/**
@@ -53,8 +60,10 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
@Resource
private ProcessMapper processMapper;
@Resource
private PlateServiceImpl plateService;
private OrderItemMapper orderItemMapper;
@@ -167,19 +176,6 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
// 查询板件信息
@Override
public List<BodyPlateDetailVO> getOrderPlate(ProcessPlateReqVO reqVO) {
if(reqVO.getProcessType() == 7){
}
// plateService.getPlateModelByPlateId()
return null;
}
}
@@ -3,10 +3,8 @@ package com.cf.imes.module.manage.service.query;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.module.executor.controller.admin.plate.vo.BodyPlateDetailVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.OrderPartsReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackagePageReqVO;
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.pack.PrintOrderRespVO;