optimize mes import

plp
chenshuichuan 2 years ago
parent 59d9d0ab3e
commit 10847d2b3f

@ -1,15 +1,14 @@
package cn.iocoder.yudao.module.mes.controller.admin.bom.vo; package cn.iocoder.yudao.module.mes.controller.admin.bom.vo;
import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*; import lombok.Data;
import java.util.*;
import java.util.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;
import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
@Schema(description = "管理后台 - 产品BOM Response VO") @Schema(description = "管理后台 - 产品BOM Response VO")
@Data @Data

@ -1,14 +1,13 @@
package cn.iocoder.yudao.module.mes.controller.admin.plan.vo; package cn.iocoder.yudao.module.mes.controller.admin.plan.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;
import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat; import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
import cn.iocoder.yudao.framework.excel.core.convert.DictConvert; import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
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.time.LocalDateTime;
@Schema(description = "管理后台 - 生产计划 Response VO") @Schema(description = "管理后台 - 生产计划 Response VO")
@Data @Data

@ -1,12 +1,10 @@
package cn.iocoder.yudao.module.mes.controller.admin.producereport.vo; package cn.iocoder.yudao.module.mes.controller.admin.producereport.vo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*; import lombok.Data;
import java.util.*;
import java.time.LocalDateTime;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDetailDO;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 生产报工单新增/修改 Request VO") @Schema(description = "管理后台 - 生产报工单新增/修改 Request VO")
@Data @Data

@ -1,12 +1,12 @@
package cn.iocoder.yudao.module.mes.controller.admin.task.vo; package cn.iocoder.yudao.module.mes.controller.admin.task.vo;
import lombok.*;
import java.time.LocalDate;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY; import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;

@ -1,12 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.bom; package cn.iocoder.yudao.module.mes.dal.dataobject.bom;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* BOM DO * BOM DO
@ -54,7 +54,7 @@ public class BomDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,12 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.bom; package cn.iocoder.yudao.module.mes.dal.dataobject.bom;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* BOM DO * BOM DO
* *
@ -53,7 +54,7 @@ public class BomDetailDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,13 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan; package cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO

@ -1,13 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord; package cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -47,13 +47,13 @@ public class FeedingRecordDO extends BaseDO {
private Long itemId; private Long itemId;
/** /**
* 线 * 线
* * <p>
* {@link TODO mes_feeding_pipeline } * {@link TODO mes_feeding_pipeline }
*/ */
private String feedingPipeline; private String feedingPipeline;
/** /**
* *
* * <p>
* {@link TODO mes_feeding_type } * {@link TODO mes_feeding_type }
*/ */
private String feedingType; private String feedingType;
@ -75,7 +75,7 @@ public class FeedingRecordDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO mes_feeding_record_status } * {@link TODO mes_feeding_record_status }
*/ */
private String recordStatus; private String recordStatus;

@ -1,13 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord; package cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO

@ -1,15 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition; package cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition;
import com.alibaba.excel.annotation.ExcelProperty; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import io.swagger.v3.oas.annotations.media.Schema; import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.time.LocalDate; import java.time.LocalDate;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -66,7 +63,7 @@ public class ItemRequisitionDO extends BaseDO {
private Long workerId; private Long workerId;
// @Schema(description = "制浆线") // @Schema(description = "制浆线")
// @ExcelProperty("制浆线") // @ExcelProperty("制浆线")
private String feedingPipeline; private String feedingPipeline;

@ -1,12 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition; package cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO

@ -1,12 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.machine; package cn.iocoder.yudao.module.mes.dal.dataobject.machine;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -72,19 +72,19 @@ public class MachineComponentDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO mes_machine_status } * {@link TODO mes_machine_status }
*/ */
private Integer status; private Integer status;
/** /**
* *
* * <p>
* {@link TODO mes_machine_type } * {@link TODO mes_machine_type }
*/ */
private Integer componentType; private Integer componentType;
/** /**
* *
* * <p>
* {@link TODO mes_org_type } * {@link TODO mes_org_type }
*/ */
private String machineType; private String machineType;

@ -1,11 +1,10 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.organization; package cn.iocoder.yudao.module.mes.dal.dataobject.organization;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
/** /**
* 线 DO * 线 DO
@ -59,25 +58,25 @@ public class OrganizationDO extends BaseDO {
private String email; private String email;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;
/** /**
* *
* * <p>
* {@link TODO mes_org_status } * {@link TODO mes_org_status }
*/ */
private String status; private String status;
/** /**
* *
* * <p>
* {@link TODO mes_org_class } * {@link TODO mes_org_class }
*/ */
private String orgClass; private String orgClass;
/** /**
* *
* * <p>
* {@link TODO mes_org_type } * {@link TODO mes_org_type }
*/ */
private String orgType; private String orgType;

@ -1,16 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.plan; package cn.iocoder.yudao.module.mes.dal.dataobject.plan;
import io.swagger.v3.oas.annotations.media.Schema; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -58,7 +54,7 @@ public class PlanDO extends BaseDO {
private Long finishNumber; private Long finishNumber;
/** /**
* *
* * <p>
* {@link TODO mes_plan_status } * {@link TODO mes_plan_status }
*/ */
private Integer status; private Integer status;
@ -88,7 +84,7 @@ public class PlanDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,12 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.producereport; package cn.iocoder.yudao.module.mes.dal.dataobject.producereport;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -46,13 +46,13 @@ public class ProduceReportDO extends BaseDO {
private LocalDateTime reportDate; private LocalDateTime reportDate;
/** /**
* *
* * <p>
* {@link TODO mes_record_status } * {@link TODO mes_record_status }
*/ */
private Integer status; private Integer status;
/** /**
* / * /
* * <p>
* {@link TODO mes_group_type } * {@link TODO mes_group_type }
*/ */
private Integer groupType; private Integer groupType;

@ -1,18 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.producereport; package cn.iocoder.yudao.module.mes.dal.dataobject.producereport;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -108,7 +103,7 @@ public class ProduceReportDetailDO extends BaseDO {
private String reportTime; private String reportTime;
/** /**
* *
* * <p>
* {@link TODO mes_record_status } * {@link TODO mes_record_status }
*/ */
private Integer reportStatus; private Integer reportStatus;

@ -1,14 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.record; package cn.iocoder.yudao.module.mes.dal.dataobject.record;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -72,7 +71,7 @@ public class RecordChengxingDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,12 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.record; package cn.iocoder.yudao.module.mes.dal.dataobject.record;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -58,7 +58,7 @@ public class RecordDabaoDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,20 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.record; package cn.iocoder.yudao.module.mes.dal.dataobject.record;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -82,7 +75,7 @@ public class RecordDajiangDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,14 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.record; package cn.iocoder.yudao.module.mes.dal.dataobject.record;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -68,7 +67,7 @@ public class RecordGanzaoDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,16 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.record; package cn.iocoder.yudao.module.mes.dal.dataobject.record;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* 湿 DO * 湿 DO

@ -1,13 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.record; package cn.iocoder.yudao.module.mes.dal.dataobject.record;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -75,7 +74,7 @@ public class RecordPinjianDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,16 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.record; package cn.iocoder.yudao.module.mes.dal.dataobject.record;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -78,7 +75,7 @@ public class RecordQiebianDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,18 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.record; package cn.iocoder.yudao.module.mes.dal.dataobject.record;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -88,7 +83,7 @@ public class RecordReyaDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,20 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.record; package cn.iocoder.yudao.module.mes.dal.dataobject.record;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO

@ -1,13 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.record; package cn.iocoder.yudao.module.mes.dal.dataobject.record;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -75,13 +74,13 @@ public class RecordTemplateDO extends BaseDO {
private String processInstanceId; private String processInstanceId;
/** /**
* *
* * <p>
* {@link TODO mes_record_status } * {@link TODO mes_record_status }
*/ */
private Integer status; private Integer status;
/** /**
* *
* * <p>
* {@link TODO mes_org_type } * {@link TODO mes_org_type }
*/ */
private String recordType; private String recordType;
@ -91,7 +90,7 @@ public class RecordTemplateDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,21 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.saleorder; package cn.iocoder.yudao.module.mes.dal.dataobject.saleorder;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -43,7 +35,7 @@ public class SaleOrderDO extends BaseDO {
private String no; private String no;
/** /**
* *
* * <p>
* {@link TODO erp_audit_status } * {@link TODO erp_audit_status }
*/ */
private Integer status; private Integer status;

@ -1,18 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.saleorder; package cn.iocoder.yudao.module.mes.dal.dataobject.saleorder;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO

@ -1,13 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop; package cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop;
import io.swagger.v3.oas.annotations.media.Schema; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO

@ -1,14 +1,13 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop; package cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop;
import io.swagger.v3.oas.annotations.media.Schema; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -42,7 +41,7 @@ public class StockWorkshopDetailDO extends BaseDO {
private BigDecimal stockCount; private BigDecimal stockCount;
/** /**
* *
* * <p>
* {@link TODO mes_stock_workshop_detail_type } * {@link TODO mes_stock_workshop_detail_type }
*/ */
private String detailType; private String detailType;

@ -1,13 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.task; package cn.iocoder.yudao.module.mes.dal.dataobject.task;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.time.LocalDate;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO
@ -43,7 +42,7 @@ public class TaskDO extends BaseDO {
private LocalDateTime deliveryDate; private LocalDateTime deliveryDate;
/** /**
* *
* * <p>
* {@link TODO mes_task_status } * {@link TODO mes_task_status }
*/ */
private Integer status; private Integer status;
@ -57,7 +56,7 @@ public class TaskDO extends BaseDO {
private String remark; private String remark;
/** /**
* *
* * <p>
* {@link TODO infra_boolean_string } * {@link TODO infra_boolean_string }
*/ */
private Boolean isEnable; private Boolean isEnable;

@ -1,11 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.task; package cn.iocoder.yudao.module.mes.dal.dataobject.task;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/** /**
* DO * DO

@ -1,12 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.task; package cn.iocoder.yudao.module.mes.dal.dataobject.task;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import lombok.AllArgsConstructor;
import com.baomidou.mybatisplus.annotation.KeySequence; import lombok.Builder;
import com.baomidou.mybatisplus.annotation.TableId; import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableName; import lombok.NoArgsConstructor;
import lombok.*;
import java.time.LocalDateTime;
/** /**
* DO * DO

@ -1,13 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.task; package cn.iocoder.yudao.module.mes.dal.dataobject.task;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*; import lombok.*;
import java.time.LocalDateTime;
/** /**
* DO * DO
* *

@ -1,11 +1,10 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.workteam; package cn.iocoder.yudao.module.mes.dal.dataobject.workteam;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
/** /**
* DO * DO
@ -37,7 +36,7 @@ public class WorkTeamDO extends BaseDO {
private Long teamLeaderId; private Long teamLeaderId;
/** /**
* *
* * <p>
* {@link TODO mes_org_type } * {@link TODO mes_org_type }
*/ */
private String teamType; private String teamType;

@ -1,11 +1,10 @@
package cn.iocoder.yudao.module.mes.dal.dataobject.workteam; package cn.iocoder.yudao.module.mes.dal.dataobject.workteam;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
/** /**
* DO * DO
@ -37,7 +36,7 @@ public class WorkTeamDetailDO extends BaseDO {
private Long userId; private Long userId;
/** /**
* *
* * <p>
* {@link TODO mes_work_team_user_role } * {@link TODO mes_work_team_user_role }
*/ */
private Integer userRole; private Integer userRole;

@ -1,14 +1,11 @@
package cn.iocoder.yudao.module.mes.dal.mysql.bom; package cn.iocoder.yudao.module.mes.dal.mysql.bom;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDetailDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/** /**
* BOM Mapper * BOM Mapper
* *

@ -1,14 +1,11 @@
package cn.iocoder.yudao.module.mes.dal.mysql.bom; package cn.iocoder.yudao.module.mes.dal.mysql.bom;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDO; import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.*;
/** /**
* BOM Mapper * BOM Mapper
@ -30,11 +27,13 @@ public interface BomMapper extends BaseMapperX<BomDO> {
.betweenIfPresent(BomDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(BomDO::getCreateTime, reqVO.getCreateTime())
.orderByDesc(BomDO::getId)); .orderByDesc(BomDO::getId));
} }
default BomDO selectByNo(String no) { default BomDO selectByNo(String no) {
return selectOne(BomDO::getCode, no); return selectOne(BomDO::getCode, no);
} }
default BomDO selectByProductId(Long productId) { default BomDO selectByProductId(Long productId) {
return selectOne(BomDO::getProductId, productId, return selectOne(BomDO::getProductId, productId,
BomDO::getIsEnable,true); BomDO::getIsEnable, true);
} }
} }

@ -1,18 +1,18 @@
package cn.iocoder.yudao.module.mes.dal.mysql.feedingplan; package cn.iocoder.yudao.module.mes.dal.mysql.feedingplan;
import java.math.BigDecimal;
import java.util.*;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.map.MapUtil; import cn.hutool.core.map.MapUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.erp.dal.dataobject.stock.ErpStockDO; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.feedingplan.vo.FeedingRecordPlanPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO; import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.feedingplan.vo.*;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
/** /**
* Mapper * Mapper
@ -35,6 +35,7 @@ public interface FeedingRecordPlanMapper extends BaseMapperX<FeedingRecordPlanDO
.betweenIfPresent(FeedingRecordPlanDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(FeedingRecordPlanDO::getCreateTime, reqVO.getCreateTime())
.orderByDesc(FeedingRecordPlanDO::getId)); .orderByDesc(FeedingRecordPlanDO::getId));
} }
default BigDecimal selectSumBy(Long planId, Long itemId) { default BigDecimal selectSumBy(Long planId, Long itemId) {
// SQL sum 查询 // SQL sum 查询
List<Map<String, Object>> result = selectMaps(new QueryWrapper<FeedingRecordPlanDO>() List<Map<String, Object>> result = selectMaps(new QueryWrapper<FeedingRecordPlanDO>()

@ -1,14 +1,11 @@
package cn.iocoder.yudao.module.mes.dal.mysql.feedingrecord; package cn.iocoder.yudao.module.mes.dal.mysql.feedingrecord;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDetailDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/** /**
* Mapper * Mapper
* *

@ -1,13 +1,11 @@
package cn.iocoder.yudao.module.mes.dal.mysql.feedingrecord; package cn.iocoder.yudao.module.mes.dal.mysql.feedingrecord;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.FeedingRecordPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDO; import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.*;
/** /**
* Mapper * Mapper

@ -1,15 +1,11 @@
package cn.iocoder.yudao.module.mes.dal.mysql.itemrequisition; package cn.iocoder.yudao.module.mes.dal.mysql.itemrequisition;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDetailDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/** /**
* Mapper * Mapper
* *
@ -25,6 +21,7 @@ public interface ItemRequisitionDetailMapper extends BaseMapperX<ItemRequisition
default int deleteByItemRequisitionId(Long itemRequisitionId) { default int deleteByItemRequisitionId(Long itemRequisitionId) {
return delete(ItemRequisitionDetailDO::getItemRequisitionId, itemRequisitionId); return delete(ItemRequisitionDetailDO::getItemRequisitionId, itemRequisitionId);
} }
default ItemRequisitionDetailDO selectBy(Long itemRequisitionId, Long itemId) { default ItemRequisitionDetailDO selectBy(Long itemRequisitionId, Long itemId) {
return selectOne(ItemRequisitionDetailDO::getItemRequisitionId, itemRequisitionId, return selectOne(ItemRequisitionDetailDO::getItemRequisitionId, itemRequisitionId,
ItemRequisitionDetailDO::getProductId, itemId); ItemRequisitionDetailDO::getProductId, itemId);

@ -1,14 +1,11 @@
package cn.iocoder.yudao.module.mes.dal.mysql.itemrequisition; package cn.iocoder.yudao.module.mes.dal.mysql.itemrequisition;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDO; import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.*;
/** /**
* Mapper * Mapper
@ -32,9 +29,11 @@ public interface ItemRequisitionMapper extends BaseMapperX<ItemRequisitionDO> {
.betweenIfPresent(ItemRequisitionDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(ItemRequisitionDO::getCreateTime, reqVO.getCreateTime())
.orderByDesc(ItemRequisitionDO::getId)); .orderByDesc(ItemRequisitionDO::getId));
} }
default ItemRequisitionDO selectByNo(String no) { default ItemRequisitionDO selectByNo(String no) {
return selectOne(ItemRequisitionDO::getCode, no); return selectOne(ItemRequisitionDO::getCode, no);
} }
default ItemRequisitionDO selectByPlanId(Long planId) { default ItemRequisitionDO selectByPlanId(Long planId) {
return selectOne(ItemRequisitionDO::getPlanId, planId); return selectOne(ItemRequisitionDO::getPlanId, planId);
} }

@ -1,13 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.mysql.machine; package cn.iocoder.yudao.module.mes.dal.mysql.machine;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.machine.vo.MachineComponentListReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.machine.MachineComponentDO; import cn.iocoder.yudao.module.mes.dal.dataobject.machine.MachineComponentDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.machine.vo.*;
import java.util.List;
/** /**
* Mapper * Mapper
@ -36,9 +35,9 @@ public interface MachineComponentMapper extends BaseMapperX<MachineComponentDO>
.orderByDesc(MachineComponentDO::getId)); .orderByDesc(MachineComponentDO::getId));
} }
default MachineComponentDO selectByParentIdAndName(Long parentId, String name) { default MachineComponentDO selectByParentIdAndName(Long parentId, String name) {
return selectOne(MachineComponentDO::getParentId, parentId, MachineComponentDO::getName, name); return selectOne(MachineComponentDO::getParentId, parentId, MachineComponentDO::getName, name);
} }
default Long selectCountByParentId(Long parentId) { default Long selectCountByParentId(Long parentId) {
return selectCount(MachineComponentDO::getParentId, parentId); return selectCount(MachineComponentDO::getParentId, parentId);

@ -1,13 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.mysql.organization; package cn.iocoder.yudao.module.mes.dal.mysql.organization;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.organization.vo.OrganizationListReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.organization.OrganizationDO; import cn.iocoder.yudao.module.mes.dal.dataobject.organization.OrganizationDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.organization.vo.*;
import java.util.List;
/** /**
* 线 Mapper * 线 Mapper
@ -34,9 +33,9 @@ public interface OrganizationMapper extends BaseMapperX<OrganizationDO> {
.orderByAsc(OrganizationDO::getSort)); .orderByAsc(OrganizationDO::getSort));
} }
default OrganizationDO selectByParentIdAndName(Long parentId, String name) { default OrganizationDO selectByParentIdAndName(Long parentId, String name) {
return selectOne(OrganizationDO::getParentId, parentId, OrganizationDO::getName, name); return selectOne(OrganizationDO::getParentId, parentId, OrganizationDO::getName, name);
} }
default Long selectCountByParentId(Long parentId) { default Long selectCountByParentId(Long parentId) {
return selectCount(OrganizationDO::getParentId, parentId); return selectCount(OrganizationDO::getParentId, parentId);

@ -1,16 +1,19 @@
package cn.iocoder.yudao.module.mes.dal.mysql.plan; package cn.iocoder.yudao.module.mes.dal.mysql.plan;
import java.util.*;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.map.MapUtil; import cn.hutool.core.map.MapUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.PlanPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.PlanStatusEnum;
import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO; import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/** /**
* Mapper * Mapper
@ -41,44 +44,50 @@ public interface PlanMapper extends BaseMapperX<PlanDO> {
.orderByAsc(PlanDO::getPlanStartTime) .orderByAsc(PlanDO::getPlanStartTime)
.orderByAsc(PlanDO::getPlanEndTime)); .orderByAsc(PlanDO::getPlanEndTime));
} }
default PlanDO selectByNo(String no) { default PlanDO selectByNo(String no) {
return selectOne(PlanDO::getCode, no); return selectOne(PlanDO::getCode, no);
} }
default Long selectSum(Long taskId, Long productId, List<Integer>statusList) { default Long selectSum(Long taskId, Long productId, List<Integer> statusList) {
// SQL sum 查询 // SQL sum 查询
List<Map<String, Object>> result = selectMaps(new QueryWrapper<PlanDO>() List<Map<String, Object>> result = selectMaps(new QueryWrapper<PlanDO>()
.select("SUM(plan_number) AS sumCount") .select("SUM(plan_number) AS sumCount")
.in(statusList!=null&&statusList.size()>0,"status", statusList) .in(statusList != null && statusList.size() > 0, "status", statusList)
.eq(taskId!=null,"task_id", taskId) .eq(taskId != null, "task_id", taskId)
.eq(productId!=null,"product_id", productId)); .eq(productId != null, "product_id", productId));
// 获得数量 // 获得数量
if (CollUtil.isEmpty(result)) { if (CollUtil.isEmpty(result)) {
return 0L; return 0L;
} }
return MapUtil.getLong(result.get(0), "sumCount", 0L); return MapUtil.getLong(result.get(0), "sumCount", 0L);
} }
/**查询按日期排序最后一个未完成(已经下达)的计划,即更未来远的时间在更近**/
default PlanDO selectLastOne(){ /**
* ()
**/
default PlanDO selectLastOne() {
List<Integer> status = new ArrayList<>(); List<Integer> status = new ArrayList<>();
status.add(PlanStatusEnum..getValue()); status.add(PlanStatusEnum..getValue());
status.add(PlanStatusEnum..getValue()); status.add(PlanStatusEnum..getValue());
status.add(PlanStatusEnum..getValue()); status.add(PlanStatusEnum..getValue());
return selectOne(new QueryWrapper<PlanDO>() return selectOne(new QueryWrapper<PlanDO>()
.eq("is_enable", true) .eq("is_enable", true)
.in("status" ,status) .in("status", status)
.orderByDesc("plan_end_time") .orderByDesc("plan_end_time")
.last("limit 1")); .last("limit 1"));
} }
default List<PlanDO> selectBy(List<Integer> statusList) { default List<PlanDO> selectBy(List<Integer> statusList) {
return selectList(new LambdaQueryWrapperX<PlanDO>() return selectList(new LambdaQueryWrapperX<PlanDO>()
.inIfPresent(PlanDO::getStatus,statusList)); .inIfPresent(PlanDO::getStatus, statusList));
} }
//根据产线和状态查询生产计划,按照实际开工时间升序排序,即更早开工的在前面 //根据产线和状态查询生产计划,按照实际开工时间升序排序,即更早开工的在前面
default List<PlanDO> selectBy(List<Integer> statusList, String pipeline) { default List<PlanDO> selectBy(List<Integer> statusList, String pipeline) {
return selectList(new LambdaQueryWrapperX<PlanDO>() return selectList(new LambdaQueryWrapperX<PlanDO>()
.eqIfPresent(PlanDO::getFeedingPipeline, pipeline) .eqIfPresent(PlanDO::getFeedingPipeline, pipeline)
.inIfPresent(PlanDO::getStatus,statusList) .inIfPresent(PlanDO::getStatus, statusList)
.orderByAsc(PlanDO::getStartTime)); .orderByAsc(PlanDO::getStartTime));
} }
} }

@ -1,14 +1,12 @@
package cn.iocoder.yudao.module.mes.dal.mysql.producereport; package cn.iocoder.yudao.module.mes.dal.mysql.producereport;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.ProduceReportDetailPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDetailDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.*;
/** /**
* Mapper * Mapper
@ -39,6 +37,7 @@ public interface ProduceReportDetailMapper extends BaseMapperX<ProduceReportDeta
.eqIfPresent(ProduceReportDetailDO::getReportStatus, reqVO.getReportStatus()) .eqIfPresent(ProduceReportDetailDO::getReportStatus, reqVO.getReportStatus())
.orderByDesc(ProduceReportDetailDO::getId)); .orderByDesc(ProduceReportDetailDO::getId));
} }
default PageResult<ProduceReportDetailDO> selectPage(PageParam reqVO, Long reportId) { default PageResult<ProduceReportDetailDO> selectPage(PageParam reqVO, Long reportId) {
return selectPage(reqVO, new LambdaQueryWrapperX<ProduceReportDetailDO>() return selectPage(reqVO, new LambdaQueryWrapperX<ProduceReportDetailDO>()
.eq(ProduceReportDetailDO::getReportId, reportId) .eq(ProduceReportDetailDO::getReportId, reportId)

@ -1,13 +1,11 @@
package cn.iocoder.yudao.module.mes.dal.mysql.producereport; package cn.iocoder.yudao.module.mes.dal.mysql.producereport;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.ProduceReportPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDO; import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.*;
/** /**
* Mapper * Mapper

@ -1,11 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.mysql.record; package cn.iocoder.yudao.module.mes.dal.mysql.record;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordChengxingDO; import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordChengxingDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -19,8 +17,8 @@ public interface RecordChengxingMapper extends BaseMapperX<RecordChengxingDO> {
default PageResult<RecordChengxingDO> selectPage(PageParam reqVO, Long recordId) { default PageResult<RecordChengxingDO> selectPage(PageParam reqVO, Long recordId) {
return selectPage(reqVO, new LambdaQueryWrapperX<RecordChengxingDO>() return selectPage(reqVO, new LambdaQueryWrapperX<RecordChengxingDO>()
.eq(RecordChengxingDO::getRecordId, recordId) .eq(RecordChengxingDO::getRecordId, recordId)
.orderByDesc(RecordChengxingDO::getId)); .orderByDesc(RecordChengxingDO::getId));
} }
default int deleteByRecordId(Long recordId) { default int deleteByRecordId(Long recordId) {

@ -1,11 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.mysql.record; package cn.iocoder.yudao.module.mes.dal.mysql.record;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordDabaoDO; import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordDabaoDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -19,8 +17,8 @@ public interface RecordDabaoMapper extends BaseMapperX<RecordDabaoDO> {
default PageResult<RecordDabaoDO> selectPage(PageParam reqVO, Long recordId) { default PageResult<RecordDabaoDO> selectPage(PageParam reqVO, Long recordId) {
return selectPage(reqVO, new LambdaQueryWrapperX<RecordDabaoDO>() return selectPage(reqVO, new LambdaQueryWrapperX<RecordDabaoDO>()
.eq(RecordDabaoDO::getRecordId, recordId) .eq(RecordDabaoDO::getRecordId, recordId)
.orderByDesc(RecordDabaoDO::getId)); .orderByDesc(RecordDabaoDO::getId));
} }
default int deleteByRecordId(Long recordId) { default int deleteByRecordId(Long recordId) {

@ -1,11 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.mysql.record; package cn.iocoder.yudao.module.mes.dal.mysql.record;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordDajiangDO; import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordDajiangDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -19,8 +17,8 @@ public interface RecordDajiangMapper extends BaseMapperX<RecordDajiangDO> {
default PageResult<RecordDajiangDO> selectPage(PageParam reqVO, Long recordId) { default PageResult<RecordDajiangDO> selectPage(PageParam reqVO, Long recordId) {
return selectPage(reqVO, new LambdaQueryWrapperX<RecordDajiangDO>() return selectPage(reqVO, new LambdaQueryWrapperX<RecordDajiangDO>()
.eq(RecordDajiangDO::getRecordId, recordId) .eq(RecordDajiangDO::getRecordId, recordId)
.orderByDesc(RecordDajiangDO::getId)); .orderByDesc(RecordDajiangDO::getId));
} }
default int deleteByRecordId(Long recordId) { default int deleteByRecordId(Long recordId) {

@ -1,11 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.mysql.record; package cn.iocoder.yudao.module.mes.dal.mysql.record;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordGanzaoDO; import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordGanzaoDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -19,8 +17,8 @@ public interface RecordGanzaoMapper extends BaseMapperX<RecordGanzaoDO> {
default PageResult<RecordGanzaoDO> selectPage(PageParam reqVO, Long recordId) { default PageResult<RecordGanzaoDO> selectPage(PageParam reqVO, Long recordId) {
return selectPage(reqVO, new LambdaQueryWrapperX<RecordGanzaoDO>() return selectPage(reqVO, new LambdaQueryWrapperX<RecordGanzaoDO>()
.eq(RecordGanzaoDO::getRecordId, recordId) .eq(RecordGanzaoDO::getRecordId, recordId)
.orderByDesc(RecordGanzaoDO::getId)); .orderByDesc(RecordGanzaoDO::getId));
} }
default int deleteByRecordId(Long recordId) { default int deleteByRecordId(Long recordId) {

@ -1,11 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.mysql.record; package cn.iocoder.yudao.module.mes.dal.mysql.record;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordJiashiDO; import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordJiashiDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -19,8 +17,8 @@ public interface RecordJiashiMapper extends BaseMapperX<RecordJiashiDO> {
default PageResult<RecordJiashiDO> selectPage(PageParam reqVO, Long recordId) { default PageResult<RecordJiashiDO> selectPage(PageParam reqVO, Long recordId) {
return selectPage(reqVO, new LambdaQueryWrapperX<RecordJiashiDO>() return selectPage(reqVO, new LambdaQueryWrapperX<RecordJiashiDO>()
.eq(RecordJiashiDO::getRecordId, recordId) .eq(RecordJiashiDO::getRecordId, recordId)
.orderByDesc(RecordJiashiDO::getId)); .orderByDesc(RecordJiashiDO::getId));
} }
default int deleteByRecordId(Long recordId) { default int deleteByRecordId(Long recordId) {

@ -1,11 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.mysql.record; package cn.iocoder.yudao.module.mes.dal.mysql.record;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordPinjianDO; import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordPinjianDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -19,8 +17,8 @@ public interface RecordPinjianMapper extends BaseMapperX<RecordPinjianDO> {
default PageResult<RecordPinjianDO> selectPage(PageParam reqVO, Long recordId) { default PageResult<RecordPinjianDO> selectPage(PageParam reqVO, Long recordId) {
return selectPage(reqVO, new LambdaQueryWrapperX<RecordPinjianDO>() return selectPage(reqVO, new LambdaQueryWrapperX<RecordPinjianDO>()
.eq(RecordPinjianDO::getRecordId, recordId) .eq(RecordPinjianDO::getRecordId, recordId)
.orderByDesc(RecordPinjianDO::getId)); .orderByDesc(RecordPinjianDO::getId));
} }
default int deleteByRecordId(Long recordId) { default int deleteByRecordId(Long recordId) {

@ -1,11 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.mysql.record; package cn.iocoder.yudao.module.mes.dal.mysql.record;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordQiebianDO; import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordQiebianDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -19,8 +17,8 @@ public interface RecordQiebianMapper extends BaseMapperX<RecordQiebianDO> {
default PageResult<RecordQiebianDO> selectPage(PageParam reqVO, Long recordId) { default PageResult<RecordQiebianDO> selectPage(PageParam reqVO, Long recordId) {
return selectPage(reqVO, new LambdaQueryWrapperX<RecordQiebianDO>() return selectPage(reqVO, new LambdaQueryWrapperX<RecordQiebianDO>()
.eq(RecordQiebianDO::getRecordId, recordId) .eq(RecordQiebianDO::getRecordId, recordId)
.orderByDesc(RecordQiebianDO::getId)); .orderByDesc(RecordQiebianDO::getId));
} }
default int deleteByRecordId(Long recordId) { default int deleteByRecordId(Long recordId) {

@ -1,11 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.mysql.record; package cn.iocoder.yudao.module.mes.dal.mysql.record;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordReyaDO; import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordReyaDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -19,8 +17,8 @@ public interface RecordReyaMapper extends BaseMapperX<RecordReyaDO> {
default PageResult<RecordReyaDO> selectPage(PageParam reqVO, Long recordId) { default PageResult<RecordReyaDO> selectPage(PageParam reqVO, Long recordId) {
return selectPage(reqVO, new LambdaQueryWrapperX<RecordReyaDO>() return selectPage(reqVO, new LambdaQueryWrapperX<RecordReyaDO>()
.eq(RecordReyaDO::getRecordId, recordId) .eq(RecordReyaDO::getRecordId, recordId)
.orderByDesc(RecordReyaDO::getId)); .orderByDesc(RecordReyaDO::getId));
} }
default int deleteByRecordId(Long recordId) { default int deleteByRecordId(Long recordId) {

@ -1,11 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.mysql.record; package cn.iocoder.yudao.module.mes.dal.mysql.record;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordSuijiangDO; import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordSuijiangDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -19,8 +17,8 @@ public interface RecordSuijiangMapper extends BaseMapperX<RecordSuijiangDO> {
default PageResult<RecordSuijiangDO> selectPage(PageParam reqVO, Long recordId) { default PageResult<RecordSuijiangDO> selectPage(PageParam reqVO, Long recordId) {
return selectPage(reqVO, new LambdaQueryWrapperX<RecordSuijiangDO>() return selectPage(reqVO, new LambdaQueryWrapperX<RecordSuijiangDO>()
.eq(RecordSuijiangDO::getRecordId, recordId) .eq(RecordSuijiangDO::getRecordId, recordId)
.orderByDesc(RecordSuijiangDO::getId)); .orderByDesc(RecordSuijiangDO::getId));
} }
default int deleteByRecordId(Long recordId) { default int deleteByRecordId(Long recordId) {

@ -1,13 +1,11 @@
package cn.iocoder.yudao.module.mes.dal.mysql.record; package cn.iocoder.yudao.module.mes.dal.mysql.record;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.record.vo.RecordTemplatePageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordTemplateDO; import cn.iocoder.yudao.module.mes.dal.dataobject.record.RecordTemplateDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.record.vo.*;
/** /**
* Mapper * Mapper

@ -1,9 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.mysql.saleorder; package cn.iocoder.yudao.module.mes.dal.mysql.saleorder;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderItemsDO; import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderItemsDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -17,8 +17,8 @@ public interface SaleOrderItemsMapper2 extends BaseMapperX<SaleOrderItemsDO> {
default PageResult<SaleOrderItemsDO> selectPage(PageParam reqVO, Long orderId) { default PageResult<SaleOrderItemsDO> selectPage(PageParam reqVO, Long orderId) {
return selectPage(reqVO, new LambdaQueryWrapperX<SaleOrderItemsDO>() return selectPage(reqVO, new LambdaQueryWrapperX<SaleOrderItemsDO>()
.eq(SaleOrderItemsDO::getOrderId, orderId) .eq(SaleOrderItemsDO::getOrderId, orderId)
.orderByDesc(SaleOrderItemsDO::getId)); .orderByDesc(SaleOrderItemsDO::getId));
} }
default int deleteByOrderId(Long orderId) { default int deleteByOrderId(Long orderId) {

@ -1,11 +1,11 @@
package cn.iocoder.yudao.module.mes.dal.mysql.saleorder; package cn.iocoder.yudao.module.mes.dal.mysql.saleorder;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.SaleOrderPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderDO; import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.*;
/** /**
* Mapper * Mapper

@ -1,13 +1,11 @@
package cn.iocoder.yudao.module.mes.dal.mysql.stockworkshop; package cn.iocoder.yudao.module.mes.dal.mysql.stockworkshop;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkshopDetailPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDetailDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.*;
/** /**
* Mapper * Mapper

@ -1,18 +1,18 @@
package cn.iocoder.yudao.module.mes.dal.mysql.stockworkshop; package cn.iocoder.yudao.module.mes.dal.mysql.stockworkshop;
import java.math.BigDecimal;
import java.util.*;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.map.MapUtil; import cn.hutool.core.map.MapUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.erp.dal.dataobject.stock.ErpStockDO; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkshopPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDO; import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.*;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
/** /**
* Mapper * Mapper
@ -30,6 +30,7 @@ public interface StockWorkshopMapper extends BaseMapperX<StockWorkshopDO> {
.betweenIfPresent(StockWorkshopDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(StockWorkshopDO::getCreateTime, reqVO.getCreateTime())
.orderByDesc(StockWorkshopDO::getId)); .orderByDesc(StockWorkshopDO::getId));
} }
default BigDecimal selectSumByProductId(Long productId) { default BigDecimal selectSumByProductId(Long productId) {
// SQL sum 查询 // SQL sum 查询
List<Map<String, Object>> result = selectMaps(new QueryWrapper<StockWorkshopDO>() List<Map<String, Object>> result = selectMaps(new QueryWrapper<StockWorkshopDO>()
@ -41,7 +42,8 @@ public interface StockWorkshopMapper extends BaseMapperX<StockWorkshopDO> {
} }
return BigDecimal.valueOf(MapUtil.getDouble(result.get(0), "sumCount", 0D)); return BigDecimal.valueOf(MapUtil.getDouble(result.get(0), "sumCount", 0D));
} }
default StockWorkshopDO selectByItemId(Long itemId){
default StockWorkshopDO selectByItemId(Long itemId) {
return selectOne("item_id", itemId); return selectOne("item_id", itemId);
} }
} }

@ -1,21 +1,15 @@
package cn.iocoder.yudao.module.mes.dal.mysql.task; package cn.iocoder.yudao.module.mes.dal.mysql.task;
import java.math.BigDecimal;
import java.util.*;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.map.MapUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.erp.dal.dataobject.stock.ErpStockDO; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDetailDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDetailSumResult; import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDetailSumResult;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/** /**
* Mapper * Mapper
* *
@ -31,10 +25,12 @@ public interface TaskDetailMapper extends BaseMapperX<TaskDetailDO> {
default int deleteByTaskId(Long taskId) { default int deleteByTaskId(Long taskId) {
return delete(TaskDetailDO::getTaskId, taskId); return delete(TaskDetailDO::getTaskId, taskId);
} }
default PageResult<TaskDetailDO> selectPage(PageParam reqVO, Long taskId) { default PageResult<TaskDetailDO> selectPage(PageParam reqVO, Long taskId) {
return selectPage(reqVO, new LambdaQueryWrapperX<TaskDetailDO>() return selectPage(reqVO, new LambdaQueryWrapperX<TaskDetailDO>()
.eq(TaskDetailDO::getTaskId, taskId) .eq(TaskDetailDO::getTaskId, taskId)
.orderByDesc(TaskDetailDO::getId)); .orderByDesc(TaskDetailDO::getId));
} }
public List<TaskDetailSumResult> selectSumListByTaskId(Long taskId); public List<TaskDetailSumResult> selectSumListByTaskId(Long taskId);
} }

@ -1,15 +1,15 @@
package cn.iocoder.yudao.module.mes.dal.mysql.task; package cn.iocoder.yudao.module.mes.dal.mysql.task;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.erp.dal.dataobject.purchase.ErpPurchaseOrderDO; import cn.iocoder.yudao.module.mes.controller.admin.task.vo.TaskPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.task.vo.TaskStatusEnum;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDO; import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.task.vo.*;
import java.util.ArrayList;
import java.util.List;
/** /**
* Mapper * Mapper
@ -30,6 +30,7 @@ public interface TaskMapper extends BaseMapperX<TaskDO> {
.betweenIfPresent(TaskDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(TaskDO::getCreateTime, reqVO.getCreateTime())
.orderByDesc(TaskDO::getId)); .orderByDesc(TaskDO::getId));
} }
default PageResult<TaskDO> selectPage2(TaskPageReqVO reqVO) { default PageResult<TaskDO> selectPage2(TaskPageReqVO reqVO) {
List<Integer> statusList = new ArrayList<>(); List<Integer> statusList = new ArrayList<>();
statusList.add(TaskStatusEnum..getValue()); statusList.add(TaskStatusEnum..getValue());
@ -39,12 +40,13 @@ public interface TaskMapper extends BaseMapperX<TaskDO> {
.eqIfPresent(TaskDO::getCode, reqVO.getCode()) .eqIfPresent(TaskDO::getCode, reqVO.getCode())
.betweenIfPresent(TaskDO::getOrderDate, reqVO.getOrderDate()) .betweenIfPresent(TaskDO::getOrderDate, reqVO.getOrderDate())
.betweenIfPresent(TaskDO::getDeliveryDate, reqVO.getDeliveryDate()) .betweenIfPresent(TaskDO::getDeliveryDate, reqVO.getDeliveryDate())
.inIfPresent(TaskDO::getStatus,statusList) .inIfPresent(TaskDO::getStatus, statusList)
.eqIfPresent(TaskDO::getProcessInstanceId, reqVO.getProcessInstanceId()) .eqIfPresent(TaskDO::getProcessInstanceId, reqVO.getProcessInstanceId())
.eqIfPresent(TaskDO::getRemark, reqVO.getRemark()) .eqIfPresent(TaskDO::getRemark, reqVO.getRemark())
.betweenIfPresent(TaskDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(TaskDO::getCreateTime, reqVO.getCreateTime())
.orderByDesc(TaskDO::getId)); .orderByDesc(TaskDO::getId));
} }
default TaskDO selectByNo(String no) { default TaskDO selectByNo(String no) {
return selectOne(TaskDO::getCode, no); return selectOne(TaskDO::getCode, no);
} }

@ -4,7 +4,6 @@ import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDetailDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDetailSumResult; import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDetailSumResult;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.ViewTaskProductSummary; import cn.iocoder.yudao.module.mes.dal.dataobject.task.ViewTaskProductSummary;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -26,10 +25,12 @@ public interface ViewTaskProductSummaryMapper extends BaseMapperX<ViewTaskProduc
default int deleteByTaskId(Long taskId) { default int deleteByTaskId(Long taskId) {
return delete(ViewTaskProductSummary::getTaskId, taskId); return delete(ViewTaskProductSummary::getTaskId, taskId);
} }
default PageResult<ViewTaskProductSummary> selectPage(PageParam reqVO, Long taskId) { default PageResult<ViewTaskProductSummary> selectPage(PageParam reqVO, Long taskId) {
return selectPage(reqVO, new LambdaQueryWrapperX<ViewTaskProductSummary>() return selectPage(reqVO, new LambdaQueryWrapperX<ViewTaskProductSummary>()
.eq(ViewTaskProductSummary::getTaskId, taskId) .eq(ViewTaskProductSummary::getTaskId, taskId)
.orderByDesc(ViewTaskProductSummary::getTaskId)); .orderByDesc(ViewTaskProductSummary::getTaskId));
} }
public List<TaskDetailSumResult> selectSumListByTaskId(Long taskId); public List<TaskDetailSumResult> selectSumListByTaskId(Long taskId);
} }

@ -1,11 +1,9 @@
package cn.iocoder.yudao.module.mes.dal.mysql.workteam; package cn.iocoder.yudao.module.mes.dal.mysql.workteam;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.dal.dataobject.workteam.WorkTeamDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.workteam.WorkTeamDetailDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -19,8 +17,8 @@ public interface WorkTeamDetailMapper extends BaseMapperX<WorkTeamDetailDO> {
default PageResult<WorkTeamDetailDO> selectPage(PageParam reqVO, Long workTeamId) { default PageResult<WorkTeamDetailDO> selectPage(PageParam reqVO, Long workTeamId) {
return selectPage(reqVO, new LambdaQueryWrapperX<WorkTeamDetailDO>() return selectPage(reqVO, new LambdaQueryWrapperX<WorkTeamDetailDO>()
.eq(WorkTeamDetailDO::getWorkTeamId, workTeamId) .eq(WorkTeamDetailDO::getWorkTeamId, workTeamId)
.orderByDesc(WorkTeamDetailDO::getId)); .orderByDesc(WorkTeamDetailDO::getId));
} }
default int deleteByWorkTeamId(Long workTeamId) { default int deleteByWorkTeamId(Long workTeamId) {

@ -1,13 +1,11 @@
package cn.iocoder.yudao.module.mes.dal.mysql.workteam; package cn.iocoder.yudao.module.mes.dal.mysql.workteam;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.mes.controller.admin.workteam.vo.WorkTeamPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.workteam.WorkTeamDO; import cn.iocoder.yudao.module.mes.dal.dataobject.workteam.WorkTeamDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.mes.controller.admin.workteam.vo.*;
/** /**
* Mapper * Mapper

@ -9,7 +9,7 @@ public interface RedisKeyConstants {
/** /**
* *
* * <p>
* KEY trade_no:{prefix} * KEY trade_no:{prefix}
* VALUE * VALUE
*/ */

@ -66,6 +66,7 @@ public class MesNoRedisDAO {
stringRedisTemplate.expire(key, Duration.ofDays(1L)); stringRedisTemplate.expire(key, Duration.ofDays(1L));
return noPrefix + String.format("%06d", no); return noPrefix + String.format("%06d", no);
} }
public String generate3(String prefix) { public String generate3(String prefix) {
// 递增序号 // 递增序号
String noPrefix = prefix + DateUtil.format(LocalDateTime.now(), DatePattern.PURE_DATE_PATTERN); String noPrefix = prefix + DateUtil.format(LocalDateTime.now(), DatePattern.PURE_DATE_PATTERN);
@ -75,6 +76,7 @@ public class MesNoRedisDAO {
stringRedisTemplate.expire(key, Duration.ofDays(1L)); stringRedisTemplate.expire(key, Duration.ofDays(1L));
return noPrefix + String.format("%03d", no); return noPrefix + String.format("%03d", no);
} }
public String generate2(String prefix) { public String generate2(String prefix) {
// 递增序号 // 递增序号
String noPrefix = prefix + DateUtil.format(LocalDateTime.now(), DatePattern.PURE_DATE_PATTERN); String noPrefix = prefix + DateUtil.format(LocalDateTime.now(), DatePattern.PURE_DATE_PATTERN);

@ -1,13 +1,15 @@
package cn.iocoder.yudao.module.mes.service.bom; package cn.iocoder.yudao.module.mes.service.bom;
import java.util.*; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.*; import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomDetailRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDO; import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.List;
/** /**
* BOM Service * BOM Service
@ -71,6 +73,7 @@ public interface BomService {
* @return BOM * @return BOM
*/ */
List<BomDetailDO> getBomDetailListByProductId(Long productId); List<BomDetailDO> getBomDetailListByProductId(Long productId);
/** /**
* *
* *

@ -2,35 +2,40 @@ package cn.iocoder.yudao.module.mes.service.bom;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.framework.common.exception.ErrorCode; import cn.iocoder.yudao.framework.common.exception.ErrorCode;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.collection.MapUtils; import cn.iocoder.yudao.framework.common.util.collection.MapUtils;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO;
import cn.iocoder.yudao.module.erp.framework.bean.ProductUnitEnum; import cn.iocoder.yudao.module.erp.framework.bean.ProductUnitEnum;
import cn.iocoder.yudao.module.erp.service.product.ErpProductService; import cn.iocoder.yudao.module.erp.service.product.ErpProductService;
import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService; import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomDetailRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDetailDO;
import cn.iocoder.yudao.module.mes.dal.mysql.bom.BomDetailMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.bom.BomMapper;
import cn.iocoder.yudao.module.mes.dal.redis.no.MesNoRedisDAO; import cn.iocoder.yudao.module.mes.dal.redis.no.MesNoRedisDAO;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.util.*; import java.util.Collections;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.*; import java.util.List;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDO; import java.util.Map;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDetailDO; import java.util.Objects;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.dal.mysql.bom.BomMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.bom.BomDetailMapper;
import javax.annotation.Resource;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.BOM_EXISTS;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.BOM_NOT_EXISTS;
/** /**
* BOM Service * BOM Service
@ -51,19 +56,20 @@ public class BomServiceImpl implements BomService {
private ErpProductUnitService productUnitService; private ErpProductUnitService productUnitService;
@Resource @Resource
private MesNoRedisDAO noRedisDAO; private MesNoRedisDAO noRedisDAO;
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Long createBom(BomSaveReqVO createReqVO) { public Long createBom(BomSaveReqVO createReqVO) {
if(createReqVO.getIsEnable()){ if (createReqVO.getIsEnable()) {
BomDO temp = bomMapper.selectByProductId(createReqVO.getProductId()); BomDO temp = bomMapper.selectByProductId(createReqVO.getProductId());
if(temp!=null){ if (temp != null) {
throw exception(new ErrorCode(500,"每个产品启用的BOM只能有一个请先禁用改产品其他BOM")); throw exception(new ErrorCode(500, "每个产品启用的BOM只能有一个请先禁用改产品其他BOM"));
} }
} }
// 插入 // 插入
BomDO bom = BeanUtils.toBean(createReqVO, BomDO.class); BomDO bom = BeanUtils.toBean(createReqVO, BomDO.class);
if(StringUtils.isEmpty(bom.getCode())){ if (StringUtils.isEmpty(bom.getCode())) {
// 1.4 生成订单号,并校验唯一性 // 1.4 生成订单号,并校验唯一性
String no = noRedisDAO.generate2(MesNoRedisDAO.BOM_NO_PREFIX); String no = noRedisDAO.generate2(MesNoRedisDAO.BOM_NO_PREFIX);
if (bomMapper.selectByNo(no) != null) { if (bomMapper.selectByNo(no) != null) {
@ -82,10 +88,10 @@ public class BomServiceImpl implements BomService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void updateBom(BomSaveReqVO updateReqVO) { public void updateBom(BomSaveReqVO updateReqVO) {
if(updateReqVO.getIsEnable()){ if (updateReqVO.getIsEnable()) {
BomDO temp = bomMapper.selectByProductId(updateReqVO.getProductId()); BomDO temp = bomMapper.selectByProductId(updateReqVO.getProductId());
if(temp!=null && !Objects.equals(temp.getId(), updateReqVO.getId())){ if (temp != null && !Objects.equals(temp.getId(), updateReqVO.getId())) {
throw exception(new ErrorCode(500,"每个产品启用的BOM只能有一个请先禁用改产品其他BOM")); throw exception(new ErrorCode(500, "每个产品启用的BOM只能有一个请先禁用改产品其他BOM"));
} }
} }
// 校验存在 // 校验存在
@ -120,15 +126,18 @@ public class BomServiceImpl implements BomService {
public BomDO getBom(Long id) { public BomDO getBom(Long id) {
return bomMapper.selectById(id); return bomMapper.selectById(id);
} }
@Override @Override
public BomDO selectByProductId(Long productId) { public BomDO selectByProductId(Long productId) {
return bomMapper.selectByProductId(productId); return bomMapper.selectByProductId(productId);
} }
@Override @Override
public PageResult<BomRespVO> getBomPage(BomPageReqVO pageReqVO) { public PageResult<BomRespVO> getBomPage(BomPageReqVO pageReqVO) {
PageResult<BomDO> pageResult = bomMapper.selectPage(pageReqVO); PageResult<BomDO> pageResult = bomMapper.selectPage(pageReqVO);
return new PageResult<>(buildVOList(pageResult.getList()), pageResult.getTotal()); return new PageResult<>(buildVOList(pageResult.getList()), pageResult.getTotal());
} }
private List<BomRespVO> buildVOList(List<BomDO> list) { private List<BomRespVO> buildVOList(List<BomDO> list) {
if (CollUtil.isEmpty(list)) { if (CollUtil.isEmpty(list)) {
return Collections.emptyList(); return Collections.emptyList();
@ -170,10 +179,10 @@ public class BomServiceImpl implements BomService {
for (BomDetailDO detail : list) { for (BomDetailDO detail : list) {
BigDecimal result = detail.getUsageNumber().multiply(BigDecimal.valueOf(number)); BigDecimal result = detail.getUsageNumber().multiply(BigDecimal.valueOf(number));
//如果是g则统一到kg //如果是g则统一到kg
if(detail.getUnitId().equals(ProductUnitEnum.Gram.getUnitId())){ if (detail.getUnitId().equals(ProductUnitEnum.Gram.getUnitId())) {
detail.setUsageNumber(result.divide(BigDecimal.valueOf(1000),3, RoundingMode.HALF_UP)); detail.setUsageNumber(result.divide(BigDecimal.valueOf(1000), 3, RoundingMode.HALF_UP));
detail.setUnitId(ProductUnitEnum.Kilogram.getUnitId()); detail.setUnitId(ProductUnitEnum.Kilogram.getUnitId());
}else{ } else {
detail.setUsageNumber(result); detail.setUsageNumber(result);
} }
} }
@ -196,6 +205,7 @@ public class BomServiceImpl implements BomService {
unit -> item.setUnitName(unit.getName())); unit -> item.setUnitName(unit.getName()));
}); });
} }
private void createBomDetailList(Long bomId, List<BomDetailDO> list) { private void createBomDetailList(Long bomId, List<BomDetailDO> list) {
list.forEach(o -> o.setBomId(bomId)); list.forEach(o -> o.setBomId(bomId));
bomDetailMapper.insertBatch(list); bomDetailMapper.insertBatch(list);
@ -203,7 +213,7 @@ public class BomServiceImpl implements BomService {
private void updateBomDetailList(Long bomId, List<BomDetailDO> list) { private void updateBomDetailList(Long bomId, List<BomDetailDO> list) {
deleteBomDetailByBomId(bomId); deleteBomDetailByBomId(bomId);
list.forEach(o -> o.setId(null).setUpdater(null).setUpdateTime(null)); // 解决更新情况下1id 冲突2updateTime 不更新 list.forEach(o -> o.setId(null).setUpdater(null).setUpdateTime(null)); // 解决更新情况下1id 冲突2updateTime 不更新
createBomDetailList(bomId, list); createBomDetailList(bomId, list);
} }

@ -1,9 +1,9 @@
package cn.iocoder.yudao.module.mes.service.feedingplan; package cn.iocoder.yudao.module.mes.service.feedingplan;
import cn.iocoder.yudao.module.mes.controller.admin.feedingplan.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.module.mes.controller.admin.feedingplan.vo.FeedingRecordPlanPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.feedingplan.vo.FeedingRecordPlanSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO;
import javax.validation.Valid; import javax.validation.Valid;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -52,5 +52,6 @@ public interface FeedingRecordPlanService {
* @return * @return
*/ */
PageResult<FeedingRecordPlanDO> getFeedingRecordPlanPage(FeedingRecordPlanPageReqVO pageReqVO); PageResult<FeedingRecordPlanDO> getFeedingRecordPlanPage(FeedingRecordPlanPageReqVO pageReqVO);
BigDecimal selectSumBy(Long planId, Long itemId); BigDecimal selectSumBy(Long planId, Long itemId);
} }

@ -1,39 +1,19 @@
package cn.iocoder.yudao.module.mes.service.feedingplan; package cn.iocoder.yudao.module.mes.service.feedingplan;
import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.framework.common.util.collection.MapUtils;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO;
import cn.iocoder.yudao.module.erp.service.product.ErpProductService;
import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomRespVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO;
import cn.iocoder.yudao.module.mes.dal.redis.no.MesNoRedisDAO;
import cn.iocoder.yudao.module.mes.service.feedingrecord.FeedingRecordService;
import cn.iocoder.yudao.module.mes.service.plan.PlanService;
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.feedingplan.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.controller.admin.feedingplan.vo.FeedingRecordPlanPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.feedingplan.vo.FeedingRecordPlanSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO;
import cn.iocoder.yudao.module.mes.dal.mysql.feedingplan.FeedingRecordPlanMapper; import cn.iocoder.yudao.module.mes.dal.mysql.feedingplan.FeedingRecordPlanMapper;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.FEEDING_RECORD_PLAN_NOT_EXISTS;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*;
/** /**
* Service * Service
@ -87,11 +67,11 @@ public class FeedingRecordPlanServiceImpl implements FeedingRecordPlanService {
@Override @Override
public PageResult<FeedingRecordPlanDO> getFeedingRecordPlanPage(FeedingRecordPlanPageReqVO pageReqVO) { public PageResult<FeedingRecordPlanDO> getFeedingRecordPlanPage(FeedingRecordPlanPageReqVO pageReqVO) {
return feedingRecordPlanMapper.selectPage(pageReqVO); return feedingRecordPlanMapper.selectPage(pageReqVO);
} }
@Override @Override
public BigDecimal selectSumBy(Long planId, Long itemId){ public BigDecimal selectSumBy(Long planId, Long itemId) {
return feedingRecordPlanMapper.selectSumBy(planId,itemId); return feedingRecordPlanMapper.selectSumBy(planId, itemId);
} }
} }

@ -1,17 +1,20 @@
package cn.iocoder.yudao.module.mes.service.feedingrecord; package cn.iocoder.yudao.module.mes.service.feedingrecord;
import java.util.*; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.*; import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.FeedingRecordDetailRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.FeedingRecordPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.FeedingRecordSaveReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionDetailRespVO; import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionDetailRespVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO; import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDO; import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO; import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO;
import org.springframework.transaction.annotation.Transactional;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap; import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap;
@ -69,17 +72,21 @@ public interface FeedingRecordService {
* @return * @return
*/ */
List<FeedingRecordDetailDO> getFeedingRecordDetailListByRecordId(Long recordId); List<FeedingRecordDetailDO> getFeedingRecordDetailListByRecordId(Long recordId);
List<FeedingRecordDetailRespVO> buildVOList(List<FeedingRecordDetailDO> list); List<FeedingRecordDetailRespVO> buildVOList(List<FeedingRecordDetailDO> list);
List<FeedingRecordDO> getFeedingRecordList(Collection<Long> ids); List<FeedingRecordDO> getFeedingRecordList(Collection<Long> ids);
default Map<Long, FeedingRecordDO> getRecordMap(Collection<Long> ids) { default Map<Long, FeedingRecordDO> getRecordMap(Collection<Long> ids) {
if(ids.isEmpty())return new HashMap<>(); if (ids.isEmpty()) return new HashMap<>();
return convertMap(getFeedingRecordList(ids), FeedingRecordDO::getId); return convertMap(getFeedingRecordList(ids), FeedingRecordDO::getId);
} }
//提交、反提交投料记录单 //提交、反提交投料记录单
Map<String, FeedingRecordPlanDO> updateStatus(FeedingRecordDO recordDO,List<FeedingRecordDetailDO> detailDOList, String status , Long userId Map<String, FeedingRecordPlanDO> updateStatus(FeedingRecordDO recordDO, List<FeedingRecordDetailDO> detailDOList, String status, Long userId
,List<PlanDO> planDOList,Map<Long, List<ItemRequisitionDetailRespVO>> planItemListMap, , List<PlanDO> planDOList, Map<Long, List<ItemRequisitionDetailRespVO>> planItemListMap,
Map<String, ItemRequisitionDetailRespVO> planItemMap); Map<String, ItemRequisitionDetailRespVO> planItemMap);
//提交干废品和湿废品投料记录,分配给计划 //提交干废品和湿废品投料记录,分配给计划
void dealOtherRecord(FeedingRecordDO recordDO, String status , Long userId,List<PlanDO> planDOList); void dealOtherRecord(FeedingRecordDO recordDO, String status, Long userId, List<PlanDO> planDOList);
} }

@ -1,54 +1,43 @@
package cn.iocoder.yudao.module.mes.service.feedingrecord; package cn.iocoder.yudao.module.mes.service.feedingrecord;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.collection.MapUtils; import cn.iocoder.yudao.framework.common.util.collection.MapUtils;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO;
import cn.iocoder.yudao.module.erp.framework.bean.ProductUnitEnum; import cn.iocoder.yudao.module.erp.framework.bean.ProductUnitEnum;
import cn.iocoder.yudao.module.erp.service.product.ErpProductService; import cn.iocoder.yudao.module.erp.service.product.ErpProductService;
import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService; import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService;
import cn.iocoder.yudao.module.mes.controller.admin.feedingplan.vo.FeedingRecordPlanRespVO; import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.*;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionDetailRespVO; import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionDetailRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.PlanStatusEnum;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkShopTypeEnum; import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkShopTypeEnum;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO; import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDO; import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDetailDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO; import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDO; import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDO;
import cn.iocoder.yudao.module.mes.dal.mysql.feedingplan.FeedingRecordPlanMapper; import cn.iocoder.yudao.module.mes.dal.mysql.feedingplan.FeedingRecordPlanMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.feedingrecord.FeedingRecordDetailMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.feedingrecord.FeedingRecordMapper;
import cn.iocoder.yudao.module.mes.dal.redis.no.MesNoRedisDAO; import cn.iocoder.yudao.module.mes.dal.redis.no.MesNoRedisDAO;
import cn.iocoder.yudao.module.mes.service.feedingplan.FeedingRecordPlanService; import cn.iocoder.yudao.module.mes.service.feedingplan.FeedingRecordPlanService;
import cn.iocoder.yudao.module.mes.service.itemrequisition.ItemRequisitionService;
import cn.iocoder.yudao.module.mes.service.plan.PlanService;
import cn.iocoder.yudao.module.mes.service.stockworkshop.StockWorkshopDetailService;
import cn.iocoder.yudao.module.mes.service.stockworkshop.StockWorkshopService; import cn.iocoder.yudao.module.mes.service.stockworkshop.StockWorkshopService;
import cn.iocoder.yudao.module.system.api.user.AdminUserApi; import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.MathContext; import java.math.MathContext;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.util.*; import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.dal.mysql.feedingrecord.FeedingRecordMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.feedingrecord.FeedingRecordDetailMapper;
import javax.annotation.Resource;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.FEEDING_RECORD_NOT_EXISTS;
/** /**
* Service * Service
@ -79,7 +68,6 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
private StockWorkshopService workshopService; private StockWorkshopService workshopService;
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Long createFeedingRecord(FeedingRecordSaveReqVO createReqVO) { public Long createFeedingRecord(FeedingRecordSaveReqVO createReqVO) {
@ -89,8 +77,8 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
feedingRecord.setRecordStatus(FeedingStatusEnum.稿.getValue()); feedingRecord.setRecordStatus(FeedingStatusEnum.稿.getValue());
feedingRecordMapper.insert(feedingRecord); feedingRecordMapper.insert(feedingRecord);
//检查投料原料项如果不是kg则转为kg //检查投料原料项如果不是kg则转为kg
if(createReqVO.getFeedingType().equals(FeedingTypeEnum..getValue())){ if (createReqVO.getFeedingType().equals(FeedingTypeEnum..getValue())) {
transfer(createReqVO.getFeedingRecordDetails()); transfer(createReqVO.getFeedingRecordDetails());
// 插入子表 // 插入子表
createFeedingRecordDetailList(feedingRecord.getId(), createReqVO.getFeedingRecordDetails()); createFeedingRecordDetailList(feedingRecord.getId(), createReqVO.getFeedingRecordDetails());
} }
@ -107,14 +95,15 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
// 更新 // 更新
FeedingRecordDO updateObj = BeanUtils.toBean(updateReqVO, FeedingRecordDO.class); FeedingRecordDO updateObj = BeanUtils.toBean(updateReqVO, FeedingRecordDO.class);
feedingRecordMapper.updateById(updateObj); feedingRecordMapper.updateById(updateObj);
if(updateReqVO.getFeedingType().equals(FeedingTypeEnum..getValue())) { if (updateReqVO.getFeedingType().equals(FeedingTypeEnum..getValue())) {
transfer(updateReqVO.getFeedingRecordDetails()); transfer(updateReqVO.getFeedingRecordDetails());
// 更新子表 // 更新子表
updateFeedingRecordDetailList(updateReqVO.getId(), updateReqVO.getFeedingRecordDetails()); updateFeedingRecordDetailList(updateReqVO.getId(), updateReqVO.getFeedingRecordDetails());
} }
} }
//将单位转到kg //将单位转到kg
private List<FeedingRecordDetailDO> transfer(List<FeedingRecordDetailDO> list){ private List<FeedingRecordDetailDO> transfer(List<FeedingRecordDetailDO> list) {
if (list != null) { if (list != null) {
MathContext mc = new MathContext(3, RoundingMode.HALF_UP); MathContext mc = new MathContext(3, RoundingMode.HALF_UP);
for (int i = 0; i < list.size(); i++) { for (int i = 0; i < list.size(); i++) {
@ -130,6 +119,7 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
} }
return list; return list;
} }
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void deleteFeedingRecord(Long id) { public void deleteFeedingRecord(Long id) {
@ -166,7 +156,7 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
} }
private void createFeedingRecordDetailList(Long recordId, List<FeedingRecordDetailDO> list) { private void createFeedingRecordDetailList(Long recordId, List<FeedingRecordDetailDO> list) {
if(list!=null && list.size()>0){ if (list != null && list.size() > 0) {
list.forEach(o -> o.setRecordId(recordId)); list.forEach(o -> o.setRecordId(recordId));
feedingRecordDetailMapper.insertBatch(list); feedingRecordDetailMapper.insertBatch(list);
} }
@ -174,13 +164,14 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
private void updateFeedingRecordDetailList(Long recordId, List<FeedingRecordDetailDO> list) { private void updateFeedingRecordDetailList(Long recordId, List<FeedingRecordDetailDO> list) {
deleteFeedingRecordDetailByRecordId(recordId); deleteFeedingRecordDetailByRecordId(recordId);
list.forEach(o -> o.setId(null).setUpdater(null).setUpdateTime(null)); // 解决更新情况下1id 冲突2updateTime 不更新 list.forEach(o -> o.setId(null).setUpdater(null).setUpdateTime(null)); // 解决更新情况下1id 冲突2updateTime 不更新
createFeedingRecordDetailList(recordId, list); createFeedingRecordDetailList(recordId, list);
} }
private void deleteFeedingRecordDetailByRecordId(Long recordId) { private void deleteFeedingRecordDetailByRecordId(Long recordId) {
feedingRecordDetailMapper.deleteByRecordId(recordId); feedingRecordDetailMapper.deleteByRecordId(recordId);
} }
@Override @Override
public List<FeedingRecordDetailRespVO> buildVOList(List<FeedingRecordDetailDO> list) { public List<FeedingRecordDetailRespVO> buildVOList(List<FeedingRecordDetailDO> list) {
if (CollUtil.isEmpty(list)) { if (CollUtil.isEmpty(list)) {
@ -203,26 +194,28 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
user -> item.setUnitName(user.getNickname())); user -> item.setUnitName(user.getNickname()));
}); });
} }
@Override @Override
public List<FeedingRecordDO> getFeedingRecordList(Collection<Long> ids) { public List<FeedingRecordDO> getFeedingRecordList(Collection<Long> ids) {
return feedingRecordMapper.selectBatchIds(ids); return feedingRecordMapper.selectBatchIds(ids);
} }
/** /**
*
* *
* //投料明细按照当前正在开工的计划需求比例进行分配生成投料分配计划记录FeedingRecordPlanDO * //投料明细按照当前正在开工的计划需求比例进行分配生成投料分配计划记录FeedingRecordPlanDO
* () * ()
* **/ **/
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Map<String, FeedingRecordPlanDO> updateStatus(FeedingRecordDO recordDO,List<FeedingRecordDetailDO> detailDOList, String status , Long userId public Map<String, FeedingRecordPlanDO> updateStatus(FeedingRecordDO recordDO, List<FeedingRecordDetailDO> detailDOList, String status, Long userId
,List<PlanDO> planDOList,Map<Long, List<ItemRequisitionDetailRespVO>> planItemListMap, , List<PlanDO> planDOList, Map<Long, List<ItemRequisitionDetailRespVO>> planItemListMap,
Map<String, ItemRequisitionDetailRespVO> planItemMap) { Map<String, ItemRequisitionDetailRespVO> planItemMap) {
if(status.equals(FeedingStatusEnum..getValue())) { if (status.equals(FeedingStatusEnum..getValue())) {
//detailDOMap 汇总投料原料 //detailDOMap 汇总投料原料
Map<Long, FeedingRecordDetailDO>detailDOMap = new HashMap<>(); Map<Long, FeedingRecordDetailDO> detailDOMap = new HashMap<>();
for (FeedingRecordDetailDO recordDetailDO: detailDOList) { for (FeedingRecordDetailDO recordDetailDO : detailDOList) {
//车间仓投料出库 //车间仓投料出库
StockWorkshopDO workshopDO = new StockWorkshopDO() StockWorkshopDO workshopDO = new StockWorkshopDO()
.setItemId(recordDetailDO.getItemId()).setUnitId(recordDetailDO.getUnitId()) .setItemId(recordDetailDO.getItemId()).setUnitId(recordDetailDO.getUnitId())
@ -231,57 +224,58 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
workshopService.updateStock(workshopDO, StockWorkShopTypeEnum..getValue(), workshopService.updateStock(workshopDO, StockWorkShopTypeEnum..getValue(),
recordDO.getId(), recordDO.getFeedingRecordCode()); recordDO.getId(), recordDO.getFeedingRecordCode());
//合并同原料 //合并同原料
if(detailDOMap.containsKey(recordDetailDO.getItemId())){ if (detailDOMap.containsKey(recordDetailDO.getItemId())) {
BigDecimal totalWeight = detailDOMap.get(recordDetailDO.getItemId()).getWeight() BigDecimal totalWeight = detailDOMap.get(recordDetailDO.getItemId()).getWeight()
.add(recordDetailDO.getWeight()); .add(recordDetailDO.getWeight());
detailDOMap.get(recordDetailDO.getItemId()).setWeight(totalWeight); detailDOMap.get(recordDetailDO.getItemId()).setWeight(totalWeight);
}else detailDOMap.put(recordDetailDO.getItemId(), recordDetailDO); } else detailDOMap.put(recordDetailDO.getItemId(), recordDetailDO);
} }
Map<String, FeedingRecordPlanDO>recordPlanDOMap = Map<String, FeedingRecordPlanDO> recordPlanDOMap =
dealPlan(detailDOMap,recordDO, userId, planDOList, planItemListMap, planItemMap); dealPlan(detailDOMap, recordDO, userId, planDOList, planItemListMap, planItemMap);
recordDO.setRecordStatus(FeedingStatusEnum..getValue()); recordDO.setRecordStatus(FeedingStatusEnum..getValue());
feedingRecordMapper.updateById(recordDO); feedingRecordMapper.updateById(recordDO);
return recordPlanDOMap; return recordPlanDOMap;
} }
//todo 需要回退吗? //todo 需要回退吗?
else if(status.equals(FeedingStatusEnum.稿.getValue())) { else if (status.equals(FeedingStatusEnum.稿.getValue())) {
} }
return null; return null;
} }
private Map<String, FeedingRecordPlanDO> dealPlan(Map<Long, FeedingRecordDetailDO> detailDOMap , FeedingRecordDO recordDO, Long userId,
List<PlanDO> planDOList,Map<Long, List<ItemRequisitionDetailRespVO>> planItemListMap, private Map<String, FeedingRecordPlanDO> dealPlan(Map<Long, FeedingRecordDetailDO> detailDOMap, FeedingRecordDO recordDO, Long userId,
Map<String, ItemRequisitionDetailRespVO> planItemMap){ List<PlanDO> planDOList, Map<Long, List<ItemRequisitionDetailRespVO>> planItemListMap,
Map<String, ItemRequisitionDetailRespVO> planItemMap) {
MathContext mc = new MathContext(3, RoundingMode.HALF_UP); MathContext mc = new MathContext(3, RoundingMode.HALF_UP);
//分配计划 //分配计划
//totalPlanNeedItem记录所有计划需要的该原料总数用于最后按比例分配原料 //totalPlanNeedItem记录所有计划需要的该原料总数用于最后按比例分配原料
Map<Long, BigDecimal>totalPlanNeedItem = new HashMap<>(); Map<Long, BigDecimal> totalPlanNeedItem = new HashMap<>();
//recordPlanDOMap 记录已分配计划id原料id对应的分配量同计划id原料id的合并为一个记录最终插入数据库 //recordPlanDOMap 记录已分配计划id原料id对应的分配量同计划id原料id的合并为一个记录最终插入数据库
Map<String, FeedingRecordPlanDO> recordPlanDOMap = new HashMap<>(); Map<String, FeedingRecordPlanDO> recordPlanDOMap = new HashMap<>();
for (int i = 0; i < planDOList.size(); i++) { for (int i = 0; i < planDOList.size(); i++) {
List<ItemRequisitionDetailRespVO> list = planItemListMap.get(planDOList.get(i).getId()); List<ItemRequisitionDetailRespVO> list = planItemListMap.get(planDOList.get(i).getId());
for(ItemRequisitionDetailRespVO respVO: list){ for (ItemRequisitionDetailRespVO respVO : list) {
//原料需要分配 //原料需要分配
int cp = respVO.getNumber().compareTo(respVO.getFinishNumber()); int cp = respVO.getNumber().compareTo(respVO.getFinishNumber());
if(detailDOMap.containsKey(respVO.getProductId()) if (detailDOMap.containsKey(respVO.getProductId())
&& detailDOMap.get(respVO.getProductId()).getWeight().compareTo(BigDecimal.ZERO) > 0 && detailDOMap.get(respVO.getProductId()).getWeight().compareTo(BigDecimal.ZERO) > 0
&& cp > 0 ){ && cp > 0) {
FeedingRecordDetailDO detailDO = detailDOMap.get(respVO.getProductId()); FeedingRecordDetailDO detailDO = detailDOMap.get(respVO.getProductId());
BigDecimal weight = respVO.getNumber().subtract(respVO.getFinishNumber(), mc); BigDecimal weight = respVO.getNumber().subtract(respVO.getFinishNumber(), mc);
//投料不能满足计划需求,则对该计划投料为实际投料数量, 否则满足,为需求数量 //投料不能满足计划需求,则对该计划投料为实际投料数量, 否则满足,为需求数量
if(weight.compareTo(detailDO.getWeight()) > 0 ){ if (weight.compareTo(detailDO.getWeight()) > 0) {
weight = detailDO.getWeight(); weight = detailDO.getWeight();
} }
//未分配投料数量减少 //未分配投料数量减少
detailDO.setWeight(detailDO.getWeight().subtract(weight)); detailDO.setWeight(detailDO.getWeight().subtract(weight));
String key = getMapKey(planDOList.get(i).getId(), respVO.getProductId()); String key = getMapKey(planDOList.get(i).getId(), respVO.getProductId());
if(recordPlanDOMap.containsKey(key)){ if (recordPlanDOMap.containsKey(key)) {
//正常来说单个计划再做物料分析的时候只会产生一条ItemRequisitionDetailRespVO //正常来说单个计划再做物料分析的时候只会产生一条ItemRequisitionDetailRespVO
recordPlanDOMap.get(key).setWeight( recordPlanDOMap.get(key).getWeight().add(weight)); recordPlanDOMap.get(key).setWeight(recordPlanDOMap.get(key).getWeight().add(weight));
}else{ } else {
FeedingRecordPlanDO recordPlanDO = new FeedingRecordPlanDO() FeedingRecordPlanDO recordPlanDO = new FeedingRecordPlanDO()
.setPlanId(planDOList.get(i).getId()) .setPlanId(planDOList.get(i).getId())
.setItemId(respVO.getProductId()) .setItemId(respVO.getProductId())
@ -291,10 +285,10 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
recordPlanDOMap.put(key, recordPlanDO); recordPlanDOMap.put(key, recordPlanDO);
} }
} }
if(totalPlanNeedItem.containsKey(respVO.getProductId())){ if (totalPlanNeedItem.containsKey(respVO.getProductId())) {
BigDecimal totalNumber = totalPlanNeedItem.get(respVO.getProductId()).add(respVO.getNumber()); BigDecimal totalNumber = totalPlanNeedItem.get(respVO.getProductId()).add(respVO.getNumber());
totalPlanNeedItem.put(respVO.getProductId(), totalNumber); totalPlanNeedItem.put(respVO.getProductId(), totalNumber);
}else totalPlanNeedItem.put(respVO.getProductId(), respVO.getNumber()); } else totalPlanNeedItem.put(respVO.getProductId(), respVO.getNumber());
} }
} }
@ -303,29 +297,30 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
recordPlanMapper.insertBatch(recordPlanDOMap.values()); recordPlanMapper.insertBatch(recordPlanDOMap.values());
return recordPlanDOMap; return recordPlanDOMap;
} }
//处理剩余未分配原料按照totalPlanNeedItem 比例分配到每个计划 //处理剩余未分配原料按照totalPlanNeedItem 比例分配到每个计划
private Map<String, FeedingRecordPlanDO> dealLast(Map<Long, FeedingRecordDetailDO> detailDOMap, Long recordId, Long userId private Map<String, FeedingRecordPlanDO> dealLast(Map<Long, FeedingRecordDetailDO> detailDOMap, Long recordId, Long userId
, List<PlanDO> planDOList, Map<Long, BigDecimal>totalPlanNeedItem, Map<String, FeedingRecordPlanDO> recordPlanDOMap , , List<PlanDO> planDOList, Map<Long, BigDecimal> totalPlanNeedItem, Map<String, FeedingRecordPlanDO> recordPlanDOMap,
Map<String, ItemRequisitionDetailRespVO> planItemMap){ Map<String, ItemRequisitionDetailRespVO> planItemMap) {
MathContext mc = new MathContext(5, RoundingMode.HALF_UP); MathContext mc = new MathContext(5, RoundingMode.HALF_UP);
for (Long itemId : detailDOMap.keySet()) { for (Long itemId : detailDOMap.keySet()) {
//原料有未分配数量 //原料有未分配数量
if(detailDOMap.get(itemId).getWeight().compareTo(BigDecimal.ZERO) <= 0)continue; if (detailDOMap.get(itemId).getWeight().compareTo(BigDecimal.ZERO) <= 0) continue;
BigDecimal factor = detailDOMap.get(itemId).getWeight().divide(totalPlanNeedItem.get(itemId), mc); BigDecimal factor = detailDOMap.get(itemId).getWeight().divide(totalPlanNeedItem.get(itemId), mc);
for (PlanDO plan : planDOList) { for (PlanDO plan : planDOList) {
ItemRequisitionDetailRespVO detailRespVO = planItemMap.get(getMapKey(plan.getId(),itemId)); ItemRequisitionDetailRespVO detailRespVO = planItemMap.get(getMapKey(plan.getId(), itemId));
//该计划不需要这种物料 //该计划不需要这种物料
if(detailRespVO==null){ if (detailRespVO == null) {
System.out.println("~~~~~~~计算出错!~~~~~~"); System.out.println("~~~~~~~计算出错!~~~~~~");
continue; continue;
} }
BigDecimal weight = factor.multiply(detailRespVO.getNumber()); BigDecimal weight = factor.multiply(detailRespVO.getNumber());
String key = getMapKey(plan.getId(), itemId); String key = getMapKey(plan.getId(), itemId);
if(recordPlanDOMap.containsKey(key)){ if (recordPlanDOMap.containsKey(key)) {
recordPlanDOMap.get(key).setWeight( recordPlanDOMap.get(key).getWeight().add(weight)); recordPlanDOMap.get(key).setWeight(recordPlanDOMap.get(key).getWeight().add(weight));
}else{ } else {
FeedingRecordPlanDO recordPlanDO = new FeedingRecordPlanDO() FeedingRecordPlanDO recordPlanDO = new FeedingRecordPlanDO()
.setPlanId(plan.getId()).setItemId(itemId) .setPlanId(plan.getId()).setItemId(itemId)
.setRecordId(recordId).setUserId(userId).setUnitId(detailRespVO.getUnitId()) .setRecordId(recordId).setUserId(userId).setUnitId(detailRespVO.getUnitId())
@ -338,7 +333,8 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
} }
return recordPlanDOMap; return recordPlanDOMap;
} }
private String getMapKey(Long planId, Long itemId){
private String getMapKey(Long planId, Long itemId) {
return planId + "-" + itemId; return planId + "-" + itemId;
} }
@ -346,17 +342,17 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
//干废品和湿废品投料分配计划 //干废品和湿废品投料分配计划
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void dealOtherRecord(FeedingRecordDO recordDO, String status , Long userId,List<PlanDO> planDOList) { public void dealOtherRecord(FeedingRecordDO recordDO, String status, Long userId, List<PlanDO> planDOList) {
FeedingTypeEnum typeEnum = FeedingTypeEnum.fromValue(recordDO.getFeedingType()); FeedingTypeEnum typeEnum = FeedingTypeEnum.fromValue(recordDO.getFeedingType());
MathContext mc = new MathContext(3, RoundingMode.HALF_UP); MathContext mc = new MathContext(3, RoundingMode.HALF_UP);
if(status.equals(FeedingStatusEnum..getValue())) { if (status.equals(FeedingStatusEnum..getValue())) {
Long totalPlanNumber = 0L; Long totalPlanNumber = 0L;
for (PlanDO plan : planDOList) { for (PlanDO plan : planDOList) {
totalPlanNumber += plan.getPlanNumber(); totalPlanNumber += plan.getPlanNumber();
} }
List<FeedingRecordPlanDO> recordPlanDOList = new ArrayList<>(); List<FeedingRecordPlanDO> recordPlanDOList = new ArrayList<>();
for (PlanDO plan : planDOList) { for (PlanDO plan : planDOList) {
BigDecimal weight = recordDO.getWeight().multiply(BigDecimal.valueOf(plan.getPlanNumber()/totalPlanNumber),mc); BigDecimal weight = recordDO.getWeight().multiply(BigDecimal.valueOf(plan.getPlanNumber() / totalPlanNumber), mc);
FeedingRecordPlanDO recordPlanDO = new FeedingRecordPlanDO() FeedingRecordPlanDO recordPlanDO = new FeedingRecordPlanDO()
.setPlanId(plan.getId()).setItemId(typeEnum.getTable_id()) .setPlanId(plan.getId()).setItemId(typeEnum.getTable_id())
.setRecordId(recordDO.getId()).setUserId(userId).setUnitId(ProductUnitEnum.Kilogram.getUnitId()) .setRecordId(recordDO.getId()).setUserId(userId).setUnitId(ProductUnitEnum.Kilogram.getUnitId())
@ -365,12 +361,12 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
.setWeight(weight); .setWeight(weight);
recordPlanDOList.add(recordPlanDO); recordPlanDOList.add(recordPlanDO);
} }
if (recordPlanDOList.size()>0) if (recordPlanDOList.size() > 0)
recordPlanMapper.insertBatch(recordPlanDOList); recordPlanMapper.insertBatch(recordPlanDOList);
} }
//todo 需要回退吗? //todo 需要回退吗?
else if(status.equals(FeedingStatusEnum.稿.getValue())) { else if (status.equals(FeedingStatusEnum.稿.getValue())) {
} }

@ -1,16 +1,9 @@
package cn.iocoder.yudao.module.mes.service.itemrequisition; package cn.iocoder.yudao.module.mes.service.itemrequisition;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpSaleOrderDO;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDetailDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO; import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDO; import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDO;
import cn.iocoder.yudao.module.mes.service.itemrequisition.entity.ItemRequisitionAndStock; import cn.iocoder.yudao.module.mes.service.itemrequisition.entity.ItemRequisitionAndStock;
import javax.validation.Valid;
import java.util.List; import java.util.List;
/** /**
@ -35,7 +28,9 @@ public interface ItemAnalysisService {
* @return * @return
*/ */
public List<ItemRequisitionAndStock> getItemAnalysis(PlanDO plan); public List<ItemRequisitionAndStock> getItemAnalysis(PlanDO plan);
List<ItemRequisitionAndStock> getItemAnalysis(Long productId, Long number); List<ItemRequisitionAndStock> getItemAnalysis(Long productId, Long number);
/** /**
* *
* *

@ -6,7 +6,6 @@ import cn.iocoder.yudao.framework.common.util.collection.MapUtils;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpSaleOrderDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpSaleOrderItemDO; import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpSaleOrderItemDO;
import cn.iocoder.yudao.module.erp.framework.bean.ProductUnitEnum; import cn.iocoder.yudao.module.erp.framework.bean.ProductUnitEnum;
import cn.iocoder.yudao.module.erp.service.product.ErpProductService; import cn.iocoder.yudao.module.erp.service.product.ErpProductService;
@ -67,11 +66,11 @@ public class ItemAnalysisServiceImpl implements ItemAnalysisService {
List<TaskDetailDO> detailDOList = taskService.getTaskDetailListByTaskId(taskDO.getId()); List<TaskDetailDO> detailDOList = taskService.getTaskDetailListByTaskId(taskDO.getId());
Map<Long, ItemRequisitionAndStock> itemMap = new HashMap<>(); Map<Long, ItemRequisitionAndStock> itemMap = new HashMap<>();
//算物料需求 //算物料需求
for (TaskDetailDO detail :detailDOList) { for (TaskDetailDO detail : detailDOList) {
//这里要求销售的单位和物料单位一致等于内置单位 //这里要求销售的单位和物料单位一致等于内置单位
BomDO bomDO = bomService.selectByProductId(detail.getProductId()); BomDO bomDO = bomService.selectByProductId(detail.getProductId());
if(!bomDO.getUnitId().equals(ProductUnitEnum.Each.getUnitId()) if (!bomDO.getUnitId().equals(ProductUnitEnum.Each.getUnitId())
|| !detail.getUnitId().equals(ProductUnitEnum.Each.getUnitId())){ || !detail.getUnitId().equals(ProductUnitEnum.Each.getUnitId())) {
log.error(UNIT_ERROR); log.error(UNIT_ERROR);
throw exception(new ErrorCode(500, UNIT_ERROR)); throw exception(new ErrorCode(500, UNIT_ERROR));
} }
@ -99,11 +98,12 @@ public class ItemAnalysisServiceImpl implements ItemAnalysisService {
List<ItemRequisitionAndStock> list = getItemAnalysis(plan.getProductId(), plan.getPlanNumber()); List<ItemRequisitionAndStock> list = getItemAnalysis(plan.getProductId(), plan.getPlanNumber());
return list; return list;
} }
//分析计划的物料需求 //分析计划的物料需求
@Override @Override
public List<ItemRequisitionAndStock> getItemAnalysis(Long productId, Long number) { public List<ItemRequisitionAndStock> getItemAnalysis(Long productId, Long number) {
List<ItemRequisitionAndStock> list = new ArrayList<>(); List<ItemRequisitionAndStock> list = new ArrayList<>();
if(productId ==null || number==null )return list; if (productId == null || number == null) return list;
List<BomDetailDO> bomDetailDOList = List<BomDetailDO> bomDetailDOList =
bomService.getBomDetailListByProductId(productId, number); bomService.getBomDetailListByProductId(productId, number);
@ -123,17 +123,18 @@ public class ItemAnalysisServiceImpl implements ItemAnalysisService {
list = buildDetailVOList(list); list = buildDetailVOList(list);
return list; return list;
} }
@Override @Override
public List<ItemRequisitionAndStock> getItemAnalysis(Long orderId) { public List<ItemRequisitionAndStock> getItemAnalysis(Long orderId) {
List<ErpSaleOrderItemDO> detailDOList = saleOrderService.getSaleOrderItemListByOrderId(orderId); List<ErpSaleOrderItemDO> detailDOList = saleOrderService.getSaleOrderItemListByOrderId(orderId);
if(orderId ==null)return new ArrayList<>(); if (orderId == null) return new ArrayList<>();
Map<Long, ItemRequisitionAndStock> itemMap = new HashMap<>(); Map<Long, ItemRequisitionAndStock> itemMap = new HashMap<>();
//算物料需求 //算物料需求
for (ErpSaleOrderItemDO detail :detailDOList) { for (ErpSaleOrderItemDO detail : detailDOList) {
//这里要求销售的单位和物料单位一致等于内置单位 //这里要求销售的单位和物料单位一致等于内置单位
BomDO bomDO = bomService.selectByProductId(detail.getProductId()); BomDO bomDO = bomService.selectByProductId(detail.getProductId());
if(!bomDO.getUnitId().equals(ProductUnitEnum.Each.getUnitId()) if (!bomDO.getUnitId().equals(ProductUnitEnum.Each.getUnitId())
|| !detail.getProductUnitId().equals(ProductUnitEnum.Each.getUnitId())){ || !detail.getProductUnitId().equals(ProductUnitEnum.Each.getUnitId())) {
log.error(UNIT_ERROR); log.error(UNIT_ERROR);
throw exception(new ErrorCode(500, UNIT_ERROR)); throw exception(new ErrorCode(500, UNIT_ERROR));
} }
@ -153,6 +154,7 @@ public class ItemAnalysisServiceImpl implements ItemAnalysisService {
list = buildDetailVOList(list); list = buildDetailVOList(list);
return list; return list;
} }
//添加原料名称,添加单位名称 //添加原料名称,添加单位名称
private List<ItemRequisitionAndStock> buildDetailVOList(List<ItemRequisitionAndStock> list) { private List<ItemRequisitionAndStock> buildDetailVOList(List<ItemRequisitionAndStock> list) {
if (CollUtil.isEmpty(list)) { if (CollUtil.isEmpty(list)) {
@ -170,23 +172,23 @@ public class ItemAnalysisServiceImpl implements ItemAnalysisService {
unit -> item.setUnitName(unit.getName())); unit -> item.setUnitName(unit.getName()));
}); });
} }
private void buildItemMap(Map<Long, ItemRequisitionAndStock> itemMap, List<BomDetailDO> bomDetailDOList){
private void buildItemMap(Map<Long, ItemRequisitionAndStock> itemMap, List<BomDetailDO> bomDetailDOList) {
for (BomDetailDO bomDetail : bomDetailDOList) { for (BomDetailDO bomDetail : bomDetailDOList) {
if(itemMap.containsKey(bomDetail.getProductId())){ if (itemMap.containsKey(bomDetail.getProductId())) {
ItemRequisitionAndStock temp = itemMap.get(bomDetail.getProductId()); ItemRequisitionAndStock temp = itemMap.get(bomDetail.getProductId());
//比较单位是否一致 //比较单位是否一致
if(! temp.getUnitId().equals(bomDetail.getUnitId())){ if (!temp.getUnitId().equals(bomDetail.getUnitId())) {
log.error(UNIT_ERROR); log.error(UNIT_ERROR);
throw exception(new ErrorCode(500, UNIT_ERROR)); throw exception(new ErrorCode(500, UNIT_ERROR));
} }
temp.setNumber(temp.getNumber().add(bomDetail.getUsageNumber())); temp.setNumber(temp.getNumber().add(bomDetail.getUsageNumber()));
} } else {
else{
ItemRequisitionAndStock temp = new ItemRequisitionAndStock() ItemRequisitionAndStock temp = new ItemRequisitionAndStock()
.setItemId(bomDetail.getProductId()) .setItemId(bomDetail.getProductId())
.setNumber(bomDetail.getUsageNumber()) .setNumber(bomDetail.getUsageNumber())
.setUnitId(bomDetail.getUnitId()); .setUnitId(bomDetail.getUnitId());
itemMap.put(bomDetail.getProductId(),temp); itemMap.put(bomDetail.getProductId(), temp);
} }
} }
} }

@ -1,13 +1,14 @@
package cn.iocoder.yudao.module.mes.service.itemrequisition; package cn.iocoder.yudao.module.mes.service.itemrequisition;
import java.util.*; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.*; import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionDetailRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDO; import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.List;
/** /**
* Service * Service
@ -45,7 +46,9 @@ public interface ItemRequisitionService {
* @return * @return
*/ */
ItemRequisitionDO getItemRequisition(Long id); ItemRequisitionDO getItemRequisition(Long id);
ItemRequisitionDO getItemRequisitionByPlanId(Long planId); ItemRequisitionDO getItemRequisitionByPlanId(Long planId);
/** /**
* *
* *
@ -63,6 +66,7 @@ public interface ItemRequisitionService {
* @return * @return
*/ */
List<ItemRequisitionDetailDO> getItemRequisitionDetailListByItemRequisitionId(Long itemRequisitionId); List<ItemRequisitionDetailDO> getItemRequisitionDetailListByItemRequisitionId(Long itemRequisitionId);
List<ItemRequisitionDetailRespVO> buildDetailVOList(List<ItemRequisitionDetailDO> list, Long planId); List<ItemRequisitionDetailRespVO> buildDetailVOList(List<ItemRequisitionDetailDO> list, Long planId);
ItemRequisitionDetailRespVO getItemRequisitionDetailRespVO(Long planId, Long itemId); ItemRequisitionDetailRespVO getItemRequisitionDetailRespVO(Long planId, Long itemId);

@ -2,38 +2,37 @@ package cn.iocoder.yudao.module.mes.service.itemrequisition;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.framework.common.exception.ErrorCode; import cn.iocoder.yudao.framework.common.exception.ErrorCode;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.collection.MapUtils; import cn.iocoder.yudao.framework.common.util.collection.MapUtils;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO;
import cn.iocoder.yudao.module.erp.service.product.ErpProductService; import cn.iocoder.yudao.module.erp.service.product.ErpProductService;
import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService; import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomDetailRespVO; import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionDetailRespVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDetailDO; import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO; import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDetailDO;
import cn.iocoder.yudao.module.mes.dal.mysql.itemrequisition.ItemRequisitionDetailMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.itemrequisition.ItemRequisitionMapper;
import cn.iocoder.yudao.module.mes.dal.redis.no.MesNoRedisDAO; import cn.iocoder.yudao.module.mes.dal.redis.no.MesNoRedisDAO;
import cn.iocoder.yudao.module.mes.service.feedingplan.FeedingRecordPlanService; import cn.iocoder.yudao.module.mes.service.feedingplan.FeedingRecordPlanService;
import cn.iocoder.yudao.module.mes.service.plan.PlanService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.dal.mysql.itemrequisition.ItemRequisitionMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.itemrequisition.ItemRequisitionDetailMapper;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
import static cn.iocoder.yudao.module.erp.enums.ErrorCodeConstants.PURCHASE_ORDER_NO_EXISTS; import static cn.iocoder.yudao.module.erp.enums.ErrorCodeConstants.PURCHASE_ORDER_NO_EXISTS;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.ITEM_REQUISITION_NOT_EXISTS;
/** /**
* Service * Service
@ -61,12 +60,12 @@ public class ItemRequisitionServiceImpl implements ItemRequisitionService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Long createItemRequisition(ItemRequisitionSaveReqVO createReqVO) { public Long createItemRequisition(ItemRequisitionSaveReqVO createReqVO) {
//查询是否已存在派工领料单 //查询是否已存在派工领料单
ItemRequisitionDO itemRequisitionDO= itemRequisitionMapper.selectByPlanId(createReqVO.getPlanId()); ItemRequisitionDO itemRequisitionDO = itemRequisitionMapper.selectByPlanId(createReqVO.getPlanId());
if(itemRequisitionDO!=null) if (itemRequisitionDO != null)
throw exception(new ErrorCode(500, "创建领料单失败,计划已存在领料单!")); throw exception(new ErrorCode(500, "创建领料单失败,计划已存在领料单!"));
// 插入 // 插入
ItemRequisitionDO itemRequisition = BeanUtils.toBean(createReqVO, ItemRequisitionDO.class); ItemRequisitionDO itemRequisition = BeanUtils.toBean(createReqVO, ItemRequisitionDO.class);
if(StringUtils.isEmpty(itemRequisition.getCode())){ if (StringUtils.isEmpty(itemRequisition.getCode())) {
// 1.4 生成订单号,并校验唯一性 // 1.4 生成订单号,并校验唯一性
String no = noRedisDAO.generate2(MesNoRedisDAO.ITEM_REQUISITION_NO_PREFIX); String no = noRedisDAO.generate2(MesNoRedisDAO.ITEM_REQUISITION_NO_PREFIX);
if (itemRequisitionMapper.selectByNo(no) != null) { if (itemRequisitionMapper.selectByNo(no) != null) {
@ -117,10 +116,12 @@ public class ItemRequisitionServiceImpl implements ItemRequisitionService {
public ItemRequisitionDO getItemRequisition(Long id) { public ItemRequisitionDO getItemRequisition(Long id) {
return itemRequisitionMapper.selectById(id); return itemRequisitionMapper.selectById(id);
} }
@Override @Override
public ItemRequisitionDO getItemRequisitionByPlanId(Long planId) { public ItemRequisitionDO getItemRequisitionByPlanId(Long planId) {
return itemRequisitionMapper.selectByPlanId(planId); return itemRequisitionMapper.selectByPlanId(planId);
} }
@Override @Override
public PageResult<ItemRequisitionDO> getItemRequisitionPage(ItemRequisitionPageReqVO pageReqVO) { public PageResult<ItemRequisitionDO> getItemRequisitionPage(ItemRequisitionPageReqVO pageReqVO) {
return itemRequisitionMapper.selectPage(pageReqVO); return itemRequisitionMapper.selectPage(pageReqVO);
@ -132,6 +133,7 @@ public class ItemRequisitionServiceImpl implements ItemRequisitionService {
public List<ItemRequisitionDetailDO> getItemRequisitionDetailListByItemRequisitionId(Long itemRequisitionId) { public List<ItemRequisitionDetailDO> getItemRequisitionDetailListByItemRequisitionId(Long itemRequisitionId) {
return itemRequisitionDetailMapper.selectListByItemRequisitionId(itemRequisitionId); return itemRequisitionDetailMapper.selectListByItemRequisitionId(itemRequisitionId);
} }
@Override @Override
public List<ItemRequisitionDetailRespVO> buildDetailVOList(List<ItemRequisitionDetailDO> list, Long planId) { public List<ItemRequisitionDetailRespVO> buildDetailVOList(List<ItemRequisitionDetailDO> list, Long planId) {
if (CollUtil.isEmpty(list)) { if (CollUtil.isEmpty(list)) {
@ -150,6 +152,7 @@ public class ItemRequisitionServiceImpl implements ItemRequisitionService {
item.setFinishNumber(recordPlanService.selectSumBy(planId, item.getProductId())); item.setFinishNumber(recordPlanService.selectSumBy(planId, item.getProductId()));
}); });
} }
private void createItemRequisitionDetailList(Long itemRequisitionId, List<ItemRequisitionDetailDO> list) { private void createItemRequisitionDetailList(Long itemRequisitionId, List<ItemRequisitionDetailDO> list) {
list.forEach(o -> o.setItemRequisitionId(itemRequisitionId)); list.forEach(o -> o.setItemRequisitionId(itemRequisitionId));
itemRequisitionDetailMapper.insertBatch(list); itemRequisitionDetailMapper.insertBatch(list);
@ -157,7 +160,7 @@ public class ItemRequisitionServiceImpl implements ItemRequisitionService {
private void updateItemRequisitionDetailList(Long itemRequisitionId, List<ItemRequisitionDetailDO> list) { private void updateItemRequisitionDetailList(Long itemRequisitionId, List<ItemRequisitionDetailDO> list) {
deleteItemRequisitionDetailByItemRequisitionId(itemRequisitionId); deleteItemRequisitionDetailByItemRequisitionId(itemRequisitionId);
list.forEach(o -> o.setId(null).setUpdater(null).setUpdateTime(null)); // 解决更新情况下1id 冲突2updateTime 不更新 list.forEach(o -> o.setId(null).setUpdater(null).setUpdateTime(null)); // 解决更新情况下1id 冲突2updateTime 不更新
createItemRequisitionDetailList(itemRequisitionId, list); createItemRequisitionDetailList(itemRequisitionId, list);
} }
@ -166,12 +169,12 @@ public class ItemRequisitionServiceImpl implements ItemRequisitionService {
} }
@Override @Override
public ItemRequisitionDetailRespVO getItemRequisitionDetailRespVO(Long planId, Long itemId){ public ItemRequisitionDetailRespVO getItemRequisitionDetailRespVO(Long planId, Long itemId) {
ItemRequisitionDO itemRequisitionDO = itemRequisitionMapper.selectByPlanId(planId); ItemRequisitionDO itemRequisitionDO = itemRequisitionMapper.selectByPlanId(planId);
if(itemRequisitionDO != null){ if (itemRequisitionDO != null) {
ItemRequisitionDetailDO detailDO = ItemRequisitionDetailDO detailDO =
itemRequisitionDetailMapper.selectBy(itemRequisitionDO.getId(), itemId); itemRequisitionDetailMapper.selectBy(itemRequisitionDO.getId(), itemId);
if(detailDO == null) return null; if (detailDO == null) return null;
ItemRequisitionDetailRespVO respVO = new ItemRequisitionDetailRespVO() ItemRequisitionDetailRespVO respVO = new ItemRequisitionDetailRespVO()
.setItemRequisitionId(itemRequisitionDO.getId()) .setItemRequisitionId(itemRequisitionDO.getId())
.setUnitId(detailDO.getUnitId()) .setUnitId(detailDO.getUnitId())
@ -182,14 +185,15 @@ public class ItemRequisitionServiceImpl implements ItemRequisitionService {
} }
return null; return null;
} }
@Override @Override
public List<ItemRequisitionDetailRespVO> getItemRequisitionList(Long planId){ public List<ItemRequisitionDetailRespVO> getItemRequisitionList(Long planId) {
ItemRequisitionDO itemRequisitionDO = itemRequisitionMapper.selectByPlanId(planId); ItemRequisitionDO itemRequisitionDO = itemRequisitionMapper.selectByPlanId(planId);
List<ItemRequisitionDetailRespVO> respVOList = new ArrayList<>(); List<ItemRequisitionDetailRespVO> respVOList = new ArrayList<>();
if(itemRequisitionDO != null){ if (itemRequisitionDO != null) {
List<ItemRequisitionDetailDO> detailDOList = List<ItemRequisitionDetailDO> detailDOList =
itemRequisitionDetailMapper.selectListByItemRequisitionId(itemRequisitionDO.getId()); itemRequisitionDetailMapper.selectListByItemRequisitionId(itemRequisitionDO.getId());
for (ItemRequisitionDetailDO detailDO :detailDOList) { for (ItemRequisitionDetailDO detailDO : detailDOList) {
ItemRequisitionDetailRespVO respVO = new ItemRequisitionDetailRespVO() ItemRequisitionDetailRespVO respVO = new ItemRequisitionDetailRespVO()
.setItemRequisitionId(itemRequisitionDO.getId()) .setItemRequisitionId(itemRequisitionDO.getId())
.setUnitId(detailDO.getUnitId()) .setUnitId(detailDO.getUnitId())

@ -1,13 +1,11 @@
package cn.iocoder.yudao.module.mes.service.itemrequisition.entity; package cn.iocoder.yudao.module.mes.service.itemrequisition.entity;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import lombok.AllArgsConstructor;
import com.baomidou.mybatisplus.annotation.KeySequence; import lombok.Builder;
import com.baomidou.mybatisplus.annotation.TableId; import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableName; import lombok.NoArgsConstructor;
import lombok.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
/** /**
* *

@ -1,12 +1,11 @@
package cn.iocoder.yudao.module.mes.service.machine; package cn.iocoder.yudao.module.mes.service.machine;
import java.util.*; import cn.iocoder.yudao.module.mes.controller.admin.machine.vo.MachineComponentListReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.machine.vo.*; import cn.iocoder.yudao.module.mes.controller.admin.machine.vo.MachineComponentSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.machine.MachineComponentDO; import cn.iocoder.yudao.module.mes.dal.dataobject.machine.MachineComponentDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.List;
/** /**
* Service * Service

@ -1,20 +1,16 @@
package cn.iocoder.yudao.module.mes.service.machine; package cn.iocoder.yudao.module.mes.service.machine;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.machine.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.machine.MachineComponentDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.controller.admin.machine.vo.MachineComponentListReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.machine.vo.MachineComponentSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.machine.MachineComponentDO;
import cn.iocoder.yudao.module.mes.dal.mysql.machine.MachineComponentMapper; import cn.iocoder.yudao.module.mes.dal.mysql.machine.MachineComponentMapper;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List;
import java.util.Objects;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*;

@ -1,12 +1,11 @@
package cn.iocoder.yudao.module.mes.service.organization; package cn.iocoder.yudao.module.mes.service.organization;
import java.util.*; import cn.iocoder.yudao.module.mes.controller.admin.organization.vo.OrganizationListReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.organization.vo.*; import cn.iocoder.yudao.module.mes.controller.admin.organization.vo.OrganizationSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.organization.OrganizationDO; import cn.iocoder.yudao.module.mes.dal.dataobject.organization.OrganizationDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.List;
/** /**
* 线 Service * 线 Service

@ -1,19 +1,16 @@
package cn.iocoder.yudao.module.mes.service.organization; package cn.iocoder.yudao.module.mes.service.organization;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.organization.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.organization.OrganizationDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.controller.admin.organization.vo.OrganizationListReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.organization.vo.OrganizationSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.organization.OrganizationDO;
import cn.iocoder.yudao.module.mes.dal.mysql.organization.OrganizationMapper; import cn.iocoder.yudao.module.mes.dal.mysql.organization.OrganizationMapper;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List;
import java.util.Objects;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*;

@ -1,10 +1,11 @@
package cn.iocoder.yudao.module.mes.service.plan; package cn.iocoder.yudao.module.mes.service.plan;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionSaveReqVO; import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionSaveReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.*; import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.PlanPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.PlanRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.PlanSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO; import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.mes.service.itemrequisition.entity.ItemRequisitionAndStock; import cn.iocoder.yudao.module.mes.service.itemrequisition.entity.ItemRequisitionAndStock;
import javax.validation.Valid; import javax.validation.Valid;
@ -59,19 +60,26 @@ public interface PlanService {
* @return * @return
*/ */
PageResult<PlanRespVO> getPlanPage(PlanPageReqVO pageReqVO); PageResult<PlanRespVO> getPlanPage(PlanPageReqVO pageReqVO);
/**查询按日期排序最后一个未完成(已经下达)的计划**/
PlanDO selectLastOne(); /**
* ()
**/
PlanDO selectLastOne();
List<PlanRespVO> buildVOList(List<PlanDO> list); List<PlanRespVO> buildVOList(List<PlanDO> list);
Boolean saveBatchPlan(List<PlanDO> planDOList); Boolean saveBatchPlan(List<PlanDO> planDOList);
Boolean arrangePlan(ItemRequisitionSaveReqVO saveReqVO, PlanDO planDO ,List<ItemRequisitionAndStock> list); Boolean arrangePlan(ItemRequisitionSaveReqVO saveReqVO, PlanDO planDO, List<ItemRequisitionAndStock> list);
List<PlanDO> getPlanList(Collection<Long> ids); List<PlanDO> getPlanList(Collection<Long> ids);
default Map<Long, PlanDO> getPlanMap(Collection<Long> ids) { default Map<Long, PlanDO> getPlanMap(Collection<Long> ids) {
if(ids.isEmpty())return new HashMap<>(); if (ids.isEmpty()) return new HashMap<>();
return convertMap(getPlanList(ids), PlanDO::getId); return convertMap(getPlanList(ids), PlanDO::getId);
} }
List<PlanDO> getPlanByStatus(List<Integer> statusList); List<PlanDO> getPlanByStatus(List<Integer> statusList);
List<PlanDO> getPlanByStatusAndPipeline(List<Integer> statusList, String pipeline); List<PlanDO> getPlanByStatusAndPipeline(List<Integer> statusList, String pipeline);
} }

@ -1,13 +1,21 @@
package cn.iocoder.yudao.module.mes.service.plan; package cn.iocoder.yudao.module.mes.service.plan;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.collection.MapUtils; import cn.iocoder.yudao.framework.common.util.collection.MapUtils;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO;
import cn.iocoder.yudao.module.erp.service.product.ErpProductService; import cn.iocoder.yudao.module.erp.service.product.ErpProductService;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionSaveReqVO; import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionSaveReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionStatusEnum; import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionStatusEnum;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.PlanPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.PlanRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.PlanSaveReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.PlanStatusEnum;
import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.itemrequisition.ItemRequisitionDetailDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDO; import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDO;
import cn.iocoder.yudao.module.mes.dal.mysql.plan.PlanMapper;
import cn.iocoder.yudao.module.mes.dal.redis.no.MesNoRedisDAO; import cn.iocoder.yudao.module.mes.dal.redis.no.MesNoRedisDAO;
import cn.iocoder.yudao.module.mes.service.itemrequisition.ItemRequisitionService; import cn.iocoder.yudao.module.mes.service.itemrequisition.ItemRequisitionService;
import cn.iocoder.yudao.module.mes.service.itemrequisition.entity.ItemRequisitionAndStock; import cn.iocoder.yudao.module.mes.service.itemrequisition.entity.ItemRequisitionAndStock;
@ -19,20 +27,13 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.plan.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.plan.PlanDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.dal.mysql.plan.PlanMapper;
import javax.annotation.Resource;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.PLAN_NOT_EXISTS;
/** /**
* Service * Service
@ -47,11 +48,12 @@ public class PlanServiceImpl implements PlanService {
private PlanMapper planMapper; private PlanMapper planMapper;
@Resource @Resource
private MesNoRedisDAO noRedisDAO; private MesNoRedisDAO noRedisDAO;
@Override @Override
public Long createPlan(PlanSaveReqVO createReqVO) { public Long createPlan(PlanSaveReqVO createReqVO) {
// 插入 // 插入
PlanDO plan = BeanUtils.toBean(createReqVO, PlanDO.class); PlanDO plan = BeanUtils.toBean(createReqVO, PlanDO.class);
if(StringUtils.isEmpty(plan.getCode())){ if (StringUtils.isEmpty(plan.getCode())) {
// 1.4 生成订单号,并校验唯一性 // 1.4 生成订单号,并校验唯一性
String no = noRedisDAO.generate3(MesNoRedisDAO.PLAN_NO_PREFIX); String no = noRedisDAO.generate3(MesNoRedisDAO.PLAN_NO_PREFIX);
if (planMapper.selectByNo(no) != null) { if (planMapper.selectByNo(no) != null) {
@ -59,7 +61,7 @@ public class PlanServiceImpl implements PlanService {
} }
plan.setCode(no); plan.setCode(no);
} }
if(plan.getIsEnable() ==null)plan.setIsEnable(true); if (plan.getIsEnable() == null) plan.setIsEnable(true);
planMapper.insert(plan); planMapper.insert(plan);
// 返回 // 返回
return plan.getId(); return plan.getId();
@ -71,7 +73,7 @@ public class PlanServiceImpl implements PlanService {
validatePlanExists(updateReqVO.getId()); validatePlanExists(updateReqVO.getId());
// 更新 // 更新
PlanDO updateObj = BeanUtils.toBean(updateReqVO, PlanDO.class); PlanDO updateObj = BeanUtils.toBean(updateReqVO, PlanDO.class);
if(updateObj.getIsEnable() ==null)updateObj.setIsEnable(true); if (updateObj.getIsEnable() == null) updateObj.setIsEnable(true);
planMapper.updateById(updateObj); planMapper.updateById(updateObj);
} }
@ -97,14 +99,16 @@ public class PlanServiceImpl implements PlanService {
@Override @Override
public PageResult<PlanRespVO> getPlanPage(PlanPageReqVO pageReqVO) { public PageResult<PlanRespVO> getPlanPage(PlanPageReqVO pageReqVO) {
PageResult<PlanDO> pageResult = planMapper.selectPage(pageReqVO); PageResult<PlanDO> pageResult = planMapper.selectPage(pageReqVO);
return new PageResult<>(buildVOList(pageResult.getList()),pageResult.getTotal()); return new PageResult<>(buildVOList(pageResult.getList()), pageResult.getTotal());
} }
@Resource @Resource
private ErpProductService productService; private ErpProductService productService;
@Resource @Resource
private AdminUserService userService; private AdminUserService userService;
@Resource @Resource
private TaskService taskService; private TaskService taskService;
@Override @Override
public List<PlanRespVO> buildVOList(List<PlanDO> list) { public List<PlanRespVO> buildVOList(List<PlanDO> list) {
if (CollUtil.isEmpty(list)) { if (CollUtil.isEmpty(list)) {
@ -128,58 +132,62 @@ public class PlanServiceImpl implements PlanService {
task -> item.setTaskCode(task.getCode())); task -> item.setTaskCode(task.getCode()));
}); });
} }
/**查询按日期排序最后一个未完成(已经下达)的计划**/
public PlanDO selectLastOne(){
return planMapper.selectLastOne();
}
@Override /**
public Boolean saveBatchPlan(List<PlanDO> planDOList){ * ()
return planMapper.insertBatch(planDOList); **/
} public PlanDO selectLastOne() {
return planMapper.selectLastOne();
}
@Override
public Boolean saveBatchPlan(List<PlanDO> planDOList) {
return planMapper.insertBatch(planDOList);
}
@Resource @Resource
private ItemRequisitionService itemRequisitionService; private ItemRequisitionService itemRequisitionService;
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean arrangePlan(ItemRequisitionSaveReqVO saveReqVO,PlanDO planDO ,List<ItemRequisitionAndStock> list){ public Boolean arrangePlan(ItemRequisitionSaveReqVO saveReqVO, PlanDO planDO, List<ItemRequisitionAndStock> list) {
List<ItemRequisitionDetailDO> itemRequisitionDetails = new ArrayList<>(); List<ItemRequisitionDetailDO> itemRequisitionDetails = new ArrayList<>();
for (ItemRequisitionAndStock item : list) { for (ItemRequisitionAndStock item : list) {
ItemRequisitionDetailDO detailDO = new ItemRequisitionDetailDO() ItemRequisitionDetailDO detailDO = new ItemRequisitionDetailDO()
.setProductId(item.getItemId()) .setProductId(item.getItemId())
.setUnitId(item.getUnitId()) .setUnitId(item.getUnitId())
.setNumber(item.getNumber()) .setNumber(item.getNumber())
.setIsEnable(true); .setIsEnable(true);
itemRequisitionDetails.add(detailDO); itemRequisitionDetails.add(detailDO);
} }
saveReqVO.setItemRequisitionDetails(itemRequisitionDetails); saveReqVO.setItemRequisitionDetails(itemRequisitionDetails);
saveReqVO.setStatus(ItemRequisitionStatusEnum..getValue()); saveReqVO.setStatus(ItemRequisitionStatusEnum..getValue());
if(saveReqVO.getRequisitionDate()==null) if (saveReqVO.getRequisitionDate() == null)
saveReqVO.setRequisitionDate(LocalDateTime.now()); saveReqVO.setRequisitionDate(LocalDateTime.now());
itemRequisitionService.createItemRequisition(saveReqVO); itemRequisitionService.createItemRequisition(saveReqVO);
//更新计划状态 //更新计划状态
planDO.setStatus(PlanStatusEnum..getValue()); planDO.setStatus(PlanStatusEnum..getValue());
planDO.setIsEnable(true); planDO.setIsEnable(true);
planDO.setProductionManagerId(saveReqVO.getWorkerId()); planDO.setProductionManagerId(saveReqVO.getWorkerId());
planDO.setFeedingPipeline(saveReqVO.getFeedingPipeline()); planDO.setFeedingPipeline(saveReqVO.getFeedingPipeline());
planDO.setStartTime(LocalDateTime.now()); planDO.setStartTime(LocalDateTime.now());
planMapper.updateById(planDO); planMapper.updateById(planDO);
return true; return true;
} }
@Override @Override
public List<PlanDO> getPlanList(Collection<Long> ids) { public List<PlanDO> getPlanList(Collection<Long> ids) {
return planMapper.selectBatchIds(ids); return planMapper.selectBatchIds(ids);
} }
@Override @Override
public List<PlanDO> getPlanByStatus(List<Integer> statusList){ public List<PlanDO> getPlanByStatus(List<Integer> statusList) {
return planMapper.selectBy(statusList); return planMapper.selectBy(statusList);
} }
@Override @Override
public List<PlanDO> getPlanByStatusAndPipeline(List<Integer> statusList, String pipeline){ public List<PlanDO> getPlanByStatusAndPipeline(List<Integer> statusList, String pipeline) {
return planMapper.selectBy(statusList,pipeline); return planMapper.selectBy(statusList, pipeline);
} }
} }

@ -1,9 +1,9 @@
package cn.iocoder.yudao.module.mes.service.producereport; package cn.iocoder.yudao.module.mes.service.producereport;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.ProduceReportDetailPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.ProduceReportDetailSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDetailDO;
import javax.validation.Valid; import javax.validation.Valid;

@ -1,22 +1,18 @@
package cn.iocoder.yudao.module.mes.service.producereport; package cn.iocoder.yudao.module.mes.service.producereport;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.ProduceReportDetailPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.ProduceReportDetailSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDetailDO;
import cn.iocoder.yudao.module.mes.dal.mysql.producereport.ProduceReportDetailMapper; import cn.iocoder.yudao.module.mes.dal.mysql.producereport.ProduceReportDetailMapper;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.PRODUCE_REPORT_DETAIL_NOT_EXISTS;
/** /**
* Service * Service

@ -1,11 +1,11 @@
package cn.iocoder.yudao.module.mes.service.producereport; package cn.iocoder.yudao.module.mes.service.producereport;
import java.util.*; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.*; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.ProduceReportPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.ProduceReportSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDO; import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDetailDO; import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import javax.validation.Valid; import javax.validation.Valid;
@ -60,7 +60,7 @@ public interface ProduceReportService {
* *
* *
* @param pageReqVO * @param pageReqVO
* @param reportId id * @param reportId id
* @return * @return
*/ */
PageResult<ProduceReportDetailDO> getProduceReportDetailPage(PageParam pageReqVO, Long reportId); PageResult<ProduceReportDetailDO> getProduceReportDetailPage(PageParam pageReqVO, Long reportId);
@ -87,12 +87,12 @@ public interface ProduceReportService {
*/ */
void deleteProduceReportDetail(Long id); void deleteProduceReportDetail(Long id);
/** /**
* *
* *
* @param id * @param id
* @return * @return
*/ */
ProduceReportDetailDO getProduceReportDetail(Long id); ProduceReportDetailDO getProduceReportDetail(Long id);
} }

@ -1,24 +1,23 @@
package cn.iocoder.yudao.module.mes.service.producereport; package cn.iocoder.yudao.module.mes.service.producereport;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.ProduceReportPageReqVO;
import cn.iocoder.yudao.module.mes.dal.mysql.producereport.ProduceReportMapper; import cn.iocoder.yudao.module.mes.controller.admin.producereport.vo.ProduceReportSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.producereport.ProduceReportDetailDO;
import cn.iocoder.yudao.module.mes.dal.mysql.producereport.ProduceReportDetailMapper; import cn.iocoder.yudao.module.mes.dal.mysql.producereport.ProduceReportDetailMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.producereport.ProduceReportMapper;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.PRODUCE_REPORT_DETAIL_NOT_EXISTS;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.PRODUCE_REPORT_NOT_EXISTS;
/** /**
* Service * Service

@ -1,10 +1,10 @@
package cn.iocoder.yudao.module.mes.service.record; package cn.iocoder.yudao.module.mes.service.record;
import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.record.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.mes.controller.admin.record.vo.RecordTemplatePageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.record.vo.RecordTemplateSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.*;
import javax.validation.Valid; import javax.validation.Valid;
@ -58,7 +58,7 @@ public interface RecordTemplateService {
* *
* *
* @param pageReqVO * @param pageReqVO
* @param recordId id * @param recordId id
* @return * @return
*/ */
PageResult<RecordSuijiangDO> getRecordSuijiangPage(PageParam pageReqVO, Long recordId); PageResult<RecordSuijiangDO> getRecordSuijiangPage(PageParam pageReqVO, Long recordId);
@ -99,7 +99,7 @@ public interface RecordTemplateService {
* *
* *
* @param pageReqVO * @param pageReqVO
* @param recordId id * @param recordId id
* @return * @return
*/ */
PageResult<RecordChengxingDO> getRecordChengxingPage(PageParam pageReqVO, Long recordId); PageResult<RecordChengxingDO> getRecordChengxingPage(PageParam pageReqVO, Long recordId);
@ -126,12 +126,12 @@ public interface RecordTemplateService {
*/ */
void deleteRecordChengxing(Long id); void deleteRecordChengxing(Long id);
/** /**
* *
* *
* @param id * @param id
* @return * @return
*/ */
RecordChengxingDO getRecordChengxing(Long id); RecordChengxingDO getRecordChengxing(Long id);
// ==================== 子表(热压记录) ==================== // ==================== 子表(热压记录) ====================
@ -140,7 +140,7 @@ public interface RecordTemplateService {
* *
* *
* @param pageReqVO * @param pageReqVO
* @param recordId id * @param recordId id
* @return * @return
*/ */
PageResult<RecordReyaDO> getRecordReyaPage(PageParam pageReqVO, Long recordId); PageResult<RecordReyaDO> getRecordReyaPage(PageParam pageReqVO, Long recordId);
@ -181,7 +181,7 @@ public interface RecordTemplateService {
* *
* *
* @param pageReqVO * @param pageReqVO
* @param recordId id * @param recordId id
* @return * @return
*/ */
PageResult<RecordQiebianDO> getRecordQiebianPage(PageParam pageReqVO, Long recordId); PageResult<RecordQiebianDO> getRecordQiebianPage(PageParam pageReqVO, Long recordId);
@ -221,7 +221,7 @@ public interface RecordTemplateService {
* *
* *
* @param pageReqVO * @param pageReqVO
* @param recordId id * @param recordId id
* @return * @return
*/ */
PageResult<RecordDabaoDO> getRecordDabaoPage(PageParam pageReqVO, Long recordId); PageResult<RecordDabaoDO> getRecordDabaoPage(PageParam pageReqVO, Long recordId);
@ -261,7 +261,7 @@ public interface RecordTemplateService {
* *
* *
* @param pageReqVO * @param pageReqVO
* @param recordId id * @param recordId id
* @return * @return
*/ */
PageResult<RecordDajiangDO> getRecordDajiangPage(PageParam pageReqVO, Long recordId); PageResult<RecordDajiangDO> getRecordDajiangPage(PageParam pageReqVO, Long recordId);
@ -302,7 +302,7 @@ public interface RecordTemplateService {
* *
* *
* @param pageReqVO * @param pageReqVO
* @param recordId id * @param recordId id
* @return * @return
*/ */
PageResult<RecordGanzaoDO> getRecordGanzaoPage(PageParam pageReqVO, Long recordId); PageResult<RecordGanzaoDO> getRecordGanzaoPage(PageParam pageReqVO, Long recordId);
@ -342,7 +342,7 @@ public interface RecordTemplateService {
* 湿 * 湿
* *
* @param pageReqVO * @param pageReqVO
* @param recordId id * @param recordId id
* @return 湿 * @return 湿
*/ */
PageResult<RecordJiashiDO> getRecordJiashiPage(PageParam pageReqVO, Long recordId); PageResult<RecordJiashiDO> getRecordJiashiPage(PageParam pageReqVO, Long recordId);
@ -383,7 +383,7 @@ public interface RecordTemplateService {
* *
* *
* @param pageReqVO * @param pageReqVO
* @param recordId id * @param recordId id
* @return * @return
*/ */
PageResult<RecordPinjianDO> getRecordPinjianPage(PageParam pageReqVO, Long recordId); PageResult<RecordPinjianDO> getRecordPinjianPage(PageParam pageReqVO, Long recordId);

@ -1,16 +1,15 @@
package cn.iocoder.yudao.module.mes.service.record; package cn.iocoder.yudao.module.mes.service.record;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.controller.admin.record.vo.RecordTemplatePageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.record.vo.RecordTemplateSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.record.*; import cn.iocoder.yudao.module.mes.dal.dataobject.record.*;
import cn.iocoder.yudao.module.mes.dal.mysql.record.*; import cn.iocoder.yudao.module.mes.dal.mysql.record.*;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.record.vo.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import javax.annotation.Resource; import javax.annotation.Resource;
@ -36,6 +35,7 @@ public class RecordTemplateServiceImpl implements RecordTemplateService {
private RecordReyaMapper recordReyaMapper; private RecordReyaMapper recordReyaMapper;
@Resource @Resource
private RecordQiebianMapper recordQiebianMapper; private RecordQiebianMapper recordQiebianMapper;
@Override @Override
public Long createRecordTemplate(RecordTemplateSaveReqVO createReqVO) { public Long createRecordTemplate(RecordTemplateSaveReqVO createReqVO) {
// 插入 // 插入
@ -347,6 +347,7 @@ public class RecordTemplateServiceImpl implements RecordTemplateService {
private void deleteRecordDajiangByRecordId(Long recordId) { private void deleteRecordDajiangByRecordId(Long recordId) {
recordDajiangMapper.deleteByRecordId(recordId); recordDajiangMapper.deleteByRecordId(recordId);
} }
@Resource @Resource
private RecordGanzaoMapper recordGanzaoMapper; private RecordGanzaoMapper recordGanzaoMapper;
// ==================== 子表(干燥记录) ==================== // ==================== 子表(干燥记录) ====================
@ -438,9 +439,11 @@ public class RecordTemplateServiceImpl implements RecordTemplateService {
private void deleteRecordJiashiByRecordId(Long recordId) { private void deleteRecordJiashiByRecordId(Long recordId) {
recordJiashiMapper.deleteByRecordId(recordId); recordJiashiMapper.deleteByRecordId(recordId);
} }
// ==================== 子表(检验记录) ==================== // ==================== 子表(检验记录) ====================
@Resource @Resource
private RecordPinjianMapper recordPinjianMapper; private RecordPinjianMapper recordPinjianMapper;
@Override @Override
public PageResult<RecordPinjianDO> getRecordPinjianPage(PageParam pageReqVO, Long recordId) { public PageResult<RecordPinjianDO> getRecordPinjianPage(PageParam pageReqVO, Long recordId) {
return recordPinjianMapper.selectPage(pageReqVO, recordId); return recordPinjianMapper.selectPage(pageReqVO, recordId);

@ -1,10 +1,13 @@
package cn.iocoder.yudao.module.mes.service.saleorder; package cn.iocoder.yudao.module.mes.service.saleorder;
import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.*; import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.SaleOrderItemsRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.SaleOrderPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.SaleOrderRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.SaleOrderSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderDO; import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderItemsDO; import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderItemsDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.List; import java.util.List;
@ -60,7 +63,7 @@ public interface SaleOrderService2 {
* *
* *
* @param pageReqVO * @param pageReqVO
* @param orderId * @param orderId
* @return * @return
*/ */
PageResult<SaleOrderItemsRespVO> getSaleOrderItemsPage(PageParam pageReqVO, Long orderId); PageResult<SaleOrderItemsRespVO> getSaleOrderItemsPage(PageParam pageReqVO, Long orderId);
@ -87,12 +90,13 @@ public interface SaleOrderService2 {
*/ */
void deleteSaleOrderItems(Long id); void deleteSaleOrderItems(Long id);
/** /**
* *
* *
* @param id * @param id
* @return * @return
*/ */
SaleOrderItemsDO getSaleOrderItems(Long id); SaleOrderItemsDO getSaleOrderItems(Long id);
List<SaleOrderItemsRespVO> getSaleOrderItemsByOrderId(Long orderId); List<SaleOrderItemsRespVO> getSaleOrderItemsByOrderId(Long orderId);
} }

@ -1,38 +1,37 @@
package cn.iocoder.yudao.module.mes.service.saleorder; package cn.iocoder.yudao.module.mes.service.saleorder;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.collection.MapUtils; import cn.iocoder.yudao.framework.common.util.collection.MapUtils;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpCustomerDO; import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpCustomerDO;
import cn.iocoder.yudao.module.erp.service.product.ErpProductService; import cn.iocoder.yudao.module.erp.service.product.ErpProductService;
import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService; import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService;
import cn.iocoder.yudao.module.erp.service.sale.ErpCustomerService; import cn.iocoder.yudao.module.erp.service.sale.ErpCustomerService;
import cn.iocoder.yudao.module.mes.controller.admin.task.vo.TaskDetailRespVO; import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.SaleOrderItemsRespVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.task.TaskDetailDO; import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.SaleOrderPageReqVO;
import org.springframework.stereotype.Service; import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.SaleOrderRespVO;
import org.springframework.validation.annotation.Validated; import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.SaleOrderSaveReqVO;
import org.springframework.transaction.annotation.Transactional;
import cn.iocoder.yudao.module.mes.controller.admin.saleorder.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderDO; import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderItemsDO; import cn.iocoder.yudao.module.mes.dal.dataobject.saleorder.SaleOrderItemsDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.dal.mysql.saleorder.SaleOrderMapper2;
import cn.iocoder.yudao.module.mes.dal.mysql.saleorder.SaleOrderItemsMapper2; import cn.iocoder.yudao.module.mes.dal.mysql.saleorder.SaleOrderItemsMapper2;
import cn.iocoder.yudao.module.mes.dal.mysql.saleorder.SaleOrderMapper2;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.SALE_ORDER_ITEMS_NOT_EXISTS;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.SALE_ORDER_NOT_EXISTS;
/** /**
* Service * Service
@ -94,6 +93,7 @@ public class SaleOrderServiceImpl implements SaleOrderService2 {
PageResult<SaleOrderDO> pageResult = saleOrderMapper.selectPage(pageReqVO); PageResult<SaleOrderDO> pageResult = saleOrderMapper.selectPage(pageReqVO);
return new PageResult<>(buildVOList(pageResult.getList()), pageResult.getTotal()); return new PageResult<>(buildVOList(pageResult.getList()), pageResult.getTotal());
} }
private List<SaleOrderRespVO> buildVOList(List<SaleOrderDO> list) { private List<SaleOrderRespVO> buildVOList(List<SaleOrderDO> list) {
if (CollUtil.isEmpty(list)) { if (CollUtil.isEmpty(list)) {
return Collections.emptyList(); return Collections.emptyList();
@ -114,11 +114,13 @@ public class SaleOrderServiceImpl implements SaleOrderService2 {
private ErpProductService productService; private ErpProductService productService;
@Resource @Resource
private ErpProductUnitService productUnitService; private ErpProductUnitService productUnitService;
@Override @Override
public PageResult<SaleOrderItemsRespVO> getSaleOrderItemsPage(PageParam pageReqVO, Long orderId) { public PageResult<SaleOrderItemsRespVO> getSaleOrderItemsPage(PageParam pageReqVO, Long orderId) {
PageResult<SaleOrderItemsDO> pageResult = saleOrderItemsMapper.selectPage(pageReqVO, orderId); PageResult<SaleOrderItemsDO> pageResult = saleOrderItemsMapper.selectPage(pageReqVO, orderId);
return new PageResult<>(buildDetailVOList(pageResult.getList()), pageResult.getTotal()); return new PageResult<>(buildDetailVOList(pageResult.getList()), pageResult.getTotal());
} }
private List<SaleOrderItemsRespVO> buildDetailVOList(List<SaleOrderItemsDO> list) { private List<SaleOrderItemsRespVO> buildDetailVOList(List<SaleOrderItemsDO> list) {
if (CollUtil.isEmpty(list)) { if (CollUtil.isEmpty(list)) {
return Collections.emptyList(); return Collections.emptyList();
@ -135,6 +137,7 @@ public class SaleOrderServiceImpl implements SaleOrderService2 {
unit -> item.setUnitName(unit.getName())); unit -> item.setUnitName(unit.getName()));
}); });
} }
@Override @Override
public Long createSaleOrderItems(SaleOrderItemsDO saleOrderItems) { public Long createSaleOrderItems(SaleOrderItemsDO saleOrderItems) {
saleOrderItemsMapper.insert(saleOrderItems); saleOrderItemsMapper.insert(saleOrderItems);
@ -173,8 +176,8 @@ public class SaleOrderServiceImpl implements SaleOrderService2 {
} }
@Override @Override
public List<SaleOrderItemsRespVO> getSaleOrderItemsByOrderId(Long orderId){ public List<SaleOrderItemsRespVO> getSaleOrderItemsByOrderId(Long orderId) {
List<SaleOrderItemsDO> list = saleOrderItemsMapper.selectList(SaleOrderItemsDO::getOrderId,orderId); List<SaleOrderItemsDO> list = saleOrderItemsMapper.selectList(SaleOrderItemsDO::getOrderId, orderId);
return buildDetailVOList(list); return buildDetailVOList(list);
} }

@ -1,15 +1,5 @@
package cn.iocoder.yudao.module.mes.service.stockworkshop; package cn.iocoder.yudao.module.mes.service.stockworkshop;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.erp.controller.admin.stock.vo.out.ErpStockOutPageReqVO;
import cn.iocoder.yudao.module.erp.controller.admin.stock.vo.out.ErpStockOutSaveReqVO;
import cn.iocoder.yudao.module.erp.dal.dataobject.stock.ErpStockOutDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.stock.ErpStockOutItemDO;
import javax.validation.Valid;
import java.util.Collection;
import java.util.List;
/** /**
* ERP Service * ERP Service
* *

@ -1,24 +1,15 @@
package cn.iocoder.yudao.module.mes.service.stockworkshop; package cn.iocoder.yudao.module.mes.service.stockworkshop;
import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.number.MoneyUtils;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.erp.controller.admin.product.vo.product.ErpProductRespVO; import cn.iocoder.yudao.module.erp.controller.admin.product.vo.product.ErpProductRespVO;
import cn.iocoder.yudao.module.erp.controller.admin.stock.vo.out.ErpStockOutPageReqVO;
import cn.iocoder.yudao.module.erp.controller.admin.stock.vo.out.ErpStockOutSaveReqVO;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.stock.ErpStockOutDO; import cn.iocoder.yudao.module.erp.dal.dataobject.stock.ErpStockOutDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.stock.ErpStockOutItemDO; import cn.iocoder.yudao.module.erp.dal.dataobject.stock.ErpStockOutItemDO;
import cn.iocoder.yudao.module.erp.dal.mysql.stock.ErpStockOutItemMapper; import cn.iocoder.yudao.module.erp.dal.mysql.stock.ErpStockOutItemMapper;
import cn.iocoder.yudao.module.erp.dal.mysql.stock.ErpStockOutMapper; import cn.iocoder.yudao.module.erp.dal.mysql.stock.ErpStockOutMapper;
import cn.iocoder.yudao.module.erp.dal.redis.no.ErpNoRedisDAO;
import cn.iocoder.yudao.module.erp.enums.ErpAuditStatus; import cn.iocoder.yudao.module.erp.enums.ErpAuditStatus;
import cn.iocoder.yudao.module.erp.enums.stock.ErpStockRecordBizTypeEnum; import cn.iocoder.yudao.module.erp.enums.stock.ErpStockRecordBizTypeEnum;
import cn.iocoder.yudao.module.erp.service.product.ErpProductService; import cn.iocoder.yudao.module.erp.service.product.ErpProductService;
import cn.iocoder.yudao.module.erp.service.sale.ErpCustomerService;
import cn.iocoder.yudao.module.erp.service.stock.ErpStockRecordService; import cn.iocoder.yudao.module.erp.service.stock.ErpStockRecordService;
import cn.iocoder.yudao.module.erp.service.stock.ErpWarehouseService;
import cn.iocoder.yudao.module.erp.service.stock.bo.ErpStockRecordCreateReqBO; import cn.iocoder.yudao.module.erp.service.stock.bo.ErpStockRecordCreateReqBO;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkShopTypeEnum; import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkShopTypeEnum;
import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDO; import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDO;
@ -28,13 +19,11 @@ import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Collection;
import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.*; import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
import static cn.iocoder.yudao.module.erp.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.erp.enums.ErrorCodeConstants.*;
// TODO 芋艿:记录操作日志 // TODO 芋艿:记录操作日志
@ -100,7 +89,7 @@ public class MesStockOutServiceImpl implements MesStockOutService {
BigDecimal count = approve ? stockOutItem.getCount().negate() : stockOutItem.getCount(); BigDecimal count = approve ? stockOutItem.getCount().negate() : stockOutItem.getCount();
ErpProductDO productDO = productService.getProduct(stockOutItem.getProductId()); ErpProductDO productDO = productService.getProduct(stockOutItem.getProductId());
stockRecordService.createStockRecord(new ErpStockRecordCreateReqBO( stockRecordService.createStockRecord(new ErpStockRecordCreateReqBO(
stockOutItem.getProductId(),productDO.getCategoryId(), stockOutItem.getWarehouseId(), count, stockOutItem.getProductId(), productDO.getCategoryId(), stockOutItem.getWarehouseId(), count,
bizType, stockOutItem.getOutId(), stockOutItem.getId(), stockOut.getNo())); bizType, stockOutItem.getOutId(), stockOutItem.getId(), stockOut.getNo()));
}); });
@ -112,9 +101,9 @@ public class MesStockOutServiceImpl implements MesStockOutService {
stockOutItems.forEach(stockOutItem -> { stockOutItems.forEach(stockOutItem -> {
Long categoryId = productMap.get(stockOutItem.getProductId()).getCategoryId(); Long categoryId = productMap.get(stockOutItem.getProductId()).getCategoryId();
StockWorkshopDO workshopDO = new StockWorkshopDO(null, stockOutItem.getProductId(), StockWorkshopDO workshopDO = new StockWorkshopDO(null, stockOutItem.getProductId(),
stockOutItem.getCount(),categoryId,stockOutItem.getProductUnitId()); stockOutItem.getCount(), categoryId, stockOutItem.getProductUnitId());
stockWorkshopService.updateStock(workshopDO, StockWorkShopTypeEnum..getValue(), stockWorkshopService.updateStock(workshopDO, StockWorkShopTypeEnum..getValue(),
stockOut.getId(), stockOut.getNo() ); stockOut.getId(), stockOut.getNo());
}); });
} }

@ -1,12 +1,13 @@
package cn.iocoder.yudao.module.mes.service.stockworkshop; package cn.iocoder.yudao.module.mes.service.stockworkshop;
import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkshopDetailPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkshopDetailRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkshopDetailSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDetailDO;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.List;
/** /**
* Service * Service
@ -52,5 +53,6 @@ public interface StockWorkshopDetailService {
* @return * @return
*/ */
PageResult<StockWorkshopDetailDO> getStockWorkshopDetailPage(StockWorkshopDetailPageReqVO pageReqVO); PageResult<StockWorkshopDetailDO> getStockWorkshopDetailPage(StockWorkshopDetailPageReqVO pageReqVO);
List<StockWorkshopDetailRespVO> buildVOList(List<StockWorkshopDetailDO> list); List<StockWorkshopDetailRespVO> buildVOList(List<StockWorkshopDetailDO> list);
} }

@ -1,34 +1,31 @@
package cn.iocoder.yudao.module.mes.service.stockworkshop; package cn.iocoder.yudao.module.mes.service.stockworkshop;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.collection.MapUtils; import cn.iocoder.yudao.framework.common.util.collection.MapUtils;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO; import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpProductUnitDO;
import cn.iocoder.yudao.module.erp.service.product.ErpProductService; import cn.iocoder.yudao.module.erp.service.product.ErpProductService;
import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService; import cn.iocoder.yudao.module.erp.service.product.ErpProductUnitService;
import cn.iocoder.yudao.module.mes.controller.admin.bom.vo.BomRespVO; import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkshopDetailPageReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.bom.BomDO; import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkshopDetailRespVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO; import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkshopDetailSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDetailDO;
import cn.iocoder.yudao.module.mes.dal.mysql.stockworkshop.StockWorkshopDetailMapper;
import cn.iocoder.yudao.module.system.api.user.AdminUserApi; import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDetailDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.mes.dal.mysql.stockworkshop.StockWorkshopDetailMapper;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*; import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.STOCK_WORKSHOP_DETAIL_NOT_EXISTS;
/** /**
* Service * Service
@ -89,6 +86,7 @@ public class StockWorkshopDetailServiceImpl implements StockWorkshopDetailServic
public PageResult<StockWorkshopDetailDO> getStockWorkshopDetailPage(StockWorkshopDetailPageReqVO pageReqVO) { public PageResult<StockWorkshopDetailDO> getStockWorkshopDetailPage(StockWorkshopDetailPageReqVO pageReqVO) {
return stockWorkshopDetailMapper.selectPage(pageReqVO); return stockWorkshopDetailMapper.selectPage(pageReqVO);
} }
@Override @Override
public List<StockWorkshopDetailRespVO> buildVOList(List<StockWorkshopDetailDO> list) { public List<StockWorkshopDetailRespVO> buildVOList(List<StockWorkshopDetailDO> list) {
if (CollUtil.isEmpty(list)) { if (CollUtil.isEmpty(list)) {

@ -1,13 +1,14 @@
package cn.iocoder.yudao.module.mes.service.stockworkshop; package cn.iocoder.yudao.module.mes.service.stockworkshop;
import java.math.BigDecimal;
import java.util.*;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.*;
import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkshopPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkshopRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.stockworkshop.vo.StockWorkshopSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.stockworkshop.StockWorkshopDO;
import javax.validation.Valid; import javax.validation.Valid;
import java.math.BigDecimal;
import java.util.List;
/** /**
* Service * Service
@ -53,10 +54,12 @@ public interface StockWorkshopService {
* @return * @return
*/ */
PageResult<StockWorkshopDO> getStockWorkshopPage(StockWorkshopPageReqVO pageReqVO); PageResult<StockWorkshopDO> getStockWorkshopPage(StockWorkshopPageReqVO pageReqVO);
List<StockWorkshopRespVO> buildVOList(List<StockWorkshopDO> list); List<StockWorkshopRespVO> buildVOList(List<StockWorkshopDO> list);
/** /**
* *
* * <p>
* 0 * 0
* *
* @param productId * @param productId
@ -65,5 +68,5 @@ public interface StockWorkshopService {
BigDecimal getStockCount(Long productId); BigDecimal getStockCount(Long productId);
//更新车间仓库存itemId不存在则新增 //更新车间仓库存itemId不存在则新增
Long updateStock(StockWorkshopDO other, String detailType , Long id, String code); Long updateStock(StockWorkshopDO other, String detailType, Long id, String code);
} }

@ -58,7 +58,7 @@ public class StockWorkshopServiceImpl implements StockWorkshopService {
public Long createStockWorkshop(StockWorkshopSaveReqVO createReqVO) { public Long createStockWorkshop(StockWorkshopSaveReqVO createReqVO) {
// 插入 // 插入
StockWorkshopDO stockWorkshop = BeanUtils.toBean(createReqVO, StockWorkshopDO.class); StockWorkshopDO stockWorkshop = BeanUtils.toBean(createReqVO, StockWorkshopDO.class);
return updateStock(stockWorkshop,StockWorkShopTypeEnum..getValue(), null,null); return updateStock(stockWorkshop, StockWorkShopTypeEnum..getValue(), null, null);
// 返回 // 返回
} }
@ -69,7 +69,7 @@ public class StockWorkshopServiceImpl implements StockWorkshopService {
// 更新 // 更新
StockWorkshopDO updateObj = stockWorkshopMapper.selectById(updateReqVO.getId()); StockWorkshopDO updateObj = stockWorkshopMapper.selectById(updateReqVO.getId());
updateObj.setCount(updateReqVO.getCount()); updateObj.setCount(updateReqVO.getCount());
updateStock(updateObj,StockWorkShopTypeEnum..getValue(), null,null); updateStock(updateObj, StockWorkShopTypeEnum..getValue(), null, null);
//stockWorkshopMapper.updateById(updateObj); //stockWorkshopMapper.updateById(updateObj);
} }
@ -80,7 +80,7 @@ public class StockWorkshopServiceImpl implements StockWorkshopService {
StockWorkshopDO stockWorkshop = stockWorkshopMapper.selectById(id); StockWorkshopDO stockWorkshop = stockWorkshopMapper.selectById(id);
stockWorkshop.setCount(stockWorkshop.getCount().multiply(BigDecimal.valueOf(-1))); stockWorkshop.setCount(stockWorkshop.getCount().multiply(BigDecimal.valueOf(-1)));
updateStock(stockWorkshop,StockWorkShopTypeEnum..getValue(), null,null); updateStock(stockWorkshop, StockWorkShopTypeEnum..getValue(), null, null);
// 删除 // 删除
stockWorkshopMapper.deleteById(id); stockWorkshopMapper.deleteById(id);
} }
@ -100,6 +100,7 @@ public class StockWorkshopServiceImpl implements StockWorkshopService {
public PageResult<StockWorkshopDO> getStockWorkshopPage(StockWorkshopPageReqVO pageReqVO) { public PageResult<StockWorkshopDO> getStockWorkshopPage(StockWorkshopPageReqVO pageReqVO) {
return stockWorkshopMapper.selectPage(pageReqVO); return stockWorkshopMapper.selectPage(pageReqVO);
} }
@Override @Override
public List<StockWorkshopRespVO> buildVOList(List<StockWorkshopDO> list) { public List<StockWorkshopRespVO> buildVOList(List<StockWorkshopDO> list) {
if (CollUtil.isEmpty(list)) { if (CollUtil.isEmpty(list)) {
@ -122,29 +123,30 @@ public class StockWorkshopServiceImpl implements StockWorkshopService {
cate -> item.setCategoryName(cate.getName())); cate -> item.setCategoryName(cate.getName()));
}); });
} }
@Override @Override
public BigDecimal getStockCount(Long productId) { public BigDecimal getStockCount(Long productId) {
BigDecimal count = stockWorkshopMapper.selectSumByProductId(productId); BigDecimal count = stockWorkshopMapper.selectSumByProductId(productId);
return count != null ? count : BigDecimal.ZERO; return count != null ? count : BigDecimal.ZERO;
} }
//更新车间仓库存itemId不存在则新增 //更新车间仓库存itemId不存在则新增
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Long updateStock(StockWorkshopDO other, String detailType , Long id, String code){ public Long updateStock(StockWorkshopDO other, String detailType, Long id, String code) {
if(other ==null ) if (other == null)
throw exception(STOCK_WORKSHOP_NOT_EXISTS); throw exception(STOCK_WORKSHOP_NOT_EXISTS);
Long result =null; Long result = null;
StockWorkshopDO old = stockWorkshopMapper.selectByItemId(other.getItemId()); StockWorkshopDO old = stockWorkshopMapper.selectByItemId(other.getItemId());
BigDecimal stockCount = other.getCount(); BigDecimal stockCount = other.getCount();
if(old!=null){ if (old != null) {
old.setCount(old.getCount().add(other.getCount())); old.setCount(old.getCount().add(other.getCount()));
old.setCreateTime(LocalDateTime.now()); old.setCreateTime(LocalDateTime.now());
stockWorkshopMapper.updateById(old); stockWorkshopMapper.updateById(old);
result = old.getId(); result = old.getId();
stockCount = old.getCount(); stockCount = old.getCount();
} } else {
else { result = (long) stockWorkshopMapper.insert(other);
result = (long)stockWorkshopMapper.insert(other);
} }
//更新明细 //更新明细
StockWorkshopDetailDO detailDO = new StockWorkshopDetailDO() StockWorkshopDetailDO detailDO = new StockWorkshopDetailDO()
@ -153,11 +155,10 @@ public class StockWorkshopServiceImpl implements StockWorkshopService {
.setUnitId(other.getUnitId()) .setUnitId(other.getUnitId())
.setCount(other.getCount()) .setCount(other.getCount())
.setStockCount(stockCount); .setStockCount(stockCount);
if(detailType.equals(StockWorkShopTypeEnum..getValue())){ if (detailType.equals(StockWorkShopTypeEnum..getValue())) {
detailDO.setItemRequisitionCode(code); detailDO.setItemRequisitionCode(code);
detailDO.setItemRequisitionDetailId(id); detailDO.setItemRequisitionDetailId(id);
} } else if (detailType.equals(StockWorkShopTypeEnum..getValue())) {
else if(detailType.equals(StockWorkShopTypeEnum..getValue())){
detailDO.setFeedingRecordCode(code); detailDO.setFeedingRecordCode(code);
detailDO.setFeedingRecordId(id); detailDO.setFeedingRecordId(id);
} }

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save