diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/device/pojo/vo/ToolingLibraryVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/device/pojo/vo/ToolingLibraryVO.java new file mode 100644 index 00000000..e29fa471 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/device/pojo/vo/ToolingLibraryVO.java @@ -0,0 +1,65 @@ +package org.springblade.desk.device.pojo.vo; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.io.Serial; + +/** + * 量具库 视图实体类 + * + * @author qyl + * @since 2026-01-26 + */ +@Data +public class ToolingLibraryVO { + @Serial + private static final long serialVersionUID = 1L; + /** + * 主键ID + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long id; + + @Schema(description = "物料ID") + Long goodsId; + + @Schema(description = "仓库ID") + Long shId; + + @Schema(description = "库位ID") + Long slId; + + @Schema(description = "物料名称") + String goodsName; + + @Schema(description = "物料编码") + String goodsCode; + + @Schema(description = "物料规格") + String specifications; + + @Schema(description = "生产批次号") + String piNo; + + @Schema(description = "仓库") + String shName; + + @Schema(description = "库位号") + String location; + + @Schema(description = "库存数量") + String quantity; + + @Schema(description = "等级") + String quantityLevel; + + @Schema(description = "金额") + Double balanceMoney; + + @Schema(description = "累计使用次数") + String sumNum; + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/YieldOrder.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/YieldOrder.java index 5d4de997..8051fbe3 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/YieldOrder.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/YieldOrder.java @@ -77,6 +77,23 @@ public class YieldOrder extends BaseEntity { */ public static Integer YIELD_TYPE_6 = 6; + /** + * 烧结石墨模未准备 + */ + public static Short SJ_MOLD_PREPARATION_1 = 1; + /** + * 烧结石墨模已准备 + */ + public static Short SJ_MOLD_PREPARATION_2 = 2; + /** + * 烧结齐套未流转 + */ + public static Short SJ_KIT_PREPARATION_1 = 1; + /** + * 烧结齐套已流转 + */ + public static Short SJ_KIT_PREPARATION_2 = 2; + /** * 作业中心 */ @@ -346,7 +363,7 @@ public class YieldOrder extends BaseEntity { * 流转人 */ @TableField(value = "KIT_PREPARATION_MAN") - private String kitPreparationMan; + private Long kitPreparationMan; /** * 流转时间 diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/InBatchesDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/InBatchesDTO.java new file mode 100644 index 00000000..5b0801ec --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/InBatchesDTO.java @@ -0,0 +1,32 @@ +package org.springblade.desk.produce.pojo.dto; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +/** + * 分批 数据传输对象实体类 + * @author litao + */ +@Data +public class InBatchesDTO { + + @Schema(description = "车间订单id") + private Long id; + + @Schema(description = "加工数量") + private Long makeQty; + + @Schema(description = "批次") + private String batchNo; + + @Schema(description = "路线卡号") + private String cardNo; + + @Schema(description = "订单编号") + private String woCode; + + @Schema(description = "备注") + private String memo; + + +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/TurnTypeDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/TurnTypeDTO.java index a86ca2e0..90dd9ec8 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/TurnTypeDTO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/TurnTypeDTO.java @@ -13,7 +13,7 @@ import java.util.List; public class TurnTypeDTO { @Schema(description = "生产订单id") - private Long id; + private Long yoId; @Schema(description = "订单类型") private Integer yieldType; diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/UpdatePriorityDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/UpdatePriorityDTO.java index 887e2892..32a962df 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/UpdatePriorityDTO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/UpdatePriorityDTO.java @@ -12,8 +12,8 @@ import java.util.Date; @Data public class UpdatePriorityDTO { - @Schema(description = "生产订单id") - private Long id; + @Schema(description = "车间订单id") + private Long woId; @Schema(description = "需求交期") private Date demandDate; diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/WorkOrderDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/WorkOrderDTO.java index 3e429a22..eeee9982 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/WorkOrderDTO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/dto/WorkOrderDTO.java @@ -11,10 +11,10 @@ import lombok.Data; public class WorkOrderDTO { @Schema(description = "订单类型:1-热表,2-烧结,3-玻璃饼,4-壳体,5-插针,6-石墨模") - private Short yieldType; + private String yieldType; - @Schema(description = "运行状态:1.正常,2.已下达,3.加工中,4.检验中,13.审理中,14.返工中,15.已完工,21已作废") - private Integer runStatus; + @Schema(description = "运行状态:1.正常,2.已下达,3.加工中,4.检验中,13.审理中,14.返工中,15.已完工,21已关闭") + private String runStatus; @Schema(description = "流程卡号") private String cardNo; diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/BsProcedureTeam.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/BsProcedureTeam.java index f27ed252..b99ce837 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/BsProcedureTeam.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/BsProcedureTeam.java @@ -1,6 +1,10 @@ package org.springblade.desk.produce.pojo.entity; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkOrderRun.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkOrderRun.java index f800c248..7313fb92 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkOrderRun.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkOrderRun.java @@ -2,7 +2,6 @@ package org.springblade.desk.produce.pojo.entity; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Builder; import lombok.Data; import lombok.EqualsAndHashCode; import org.springblade.core.mp.base.BaseEntity; @@ -21,7 +20,6 @@ import java.util.Map; @TableName("MES_WORK_ORDER_RUN") @Schema(description = "MesWorkOrderRun对象") @EqualsAndHashCode(callSuper = true) -@Builder public class WorkOrderRun extends BaseEntity { @Serial diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkPlan.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkPlan.java index 9b027190..e6ea8421 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkPlan.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkPlan.java @@ -56,9 +56,9 @@ public class WorkPlan extends BaseEntity { @Schema(description = "车间订单") private Long woId; /** - * 工艺 + * 工序 */ - @Schema(description = "工艺") + @Schema(description = "工序") private Long ppsId; /** * 工序号 diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkPlanRun.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkPlanRun.java index 5a7a7eff..56c0899e 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkPlanRun.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkPlanRun.java @@ -2,7 +2,6 @@ package org.springblade.desk.produce.pojo.entity; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.v3.oas.annotations.media.Schema; -import lombok.Builder; import lombok.Data; import lombok.EqualsAndHashCode; import org.springblade.core.mp.base.BaseEntity; @@ -16,7 +15,7 @@ import java.util.Date; * @author BladeX */ @Data -@TableName("MES_WORK_ORDER_RUN") +@TableName("MES_WORK_PLAN_RUN") @Schema(description = "WorkPlanRun对象") @EqualsAndHashCode(callSuper = true) public class WorkPlanRun extends BaseEntity { diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/BatchPrepareVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/BatchPrepareVO.java index 89245f2d..3b5973c3 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/BatchPrepareVO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/BatchPrepareVO.java @@ -11,6 +11,10 @@ import org.springblade.desk.order.pojo.entity.YieldOrder; */ @Data public class BatchPrepareVO { + + @Schema(description = "车间订单id") + private Long id; + @Schema(description = "生产订单") private YieldOrder yieldOrder; diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/WorkOrderVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/WorkOrderVO.java index 503df24a..d39348de 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/WorkOrderVO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/WorkOrderVO.java @@ -19,6 +19,12 @@ public class WorkOrderVO extends WorkOrder { @Serial private static final long serialVersionUID = 1L; + @Schema(description = "车间订单ID") + private Long woId; + + @Schema(description = "生产订单ID") + private Long yoId; + @Schema(description = "主加工单位:班组") private String mainTsName; diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/WorkPlanRunVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/WorkPlanRunVO.java new file mode 100644 index 00000000..a3ec1ffa --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/WorkPlanRunVO.java @@ -0,0 +1,28 @@ +package org.springblade.desk.produce.pojo.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.desk.basic.pojo.entity.ProcessAbility; +import org.springblade.desk.produce.pojo.entity.WorkOrderRun; +import org.springblade.desk.produce.pojo.entity.WorkPlan; +import org.springblade.desk.produce.pojo.entity.WorkPlanRun; + +/** + * 分批准备数据 视图实体类 + * + * @author litao + */ +@EqualsAndHashCode(callSuper = true) +@Data +public class WorkPlanRunVO extends WorkPlanRun { + + @Schema(description = "车间订单运行记录") + private WorkOrderRun workOrderRun; + + @Schema(description = "作业计划工序") + private WorkPlanVO workPlan; + + @Schema(description = "工艺能力") + private ProcessAbility processAbility; +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/WorkPlanVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/WorkPlanVO.java new file mode 100644 index 00000000..d26aafcb --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/WorkPlanVO.java @@ -0,0 +1,20 @@ +package org.springblade.desk.produce.pojo.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.desk.dashboard.pojo.entity.BsProcessSetEntity; +import org.springblade.desk.produce.pojo.entity.WorkPlanRun; + +/** + * 分批准备数据 视图实体类 + * + * @author litao + */ +@EqualsAndHashCode(callSuper = true) +@Data +public class WorkPlanVO extends WorkPlanRun { + + @Schema(description = "工序") + private BsProcessSetEntity processSet; +} diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/YieldOrderVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/YieldOrderVO.java new file mode 100644 index 00000000..cb6b7748 --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/YieldOrderVO.java @@ -0,0 +1,48 @@ +package org.springblade.desk.produce.pojo.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import org.springblade.desk.order.pojo.entity.YieldOrder; + +import java.util.Date; + +/** + * 烧结配套齐套流转 视图实体类 + * + * @author litao + */ +@Data +public class YieldOrderVO { + + @Schema(description = "moldFlag") + private Integer moldFlag; + + @Schema(description = "kitFlag") + private Integer kitFlag; + + @Schema(description = "计划单号") + private String ypCode; + + @Schema(description = "流程卡号") + private String cardNo; + + @Schema(description = "零件号") + private String partCode; + + @Schema(description = "批次号") + private String batchNo; + + @Schema(description = "需求交期-开始") + private Date demandDateStart; + + @Schema(description = "需求交期-结束") + private Date demandDateEnd; + + @Schema(description = "计划下达时间-开始") + private Date releaseDateStart; + + @Schema(description = "计划下达时间-结束") + private Date releaseDateEnd; + + +} diff --git a/blade-service/blade-desk/pom.xml b/blade-service/blade-desk/pom.xml index f77d48fa..fc2889f7 100644 --- a/blade-service/blade-desk/pom.xml +++ b/blade-service/blade-desk/pom.xml @@ -118,12 +118,12 @@ aviator 5.4.3 - - org.springblade - blade-wms - 4.6.0.RELEASE - compile - + + + + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/device/controller/MeasuringUpkeepController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/device/controller/MeasuringUpkeepController.java index e39dfd82..5fd13fb5 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/device/controller/MeasuringUpkeepController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/device/controller/MeasuringUpkeepController.java @@ -17,8 +17,9 @@ import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.desk.device.pojo.excel.MeasuringUpkeepExcel; import org.springblade.desk.device.pojo.request.MeasuringUpkeepQuery; -import org.springblade.wms.feign.StRealtimeStockClient; -import org.springblade.wms.pojo.vo.StRealtimeStockVO; +import org.springblade.desk.device.pojo.vo.ToolingLibraryVO; +//import org.springblade.wms.feign.StRealtimeStockClient; +//import org.springblade.wms.pojo.vo.StRealtimeStockVO; import org.springframework.beans.BeanUtils; import org.springframework.web.bind.annotation.*; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -50,8 +51,8 @@ public class MeasuringUpkeepController extends BladeController { private final IMeasuringUpkeepService measuringUpkeepService; - @Resource - private StRealtimeStockClient client; +// @Resource +// private StRealtimeStockClient client; /** * 量具保养 详情 */ @@ -157,20 +158,21 @@ public class MeasuringUpkeepController extends BladeController { @GetMapping("/newlyAddedList") @ApiOperationSupport(order = 3) @Operation(summary = "量具保养新增页面列表", description = "传入stRealtimeStock,默认过滤量具类型仓库,按sumNum排序") - public R> pageToolsData(StRealtimeStockVO stRealtimeStock, Query query) { + public R> pageToolsData(Query query) { if (StrUtil.isBlank(query.getAscs()) && StrUtil.isBlank(query.getDescs())) { - query.setDescs("sumNum"); // 默认按sumNum降序排序 + query.setDescs("sum_num"); // 默认按sumNum降序排序 } - R> measuringTools = client.getMeasuringTools(stRealtimeStock, query); - Page data = measuringTools.getData(); - Page pages = new Page<>(); - // 复制分页属性 - pages.setRecords(data.getRecords()); - pages.setTotal(data.getTotal()); - pages.setCurrent(data.getCurrent()); - pages.setSize(data.getSize()); - pages.setPages(data.getPages()); +// R> measuringTools = client.getMeasuringTools(stRealtimeStock, query); +// Page data = measuringTools.getData(); +// Page pages = new Page<>(); +// // 复制分页属性 +// pages.setRecords(data.getRecords()); +// pages.setTotal(data.getTotal()); +// pages.setCurrent(data.getCurrent()); +// pages.setSize(data.getSize()); +// pages.setPages(data.getPages()); + IPage pages = measuringUpkeepService.selectToolingLibraryPage(Condition.getPage(query)); return R.data(pages); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/MeasuringUpkeepMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/MeasuringUpkeepMapper.java index 80aa861e..778df10f 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/MeasuringUpkeepMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/MeasuringUpkeepMapper.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.Param; +import org.springblade.desk.device.pojo.vo.ToolingLibraryVO; import java.util.List; @@ -28,6 +29,14 @@ public interface MeasuringUpkeepMapper extends BaseMapper */ List selectMeasuringUpkeepPage(IPage page, MeasuringUpkeepQuery query); + /** + * 自定义分页 + * + * @param page 分页参数 + * @return List + */ + List selectToolingLibraryPage(IPage page); + /** * 获取导出数据 diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/MeasuringUpkeepMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/MeasuringUpkeepMapper.xml index 911aeb11..f115b17d 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/MeasuringUpkeepMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/device/mapper/MeasuringUpkeepMapper.xml @@ -66,6 +66,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + select a.* from bs_procedure_team a - inner join bs_procedure_set b on a.PPS_ID= b.PPS_ID - inner join BS_TEAM_SET c on a.TS_ID = c.TS_ID - where b.pps_id = #{id} and c.DELETED = 0 order by c.TS_ID + inner join BS_PROCESS_SET b on a.PPS_ID= b.ID + inner join BS_TEAM_SET c on a.TS_ID = c.ID + where b.ID = #{id} and c.IS_DELETED = 0 order by c.ID diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderMapper.xml index be6e6f3c..9b130dae 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderMapper.xml @@ -2,73 +2,37 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + SELECT * FROM (select * from MES_WORK_ORDER where WO_CODE like concat(#{codePattern},'%') order by WO_CODE desc) WHERE ROWNUM = 1 + + + + + + - - - - - diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderRunMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderRunMapper.xml deleted file mode 100644 index 23e02e77..00000000 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderRunMapper.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IWorkOrderService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IWorkOrderService.java index fdd28089..cedefa27 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IWorkOrderService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IWorkOrderService.java @@ -2,6 +2,7 @@ package org.springblade.desk.produce.service; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseService; +import org.springblade.desk.produce.pojo.dto.InBatchesDTO; import org.springblade.desk.produce.pojo.dto.ListProProcessDTO; import org.springblade.desk.produce.pojo.dto.WorkOrderDTO; import org.springblade.desk.produce.pojo.entity.WorkOrder; @@ -9,6 +10,7 @@ import org.springblade.desk.produce.pojo.entity.WorkOrderRun; import org.springblade.desk.produce.pojo.entity.WorkPlanRun; import org.springblade.desk.produce.pojo.vo.BatchPrepareVO; import org.springblade.desk.produce.pojo.vo.WorkOrderVO; +import org.springblade.desk.produce.pojo.vo.WorkPlanRunVO; import java.util.List; @@ -30,7 +32,7 @@ public interface IWorkOrderService extends BaseService { BatchPrepareVO batchesPrepare(Long woId); - boolean inBatches(Long oldWoId, WorkOrder workOrder, Long userId); + boolean inBatches(Long oldWoId, InBatchesDTO inBatchesDTO, Long userId); boolean turnType(Long id, Integer yieldType, Long userId); @@ -42,5 +44,5 @@ public interface IWorkOrderService extends BaseService { *

方法名: listProProcess

*

方法描述: 转单加载组装数据

*/ - List listProProcess(ListProProcessDTO listProProcessDTO); + List listProProcess(ListProProcessDTO listProProcessDTO); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java index 9c0016e6..ba491d59 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java @@ -2,23 +2,28 @@ package org.springblade.desk.produce.service.impl; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.desk.basic.service.IProcessAbilityService; import org.springblade.desk.dashboard.pojo.entity.BsProcessSetEntity; import org.springblade.desk.dashboard.service.IBsProcessSetService; import org.springblade.desk.order.pojo.entity.YieldOrder; import org.springblade.desk.order.pojo.enums.YieldOrderEnum; import org.springblade.desk.order.service.IYieldOrderService; import org.springblade.desk.produce.mapper.WorkOrderMapper; +import org.springblade.desk.produce.pojo.dto.InBatchesDTO; import org.springblade.desk.produce.pojo.dto.ListProProcessDTO; import org.springblade.desk.produce.pojo.dto.WorkOrderDTO; import org.springblade.desk.produce.pojo.entity.*; import org.springblade.desk.produce.pojo.vo.BatchPrepareVO; import org.springblade.desk.produce.pojo.vo.WorkOrderVO; +import org.springblade.desk.produce.pojo.vo.WorkPlanRunVO; +import org.springblade.desk.produce.pojo.vo.WorkPlanVO; import org.springblade.desk.produce.service.*; import org.springblade.desk.quality.pojo.entity.InspectionTask; import org.springblade.desk.quality.pojo.entity.PlanTest; @@ -27,12 +32,13 @@ import org.springblade.desk.quality.service.IPlanTestService; import org.springblade.desk.quality.service.IWorkPlanItemService; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; -import org.springframework.util.CollectionUtils; +import org.springframework.transaction.annotation.Transactional; import java.rmi.ServerException; import java.time.Instant; import java.time.LocalDateTime; import java.util.*; +import java.util.stream.Collectors; import static com.alibaba.fastjson2.util.DateUtils.DEFAULT_ZONE_ID; @@ -69,6 +75,8 @@ public class WorkOrderServiceImpl extends BaseServiceImpl selectWorkOrderPage(IPage page, WorkOrderDTO workOrder) { return page.setRecords(baseMapper.selectWorkOrderPage(page, workOrder)); @@ -79,6 +87,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workOrderRunList, List wprList) { if (wprList == null || wprList.isEmpty()) { return false; @@ -261,7 +279,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl listProProcess(ListProProcessDTO listProProcessDTO) { + public List listProProcess(ListProProcessDTO listProProcessDTO) { List woIds = listProProcessDTO.getWoIds(); Integer runType = listProProcessDTO.getRunType(); if (CollectionUtils.isEmpty(woIds) || runType == null) { @@ -269,11 +287,12 @@ public class WorkOrderServiceImpl extends BaseServiceImpl wpList = workPlanService.list(Wrappers.lambdaQuery(WorkPlan.class).eq(WorkPlan::getWoId, curWoId)); - List wprList = new ArrayList<>(wpList.size()); + List workOrderRuns = workOrderRunService.list(Wrappers.lambdaQuery(WorkOrderRun.class).eq(WorkOrderRun::getWoId, curWoId)); + List wprList = new ArrayList<>(wpList.size()); // 拿出第一个单子对应的可以派外协的工序 String proName = ""; for (WorkPlan wp : wpList) { - WorkPlanRun wpr = new WorkPlanRun(); + WorkPlanRunVO wpr = new WorkPlanRunVO(); //验证 if (!this.checkWp(wp, runType)) { continue; @@ -292,9 +311,15 @@ public class WorkOrderServiceImpl extends BaseServiceImpl prWorkOrderList = this.list(Wrappers.lambdaQuery(WorkOrder.class).eq(WorkOrder::getYoId, yieldOrder.getId())); - if (prWorkOrderList != null && !prWorkOrderList.isEmpty()) { - for (WorkOrder prWorkOrder : prWorkOrderList) { - if (prWorkOrder.getRunStatus() < WorkOrder.RUN_STATUS_COMPLETED) { - // 修改为关闭 - prWorkOrder.setRunStatus(WorkOrder.RUN_STATUS_VOIDED); - this.updateById(prWorkOrder); + List list = yieldOrderService.list(Wrappers.lambdaQuery(YieldOrder.class).eq(YieldOrder::getFatherYoId, yieldOrder.getId())); + if (CollectionUtils.isNotEmpty(list)) { + // 将list转换为id集合 + List yoIds = list.stream().map(YieldOrder::getId).toList(); + List prWorkOrderList = this.list(Wrappers.lambdaQuery(WorkOrder.class).in(WorkOrder::getYoId, yoIds)); + if (prWorkOrderList != null && !prWorkOrderList.isEmpty()) { + for (WorkOrder prWorkOrder : prWorkOrderList) { + if (prWorkOrder.getRunStatus() < WorkOrder.RUN_STATUS_COMPLETED) { + // 修改为关闭 + prWorkOrder.setRunStatus(WorkOrder.RUN_STATUS_VOIDED); + } } + this.updateBatchById(prWorkOrderList); } } } + this.updateById(workOrder); } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkPlanServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkPlanServiceImpl.java index da368ec8..494d07f5 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkPlanServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkPlanServiceImpl.java @@ -205,7 +205,7 @@ public class WorkPlanServiceImpl extends BaseServiceImpl