Sfoglia il codice sorgente

首件相关接口未联调提供

daili 3 anni fa
parent
commit
5bbe967f51
35 ha cambiato i file con 1666 aggiunte e 228 eliminazioni
  1. 124 0
      application-facade/src/main/java/com/factory/controller/initial/InitialPlanController.java
  2. 26 0
      application-facade/src/main/java/com/factory/entity/vo/po/IniGread.java
  3. 78 0
      application-facade/src/main/java/com/factory/entity/vo/req/AddIniPlanItemReq.java
  4. 119 0
      application-facade/src/main/java/com/factory/entity/vo/req/AddIniPlanReq.java
  5. 37 0
      application-facade/src/main/java/com/factory/entity/vo/req/AddIniPlanWorkReq.java
  6. 25 0
      application-facade/src/main/java/com/factory/entity/vo/req/BooleanReq.java
  7. 33 0
      application-facade/src/main/java/com/factory/entity/vo/req/PlanListReq.java
  8. 28 0
      application-facade/src/main/java/com/factory/entity/vo/req/exportInitialPlanReq.java
  9. 54 0
      application-facade/src/main/java/com/factory/entity/vo/res/benteler/GetVersionBaseRes.java
  10. 43 0
      application-facade/src/main/java/com/factory/entity/vo/res/benteler/GetVersionHistoryRes.java
  11. 8 13
      application-facade/src/main/java/com/factory/entity/vo/res/benteler/PagePlanRes.java
  12. 89 0
      application-facade/src/main/java/com/factory/entity/vo/res/benteler/getCheckResutGreadRes.java
  13. 47 0
      application-facade/src/main/java/com/factory/entity/vo/res/benteler/unAuditListRes.java
  14. 28 0
      application-facade/src/main/java/com/factory/mapper/BentelerIniVersionMapper.java
  15. 17 0
      application-facade/src/main/java/com/factory/mapper/BentelerVersionAuditMapper.java
  16. 30 29
      application-facade/src/main/java/com/factory/service/BentelerIniVersionService.java
  17. 18 0
      application-facade/src/main/java/com/factory/service/BentelerVersionAuditService.java
  18. 448 100
      application-facade/src/main/java/com/factory/service/impl/BentelerIniVersionServiceImpl.java
  19. 16 0
      application-facade/src/main/java/com/factory/service/impl/BentelerVersionAuditServiceImpl.java
  20. 1 1
      application-facade/src/main/resources/application-test.yml
  21. 3 3
      application-facade/src/main/resources/application.yml
  22. 116 0
      application-facade/src/main/resources/mapper/BentelerIniVersionMapper.xml
  23. 29 0
      application-facade/src/test/java/com/factory/service/impl/BentelerIniVersionServiceImplTest.java
  24. 12 0
      common-base/src/main/java/com/factory/base/entity/enumPo/CheckStatus.java
  25. 12 0
      common-base/src/main/java/com/factory/base/entity/enumPo/PlanType.java
  26. 0 15
      common-base/src/main/java/com/factory/base/entity/enumPo/ResStatus.java
  27. 5 4
      common-base/src/main/java/com/factory/base/entity/enumPo/VersionAuditStatus.java
  28. 52 0
      common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniAbnormal.java
  29. 3 3
      common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniCheckItem.java
  30. 1 1
      common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniCheckResult.java
  31. 2 2
      common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniCheckType.java
  32. 27 41
      common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniVersion.java
  33. 51 13
      common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniVersionItem.java
  34. 9 3
      common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerPlan.java
  35. 75 0
      common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerVersionAudit.java

+ 124 - 0
application-facade/src/main/java/com/factory/controller/initial/InitialPlanController.java

@@ -0,0 +1,124 @@
+package com.factory.controller.initial;
+
+
+import cn.hutool.core.collection.CollectionUtil;
+import com.factory.base.config.validateGroup.GroupOne;
+import com.factory.base.entity.aggregates.PageBean;
+import com.factory.base.entity.aggregates.ResponseBean;
+import com.factory.base.entity.po.benteler.BentelerIniVersion;
+import com.factory.base.entity.po.benteler.BentelerPlan;
+import com.factory.base.entity.vo.req.BaseIdReq;
+import com.factory.base.entity.vo.req.BasePageIdReq;
+import com.factory.base.util.res.ResponseBeanBuilder;
+import com.factory.entity.vo.req.AddIniPlanReq;
+import com.factory.entity.vo.req.BooleanReq;
+import com.factory.entity.vo.req.PlanListReq;
+import com.factory.entity.vo.req.exportInitialPlanReq;
+import com.factory.entity.vo.res.FileRes;
+import com.factory.entity.vo.res.benteler.*;
+import com.factory.service.BentelerIniVersionService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiOperationSupport;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 计划 - 检验报告单
+ *
+ * @author Dl
+ * @date 2021-05-12 09:37:25
+ */
+@Api(tags = "本特勒 - 首件")
+@RestController
+@RequestMapping("/benteler")
+@Slf4j
+public class InitialPlanController {
+    @Autowired
+    private BentelerIniVersionService bentelerIniVersionService;
+    @ApiOperation(value = "新建首件计划")
+    @PostMapping("/addIniPlan")
+    @ApiOperationSupport(order = 1)
+    public ResponseBean addIniPlan(@RequestBody AddIniPlanReq req) {
+        return ResponseBeanBuilder.ok(bentelerIniVersionService.addIniPlan(req));
+    }
+
+    @ApiOperation(value = "首件计划列表")
+    @ApiOperationSupport(order = 2)
+    @PostMapping("/planlist")
+    public ResponseBean<PageBean<PagePlanRes>> planlist(@RequestBody PlanListReq req) {
+
+        return bentelerIniVersionService.planlist(req);
+    }
+    @ApiOperation(value = "禁用计划")
+    @PostMapping("/disablePlan")
+    @ApiOperationSupport(order = 3)
+    public ResponseBean disablePlan(@RequestBody BooleanReq req) {
+        return bentelerIniVersionService.disablePlan(req);
+    }
+
+    @ApiOperation(value = "待审核列表")
+    @PostMapping("/unAuditList")
+    @ApiOperationSupport(order = 4)
+    public ResponseBean<PageBean<unAuditListRes>> unAuditList(@RequestBody PlanListReq req) {
+        return bentelerIniVersionService.unAuditList(req);
+    }
+    @ApiOperation(value = "查看版本表头")
+    @PostMapping("/getVersionBase")
+    @ApiOperationSupport(order = 5)
+    public ResponseBean<GetVersionBaseRes> getVersionBase(@RequestBody BaseIdReq req) {
+        return bentelerIniVersionService.getVersionBase(req);
+    }
+    @ApiOperation(value = "计划列表 - 编辑(新增版本)")
+    @PostMapping("/addIniVersion")
+    @ApiOperationSupport(order = 6)
+    public ResponseBean addIniVersion(@RequestBody AddIniPlanReq req) {
+        return bentelerIniVersionService.addIniVersion(req);
+    }
+    @ApiOperation(value = "查询是否存在其他待审核")
+    @PostMapping("/getIsUnAuditVersionId")
+    @ApiOperationSupport(order = 7)
+    public ResponseBean<Boolean> getIsUnAuditVersionId(@RequestBody BaseIdReq req) {
+        return bentelerIniVersionService.getIsUnAuditVersionId(req);
+
+    }
+
+    @ApiOperation(value = "查看版本 - 待审核标准详情")
+    @PostMapping("/getUnAuditDetails")
+    public ResponseBean<AddIniPlanReq> getUnAuditDetails(@RequestBody BaseIdReq req) {
+        return bentelerIniVersionService.getUnAuditDetails(req);
+    }
+    @ApiOperation(value = "查看版本 - 正在使用标准详情")
+    @PostMapping("/getVersionDetails")
+    public ResponseBean<AddIniPlanReq> getCurrentDetails(@RequestBody BaseIdReq req) {
+        return bentelerIniVersionService.getCurrentDetails(req);
+    }
+    @ApiOperation(value = "查看点检  - 结果详情")
+    @PostMapping("/getCheckResutGread")
+    public ResponseBean<getCheckResutGreadRes> getCheckResutGread(@RequestBody BaseIdReq req) {
+        return ResponseBeanBuilder.ok();
+    }
+
+    @ApiOperation(value = "历史版本简介")
+    @PostMapping("/historyVersion")
+    public ResponseBean<PageBean<GetVersionHistoryRes>> historyVersion(@Validated(GroupOne.class) @RequestBody BasePageIdReq req) {
+        return bentelerIniVersionService.historyVersion(req);
+    }
+
+
+
+    @ApiOperation(value = "首件计划导出excel")
+    @PostMapping("/exportInitialPlan")
+    public ResponseBean<FileRes> exportInitialPlan(@RequestBody exportInitialPlanReq req) {
+        return ResponseBeanBuilder.ok();
+    }
+
+}

+ 26 - 0
application-facade/src/main/java/com/factory/entity/vo/po/IniGread.java

@@ -0,0 +1,26 @@
+package com.factory.entity.vo.po;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @program: intelligentfactory
+ * @description:
+ * @author: dl
+ * @create: 062915
+ **/
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class IniGread {
+    private Integer workStation;
+    private String gread;
+
+}

+ 78 - 0
application-facade/src/main/java/com/factory/entity/vo/req/AddIniPlanItemReq.java

@@ -0,0 +1,78 @@
+package com.factory.entity.vo.req;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * @program: intelligentfactory
+ * @description:
+ * @author: dl
+ * @create: 062912
+ **/
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class AddIniPlanItemReq {
+
+    @ApiModelProperty(value = "频率1首件 2两百 3中断 包括哪项",example = "[1,2]")
+    private List<Integer> checkType;
+    //
+    @ApiModelProperty(value = "测量点描述",example = "测量点描述")
+    private String measuRemark;
+
+    @ApiModelProperty(value = "判断标准",example = "判断标准")
+    private String method;
+
+    @ApiModelProperty(value = "检测标准值上限",example = "10")
+    private BigDecimal checkStandardTop;
+
+    @ApiModelProperty(value = "检测标准值下限",example = "15")
+    private BigDecimal checkStandardFloor;
+
+    @ApiModelProperty(value = "工位前缀",example = "S")
+    private String workPrefix;
+
+    @ApiModelProperty(value = "检验测量点首号",example = "1")
+    private Integer workStationBegin;
+
+    @ApiModelProperty(value = "检验测量点尾号",example = "5")
+    private Integer workStationEnd;
+
+    @ApiModelProperty(value = "频次1日2周3月4季度5半年6班",example = "1")
+    private Integer frequency;
+
+    @ApiModelProperty(value = "频次检测点 第(5)天 星期(3)",example = "2")
+    private Integer frequencyNo;
+
+    @ApiModelProperty(value = "数据类别",example = "1")
+    private Integer dataType;
+
+    @ApiModelProperty(value = "特性等级",example = "特性等级")
+    private String level;
+
+    @ApiModelProperty(value = "单位",example = "单位")
+    private String unit;
+
+    @ApiModelProperty(value = "校验工具",example = "1")
+    private Integer tool;
+
+    @ApiModelProperty(value = "校验工具 具体描述",example = "校验工具具体描述")
+    private String toolRemark;
+
+
+
+    @ApiModelProperty(value = "特性",example = "特性")
+    private String inspectionItem;
+
+}

+ 119 - 0
application-facade/src/main/java/com/factory/entity/vo/req/AddIniPlanReq.java

@@ -0,0 +1,119 @@
+package com.factory.entity.vo.req;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.factory.base.config.validateGroup.GroupOne;
+import com.factory.base.entity.po.benteler.BentelerIniVersionItem;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Size;
+import java.sql.Time;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.LocalTime;
+import java.util.List;
+
+/**
+ * @program: intelligentfactory
+ * @description:
+ * @author: dl
+ * @create: 062911
+ **/
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class AddIniPlanReq {
+
+    @Size(max = 50,message = "名字长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "计划名称不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "计划名称",example = "计划名称")
+    private String name;
+
+    @NotEmpty(message = "责任人不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "责任人id列表",example = "[2,3]")
+    private List<Long> principalIds;
+
+
+    @ApiModelProperty(value = "检验开始时间",example="20:20:20")
+    private LocalTime checkBegintime;
+
+    @ApiModelProperty(value = "检验结束时间",example="20:20:20")
+    private LocalTime checkEndtime;
+
+    @ApiModelProperty(value = "提醒首件pad时长",example="10")
+    private Integer remindIniPad;
+
+    @ApiModelProperty(value = "提醒两百pad提交时刻",example="20:20:20")
+    private LocalTime remindTwoPad;
+
+    @ApiModelProperty(value = "升级提醒时间",example="20:20:20")
+    private LocalTime upgradeTime;
+
+
+
+
+    @NotNull(message = "启动日期不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "生效日期",example = "2015-05-05")
+    private LocalDate beginDate;
+
+    @ApiModelProperty(value = "截止日期",example = "2015-05-05")
+    private LocalDate endDate;
+
+
+
+    @Size(max = 20,message = "项目名称长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "项目名称不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "项目名称",example = "project")
+    private String project;
+
+    @Size(max = 20,message = "零件长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "零件不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "零件名称",example = "part")
+    private String part;
+
+    @Size(max = 20,message = "本特勒零件号长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "本特勒零件号不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "本特勒零件号",example = "btlPartNo")
+    private String btlPartNo;
+
+    @Size(max = 20,message = "客户零件号长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "客户零件号不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "客户零件号",example = "clientPartNo")
+    private String clientPartNo;
+
+    @Size(max = 20,message = "客户零件号长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "客户零件号不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "客户零件号",example = "verson")
+    private String verson;
+
+    @Size(max = 20,message = "Dmba长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "Dmba不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "Dmba",example = "Dmba")
+    private String Dmba;
+
+    @ApiModelProperty(value = "指导文件id",example = "15")
+    private Long guideDocumentId;
+
+    @TableField(exist = false)
+    @ApiModelProperty(value = "计划id",example = "1")
+    private Long planId;
+
+    @TableField(exist = false)
+    @ApiModelProperty(value = "版本id",example = "1")
+    private Long versionId;
+
+    @TableField(exist = false)
+    @ApiModelProperty(value = "工作站")
+    private List<AddIniPlanWorkReq> versionWorks;
+
+}

+ 37 - 0
application-facade/src/main/java/com/factory/entity/vo/req/AddIniPlanWorkReq.java

@@ -0,0 +1,37 @@
+package com.factory.entity.vo.req;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+/**
+ * @program: intelligentfactory
+ * @description:
+ * @author: dl
+ * @create: 062917
+ **/
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class AddIniPlanWorkReq {
+
+
+    @ApiModelProperty(value = "生产线",example = "生产线")
+    private String productionLine;
+
+    @ApiModelProperty(value = "工作站",example = "工作站")
+    private String workstation;
+
+
+    @ApiModelProperty(value = "检查特性")
+    private List<AddIniPlanItemReq> BentelerIniVersionItems;
+}

+ 25 - 0
application-facade/src/main/java/com/factory/entity/vo/req/BooleanReq.java

@@ -0,0 +1,25 @@
+package com.factory.entity.vo.req;
+
+import com.factory.base.entity.vo.req.BaseIdReq;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @program: intelligent-factory-service
+ * @description:
+ * @author: dl
+ * @create: 051712
+ **/
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+
+public class BooleanReq extends BaseIdReq {
+
+    @ApiModelProperty(value = "禁用后的状态", example = "true")
+    private Boolean boolea;
+}

+ 33 - 0
application-facade/src/main/java/com/factory/entity/vo/req/PlanListReq.java

@@ -0,0 +1,33 @@
+package com.factory.entity.vo.req;
+
+import com.factory.base.entity.vo.req.BasePageReq;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @program: intelligentfactory
+ * @description:
+ * @author: dl
+ * @create: 062911
+ **/
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class PlanListReq extends BasePageReq {
+
+    @ApiModelProperty(value = "计划名称")
+    private String name;
+
+
+    @ApiModelProperty(value = "当前点检状态")
+    private Integer checkStatus;
+
+}

+ 28 - 0
application-facade/src/main/java/com/factory/entity/vo/req/exportInitialPlanReq.java

@@ -0,0 +1,28 @@
+package com.factory.entity.vo.req;
+
+import com.factory.base.entity.vo.req.BaseIdReq;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDate;
+
+/**
+ * @program: intelligent-factory-service
+ * @description:
+ * @author: dl
+ * @create: 052409
+ **/
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+
+public class exportInitialPlanReq extends BaseIdReq {
+   @ApiModelProperty(value = "过滤时间日期")
+    private LocalDate chooseDate;
+
+
+}

+ 54 - 0
application-facade/src/main/java/com/factory/entity/vo/res/benteler/GetVersionBaseRes.java

@@ -0,0 +1,54 @@
+package com.factory.entity.vo.res.benteler;
+
+import com.factory.base.config.validateGroup.GroupOne;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.Size;
+
+/**
+ * @program: intelligent-factory-service
+ * @description:
+ * @author: dl
+ * @create: 051312
+ **/
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class GetVersionBaseRes {
+
+    @Size(max = 20,message = "项目名称长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "项目名称不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "项目名称",example = "计划名称")
+    private String project;
+
+    @Size(max = 20,message = "零件长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "零件不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "零件名称",example = "计划名称")
+    private String part;
+
+    @Size(max = 20,message = "本特勒零件号长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "本特勒零件号不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "本特勒零件号",example = "计划名称")
+    private String btlPartNo;
+
+    @Size(max = 20,message = "客户零件号长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "客户零件号不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "客户零件号",example = "计划名称")
+    private String clientPartNo;
+
+    @Size(max = 20,message = "客户零件号长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "客户零件号不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "客户零件号",example = "计划名称")
+    private String verson;
+
+    @Size(max = 20,message = "Dmba长度过长",groups = GroupOne.class)
+    @NotEmpty(message = "Dmba不能为空",groups = GroupOne.class)
+    @ApiModelProperty(value = "Dmba",example = "计划名称")
+    private String Dmba;
+}

+ 43 - 0
application-facade/src/main/java/com/factory/entity/vo/res/benteler/GetVersionHistoryRes.java

@@ -0,0 +1,43 @@
+package com.factory.entity.vo.res.benteler;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ * @program: intelligent-factory-service
+ * @description:
+ * @author: dl
+ * @create: 051312
+ **/
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class GetVersionHistoryRes {
+
+    /**
+     * 计划id
+     */
+    @ApiModelProperty("计划id")
+    private Long planId;
+    /**
+     * 版本id
+     */
+    @ApiModelProperty("版本id")
+    private Long id;
+
+    /**
+     * 建立时间
+     */
+    @ApiModelProperty("建立时间")
+    private LocalDateTime createdTime;
+
+
+
+
+}

+ 8 - 13
application-facade/src/main/java/com/factory/entity/vo/res/benteler/PagePlanRes.java

@@ -8,7 +8,6 @@ import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
-import java.sql.Time;
 import java.time.LocalDateTime;
 
 /**
@@ -23,29 +22,25 @@ import java.time.LocalDateTime;
 @AllArgsConstructor
 @JsonInclude()
 public class PagePlanRes extends BaseIdReq {
+
+    @ApiModelProperty(value = "计划id")
+    private Long planId;
+    @ApiModelProperty(value = "版本id")
+    private Long versionId;
+
+
     @ApiModelProperty("计划名称")
     private String name;
-
     @ApiModelProperty("责任人1")
     private String principleOne;
     @ApiModelProperty("责任人2")
     private String principleTwo;
-
-
     @ApiModelProperty("当前执行 检查状态 1待响应 2未响应 3已响应 4已完成")
     private Integer checkStatus;
-
-
-    @ApiModelProperty(value = "提交时间")
-    private Time submitTime;
-
-
-    @ApiModelProperty(value = "创建时间", hidden = true)
+    @ApiModelProperty(value = "创建时间")
     private LocalDateTime createdTime;
-
     @ApiModelProperty("是否禁用暂停")
     private Boolean pauseFlag;
 
 
-
 }

+ 89 - 0
application-facade/src/main/java/com/factory/entity/vo/res/benteler/getCheckResutGreadRes.java

@@ -0,0 +1,89 @@
+package com.factory.entity.vo.res.benteler;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * @program: intelligentfactory
+ * @description:
+ * @author: dl
+ * @create: 062915
+ **/
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class getCheckResutGreadRes {
+
+
+    @ApiModelProperty(value = "特性")
+    private String inspectionItem;
+
+
+    @ApiModelProperty(value = "判断标准方法")
+    private String method;
+
+
+    @ApiModelProperty(value = "检测标准值上限")
+    private BigDecimal checkStandardTop;
+
+    @ApiModelProperty(value = "检测标准值下限")
+    private BigDecimal checkStandardFloor;
+
+    @ApiModelProperty(value = "频率1首件 2两百 3中断 包括哪项")
+    private List<Long> checkType;
+
+    @ApiModelProperty(value = "特性等级")
+    private String level;
+
+    @ApiModelProperty(value = "工作站")
+    private String workstation;
+
+    @ApiModelProperty(value = "首件订单号")
+    private String iniOrderId;
+
+    @ApiModelProperty(value = "两百订单号")
+    private String twoOrderId;
+
+    @ApiModelProperty(value = "中断订单号")
+    private String breakOrderId;
+
+
+    @ApiModelProperty(value = "工位前缀")
+    private String workPrefix;
+
+    @ApiModelProperty(value = "检验测量点首号")
+    private Integer workStationBegin;
+
+    @ApiModelProperty(value = "检验测量点尾号")
+    private Integer workStationEnd;
+
+    @ApiModelProperty(value = "审核结果json")
+    private String iniGread;
+    @ApiModelProperty(value = "审核结果json")
+    private String twoGread;
+    @ApiModelProperty(value = "审核结果json")
+    private String breakGread;
+
+
+    @ApiModelProperty(value = "校验工具")
+    private Integer tool;
+    @ApiModelProperty(value = "校验工具 具体描述")
+    private String toolRemark;
+
+    @ApiModelProperty(value = "特殊情况首件放行记录")
+    private String discharged;
+
+
+
+}

+ 47 - 0
application-facade/src/main/java/com/factory/entity/vo/res/benteler/unAuditListRes.java

@@ -0,0 +1,47 @@
+package com.factory.entity.vo.res.benteler;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ * @program: intelligentfactory
+ * @description:
+ * @author: dl
+ * @create: 062918
+ **/
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class unAuditListRes {
+
+    @ApiModelProperty(value = "计划名称")
+    private String name;
+
+    @ApiModelProperty(value = "计划id")
+    private Long id;
+
+
+    @ApiModelProperty(value = "计划类型 1首件 2防错")
+    private Integer planType;
+
+    @ApiModelProperty(value = "审核状态 0待质量经理审核 1待生产经理审核  2当前版本  3历史版本  4驳回 ")
+    private Integer reviewStatus;
+
+
+    @ApiModelProperty(value = "创建时间")
+    private LocalDateTime createdTime;
+
+    @ApiModelProperty(value = "是否禁用暂停 0否 1是")
+    private Boolean pauseFlag;
+
+}

+ 28 - 0
application-facade/src/main/java/com/factory/mapper/BentelerIniVersionMapper.java

@@ -1,8 +1,17 @@
 package com.factory.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.factory.base.entity.aggregates.PageBean;
+import com.factory.base.entity.aggregates.ResponseBean;
 import com.factory.base.entity.po.benteler.BentelerIniVersion;
+import com.factory.base.entity.po.benteler.BentelerIniVersionItem;
+import com.factory.base.entity.po.benteler.BentelerPlan;
+import com.factory.entity.vo.req.PlanListReq;
+import com.factory.entity.vo.res.benteler.PagePlanRes;
+import com.factory.entity.vo.res.benteler.unAuditListRes;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * 计划 - 版本信息
@@ -14,4 +23,23 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface BentelerIniVersionMapper extends BaseMapper<BentelerIniVersion> {
 
+    Page<PagePlanRes> planlist(@Param("page") Page<PagePlanRes> page,
+                               @Param("name") String name,
+                               @Param("CheckStatus") Integer checkStatus);
+
+    Page<unAuditListRes> unAuditList(@Param("req") PlanListReq req);
+
+
+
+
+    BentelerIniVersion getCurrentVersion(@Param("planId") Long planId);
+    BentelerIniVersion getUnAuditVersion(@Param("planId") Long planId);
+    BentelerIniVersion getWaitAuditVersion(@Param("planId") Long planId);
+
+
+
+    BentelerIniVersionItem getVersionItem(@Param("versionId") Long versionId);
+
+
+    //BentelerIniVersionItem getPlanCurrentVersionId(@Param("planId") Long planId);
 }

+ 17 - 0
application-facade/src/main/java/com/factory/mapper/BentelerVersionAuditMapper.java

@@ -0,0 +1,17 @@
+package com.factory.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.factory.base.entity.po.benteler.BentelerVersionAudit;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 版本 审核记录
+ * 
+ * @author chenshun
+ * @email sunlightcs@gmail.com
+ * @date 2021-06-29 19:22:36
+ */
+@Mapper
+public interface BentelerVersionAuditMapper extends BaseMapper<BentelerVersionAudit> {
+	
+}

+ 30 - 29
application-facade/src/main/java/com/factory/service/BentelerIniVersionService.java

@@ -1,7 +1,18 @@
 package com.factory.service;
 
+import com.factory.base.entity.aggregates.PageBean;
+import com.factory.base.entity.aggregates.ResponseBean;
 import com.factory.base.entity.po.benteler.BentelerIniVersion;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.factory.base.entity.vo.req.BaseIdReq;
+import com.factory.base.entity.vo.req.BasePageIdReq;
+import com.factory.entity.vo.req.AddIniPlanReq;
+import com.factory.entity.vo.req.BooleanReq;
+import com.factory.entity.vo.req.PlanListReq;
+import com.factory.entity.vo.res.benteler.GetVersionBaseRes;
+import com.factory.entity.vo.res.benteler.GetVersionHistoryRes;
+import com.factory.entity.vo.res.benteler.PagePlanRes;
+import com.factory.entity.vo.res.benteler.unAuditListRes;
 
 /**
  * 计划 - 版本信息
@@ -12,34 +23,24 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface BentelerIniVersionService extends IService<BentelerIniVersion> {
 
-    //ResponseBean<FileRes> exportInitialPlan(exportInitialPlanReq req);
-    //
-    //ResponseBean addVersion(AddPlanReq params);
-    //
-    //ResponseBean<AddPlanReq> getOneVersionDetails(BaseIdReq baseIdReq);
-    //
-    //ResponseBean updatePlanVersion(AddPlanReq params);
-    //
-    //ResponseBean<AddPlanReq> getOneUNAUDITVersionDetails(BaseIdReq baseIdReq);
-    //
-    //ResponseBean<PageBean<GetVersionHistoryRes>> getVersionHistory(BasePageIdReq req);
-    //
-    //ResponseBean<GetVersionBaseRes> getVersionBase(BaseIdReq req);
-    //
-    //ResponseBean<PageBean<GetVersionSubRes>> getVersionSub(BasePageIdReq req);
-    //
-    //ResponseBean<PageBean<versionApproveRes>> versionApprove(versionApproveReq req);
-    //
-    //ResponseBean<PlanVersion> getVersionSubGread(getVersionSubGreadReq req);
-    //
-    //ResponseBean<PlanVersion> getHistoryVersionSubGread(getVersionSubGreadReq req);
-    //
-    //ResponseBean<getAuditRecordRes> getAuditRecord(getAuditRecordReq req);
-    //
-    //ResponseBean addPlan(AddPlanReq params);
-    //
-    //ResponseBean<PageBean<UnAuditRes>> unAuditList(unAuditReq params);
-    //
-    //ResponseBean<PageBean<PagePlanRes>> pagePlan(PlanListReq params);
+    ResponseBean<PageBean<PagePlanRes>> planlist(PlanListReq req);
+
+    ResponseBean addIniPlan(AddIniPlanReq req);
+
+    ResponseBean disablePlan(BooleanReq req);
+
+    ResponseBean<PageBean<unAuditListRes>> unAuditList(PlanListReq req);
+
+    ResponseBean<GetVersionBaseRes> getVersionBase(BaseIdReq req);
+
+    ResponseBean<AddIniPlanReq> getUnAuditDetails(BaseIdReq req);
+
+    ResponseBean<AddIniPlanReq> getCurrentDetails(BaseIdReq req);
+
+    ResponseBean addIniVersion(AddIniPlanReq req);
+
+    ResponseBean<Boolean> getIsUnAuditVersionId(BaseIdReq req);
+
+    ResponseBean<PageBean<GetVersionHistoryRes>> historyVersion(BasePageIdReq req);
 }
 

+ 18 - 0
application-facade/src/main/java/com/factory/service/BentelerVersionAuditService.java

@@ -0,0 +1,18 @@
+package com.factory.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.factory.base.entity.po.benteler.BentelerVersionAudit;
+
+import java.util.Map;
+
+/**
+ * 版本 审核记录
+ *
+ * @author chenshun
+ * @email sunlightcs@gmail.com
+ * @date 2021-06-29 19:22:36
+ */
+public interface BentelerVersionAuditService extends IService<BentelerVersionAudit> {
+
+}
+

+ 448 - 100
application-facade/src/main/java/com/factory/service/impl/BentelerIniVersionServiceImpl.java

@@ -1,113 +1,461 @@
 package com.factory.service.impl;
 
+import cn.hutool.core.convert.Convert;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.factory.base.entity.aggregates.PageBean;
+import com.factory.base.entity.aggregates.ResponseBean;
+import com.factory.base.entity.enumPo.CheckStatus;
+import com.factory.base.entity.enumPo.PlanType;
+import com.factory.base.entity.enumPo.VersionAuditStatus;
 import com.factory.base.entity.po.benteler.BentelerIniVersion;
-import com.factory.service.BentelerIniVersionService;
+import com.factory.base.entity.po.benteler.BentelerIniVersionItem;
+import com.factory.base.entity.po.benteler.BentelerPlan;
+import com.factory.base.entity.vo.req.BaseIdReq;
+import com.factory.base.entity.vo.req.BasePageIdReq;
+import com.factory.base.util.res.ResponseBeanBuilder;
+import com.factory.entity.vo.req.*;
+import com.factory.entity.vo.res.benteler.GetVersionBaseRes;
+import com.factory.entity.vo.res.benteler.GetVersionHistoryRes;
+import com.factory.entity.vo.res.benteler.PagePlanRes;
+import com.factory.entity.vo.res.benteler.unAuditListRes;
 import com.factory.mapper.BentelerIniVersionMapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.factory.service.BentelerIniVersionItemService;
+import com.factory.service.BentelerIniVersionService;
+import com.factory.service.BentelerPlanService;
+import org.apache.commons.collections4.CollectionUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.*;
+import java.util.stream.Collectors;
+
 
 @Service("bentelerIniVersionService")
 @Transactional(rollbackFor = Exception.class)
 public class BentelerIniVersionServiceImpl extends ServiceImpl<BentelerIniVersionMapper, BentelerIniVersion> implements BentelerIniVersionService {
 
-    //@Autowired
-    //private BentelerPlanService planService;
-    //@Autowired
-    //private BentelerIniVersionMapper versionMapper;
-    //
-    //@Override
-    //public ResponseBean<FileRes> exportInitialPlan(exportInitialPlanReq req) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean addVersion(AddPlanReq params) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean<AddPlanReq> getOneVersionDetails(BaseIdReq baseIdReq) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean updatePlanVersion(AddPlanReq params) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean<AddPlanReq> getOneUNAUDITVersionDetails(BaseIdReq baseIdReq) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean<PageBean<GetVersionHistoryRes>> getVersionHistory(BasePageIdReq req) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean<GetVersionBaseRes> getVersionBase(BaseIdReq req) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean<PageBean<GetVersionSubRes>> getVersionSub(BasePageIdReq req) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean<PageBean<versionApproveRes>> versionApprove(versionApproveReq req) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean<PlanVersion> getVersionSubGread(getVersionSubGreadReq req) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean<PlanVersion> getHistoryVersionSubGread(getVersionSubGreadReq req) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean<getAuditRecordRes> getAuditRecord(getAuditRecordReq req) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean addPlan(AddPlanReq params) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean<PageBean<UnAuditRes>> unAuditList(unAuditReq params) {
-    //    return null;
-    //}
-    //
-    //@Override
-    //public ResponseBean<PageBean<PagePlanRes>> pagePlan(PlanListReq params) {
-    //    Page<PagePlanRes> page = new Page<PagePlanRes>(params.getPage(), params.getSize());
-    //
-    //    List<PagePlanRes> pagePlanRes = versionMapper.pageIniPlan(page);
-    //    return ResponseBeanBuilder.ok();
-    //}
-    //
-    ////获取未禁用首件计划
-    //private List<BentelerPlan> getUnDisablePlan() {
-    //    return planService.list(Wrappers.<BentelerPlan>lambdaQuery()
-    //            .eq(BentelerPlan::getPauseFlag, 0)
-    //            .eq(BentelerPlan::getCheckType, 1)
-    //    );
-    //}
-    //
-    ////获取未禁用首件计划ID
-    //private List<Long> getUnDisablePlanId() {
-    //    return planService.list(Wrappers.<BentelerPlan>lambdaQuery()
-    //            .eq(BentelerPlan::getPauseFlag, 0)
-    //            .eq(BentelerPlan::getCheckType, 1)
-    //    ).stream().map(BentelerPlan::getId).collect(Collectors.toList());
-    //}
+    @Autowired
+    private BentelerIniVersionMapper versionMapper;
+    @Autowired
+    private BentelerPlanService planService;
+    @Autowired
+    private BentelerIniVersionService versionService;
+    @Autowired
+    private BentelerIniVersionItemService versionItemService;
+
+    @Override
+    public ResponseBean<PageBean<PagePlanRes>> planlist(PlanListReq req) {
+        String name = req.getName();
+        Integer checkStatus = req.getCheckStatus();
+        Page<PagePlanRes> page = new Page<>(req.getPage(), req.getSize());
+        return ResponseBeanBuilder.ok(versionMapper.planlist(page, name, checkStatus));
+
+    }
+
+    @Override
+    public ResponseBean addIniPlan(AddIniPlanReq req) {
+        //校验
+        if (planNameRepetition(req.getName())) {
+            return ResponseBeanBuilder.fail("计划名称重复");
+        }
+        //新增计划
+        BentelerPlan plan = BentelerPlan.builder()
+                .planType(PlanType.首件.value)
+                .name(req.getName())
+                .pauseFlag(false)
+                .build();
+        planService.save(plan);
+        //新增版本
+        ArrayList<Integer> allCheckType = req.getVersionWorks().stream().collect(
+                ArrayList::new,
+                (theList, item) -> {
+                    Collection<Integer> union1 = CollectionUtils.union(theList,
+                            item.getBentelerIniVersionItems().stream().collect(
+                                    ArrayList::new,
+                                    (theList2, item2) -> {
+                                        Collection<Integer> union = CollectionUtils.union(theList2, item2.getCheckType());
+                                        theList2.addAll(union);
+                                    },
+                                    ArrayList::addAll
+                            )
+                    );
+                    theList.addAll(union1);
+                },
+                ArrayList::addAll
+
+        );
+        Map<String, String> baseMap = new HashMap<String, String>() {{
+            put("project", req.getName());
+            put("part", req.getName());
+            put("btlPartNo", req.getName());
+            put("clientPartNo", req.getName());
+            put("verson", req.getName());
+            put("Dmba", req.getName());
+        }};
+
+        List<Long> principalIds = req.getPrincipalIds();
+        Long principleOne = principalIds.get(0);
+        Long principleTwo = null;
+        if (principalIds.size() > 1) {
+            principleTwo = principalIds.get(1);
+        }
+        BentelerIniVersion version = BentelerIniVersion.builder()
+                .planId(plan.getId())
+                .allChecktype(Convert.toStr(allCheckType))
+                .baseMap(Convert.toStr(baseMap))
+                .checkStatus(CheckStatus.未完成.value)
+                .beginDate(req.getBeginDate())
+                .endDate(req.getEndDate())
+                .guideDocumentId(req.getGuideDocumentId())
+                .principleOne(principleOne)
+                .principleTwo(principleTwo)
+                .reviewStatus(VersionAuditStatus.待质量经理审核.value)
+
+                .checkBegintime(req.getCheckBegintime())
+                .checkEndtime(req.getCheckEndtime())
+                .remindIniPad(req.getRemindIniPad())
+                .remindTwoPad(req.getRemindTwoPad())
+                .upgradeTime(req.getUpgradeTime())
+                .build();
+        versionService.save(version);
+        //新增检查项
+        ArrayList<BentelerIniVersionItem> VersionItems = new ArrayList<>();
+        req.getVersionWorks().forEach(versionWork -> {
+            versionWork.getBentelerIniVersionItems().forEach(item -> {
+                BentelerIniVersionItem versionItem = BentelerIniVersionItem.builder()
+                        .planId(plan.getId())
+                        .versionId(version.getId())
+                        .workstation(versionWork.getWorkstation())
+                        .productionLine(versionWork.getProductionLine())
+                        .checkStandardTop(item.getCheckStandardTop())
+                        .checkStandardFloor(item.getCheckStandardFloor())
+                        .checkType(Convert.toStr(item.getCheckType()))
+                        .dataType(item.getDataType())
+                        .frequency(item.getFrequency())
+                        .frequencyNo(item.getFrequencyNo())
+                        .inspectionItem(item.getInspectionItem())
+                        .measuRemark(item.getMeasuRemark())
+                        .level(item.getLevel())
+                        .method(item.getMethod())
+                        .unit(item.getUnit())
+                        .tool(item.getTool())
+                        .toolRemark(item.getToolRemark())
+                        .workPrefix(item.getWorkPrefix())
+                        .workStationBegin(item.getWorkStationBegin())
+                        .workStationEnd(item.getWorkStationEnd())
+
+                        .checkBegintime(req.getCheckBegintime())
+                        .checkEndtime(req.getCheckEndtime())
+                        .remindIniPad(req.getRemindIniPad())
+                        .remindTwoPad(req.getRemindTwoPad())
+                        .upgradeTime(req.getUpgradeTime())
+                        .build();
+                VersionItems.add(versionItem);
+            });
+
+        });
+        versionItemService.saveBatch(VersionItems);
+
+
+        return ResponseBeanBuilder.ok();
+    }
+
+    @Override
+    public ResponseBean disablePlan(BooleanReq req) {
+        Long versionId = req.getId();
+
+        Long planId = versionService.getById(versionId).getPlanId();
+
+        planService.updateById(BentelerPlan.builder()
+                .id(planId)
+                .pauseFlag(req.getBoolea())
+                .build());
+        return ResponseBeanBuilder.ok();
+    }
+
+    @Override
+    public ResponseBean<PageBean<unAuditListRes>> unAuditList(PlanListReq req) {
+        Page<unAuditListRes> unAuditListResPage = versionMapper.unAuditList(req);
+        return ResponseBeanBuilder.ok();
+    }
+
+    @Override
+    public ResponseBean<GetVersionBaseRes> getVersionBase(BaseIdReq req) {
+        Long versionId = req.getId();
+        BentelerIniVersion version = versionService.getById(versionId);
+        String baseMap = version.getBaseMap();
+        Map<String, String> stringStringMap = Convert.toMap(String.class, String.class, baseMap);
+        GetVersionBaseRes basemap = GetVersionBaseRes.builder()
+                .project(stringStringMap.get("project"))
+                .part(stringStringMap.get("part"))
+                .btlPartNo(stringStringMap.get("btlPartNo"))
+                .clientPartNo(stringStringMap.get("clientPartNo"))
+                .verson(stringStringMap.get("verson"))
+                .Dmba(stringStringMap.get("Dmba"))
+                .build();
+        return ResponseBeanBuilder.ok(basemap);
+    }
+
+
+    @Override
+    public ResponseBean<AddIniPlanReq> getUnAuditDetails(BaseIdReq req) {
+        Long planId = req.getId();
+        BentelerPlan plan_DB = planService.getById(planId);
+        BentelerIniVersion unAuditVersion = versionMapper.getUnAuditVersion(planId);
+        BentelerPlan plan = BentelerPlan.builder()
+                .name(plan_DB.getName())
+                .version(unAuditVersion)
+                .build();
+        return ResponseBeanBuilder.ok(planPo2planReq(plan));
+    }
+
+    @Override
+    public ResponseBean<AddIniPlanReq> getCurrentDetails(BaseIdReq req) {
+        Long versionId = req.getId();
+        BentelerIniVersion version = versionService.getById(versionId);
+        BentelerPlan plan = planService.getById(version.getPlanId());
+        plan.setVersion(versionMapper.getUnAuditVersion(plan.getId()));
+        return ResponseBeanBuilder.ok(planPo2planReq(plan));
+    }
+
+    @Override
+    public ResponseBean addIniVersion(AddIniPlanReq req) {
+        Long versionId = req.getVersionId();
+        Long planId = versionService.getById(versionId).getPlanId();
+        String name = planService.getById(planId).getName();
+        if (!req.getName().equals(name)) {
+            if (planNameRepetition(req.getName())) {
+                return ResponseBeanBuilder.fail("计划名称重复");
+            }
+        }
+        //转换数据库
+        BentelerPlan plan_req = planReq2planPo(req, VersionAuditStatus.待质量经理审核);
+        BentelerIniVersion version_req = plan_req.getVersion();
+        version_req.setPlanId(planId);
+        versionService.save(version_req);
+        List<BentelerIniVersionItem> versionItem_req = version_req.getVersionItem();
+        versionItem_req.forEach(item -> {
+            item.setPlanId(planId);
+            item.setVersionId(version_req.getId());
+        });
+        versionItemService.saveBatch(versionItem_req);
+        //获取待审核版本  并删除
+        BentelerIniVersion unAuditVersion = versionMapper.getUnAuditVersion(planId);
+        if (unAuditVersion != null) {
+            Long versionId_DB = unAuditVersion.getId();
+            versionService.removeById(versionId_DB);
+
+        }
+
+
+        return ResponseBeanBuilder.ok();
+    }
+
+
+    @Override
+    public ResponseBean<Boolean> getIsUnAuditVersionId(BaseIdReq req) {
+        //查询是否存在其他待审核
+        Long versionId = req.getId();
+        BentelerIniVersion version_DB = versionService.getById(versionId);
+        BentelerIniVersion unAuditVersion = versionMapper.getWaitAuditVersion(version_DB.getPlanId());
+        if (unAuditVersion != null) {
+            return ResponseBeanBuilder.ok(true);
+        }
+        return ResponseBeanBuilder.ok(false);
+    }
+
+    @Override
+    public ResponseBean<PageBean<GetVersionHistoryRes>> historyVersion(BasePageIdReq req) {
+        Long vertsionId = req.getId();
+        BentelerIniVersion version = versionService.getById(vertsionId);
+        Long planId = version.getPlanId();
+        Page<BentelerIniVersion> page = new Page<>(req.getPage(), req.getSize());
+        Page<BentelerIniVersion> versionPage = versionService.page(page, Wrappers.<BentelerIniVersion>lambdaQuery()
+                .eq(BentelerIniVersion::getPlanId, planId)
+                .eq(BentelerIniVersion::getReviewStatus, VersionAuditStatus.历史版本.value)
+        );
+
+        ResponseBean<PageBean<GetVersionHistoryRes>> ok = ResponseBeanBuilder.ok(versionPage,
+                item -> GetVersionHistoryRes.builder()
+                        .id(item.getId())
+                        .createdTime(item.getCreatedTime())
+                        .planId(item.getPlanId())
+                        .build()
+        );
+        return ok;
+    }
+
+    //PlanReq转化planPo
+    public BentelerPlan planReq2planPo(AddIniPlanReq req, VersionAuditStatus versionAuditStatus) {
+        //计划
+        BentelerPlan plan = BentelerPlan.builder()
+                .planType(PlanType.首件.value)
+                .name(req.getName())
+                .pauseFlag(false)
+                .build();
+        //version
+        ArrayList<Integer> allCheckType = req.getVersionWorks().stream().collect(
+                ArrayList::new,
+                (theList, item) -> CollectionUtils.union(theList, item.getBentelerIniVersionItems().stream().collect(
+                        ArrayList::new,
+                        (theList2, item2) -> CollectionUtils.union(theList2, item2.getCheckType()),
+                        ArrayList::addAll
+                )),
+                ArrayList::addAll
+
+        );
+        Map<String, String> baseMap = new HashMap<String, String>() {{
+            put("project", req.getName());
+            put("part", req.getName());
+            put("btlPartNo", req.getName());
+            put("clientPartNo", req.getName());
+            put("verson", req.getName());
+            put("Dmba", req.getName());
+        }};
+
+        List<Long> principalIds = req.getPrincipalIds();
+        Long principleOne = principalIds.get(0);
+        Long principleTwo = null;
+        if (principalIds.size() > 1) {
+            principleTwo = principalIds.get(1);
+        }
+        BentelerIniVersion version = BentelerIniVersion.builder()
+                .planId(plan.getId())
+                .allChecktype(Convert.toStr(allCheckType))
+                .baseMap(Convert.toStr(baseMap))
+                .checkStatus(CheckStatus.未完成.value)
+                .beginDate(req.getBeginDate())
+                .endDate(req.getEndDate())
+                .guideDocumentId(req.getGuideDocumentId())
+                .principleOne(principleOne)
+                .principleTwo(principleTwo)
+                .reviewStatus(versionAuditStatus.value)
+                .build();
+        //item
+        ArrayList<BentelerIniVersionItem> VersionItems = new ArrayList<>();
+        req.getVersionWorks().forEach(versionWork -> {
+            versionWork.getBentelerIniVersionItems().forEach(item -> {
+                BentelerIniVersionItem versionItem = BentelerIniVersionItem.builder()
+                        .planId(plan.getId())
+                        .versionId(version.getId())
+                        .workstation(versionWork.getWorkstation())
+                        .productionLine(versionWork.getProductionLine())
+                        .checkStandardTop(item.getCheckStandardTop())
+                        .checkStandardFloor(item.getCheckStandardFloor())
+                        .checkType(Convert.toStr(item.getCheckType()))
+                        .dataType(item.getDataType())
+                        .frequency(item.getFrequency())
+                        .frequencyNo(item.getFrequencyNo())
+                        .inspectionItem(item.getInspectionItem())
+                        .measuRemark(item.getMeasuRemark())
+                        .level(item.getLevel())
+                        .method(item.getMethod())
+                        .unit(item.getUnit())
+                        .tool(item.getTool())
+                        .toolRemark(item.getToolRemark())
+                        .workPrefix(item.getWorkPrefix())
+                        .workStationBegin(item.getWorkStationBegin())
+                        .workStationEnd(item.getWorkStationEnd())
+
+                        .checkBegintime(req.getCheckBegintime())
+                        .checkEndtime(req.getCheckEndtime())
+                        .remindIniPad(req.getRemindIniPad())
+                        .remindTwoPad(req.getRemindTwoPad())
+                        .upgradeTime(req.getUpgradeTime())
+                        .build();
+                VersionItems.add(versionItem);
+            });
+
+        });
+        version.setVersionItem(VersionItems);
+        plan.setVersion(version);
+        return plan;
+    }
+
+    //planPo转化AddIniPlanReq
+    public AddIniPlanReq planPo2planReq(BentelerPlan plan) {
+        BentelerIniVersion version = plan.getVersion();
+        List<BentelerIniVersionItem> versionItem = version.getVersionItem();
+        Map<String, List<BentelerIniVersionItem>> workGroup =
+                versionItem.stream().collect(
+                        Collectors.groupingBy(item -> item.getWorkstation() + "_" + item.getProductionLine()
+                        )
+                );
+        List<AddIniPlanWorkReq> works = workGroup.entrySet().stream().map(item -> {
+            BentelerIniVersionItem bentelerIniVersionItem = item.getValue().stream().findFirst().orElse(null);
+            List<AddIniPlanItemReq> itemReqs = item.getValue().stream().map(versionItemf -> {
+                List<Integer> checkTypes = Convert.toList(Integer.class, versionItemf.getCheckType());
+                return AddIniPlanItemReq.builder()
+                        .checkType(checkTypes)
+                        .measuRemark(versionItemf.getMeasuRemark())
+                        .method(versionItemf.getMethod())
+                        .checkStandardTop(versionItemf.getCheckStandardTop())
+                        .checkStandardFloor(versionItemf.getCheckStandardFloor())
+                        .workPrefix(versionItemf.getWorkPrefix())
+                        .workStationBegin(versionItemf.getWorkStationBegin())
+                        .workStationEnd(versionItemf.getWorkStationEnd())
+                        .frequency(versionItemf.getFrequency())
+                        .frequencyNo(versionItemf.getFrequencyNo())
+                        .dataType(versionItemf.getDataType())
+                        .level(versionItemf.getLevel())
+                        .unit(versionItemf.getUnit())
+                        .tool(versionItemf.getTool())
+                        .toolRemark(versionItemf.getToolRemark())
+                        .measuRemark(versionItemf.getMeasuRemark())
+                        .inspectionItem(versionItemf.getInspectionItem())
+                        .build();
+            }).collect(Collectors.toList());
+
+
+            return AddIniPlanWorkReq.builder()
+                    .productionLine(bentelerIniVersionItem.getProductionLine())
+                    .workstation(bentelerIniVersionItem.getWorkstation())
+                    .BentelerIniVersionItems(itemReqs)
+                    .build();
+        }).collect(Collectors.toList());
+
+        String baseMapStr = version.getBaseMap();
+        Map<String, String> baseMap = Convert.toMap(String.class, String.class, baseMapStr);
+        //责任人
+        Long principleOne = version.getPrincipleOne();
+        Long getPrincipleTwo = version.getPrincipleTwo();
+
+        return AddIniPlanReq.builder()
+                .name(plan.getName())
+                .principalIds(Arrays.asList(principleOne, getPrincipleTwo))
+                .checkEndtime(version.getCheckEndtime())
+                .remindIniPad(version.getRemindIniPad())
+                .remindTwoPad(version.getRemindTwoPad())
+                .upgradeTime(version.getUpgradeTime())
+                .beginDate(version.getBeginDate())
+                .endDate(version.getEndDate())
+                .guideDocumentId(version.getGuideDocumentId())
+                .project(baseMap.get("project"))
+                .part(baseMap.get("part"))
+                .btlPartNo(baseMap.get("btlPartNo"))
+                .clientPartNo(baseMap.get("clientPartNo"))
+                .verson(baseMap.get("verson"))
+                .Dmba(baseMap.get("Dmba"))
+
+                .checkBegintime(version.getCheckBegintime())
+                .checkEndtime(version.getCheckEndtime())
+                .remindIniPad(version.getRemindIniPad())
+                .remindTwoPad(version.getRemindTwoPad())
+                .upgradeTime(version.getUpgradeTime())
+
+                .versionWorks(works)
+                .build();
+    }
+
+    public boolean planNameRepetition(String name) {
+        List<BentelerPlan> plans = planService.list(Wrappers.<BentelerPlan>lambdaQuery()
+                .eq(BentelerPlan::getName, name));
+        if (CollectionUtils.isNotEmpty(plans)) {
+            return true;
+        }
+        return false;
+    }
 }

+ 16 - 0
application-facade/src/main/java/com/factory/service/impl/BentelerVersionAuditServiceImpl.java

@@ -0,0 +1,16 @@
+package com.factory.service.impl;
+
+import com.factory.base.entity.po.benteler.BentelerVersionAudit;
+import com.factory.mapper.BentelerVersionAuditMapper;
+import com.factory.service.BentelerVersionAuditService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.transaction.annotation.Transactional;
+
+
+@Service("bentelerVersionAuditService")
+@Transactional(rollbackFor = Exception.class)
+public class BentelerVersionAuditServiceImpl extends ServiceImpl<BentelerVersionAuditMapper, BentelerVersionAudit> implements BentelerVersionAuditService {
+
+
+}

+ 1 - 1
application-facade/src/main/resources/application-test.yml

@@ -7,7 +7,7 @@ spring:
     host: 39.100.230.190
     port: 8120
     password: jh1q2w3e4r
-    database: 14
+    database: 15
     lettuce:
       pool:
         max-active: 5

+ 3 - 3
application-facade/src/main/resources/application.yml

@@ -18,13 +18,13 @@ swagger:
       base-package: com.factory
     web:
       title: "web文档"
-      base-package: com.factory.controller.web
+      base-package: com.factory.controller.initial
     mobile:
       title: "mobile文档"
-      base-package: com.factory.web.controller.mobile
+      base-package: com.factory.controller.mobile
     wx:
       title: "wx文档"
-      base-package: com.factory.web.controller.wx
+      base-package: com.factory.controller.wx
   authorization:
     key-name: Authorization
     name: Authorization

+ 116 - 0
application-facade/src/main/resources/mapper/BentelerIniVersionMapper.xml

@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.factory.mapper.BentelerIniVersionMapper">
+
+    <sql id="planVersionItem">
+        select bp.name,
+               bp.pause_flag,
+               biv.principle_one,
+               biv.principle_two,
+               biv.check_status,
+               bp.created_time
+        from benteler_plan bp
+                 left join benteler_ini_version biv on bp.id = biv.plan_id
+                 left join benteler_ini_version_item bivi on biv.id = bivi.version_id
+    </sql>
+    <!--首件计划列表-->
+    <select id="planlist" resultType="com.factory.entity.vo.res.benteler.PagePlanRes">
+        select *
+        from benteler_plan bp
+        left join benteler_ini_version biv on bp.id = biv.plan_id
+        left join benteler_ini_version_item bivi on biv.id = bivi.version_id
+        <where>
+            and bp.plan_type = 1
+            and biv.review_status=2
+            and bivi.deleted=0
+            #名称过滤的
+            <if test="name!=null and name!=''">
+                <bind name="pname" value="'%'+name+'%'"/>
+                and bp.name like #{pname}
+            </if>
+            #状态过滤
+            <if test="checkStatus!=null">
+                and biv.check_status = #{checkStatus}
+            </if>
+        </where>
+        order by bp.created_time desc
+
+
+    </select>
+    <!--待审核列表-->
+    <select id="unAuditList" resultType="com.factory.entity.vo.res.benteler.unAuditListRes">
+        select bp.id,
+        bp.name,
+        bp.plan_type,
+        biv.review_status,
+        bp.created_time,
+        bp.pause_flag
+        from benteler_plan bp
+        left join benteler_ini_version biv on bp.id = biv.plan_id
+        left join benteler_ini_version_item bivi on biv.id = bivi.version_id
+        <where>
+            #名称过滤的
+            <if test="name!=null and name!=''">
+                <bind name="pname" value="'%'+name+'%'"/>
+                and bp.name like #{pname}
+            </if>
+            #状态过滤
+            <if test="checkStatus!=null">
+                and biv.check_status = #{checkStatus}
+            </if>
+            and (biv.review_status &lt; 2 or biv.review_status = 4)
+            and biv.deleted=0
+            and bivi.deleted=0
+        </where>
+        order by bp.created_time desc
+    </select>
+
+
+
+
+    <select id="getCurrentVersion" resultMap="rmGetVersion">
+        select * from benteler_ini_version biv
+        <where>
+            and biv.plan_id = #{planId}
+            and biv.review_status =2
+            and biv.deleted =0
+        </where>
+    </select>
+    <select id="getUnAuditVersion" resultMap="rmGetVersion">
+        select * from benteler_ini_version biv
+        <where>
+            and biv.plan_id = #{planId}
+            and (biv.review_status &lt; 2 or biv.review_status = 4)
+            and biv.deleted =0
+        </where>
+    </select>
+    <select id="getWaitAuditVersion" resultMap="rmGetVersion">
+        select * from benteler_ini_version biv
+        <where>
+            and biv.plan_id = #{planId}
+            and biv.review_status &lt; 2
+            and biv.deleted =0
+        </where>
+    </select>
+
+    <resultMap id="rmGetVersion" type="com.factory.base.entity.po.benteler.BentelerIniVersion">
+        <id column="id" property="id"/>
+        <result column="principle_one" property="principleOne"/>
+        <result column="principle_two" property="principleTwo"/>
+        <result column="begin_date" property="beginDate"/>
+        <collection select="com.factory.mapper.BentelerIniVersionMapper.getVersionItem"
+                    column="id"
+                    javaType="ArrayList"
+                    ofType="com.factory.base.entity.po.benteler.BentelerIniVersionItem"
+                    property="versionItem"/>
+    </resultMap>
+    <select id="getVersionItem" resultType="com.factory.base.entity.po.benteler.BentelerIniVersionItem">
+        select * from benteler_ini_version_item bivi
+        <where>
+            and bivi.version_id = #{versionId}
+            and bivi.deleted=0
+        </where>
+    </select>
+
+</mapper>

+ 29 - 0
application-facade/src/test/java/com/factory/service/impl/BentelerIniVersionServiceImplTest.java

@@ -0,0 +1,29 @@
+package com.factory.service.impl;
+
+
+import com.factory.FacadeApplication;
+import com.factory.base.entity.po.benteler.BentelerIniVersion;
+import com.factory.mapper.BentelerIniVersionMapper;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.transaction.annotation.Transactional;
+
+
+@RunWith(SpringJUnit4ClassRunner.class)
+@SpringBootTest(classes = {FacadeApplication.class})
+@Transactional(rollbackFor = Exception.class)
+public class BentelerIniVersionServiceImplTest {
+
+    @Autowired
+    private BentelerIniVersionMapper versionMapper;
+
+    @Test
+    public void executeLongdyCreate() {
+        //BentelerPlan unAuditPlan = versionMapper.getUnAuditPlan(6L);
+
+    }
+
+}

+ 12 - 0
common-base/src/main/java/com/factory/base/entity/enumPo/CheckStatus.java

@@ -0,0 +1,12 @@
+package com.factory.base.entity.enumPo;
+
+public enum CheckStatus {
+
+    未完成(1),
+    已完成(2);
+    public final Integer value;
+    CheckStatus(Integer value) {
+        this.value = value;
+    }
+
+}

+ 12 - 0
common-base/src/main/java/com/factory/base/entity/enumPo/PlanType.java

@@ -0,0 +1,12 @@
+package com.factory.base.entity.enumPo;
+
+public enum PlanType {
+
+    首件(1),
+    防错(2);
+    public final Integer value;
+    PlanType(Integer value) {
+        this.value = value;
+    }
+
+}

+ 0 - 15
common-base/src/main/java/com/factory/base/entity/enumPo/ResStatus.java

@@ -1,15 +0,0 @@
-package com.factory.base.entity.enumPo;
-
-public enum ResStatus {
-    //响应状态
-    //待响应 已响应/未响应 已完成
-    WAIT(1),
-    UNRES(2),
-    RES(3),
-    Finished(4);
-    public final Integer value;
-    ResStatus(Integer value) {
-        this.value = value;
-    }
-
-}

+ 5 - 4
common-base/src/main/java/com/factory/base/entity/enumPo/VersionAuditStatus.java

@@ -2,10 +2,11 @@ package com.factory.base.entity.enumPo;
 
 public enum VersionAuditStatus {
     //审核结果 1待审核 2当前版本 3历史版本 4驳回
-    UNAUDIT(1),
-    CURRENT(2),
-    HISTORY(3),
-    TURNDOWN(4);
+    待质量经理审核(0),
+    待生产经理审核(1),
+    当前版本(2),
+    历史版本(3),
+    驳回(4);
     public final Integer value;
     VersionAuditStatus(Integer value) {
         this.value = value;

+ 52 - 0
common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniAbnormal.java

@@ -0,0 +1,52 @@
+package com.factory.base.entity.po.benteler;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * @author dl
+ * @date 2021-06-29 14:31:47
+ */
+@Data
+@TableName("benteler_ini_abnormal")
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+public class BentelerIniAbnormal implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    @TableId(type = IdType.AUTO)
+
+    @ApiModelProperty(value = "主键")
+    private Long id;
+
+    @ApiModelProperty(value = "发生时间")
+    private LocalDateTime openTime;
+
+    @ApiModelProperty(value = "版本id")
+    private Long versionId;
+
+    @ApiModelProperty(value = "检查结果id")
+    private Long checkResultId;
+
+    @ApiModelProperty(value = "检查项日结果id")
+    private Long checkItem;
+
+    @ApiModelProperty(value = "检查项id")
+    private Long versionItem;
+
+    @ApiModelProperty(value = "0未解决 1已解决")
+    private Boolean solveFlag;
+
+}

+ 3 - 3
common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniCheckItem.java

@@ -15,7 +15,7 @@ import java.time.LocalDateTime;
  * 记录检查结果 - 分类结果 - 单一检查项结果
  *
  * @author dl
- * @date 2021-06-26 12:35:17
+ * @date 2021-06-29 14:31:47
  */
 @Data
 @TableName("benteler_ini_check_item")
@@ -37,8 +37,8 @@ public class BentelerIniCheckItem implements Serializable {
     @ApiModelProperty(value = "问题数量")
     private Integer issueNum;
 
-    @ApiModelProperty(value = "是否目视检查")
-    private Boolean sightCheck;
+    @ApiModelProperty(value = "数据类型")
+    private Boolean dataType;
 
     @ApiModelProperty(value = "检查结果id")
     private Long checkResultId;

+ 1 - 1
common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniCheckResult.java

@@ -15,7 +15,7 @@ import java.time.LocalDateTime;
  * 检查记录
  *
  * @author dl
- * @date 2021-06-26 12:35:17
+ * @date 2021-06-29 14:31:47
  */
 @Data
 @TableName("benteler_ini_check_result")

+ 2 - 2
common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniCheckType.java

@@ -12,10 +12,10 @@ import java.io.Serializable;
 import java.time.LocalDateTime;
 
 /**
- * 计划 - 检验结果
+ * 计划 - 首件/两百/中断  结果统计
  *
  * @author dl
- * @date 2021-06-26 12:35:17
+ * @date 2021-06-29 14:31:47
  */
 @Data
 @TableName("benteler_ini_check_type")

+ 27 - 41
common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniVersion.java

@@ -12,12 +12,14 @@ import java.io.Serializable;
 import java.sql.Time;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
+import java.time.LocalTime;
+import java.util.List;
 
 /**
  * 计划 - 版本信息
  *
  * @author dl
- * @date 2021-06-26 12:35:17
+ * @date 2021-06-29 14:31:47
  */
 @Data
 @TableName("benteler_ini_version")
@@ -28,8 +30,6 @@ import java.time.LocalDateTime;
 public class BentelerIniVersion implements Serializable {
     private static final long serialVersionUID = 1L;
 
-    
-
     @TableId(type = IdType.AUTO)
 
     @ApiModelProperty(value = "主键id")
@@ -38,12 +38,8 @@ public class BentelerIniVersion implements Serializable {
     @ApiModelProperty(value = "计划id")
     private Long planId;
 
-    @ApiModelProperty(value = "点检状态")
-    private Long checkStatus;
-
-
-    @ApiModelProperty(value = "提交时间")
-    private Time submitTime;
+    @ApiModelProperty(value = "当前点检状态 1未完成 2已完成")
+    private Integer checkStatus;
 
     @ApiModelProperty(value = "责任人1")
     private Long principleOne;
@@ -51,6 +47,21 @@ public class BentelerIniVersion implements Serializable {
     @ApiModelProperty(value = "责任人2")
     private Long principleTwo;
 
+    @ApiModelProperty(value = "检验开始时间")
+    private LocalTime checkBegintime;
+
+    @ApiModelProperty(value = "检验结束时间")
+    private LocalTime checkEndtime;
+
+    @ApiModelProperty(value = "提醒首件pad时长")
+    private Integer remindIniPad;
+
+    @ApiModelProperty(value = "提醒两百pad提交时刻")
+    private LocalTime remindTwoPad;
+
+    @ApiModelProperty(value = "升级提醒时间")
+    private LocalTime upgradeTime;
+
     @ApiModelProperty(value = "生效日期")
     private LocalDate beginDate;
 
@@ -63,38 +74,8 @@ public class BentelerIniVersion implements Serializable {
     @ApiModelProperty(value = "审核状态 1待审核 2当前版本 3历史版本 4驳回")
     private Integer reviewStatus;
 
-    @ApiModelProperty(value = "基础信息-project")
-    private String project;
-
-    @ApiModelProperty(value = "基础信息-Gpin")
-    private String gpin;
-
-    @ApiModelProperty(value = "基础信息-Language")
-    private String language;
-
-    @ApiModelProperty(value = "基础信息-OEM")
-    private String oem;
-
-    @ApiModelProperty(value = "基础信息-partname")
-    private String partname;
-
-    @ApiModelProperty(value = "基础信息-product_goup")
-    private String productGoup;
-
-    @ApiModelProperty(value = "基础信息-status_doc")
-    private String statusDoc;
-
-    @ApiModelProperty(value = "基础信息-bat_material")
-    private String batMaterial;
-
-    @ApiModelProperty(value = "基础信息-part_no_oem")
-    private String partNoOem;
-
-    @ApiModelProperty(value = "基础信息-last_change")
-    private String lastChange;
-
-    @ApiModelProperty(value = "基础信息-版本名称")
-    private String versionName;
+    @ApiModelProperty(value = "基础信息")
+    private String baseMap;
 
     @ApiModelProperty(value = "受控文件id")
     private Long controlledDocumentId;
@@ -122,4 +103,9 @@ public class BentelerIniVersion implements Serializable {
     @ApiModelProperty(value = "最近更新时间", hidden = true)
     private LocalDateTime updatedTime;
 
+
+
+    @TableField(exist = false)
+    @ApiModelProperty(value = "检查项")
+    private List<BentelerIniVersionItem> versionItem;
 }

+ 51 - 13
common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerIniVersionItem.java

@@ -10,13 +10,15 @@ import lombok.NoArgsConstructor;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.sql.Time;
 import java.time.LocalDateTime;
+import java.time.LocalTime;
 
 /**
  * 计划 - 检查项
  *
  * @author dl
- * @date 2021-06-26 12:35:17
+ * @date 2021-06-29 14:31:47
  */
 @Data
 @TableName("benteler_ini_version_item")
@@ -28,7 +30,6 @@ public class BentelerIniVersionItem implements Serializable {
     private static final long serialVersionUID = 1L;
 
     @TableId(type = IdType.AUTO)
-
     @ApiModelProperty(value = "主键id")
     private Long id;
 
@@ -38,41 +39,78 @@ public class BentelerIniVersionItem implements Serializable {
     @ApiModelProperty(value = "版本号id")
     private Long versionId;
 
-    @ApiModelProperty(value = "1首件 2两百 3中断 包括哪项")
-    private String checkType;
+    @ApiModelProperty(value = "生产线")
+    private String productionLine;
 
     @ApiModelProperty(value = "工作站")
     private String workstation;
 
-    @ApiModelProperty(value = "检验特性")
+
+
+    @ApiModelProperty(value = "检验开始时间")
+    private LocalTime checkBegintime;
+
+    @ApiModelProperty(value = "检验结束时间")
+    private LocalTime checkEndtime;
+
+    @ApiModelProperty(value = "提醒首件pad时长")
+    private Integer remindIniPad;
+
+    @ApiModelProperty(value = "提醒两百pad提交时刻")
+    private LocalTime remindTwoPad;
+
+    @ApiModelProperty(value = "升级提醒时间")
+    private LocalTime upgradeTime;
+
+    @ApiModelProperty(value = "频次1日2周3月4季度5半年6班")
+    private Integer frequency;
+
+    @ApiModelProperty(value = "频次检测点 第(5)天 星期(3)")
+    private Integer frequencyNo;
+
+    @ApiModelProperty(value = "频率1首件 2两百 3中断 包括哪项")
+    private String checkType;
+
+
+    @ApiModelProperty(value = "特性")
     private String inspectionItem;
 
-    @ApiModelProperty(value = "检验方法")
+    @ApiModelProperty(value = "测量点描述")
+    private String measuRemark;
+
+    @ApiModelProperty(value = "判断标准方法")
     private String method;
 
+    @ApiModelProperty(value = "数据类别")
+    private Integer dataType;
+
     @ApiModelProperty(value = "检测标准值上限")
     private BigDecimal checkStandardTop;
 
     @ApiModelProperty(value = "检测标准值下限")
     private BigDecimal checkStandardFloor;
 
-    @ApiModelProperty(value = "等级")
+    @ApiModelProperty(value = "特性等级")
     private String level;
 
+    @ApiModelProperty(value = "单位")
+    private String unit;
+
     @ApiModelProperty(value = "工位前缀")
     private String workPrefix;
 
-    @ApiModelProperty(value = "检验工位首号")
+    @ApiModelProperty(value = "检验测量点首号")
     private Integer workStationBegin;
 
-    @ApiModelProperty(value = "检验工位尾号")
+    @ApiModelProperty(value = "检验测量点尾号")
     private Integer workStationEnd;
 
-    @ApiModelProperty(value = "是否目视检查")
-    private Boolean sightCheck;
 
-    @ApiModelProperty(value = "工具")
-    private String tool;
+    @ApiModelProperty(value = "校验工具")
+    private Integer tool;
+
+    @ApiModelProperty(value = "校验工具 具体描述")
+    private String toolRemark;
 
     @TableField(fill = FieldFill.INSERT)
     @ApiModelProperty(value = "逻辑删除", hidden = true)

+ 9 - 3
common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerPlan.java

@@ -15,7 +15,7 @@ import java.time.LocalDateTime;
  * 本特勒检测计划
  *
  * @author dl
- * @date 2021-06-26 12:35:17
+ * @date 2021-06-29 14:31:47
  */
 @Data
 @TableName("benteler_plan")
@@ -35,9 +35,9 @@ public class BentelerPlan implements Serializable {
     private String name;
 
     @ApiModelProperty(value = "计划类型 1首件 2防错")
-    private Integer checkType;
+    private Integer planType;
 
-    @ApiModelProperty(value = "是否禁用暂停")
+    @ApiModelProperty(value = "是否禁用暂停 0否 1是")
     private Boolean pauseFlag;
 
     @TableField(fill = FieldFill.INSERT)
@@ -60,4 +60,10 @@ public class BentelerPlan implements Serializable {
     @ApiModelProperty(value = "最近更新时间", hidden = true)
     private LocalDateTime updatedTime;
 
+
+
+
+    @TableField(exist = false)
+    @ApiModelProperty(value = "版本", hidden = true)
+    private BentelerIniVersion version;
 }

+ 75 - 0
common-base/src/main/java/com/factory/base/entity/po/benteler/BentelerVersionAudit.java

@@ -0,0 +1,75 @@
+package com.factory.base.entity.po.benteler;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * 版本 审核记录
+ *
+ * @author dl
+ * @date 2021-06-29 19:22:36
+ */
+@Data
+@TableName("benteler_version_audit")
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+public class BentelerVersionAudit implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    @TableId(type = IdType.AUTO)
+
+    @ApiModelProperty(value = "主键id")
+    private Long id;
+
+    @ApiModelProperty(value = "版本id")
+    private Long versionId;
+
+    @ApiModelProperty(value = "审核人id")
+    private Long auditUserId;
+
+    @ApiModelProperty(value = "角色id")
+    private Integer roleId;
+
+    @ApiModelProperty(value = "计划类型 1首件 2防错")
+    private Integer checkType;
+
+    @ApiModelProperty(value = "审核结果  1通过2驳回")
+    private Integer auditResult;
+
+    @ApiModelProperty(value = "审核备注")
+    private String remark;
+
+    @TableField(fill = FieldFill.INSERT)
+    @ApiModelProperty(value = "逻辑删除", hidden = true)
+    private Integer deleted;
+
+    @TableField(fill = FieldFill.INSERT)
+    @ApiModelProperty(value = "创建人", hidden = true)
+    private Long createdUserId;
+
+    @TableField(fill = FieldFill.INSERT)
+    @ApiModelProperty(value = "创建时间", hidden = true)
+    private LocalDateTime createdTime;
+
+    @TableField(fill = FieldFill.UPDATE)
+    @ApiModelProperty(value = "最近更新人", hidden = true)
+    private String updatedUserId;
+
+    @TableField(fill = FieldFill.UPDATE)
+    @ApiModelProperty(value = "最近更新时间", hidden = true)
+    private LocalDateTime updatedTime;
+
+    @ApiModelProperty(value = "乐观锁")
+    private Integer versionLock;
+
+}