wuzhenyue vor 3 Jahren
Ursprung
Commit
afcb39abcd
22 geänderte Dateien mit 592 neuen und 62 gelöschten Zeilen
  1. 27 19
      application-facade/src/main/java/com/factory/controller/web/FirstArticleController.java
  2. 12 2
      application-facade/src/main/java/com/factory/controller/web/PreventMistakeController.java
  3. 32 0
      application-facade/src/main/java/com/factory/web/entity/fa/req/SearchFaAllCheckFlagReq.java
  4. 1 1
      application-facade/src/main/java/com/factory/web/entity/fa/req/SearchFaCheckRecordListReq.java
  5. 8 3
      application-facade/src/main/java/com/factory/web/entity/fa/req/SearchFaItemListForPadReq.java
  6. 35 0
      application-facade/src/main/java/com/factory/web/entity/fa/req/SearchFaItemResultListReq.java
  7. 31 0
      application-facade/src/main/java/com/factory/web/entity/fa/res/FaAllCheckFlagRes.java
  8. 15 0
      application-facade/src/main/java/com/factory/web/entity/fa/res/FaItemListForPadRes.java
  9. 12 0
      application-facade/src/main/java/com/factory/web/entity/fa/res/FaItemNoGoListRes.java
  10. 5 0
      application-facade/src/main/java/com/factory/web/entity/pm/OnsiteItem.java
  11. 32 0
      application-facade/src/main/java/com/factory/web/entity/pm/req/SearchItemListReq.java
  12. 32 0
      application-facade/src/main/java/com/factory/web/entity/pm/req/SearchPmAllCheckFlagReq.java
  13. 31 0
      application-facade/src/main/java/com/factory/web/entity/pm/res/PmAllCheckFlagRes.java
  14. 3 0
      application-facade/src/main/java/com/factory/web/entity/pm/res/PmItemNoGoListRes.java
  15. 32 0
      application-facade/src/main/java/com/factory/web/mapper/fa/FirstArticleMapper.java
  16. 15 0
      application-facade/src/main/java/com/factory/web/mapper/pm/PreventMistakeMapper.java
  17. 25 0
      application-facade/src/main/java/com/factory/web/service/fa/FirstArticleService.java
  18. 126 23
      application-facade/src/main/java/com/factory/web/service/impl/fa/FirstArticleServiceImpl.java
  19. 39 4
      application-facade/src/main/java/com/factory/web/service/impl/pm/PreventMistakeServiceImpl.java
  20. 11 3
      application-facade/src/main/java/com/factory/web/service/pm/PreventMistakeService.java
  21. 45 6
      application-facade/src/main/resources/mapper/FirstArticleMapper.xml
  22. 23 1
      application-facade/src/main/resources/mapper/PreventMistakeMapper.xml

+ 27 - 19
application-facade/src/main/java/com/factory/controller/web/FirstArticleController.java

@@ -19,6 +19,7 @@ import com.factory.web.entity.fa.req.AddFaPlanReq;
 import com.factory.web.entity.fa.req.EditFaItemResultListReq;
 import com.factory.web.entity.fa.req.EditFaPlanReq;
 import com.factory.web.entity.fa.req.SearchALLPlanListReq;
+import com.factory.web.entity.fa.req.SearchFaAllCheckFlagReq;
 import com.factory.web.entity.fa.req.SearchFaCheckRecordListReq;
 import com.factory.web.entity.fa.req.SearchFaItemListForPadReq;
 import com.factory.web.entity.fa.req.SearchFaItemNoGoListReq;
@@ -29,6 +30,7 @@ import com.factory.web.entity.fa.req.SearchFaTaskReq;
 import com.factory.web.entity.fa.req.SearchFaWorkshopListForPadReq;
 import com.factory.web.entity.fa.req.SearchFaWorkshopNoGoListReq;
 import com.factory.web.entity.fa.req.SubmitFaTaskReq;
+import com.factory.web.entity.fa.res.FaAllCheckFlagRes;
 import com.factory.web.entity.fa.res.FaCheckRecordListRes;
 import com.factory.web.entity.fa.res.FaItemListForPadRes;
 import com.factory.web.entity.fa.res.FaItemNoGoListRes;
@@ -73,7 +75,7 @@ public class FirstArticleController {
 	}
 
 	@ApiOperation(value = "取得首件计划信息")
-	@ApiOperationSupport(order = 4)
+	@ApiOperationSupport(order = 2)
 	@PostMapping("/getFaPlan")
 	public ResponseBean<FaPlanRes> getFaPlan(@RequestBody SearchFaPlanReq req) {
 		FaPlanRes faPlanRes = firstArticleService.getFaPlan(req);
@@ -82,41 +84,41 @@ public class FirstArticleController {
 	
 	@ApiOperation(value = "修改首件计划")
 	@PostMapping("/editFaPlan")
-	@ApiOperationSupport(order = 7)
+	@ApiOperationSupport(order = 3)
 	public ResponseBean editFaPlan(@RequestBody EditFaPlanReq req) {
 		return ResponseBeanBuilder.ok(firstArticleService.editFaPlan(req));
 	}
 	
 	@ApiOperation(value = "禁用解禁首件计划")
 	@PostMapping("/disableFaPlan")
-	@ApiOperationSupport(order = 5)
+	@ApiOperationSupport(order = 4)
 	public ResponseBean disableFaPlan(@RequestBody PmPlanPauseFlagReq req) {
 		return preventMistakeService.disablePmPlan(req);
 	}
 	
 	@ApiOperation(value = "取得Web端首件计划点检列表")
-	@ApiOperationSupport(order = 2)
+	@ApiOperationSupport(order = 5)
 	@PostMapping("/getFaPlanCheckList")
 	public ResponseBean<PageBean<FaPlanListRes>> getFaPlanCheckList(@RequestBody SearchFaPlanCheckListReq req) {
 		return firstArticleService.getFaPlanCheckList(req);
 	}
 	
 	@ApiOperation(value = "取得Pad端首件计划列表")
-	@ApiOperationSupport(order = 12)
+	@ApiOperationSupport(order = 6)
 	@PostMapping("/getFaPlanListForPad")
 	public ResponseBean<List<FaPlanListForPadRes>> getFaPlanListForPad(@RequestBody SearchFaPlanListForPadReq req) {
 		return firstArticleService.getFaPlanListForPad(req);
 	}
 	
 	@ApiOperation(value = "取得Pad端工作站列表")
-	@ApiOperationSupport(order = 12)
+	@ApiOperationSupport(order = 7)
 	@PostMapping("/getFaWorkshopListForPad")
 	public ResponseBean<List<FirstArticleWorkshop>> getFaWorkshopListForPad(@RequestBody SearchFaWorkshopListForPadReq req) {
 		return firstArticleService.getFaWorkshopListForPad(req);
 	}
 	
 	@ApiOperation(value = "取得Pad端巡检项目列表")
-	@ApiOperationSupport(order = 12)
+	@ApiOperationSupport(order = 8)
 	@PostMapping("/getFaItemListForPad")
 	public ResponseBean<List<FaItemListForPadRes>> getFaItemListForPad(@RequestBody SearchFaItemListForPadReq req) {
 		return firstArticleService.getFaItemListForPad(req);
@@ -124,42 +126,41 @@ public class FirstArticleController {
 	
 	@ApiOperation(value = "添加巡检项目检查结果")
 	@PostMapping("/addFaItemResult")
-	@ApiOperationSupport(order = 16)
+	@ApiOperationSupport(order = 9)
 	public ResponseBean addFaItemResult(@RequestBody AddFaItemResultListReq req) {
 		return ResponseBeanBuilder.ok(firstArticleService.addFaItemResult(req));
 	}
 	
 	@ApiOperation(value = "任务检查完后提交")
 	@PostMapping("/submitFaTask")
-	@ApiOperationSupport(order = 17)
+	@ApiOperationSupport(order = 10)
 	public ResponseBean submitFaTask(@RequestBody SubmitFaTaskReq req) {
 		return ResponseBeanBuilder.ok(firstArticleService.submitFaTask(req));
 	}
 	
 	@ApiOperation(value = "取得不放行任务对应的工作站")
-	@ApiOperationSupport(order = 18)
+	@ApiOperationSupport(order = 11)
 	@PostMapping("/getFaWorkshopNoGoList")
 	public ResponseBean<List<FaWorkshopNoGoListRes>> getFaWorkshopNoGoList(@RequestBody SearchFaWorkshopNoGoListReq req) {
 		return firstArticleService.getFaWorkshopNoGoList(req);
 	}
 	
 	@ApiOperation(value = "取得不放行任务对应的点检项目")
-	@ApiOperationSupport(order = 19)
+	@ApiOperationSupport(order = 12)
 	@PostMapping("/getFaItemNoGoList")
 	public ResponseBean<List<FaItemNoGoListRes>> getFaItemNoGoList(@RequestBody SearchFaItemNoGoListReq req) {
 		return firstArticleService.getFaItemNoGoList(req);
 	}
-	
-	
+
 	@ApiOperation(value = "修改巡检项目检查结果")
 	@PostMapping("/editFaItemResult")
-	@ApiOperationSupport(order = 21)
+	@ApiOperationSupport(order = 13)
 	public ResponseBean editFaItemResult(@RequestBody EditFaItemResultListReq req) {
 		return ResponseBeanBuilder.ok(firstArticleService.editFaItemResult(req));
 	}
 	
 	@ApiOperation(value = "通过计划ID取得表头")
-	@ApiOperationSupport(order = 13)
+	@ApiOperationSupport(order = 14)
 	@PostMapping("/getFaTitle")
 	public ResponseBean<FirstArticleTitle> getFaTitle(@RequestBody SearchFaPlanReq req) {
 		FirstArticleTitle firstArticleTitle = firstArticleService.getFaTitle(req.getBentelerPlanId());
@@ -167,31 +168,38 @@ public class FirstArticleController {
 	}
 	
 	@ApiOperation(value = "取得不放行任务对应的质量经理审批信息")
-	@ApiOperationSupport(order = 20)
+	@ApiOperationSupport(order = 15)
 	@PostMapping("/getFaNoGoTaskAapproval")
 	public ResponseBean<FaNoGoTaskAapprovalRes> getFaNoGoTaskAapproval(@RequestBody SearchFaTaskReq req) {
 		return firstArticleService.getFaNoGoTaskAapproval(req);
 	}
 	
 	@ApiOperation(value = "取得计划审批信息")
-	@ApiOperationSupport(order = 8)
+	@ApiOperationSupport(order = 16)
 	@PostMapping("/getFaPlanApprovalList")
 	public ResponseBean<List<OnsiteApprovalPlan>> getFaPlanApprovalList(@RequestBody SearchPmPlanReq req) {
 		return preventMistakeService.getPmPlanApprovalList(req);
 	}
 	
 	@ApiOperation(value = "取得所有计划(首件、防错)")
-	@ApiOperationSupport(order = 8)
+	@ApiOperationSupport(order = 17)
 	@PostMapping("/getALLPlanList")
 	public ResponseBean<List<BentelerPlan>> getALLPlanList(@RequestBody SearchALLPlanListReq req) {
 		return firstArticleService.getALLPlanList(req);
 	}
 	
 	@ApiOperation(value = "检查记录列表")
-	@ApiOperationSupport(order = 11)
+	@ApiOperationSupport(order = 18)
 	@PostMapping("/getFaCheckRecordList")
 	public ResponseBean<FaCheckRecordListRes> getFaCheckRecordList(@RequestBody SearchFaCheckRecordListReq req) {
 		return firstArticleService.getFaCheckRecordList(req);
 	}
 	
+	@ApiOperation(value = "判断检验结果是否填写完成")
+	@PostMapping("/getFaAllCheckFlag")
+	@ApiOperationSupport(order = 19)
+	public ResponseBean<FaAllCheckFlagRes> getFaAllCheckFlag(@RequestBody SearchFaAllCheckFlagReq req) {
+		return ResponseBeanBuilder.ok(firstArticleService.getFaAllCheckFlag(req));
+	}
+	
 }

+ 12 - 2
application-facade/src/main/java/com/factory/controller/web/PreventMistakeController.java

@@ -22,6 +22,8 @@ import com.factory.web.entity.pm.req.EditItemResultListReq;
 import com.factory.web.entity.pm.req.EditPmPlanReq;
 import com.factory.web.entity.pm.req.PmPlanPauseFlagReq;
 import com.factory.web.entity.pm.req.SearchAllWorkshopReq;
+import com.factory.web.entity.pm.req.SearchItemListReq;
+import com.factory.web.entity.pm.req.SearchPmAllCheckFlagReq;
 import com.factory.web.entity.pm.req.SearchPmCheckRecordListReq;
 import com.factory.web.entity.pm.req.SearchPmItemNoGoListReq;
 import com.factory.web.entity.pm.req.SearchPmPlanCheckListReq;
@@ -31,6 +33,7 @@ import com.factory.web.entity.pm.req.SearchPmPlanReq;
 import com.factory.web.entity.pm.req.SearchPmWorkshopNoGoListReq;
 import com.factory.web.entity.pm.req.SearchTaskReq;
 import com.factory.web.entity.pm.req.SearchWorkshopReq;
+import com.factory.web.entity.pm.res.PmAllCheckFlagRes;
 import com.factory.web.entity.pm.res.PmAllWorkshopListRes;
 import com.factory.web.entity.pm.res.PmCheckListRes;
 import com.factory.web.entity.pm.res.PmCheckRecordListRes;
@@ -162,10 +165,10 @@ public class PreventMistakeController {
 		return preventMistakeService.getWorkshopList(req);
 	}
 
-	@ApiOperation(value = "通过工作站ID取得巡检项目列表")
+	@ApiOperation(value = "通过工作站ID取得巡检项目列表(包括已保存检查结果)")
 	@ApiOperationSupport(order = 15)
 	@PostMapping("/getItemList")
-	public ResponseBean<List<OnsiteItem>> getItemList(@RequestBody SearchWorkshopReq req) {
+	public ResponseBean<List<OnsiteItem>> getItemList(@RequestBody SearchItemListReq req) {
 		return preventMistakeService.getItemList(req);
 	}
 
@@ -217,6 +220,13 @@ public class PreventMistakeController {
 	public ResponseBean<List<PmAllWorkshopListRes>> getAllWorkshopList(@RequestBody SearchAllWorkshopReq req) {
 		return preventMistakeService.getAllWorkshopList(req);
 	}
+	
+	@ApiOperation(value = "判断检验结果是否填写完成")
+	@PostMapping("/getPmAllCheckFlag")
+	@ApiOperationSupport(order = 23)
+	public ResponseBean<PmAllCheckFlagRes> getPmAllCheckFlag(@RequestBody SearchPmAllCheckFlagReq req) {
+		return ResponseBeanBuilder.ok(preventMistakeService.getPmAllCheckFlag(req));
+	}
 
 	// 计划审批、任务审批,都在小程序端做
 }

+ 32 - 0
application-facade/src/main/java/com/factory/web/entity/fa/req/SearchFaAllCheckFlagReq.java

@@ -0,0 +1,32 @@
+package com.factory.web.entity.fa.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;
+
+/**
+ * 取得不放行任务对应的工作站
+ *
+ * @author wzy
+ * @date 2021-07-09 12:00:00
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class SearchFaAllCheckFlagReq {
+	
+	@ApiModelProperty(value = "计划Id")
+	private Long bentelerPlanId;
+	
+	@ApiModelProperty(value = "任务id")
+	private Long firstArticleTaskId;
+	
+}

+ 1 - 1
application-facade/src/main/java/com/factory/web/entity/fa/req/SearchFaCheckRecordListReq.java

@@ -27,6 +27,6 @@ public class SearchFaCheckRecordListReq {
 	private Long bentelerPlanId;
 	
 	@ApiModelProperty(value = "日期", example = "2021-06-08")
-	private String date;
+	private String checkDate;
 	
 }

+ 8 - 3
application-facade/src/main/java/com/factory/web/entity/fa/req/SearchFaItemListForPadReq.java

@@ -22,10 +22,15 @@ import lombok.NoArgsConstructor;
 @JsonInclude()
 @ApiModel("")
 public class SearchFaItemListForPadReq {
-
-	@ApiModelProperty(value = "工作站Id")
-	private Long workshopId;
+	@ApiModelProperty(value = "计划id")
+	private Long bentelerPlanId;
 	
 	@ApiModelProperty(value = "0表示首件 1表示200件 2表示中断")
 	private Integer typeFlag;
+	
+	@ApiModelProperty(value = "点检人对应的用户ID")
+	private Long userId;
+
+	@ApiModelProperty(value = "工作站Id")
+	private Long workshopId;
 }

+ 35 - 0
application-facade/src/main/java/com/factory/web/entity/fa/req/SearchFaItemResultListReq.java

@@ -0,0 +1,35 @@
+package com.factory.web.entity.fa.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;
+
+/**
+ * 检查记录
+ *
+ * @author wzy
+ * @date 2021-07-09 12:00:00
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class SearchFaItemResultListReq {
+	
+	@ApiModelProperty(value = "巡检项目id")
+	private Long firstArticleItemId;
+	
+	@ApiModelProperty(value = "日期", example = "2021-06-08")
+	private String checkDate;
+	
+	@ApiModelProperty(value = "0表示首件 1表示200件 2表示中断")
+	private Integer typeFlag;
+	
+}

+ 31 - 0
application-facade/src/main/java/com/factory/web/entity/fa/res/FaAllCheckFlagRes.java

@@ -0,0 +1,31 @@
+package com.factory.web.entity.fa.res;
+
+import java.io.Serializable;
+
+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;
+
+/**
+ * 点检是否完成
+ *
+ * @author wzy
+ * @date 2021-07-09 12:00:00
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class FaAllCheckFlagRes implements Serializable {
+	
+	@ApiModelProperty(value = "0没完成 1全部完成")
+	private Integer allCheckFlag;
+
+}

+ 15 - 0
application-facade/src/main/java/com/factory/web/entity/fa/res/FaItemListForPadRes.java

@@ -1,8 +1,11 @@
 package com.factory.web.entity.fa.res;
 
 import java.io.Serializable;
+import java.time.LocalDateTime;
 
+import com.baomidou.mybatisplus.annotation.FieldFill;
 import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 
@@ -87,4 +90,16 @@ public class FaItemListForPadRes implements Serializable {
 	
 	@ApiModelProperty(value = "测量点序号")
 	private Integer sno;
+
+	@ApiModelProperty(value = "检查结果-对应数据类型0数值")
+	private String valCheck;
+	
+	@ApiModelProperty(value = "检查结果-对应数据类型1属性")
+	private String valDescCheck;
+
+	@ApiModelProperty(value = "检查结果-0通过 1巡检不通过 2没有巡检")
+	private Integer result;
+
+	@ApiModelProperty(value = "检查结果-工具")
+	private String toolDescCheck;
 }

+ 12 - 0
application-facade/src/main/java/com/factory/web/entity/fa/res/FaItemNoGoListRes.java

@@ -94,5 +94,17 @@ public class FaItemNoGoListRes implements Serializable {
 	
 	@ApiModelProperty(value = "检验频次中断 0没选择 1选择")
 	private Integer catchFlag;
+	
+	@ApiModelProperty(value = "检查结果-对应数据类型0数值")
+	private String valCheck;
+	
+	@ApiModelProperty(value = "检查结果-对应数据类型1属性")
+	private String valDescCheck;
+
+	@ApiModelProperty(value = "检查结果-0通过 1巡检不通过 2没有巡检")
+	private Integer result;
+
+	@ApiModelProperty(value = "检查结果-工具")
+	private String toolDescCheck;
 
 }

+ 5 - 0
application-facade/src/main/java/com/factory/web/entity/pm/OnsiteItem.java

@@ -3,6 +3,7 @@ package com.factory.web.entity.pm;
 import java.io.Serializable;
 
 import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 
@@ -40,4 +41,8 @@ public class OnsiteItem implements Serializable {
 
 	@ApiModelProperty(value = "0非手动 1手动")
 	private Integer inspectionFlag;
+	
+	@TableField(exist = false)
+	@ApiModelProperty(value = "0通过 1巡检不通过 2没有巡检")
+	private Integer result;
 }

+ 32 - 0
application-facade/src/main/java/com/factory/web/entity/pm/req/SearchItemListReq.java

@@ -0,0 +1,32 @@
+package com.factory.web.entity.pm.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;
+
+/**
+ * 工作站
+ *
+ * @author wzy
+ * @date 2021-07-09 12:00:00
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class SearchItemListReq {
+	
+	@ApiModelProperty(value = "任务id")
+	private Long onsiteTaskId;
+	
+	@ApiModelProperty(value = "工作站Id")
+	private Long workshopId;
+	
+}

+ 32 - 0
application-facade/src/main/java/com/factory/web/entity/pm/req/SearchPmAllCheckFlagReq.java

@@ -0,0 +1,32 @@
+package com.factory.web.entity.pm.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;
+
+/**
+ * 取得不放行任务对应的工作站
+ *
+ * @author wzy
+ * @date 2021-07-09 12:00:00
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class SearchPmAllCheckFlagReq {
+	
+	@ApiModelProperty(value = "计划Id")
+	private Long bentelerPlanId;
+	
+	@ApiModelProperty(value = "任务id")
+	private Long onsiteTaskId;
+	
+}

+ 31 - 0
application-facade/src/main/java/com/factory/web/entity/pm/res/PmAllCheckFlagRes.java

@@ -0,0 +1,31 @@
+package com.factory.web.entity.pm.res;
+
+import java.io.Serializable;
+
+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;
+
+/**
+ * 点检是否完成
+ *
+ * @author wzy
+ * @date 2021-07-09 12:00:00
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@JsonInclude()
+@ApiModel("")
+public class PmAllCheckFlagRes implements Serializable {
+	
+	@ApiModelProperty(value = "0没完成 1全部完成")
+	private Integer allCheckFlag;
+
+}

+ 3 - 0
application-facade/src/main/java/com/factory/web/entity/pm/res/PmItemNoGoListRes.java

@@ -31,5 +31,8 @@ public class PmItemNoGoListRes implements Serializable {
 
 	@ApiModelProperty(value = "巡检项目内容")
 	private String itemContent;
+	
+	@ApiModelProperty(value = "0通过 1巡检不通过 2没有巡检")
+	private Integer result;
 
 }

+ 32 - 0
application-facade/src/main/java/com/factory/web/mapper/fa/FirstArticleMapper.java

@@ -8,12 +8,16 @@ import org.apache.ibatis.annotations.Param;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.factory.base.entity.po.benteler.BentelerPlan;
+import com.factory.web.entity.fa.FirstArticleItemResult;
 import com.factory.web.entity.fa.FirstArticleTask;
 import com.factory.web.entity.fa.FirstArticleWorkshop;
+import com.factory.web.entity.fa.req.SearchFaAllCheckFlagReq;
 import com.factory.web.entity.fa.req.SearchFaItemListForPadReq;
 import com.factory.web.entity.fa.req.SearchFaItemNoGoListReq;
+import com.factory.web.entity.fa.req.SearchFaItemResultListReq;
 import com.factory.web.entity.fa.req.SearchFaPlanCheckListReq;
 import com.factory.web.entity.fa.req.SearchFaPlanListForPadReq;
+import com.factory.web.entity.fa.req.SearchFaPlanReq;
 import com.factory.web.entity.fa.req.SearchFaTaskInfoReq;
 import com.factory.web.entity.fa.req.SearchFaTaskReq;
 import com.factory.web.entity.fa.req.SearchFaWorkshopListForPadReq;
@@ -84,10 +88,38 @@ public interface FirstArticleMapper extends BaseMapper<BentelerPlan> {
      */
     public FirstArticleTask getFaTaskInfo(@Param("req") SearchFaTaskInfoReq req);
     
+    /**
+     * 查询中断最新的task
+     * @param req
+     * @return 任务
+     */
+    public FirstArticleTask getFaTaskInfoCatchLatest(@Param("req") SearchFaTaskInfoReq req);
+    
     /**
      * 取得不放行任务对应的审批人、审批意见、审批时间
      * @param req
      * @return 不放行任务对应的审批人、审批意见、审批时间
      */
     public FaNoGoTaskAapprovalRes getFaNoGoTaskAapproval(@Param("req") SearchFaTaskReq req);
+    
+    /**
+     * 取得首件、200件、中断每天的点检记录
+     * @param req
+     * @return 首件、200件、中断每天的点检记录
+     */
+    public List<FirstArticleItemResult> getFaItemResultList(@Param("req") SearchFaItemResultListReq req);
+    
+    /**
+     * 取得计划下的点检项目数
+     * @param req
+     * @return 计划下的点检项目数
+     */
+    public int getFaItemCount(@Param("req") SearchFaPlanReq req);
+    
+    /**
+     * 取得计划下当前task的点检结果数
+     * @param req
+     * @return 计划下当前task的点检结果数
+     */
+    public int getFaItemResultCount(@Param("req") SearchFaAllCheckFlagReq req);
 }

+ 15 - 0
application-facade/src/main/java/com/factory/web/mapper/pm/PreventMistakeMapper.java

@@ -12,6 +12,7 @@ import com.factory.web.entity.pm.OnsiteApprovalPlan;
 import com.factory.web.entity.pm.req.SearchApprovalUserReq;
 import com.factory.web.entity.pm.req.SearchCheckRecordReq;
 import com.factory.web.entity.pm.req.SearchPmItemNoGoListReq;
+import com.factory.web.entity.pm.req.SearchPmAllCheckFlagReq;
 import com.factory.web.entity.pm.req.SearchPmPlanCheckListReq;
 import com.factory.web.entity.pm.req.SearchPmPlanListForPadReq;
 import com.factory.web.entity.pm.req.SearchPmPlanListReq;
@@ -124,4 +125,18 @@ public interface PreventMistakeMapper extends BaseMapper<BentelerPlan> {
      * @return 计划的最新审批信息
      */
     public OnsiteApprovalPlan getLatestApprovalInfo(@Param("req") SearchPmPlanReq req);
+    
+    /**
+     * 取得计划下的点检项目数
+     * @param req
+     * @return 计划下的点检项目数
+     */
+    public int getPmItemCount(@Param("req") SearchPmPlanReq req);
+    
+    /**
+     * 取得计划下当前task的点检结果数
+     * @param req
+     * @return 计划下当前task的点检结果数
+     */
+    public int getPmItemResultCount(@Param("req") SearchPmAllCheckFlagReq req);
 }

+ 25 - 0
application-facade/src/main/java/com/factory/web/service/fa/FirstArticleService.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.factory.base.entity.aggregates.PageBean;
 import com.factory.base.entity.aggregates.ResponseBean;
 import com.factory.base.entity.po.benteler.BentelerPlan;
+import com.factory.web.entity.fa.FirstArticleItemResult;
 import com.factory.web.entity.fa.FirstArticleTask;
 import com.factory.web.entity.fa.FirstArticleTitle;
 import com.factory.web.entity.fa.FirstArticleWorkshop;
@@ -14,9 +15,11 @@ import com.factory.web.entity.fa.req.AddFaPlanReq;
 import com.factory.web.entity.fa.req.EditFaItemResultListReq;
 import com.factory.web.entity.fa.req.EditFaPlanReq;
 import com.factory.web.entity.fa.req.SearchALLPlanListReq;
+import com.factory.web.entity.fa.req.SearchFaAllCheckFlagReq;
 import com.factory.web.entity.fa.req.SearchFaCheckRecordListReq;
 import com.factory.web.entity.fa.req.SearchFaItemListForPadReq;
 import com.factory.web.entity.fa.req.SearchFaItemNoGoListReq;
+import com.factory.web.entity.fa.req.SearchFaItemResultListReq;
 import com.factory.web.entity.fa.req.SearchFaPlanCheckListReq;
 import com.factory.web.entity.fa.req.SearchFaPlanListForPadReq;
 import com.factory.web.entity.fa.req.SearchFaPlanReq;
@@ -25,6 +28,7 @@ import com.factory.web.entity.fa.req.SearchFaTaskReq;
 import com.factory.web.entity.fa.req.SearchFaWorkshopListForPadReq;
 import com.factory.web.entity.fa.req.SearchFaWorkshopNoGoListReq;
 import com.factory.web.entity.fa.req.SubmitFaTaskReq;
+import com.factory.web.entity.fa.res.FaAllCheckFlagRes;
 import com.factory.web.entity.fa.res.FaCheckRecordListRes;
 import com.factory.web.entity.fa.res.FaItemListForPadRes;
 import com.factory.web.entity.fa.res.FaItemNoGoListRes;
@@ -175,6 +179,13 @@ public interface FirstArticleService extends IService<BentelerPlan> {
      */
     public FirstArticleTask getFaTaskInfo(SearchFaTaskInfoReq req);
     
+    /**
+     * 查询中断最新的task
+     * @param req
+     * @return 任务
+     */
+    public FirstArticleTask getFaTaskInfoCatchLatest(SearchFaTaskInfoReq req);
+    
     /**
 	 * 取得不放行任务对应的质量经理审批信息
 	 * 
@@ -198,4 +209,18 @@ public interface FirstArticleService extends IService<BentelerPlan> {
 	 * @return 检查记录列表
 	 */
 	public ResponseBean<FaCheckRecordListRes> getFaCheckRecordList(SearchFaCheckRecordListReq req);
+	
+	/**
+     * 取得首件、200件、中断每天的点检记录
+     * @param req
+     * @return 首件、200件、中断每天的点检记录
+     */
+    public List<FirstArticleItemResult> getFaItemResultList(SearchFaItemResultListReq req);
+    
+    /**
+     * 判断检验结果是否填写完成
+     * @param req
+     * @return 判断检验结果是否填写完成
+     */
+    public FaAllCheckFlagRes getFaAllCheckFlag(SearchFaAllCheckFlagReq req);
 }

+ 126 - 23
application-facade/src/main/java/com/factory/web/service/impl/fa/FirstArticleServiceImpl.java

@@ -42,9 +42,11 @@ import com.factory.web.entity.fa.req.FirstArticleCalendarReq;
 import com.factory.web.entity.fa.req.FirstArticleItemReq;
 import com.factory.web.entity.fa.req.FirstArticleWorkshopReq;
 import com.factory.web.entity.fa.req.SearchALLPlanListReq;
+import com.factory.web.entity.fa.req.SearchFaAllCheckFlagReq;
 import com.factory.web.entity.fa.req.SearchFaCheckRecordListReq;
 import com.factory.web.entity.fa.req.SearchFaItemListForPadReq;
 import com.factory.web.entity.fa.req.SearchFaItemNoGoListReq;
+import com.factory.web.entity.fa.req.SearchFaItemResultListReq;
 import com.factory.web.entity.fa.req.SearchFaPlanCheckListReq;
 import com.factory.web.entity.fa.req.SearchFaPlanListForPadReq;
 import com.factory.web.entity.fa.req.SearchFaPlanReq;
@@ -53,6 +55,7 @@ import com.factory.web.entity.fa.req.SearchFaTaskReq;
 import com.factory.web.entity.fa.req.SearchFaWorkshopListForPadReq;
 import com.factory.web.entity.fa.req.SearchFaWorkshopNoGoListReq;
 import com.factory.web.entity.fa.req.SubmitFaTaskReq;
+import com.factory.web.entity.fa.res.FaAllCheckFlagRes;
 import com.factory.web.entity.fa.res.FaCheckRecordListRes;
 import com.factory.web.entity.fa.res.FaItemListForPadRes;
 import com.factory.web.entity.fa.res.FaItemNoGoListRes;
@@ -63,7 +66,10 @@ import com.factory.web.entity.fa.res.FaPlanRes;
 import com.factory.web.entity.fa.res.FaTaskRes;
 import com.factory.web.entity.fa.res.FaWorkshopNoGoListRes;
 import com.factory.web.entity.pm.OnsiteApprovalPlan;
+import com.factory.web.entity.pm.req.SearchPmAllCheckFlagReq;
+import com.factory.web.entity.pm.req.SearchPmPlanReq;
 import com.factory.web.entity.pm.res.ApprovalUserRes;
+import com.factory.web.entity.pm.res.PmAllCheckFlagRes;
 import com.factory.web.mapper.fa.FirstArticleMapper;
 import com.factory.web.service.BentelerPlanService;
 import com.factory.web.service.fa.FirstArticleApprovalTaskService;
@@ -496,6 +502,36 @@ public class FirstArticleServiceImpl extends ServiceImpl<FirstArticleMapper, Ben
      */
     @Override
     public ResponseBean<List<FaItemListForPadRes>> getFaItemListForPad(SearchFaItemListForPadReq req) {
+    	/* 取得task信息 */
+    	SearchFaTaskInfoReq searchFaTaskInfoReq = new SearchFaTaskInfoReq();
+    	searchFaTaskInfoReq.setBentelerPlanId(req.getBentelerPlanId());
+    	searchFaTaskInfoReq.setTypeFlag(req.getTypeFlag());
+    	
+    	FirstArticleTask faTaskInfo = null;
+    	if (req.getTypeFlag() == 0 || req.getTypeFlag() == 1) { // 0表示首件 1表示200件
+    		searchFaTaskInfoReq.setUserId(req.getUserId());
+    		faTaskInfo = this.getFaTaskInfo(searchFaTaskInfoReq);
+    	} else { // 2表示中断
+    		/* 取得中断最新的task */
+    		faTaskInfo = this.getFaTaskInfoCatchLatest(searchFaTaskInfoReq);
+    	}
+    	
+    	long firstArticleTaskId = 0;
+    	if (req.getTypeFlag() == 0 || req.getTypeFlag() == 1) { // 0表示首件 1表示200件
+    		if (faTaskInfo == null) {
+    			return ResponseBeanBuilder.fail("计划任务不存在!");
+    		} else {
+    			firstArticleTaskId = faTaskInfo.getId();
+    		}
+    	} else { // 2表示中断
+    		if (faTaskInfo == null) { // 没有初始化状态的task,新建一个
+    			//return ResponseBeanBuilder.fail("请先完成点检!");
+    		} else { // 存在一个初始化状态的task,就用这个
+    			firstArticleTaskId = faTaskInfo.getId();
+    		}
+    	}
+
+    	/* 取得点检项目 */
     	List<FaItemListForPadRes> listResTemp = firstArticleMapper.getFaItemListForPad(req);
     	
     	List<FaItemListForPadRes> listRes = new ArrayList<FaItemListForPadRes>();
@@ -506,6 +542,18 @@ public class FirstArticleServiceImpl extends ServiceImpl<FirstArticleMapper, Ben
     		for (int i = snoStart; i <= snoEnd; i++) {
     			faItemListForPadRes.setSno(i);
 
+    			/* 取得检查结果 */
+    			FirstArticleItemResult firstArticleItemResult = firstArticleItemResultService.getOne(Wrappers.<FirstArticleItemResult>lambdaQuery()
+    	                .eq(FirstArticleItemResult::getFirstArticleTaskId, firstArticleTaskId)
+    	                .eq(FirstArticleItemResult::getFirstArticleItemId, faItemListForPadRes.getId())
+    	                .eq(FirstArticleItemResult::getSno, faItemListForPadRes.getSno()));
+    			if (firstArticleItemResult != null) {
+    				faItemListForPadRes.setResult(firstArticleItemResult.getResult());
+    				faItemListForPadRes.setValCheck(firstArticleItemResult.getVal());
+    				faItemListForPadRes.setValDescCheck(firstArticleItemResult.getValDesc());
+    				faItemListForPadRes.setToolDescCheck(firstArticleItemResult.getToolDesc());
+    			}
+
     			listRes.add(faItemListForPadRes);
     		}
     	}
@@ -614,23 +662,7 @@ public class FirstArticleServiceImpl extends ServiceImpl<FirstArticleMapper, Ben
     		}
     	} else { // 2表示中断
     		if (faTaskInfo == null) { // 没有初始化状态的task,新建一个
-    			return ResponseBeanBuilder.fail("计划任务不存在!");
-//    			/* 取得中断对应的规则 */
-//    			FirstArticleCalendar firstArticleCalendar = firstArticleCalendarService.getOne(new LambdaQueryWrapper<FirstArticleCalendar>()
-//    	    			.eq(FirstArticleCalendar::getBentelerPlanId, req.getBentelerPlanId())
-//    	    			.eq(FirstArticleCalendar::getTypeFlag, 2));
-//
-//    			/* 创建一个新的中断task */
-//    			FirstArticleTask firstArticleTask = FirstArticleTask.builder()
-//    					.firstArticleCalendarId(firstArticleCalendar.getId())
-//    					.status(0)
-//    					.taskTime(LocalDate.now())
-//    					.remindTaskFlag(0)
-//    					.remindNoworkFlag(0)
-//    					.build();
-//    			firstArticleTaskService.save(firstArticleTask);
-//    			
-//    			firstArticleTaskId = firstArticleTask.getId();
+    			return ResponseBeanBuilder.fail("请先完成点检!");
     		} else { // 存在一个初始化状态的task,就用这个
     			firstArticleTaskId = faTaskInfo.getId();
     		}
@@ -801,6 +833,17 @@ public class FirstArticleServiceImpl extends ServiceImpl<FirstArticleMapper, Ben
         return firstArticleTask;
     }
     
+    /**
+     * 查询中断最新的task
+     * @param req
+     * @return 任务
+     */
+    @Override
+    public FirstArticleTask getFaTaskInfoCatchLatest(SearchFaTaskInfoReq req) {
+    	FirstArticleTask firstArticleTask = firstArticleMapper.getFaTaskInfoCatchLatest(req);
+        return firstArticleTask;
+    }
+    
     /**
 	 * 取得不放行任务对应的质量经理审批信息
 	 * 
@@ -841,18 +884,78 @@ public class FirstArticleServiceImpl extends ServiceImpl<FirstArticleMapper, Ben
 		for (FirstArticleWorkshop firstArticleWorkshop : firstArticleWorkshopList) {
 			List<FirstArticleItem> firstArticleItemList = firstArticleItemService.list(Wrappers.<FirstArticleItem>lambdaQuery()
 	                .eq(FirstArticleItem::getWorkshopId, firstArticleWorkshop.getId()));
-//			for (FirstArticleItem firstArticleItem : firstArticleItemList) {
-//				
-//			}
-			
-			
-			
+			for (FirstArticleItem firstArticleItem : firstArticleItemList) {
+                /* 首件检查结果 */
+				List<FirstArticleItemResult> firstItemResultList = this.getItemResultList(firstArticleItem.getId(), req.getCheckDate(), 0);
+				firstArticleItem.setFirstItemResultList(firstItemResultList);
+
+				/* 200件检查结果 */
+				List<FirstArticleItemResult> twoHundredItemResultList = this.getItemResultList(firstArticleItem.getId(), req.getCheckDate(), 1);
+				firstArticleItem.setTwoHundredItemResultList(twoHundredItemResultList);
+				
+				/* 中断检查结果(一天提交多个中断task,暂时都取出来了) */
+				List<FirstArticleItemResult> catchItemResultList = this.getItemResultList(firstArticleItem.getId(), req.getCheckDate(), 2);
+				firstArticleItem.setCatchItemResultList(catchItemResultList);
+			}
+
 			firstArticleWorkshop.setFirstArticleItemList(firstArticleItemList);
 		}
 		FaCheckRecordListRes.setFirstArticleWorkshopList(firstArticleWorkshopList);
     	
 		return ResponseBeanBuilder.ok(FaCheckRecordListRes);
     }
+    
+    /**
+     * 取得首件、200件、中断每天的点检记录
+     * @param req
+     * @return 首件、200件、中断每天的点检记录
+     */
+    @Override
+    public List<FirstArticleItemResult> getFaItemResultList(SearchFaItemResultListReq req) {
+    	List<FirstArticleItemResult> faItemResultList = firstArticleMapper.getFaItemResultList(req);
+        return faItemResultList;
+    }
+    
+    /**
+     * 取得首件、200件、中断每天的点检记录
+     * @param firstArticleItemId
+     * @param checkDate
+     * @param typeFlag  0表示首件 1表示200件 2表示中断
+     * @return 首件、200件、中断每天的点检记录
+     */
+    private List<FirstArticleItemResult> getItemResultList(long firstArticleItemId, String checkDate, int typeFlag) {
+    	SearchFaItemResultListReq searchFaItemResultListReq = new SearchFaItemResultListReq();
+		searchFaItemResultListReq.setFirstArticleItemId(firstArticleItemId);
+		searchFaItemResultListReq.setCheckDate(checkDate);
+		searchFaItemResultListReq.setTypeFlag(typeFlag);
+		
+		List<FirstArticleItemResult> faItemResultList = this.getFaItemResultList(searchFaItemResultListReq);
+		return faItemResultList;
+    }
+    
+    /**
+     * 判断检验结果是否填写完成
+     * @param req
+     * @return 检验结果是否填写完成
+     */
+	@Override
+	public FaAllCheckFlagRes getFaAllCheckFlag(SearchFaAllCheckFlagReq req) {
+		SearchFaPlanReq searchFaPlanReq = new SearchFaPlanReq();
+		searchFaPlanReq.setBentelerPlanId(req.getBentelerPlanId());
+		int itemCount = firstArticleMapper.getFaItemCount(searchFaPlanReq);
+
+		int itemResultCount = firstArticleMapper.getFaItemResultCount(req);
+
+		FaAllCheckFlagRes faAllCheckFlagRes = new FaAllCheckFlagRes();
+
+		if (itemCount == itemResultCount) {
+			faAllCheckFlagRes.setAllCheckFlag(1); // 全部完成
+		} else {
+			faAllCheckFlagRes.setAllCheckFlag(0); // 没完成
+		}
+
+		return faAllCheckFlagRes;
+	}
 	
 	
 	/**

+ 39 - 4
application-facade/src/main/java/com/factory/web/service/impl/pm/PreventMistakeServiceImpl.java

@@ -4,7 +4,6 @@ import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
-import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.function.Function;
@@ -48,6 +47,8 @@ import com.factory.web.entity.pm.req.PmPlanPauseFlagReq;
 import com.factory.web.entity.pm.req.SearchAllWorkshopReq;
 import com.factory.web.entity.pm.req.SearchApprovalUserReq;
 import com.factory.web.entity.pm.req.SearchCheckRecordReq;
+import com.factory.web.entity.pm.req.SearchItemListReq;
+import com.factory.web.entity.pm.req.SearchPmAllCheckFlagReq;
 import com.factory.web.entity.pm.req.SearchPmCheckRecordListReq;
 import com.factory.web.entity.pm.req.SearchPmItemNoGoListReq;
 import com.factory.web.entity.pm.req.SearchPmPlanCheckListReq;
@@ -58,6 +59,7 @@ import com.factory.web.entity.pm.req.SearchPmWorkshopNoGoListReq;
 import com.factory.web.entity.pm.req.SearchTaskReq;
 import com.factory.web.entity.pm.req.SearchWorkshopReq;
 import com.factory.web.entity.pm.res.ApprovalUserRes;
+import com.factory.web.entity.pm.res.PmAllCheckFlagRes;
 import com.factory.web.entity.pm.res.PmAllWorkshopListRes;
 import com.factory.web.entity.pm.res.PmCheckListRes;
 import com.factory.web.entity.pm.res.PmCheckRecordListRes;
@@ -85,8 +87,6 @@ import com.factory.web.service.pm.OnsiteTitleBlobService;
 import com.factory.web.service.pm.OnsiteWorkshopService;
 import com.factory.web.service.pm.PreventMistakeService;
 
-import io.swagger.annotations.ApiModelProperty;
-
 
 /**
  * 防错计划
@@ -647,9 +647,19 @@ public class PreventMistakeServiceImpl extends ServiceImpl<PreventMistakeMapper,
      * @return 巡检项目列表
      */
     @Override
-    public ResponseBean<List<OnsiteItem>> getItemList(SearchWorkshopReq req) {
+    public ResponseBean<List<OnsiteItem>> getItemList(SearchItemListReq req) {
     	List<OnsiteItem> onsiteItemList = onsiteItemService.list(Wrappers.<OnsiteItem>lambdaQuery()
                 .eq(OnsiteItem::getWorkshopId, req.getWorkshopId()));
+    	
+    	for (OnsiteItem onsiteItem : onsiteItemList) {
+    		OnsiteItemResult onsiteItemResult = onsiteItemResultService.getOne(new LambdaQueryWrapper<OnsiteItemResult>()
+        			.eq(OnsiteItemResult::getOnsiteTaskId, req.getOnsiteTaskId())
+        			.eq(OnsiteItemResult::getOnsiteItemId, onsiteItem.getId()));
+    		if (onsiteItemResult != null) {
+    			onsiteItem.setResult(onsiteItemResult.getResult());
+    		}
+    	}
+
     	return ResponseBeanBuilder.ok(onsiteItemList, Function.identity());
     }
 
@@ -938,10 +948,35 @@ public class PreventMistakeServiceImpl extends ServiceImpl<PreventMistakeMapper,
      * @param req
      * @return 计划的最新审批信息
      */
+	@Override
     public OnsiteApprovalPlan getLatestApprovalInfo(SearchPmPlanReq req) {
 		OnsiteApprovalPlan onsiteApprovalPlan = preventMistakeMapper.getLatestApprovalInfo(req);
         return onsiteApprovalPlan;
     }
+    
+    /**
+     * 判断检验结果是否填写完成
+     * @param req
+     * @return 检验结果是否填写完成
+     */
+	@Override
+    public PmAllCheckFlagRes getPmAllCheckFlag(SearchPmAllCheckFlagReq req) {
+		SearchPmPlanReq searchPmPlanReq = new SearchPmPlanReq();
+		searchPmPlanReq.setBentelerPlanId(req.getBentelerPlanId());
+		int itemCount = preventMistakeMapper.getPmItemCount(searchPmPlanReq);
+
+		int itemResultCount = preventMistakeMapper.getPmItemResultCount(req);
+
+		PmAllCheckFlagRes pmAllCheckFlagRes = new PmAllCheckFlagRes();
+		
+		if (itemCount == itemResultCount) {
+			pmAllCheckFlagRes.setAllCheckFlag(1); // 全部完成
+		} else {
+			pmAllCheckFlagRes.setAllCheckFlag(0); // 没完成
+		}
+		
+		return pmAllCheckFlagRes;
+	}
 
 
     /**

+ 11 - 3
application-facade/src/main/java/com/factory/web/service/pm/PreventMistakeService.java

@@ -2,8 +2,6 @@ package com.factory.web.service.pm;
 
 import java.util.List;
 
-import org.apache.ibatis.annotations.Param;
-
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.factory.base.entity.aggregates.PageBean;
 import com.factory.base.entity.aggregates.ResponseBean;
@@ -20,6 +18,8 @@ import com.factory.web.entity.pm.req.EditPmPlanReq;
 import com.factory.web.entity.pm.req.PmPlanPauseFlagReq;
 import com.factory.web.entity.pm.req.SearchAllWorkshopReq;
 import com.factory.web.entity.pm.req.SearchApprovalUserReq;
+import com.factory.web.entity.pm.req.SearchItemListReq;
+import com.factory.web.entity.pm.req.SearchPmAllCheckFlagReq;
 import com.factory.web.entity.pm.req.SearchPmCheckRecordListReq;
 import com.factory.web.entity.pm.req.SearchPmItemNoGoListReq;
 import com.factory.web.entity.pm.req.SearchPmPlanCheckListReq;
@@ -30,6 +30,7 @@ import com.factory.web.entity.pm.req.SearchPmWorkshopNoGoListReq;
 import com.factory.web.entity.pm.req.SearchTaskReq;
 import com.factory.web.entity.pm.req.SearchWorkshopReq;
 import com.factory.web.entity.pm.res.ApprovalUserRes;
+import com.factory.web.entity.pm.res.PmAllCheckFlagRes;
 import com.factory.web.entity.pm.res.PmAllWorkshopListRes;
 import com.factory.web.entity.pm.res.PmCheckListRes;
 import com.factory.web.entity.pm.res.PmCheckRecordListRes;
@@ -184,7 +185,7 @@ public interface PreventMistakeService extends IService<BentelerPlan> {
 	 * @param req
 	 * @return 巡检项目列表
 	 */
-	public ResponseBean<List<OnsiteItem>> getItemList(SearchWorkshopReq req);
+	public ResponseBean<List<OnsiteItem>> getItemList(SearchItemListReq req);
 
 	/**
 	 * 添加巡检项目检查结果
@@ -287,5 +288,12 @@ public interface PreventMistakeService extends IService<BentelerPlan> {
      * @return 计划的最新审批信息
      */
     public OnsiteApprovalPlan getLatestApprovalInfo(SearchPmPlanReq req);
+    
+    /**
+     * 判断检验结果是否填写完成
+     * @param req
+     * @return 判断检验结果是否填写完成
+     */
+    public PmAllCheckFlagRes getPmAllCheckFlag(SearchPmAllCheckFlagReq req);
 
 }

+ 45 - 6
application-facade/src/main/resources/mapper/FirstArticleMapper.xml

@@ -173,6 +173,10 @@
 			fair.first_article_task_id,
 			fair.first_article_item_id,
 			fair.sno,
+			fair.val AS val_check,
+			fair.val_desc AS val_desc_check,
+			fair.result,
+			fair.tool_desc AS tool_desc_check,
 			fai.workshop_id,
 			fai.item_content,
 			fai.item_standard,
@@ -225,6 +229,23 @@
 		AND     fat.`status` = #{req.status}
         </if>
     </select>
+    <!-- 查询中断最新的task -->
+    <select id="getFaTaskInfoCatchLatest" resultType="com.factory.web.entity.fa.FirstArticleTask">
+        SELECT
+			fat.id,
+			fat.`status` 
+		FROM
+			first_article_task fat,
+			first_article_calendar fac 
+		WHERE
+			fat.first_article_calendar_id = fac.id 
+			AND fac.benteler_plan_id = #{req.bentelerPlanId}
+			AND TO_DAYS( fat.task_time ) = TO_DAYS( NOW( ) ) 
+			AND fac.type_flag = 2 
+		ORDER BY
+			fat.id DESC 
+			LIMIT 0,1
+    </select>
     
     <!-- 取得不放行任务对应的审批人、审批意见、审批时间 -->
     <select id="getFaNoGoTaskAapproval" resultType="com.factory.web.entity.fa.res.FaNoGoTaskAapprovalRes">
@@ -245,10 +266,9 @@
 			AND faat.`status` = 2 
 			AND fat.id = #{req.firstArticleTaskId}
     </select>
-    
-    
-    <!-- 取得不放行任务对应的审批人、审批意见、审批时间 -->
-    <select id="getFaNoGoTaskAapproval" resultType="com.factory.web.entity.fa.FirstArticleItemResult">
+
+    <!-- 取得首件、200件、中断每天的点检记录 -->
+    <select id="getFaItemResultList" resultType="com.factory.web.entity.fa.FirstArticleItemResult">
         SELECT fair.sno,
 			   fair.result,
 			   fair.val,
@@ -261,11 +281,30 @@
 		WHERE  fair.first_article_task_id = fat.id
 		AND    fat.first_article_calendar_id = fac.id
 		AND    fair.first_article_item_id = #{req.firstArticleItemId}
-		AND    DATE_FORMAT(fat.task_time, '%Y-%m-%d') = #{req.date}
+		AND    DATE_FORMAT(fat.task_time, '%Y-%m-%d') = #{req.checkDate}
 		AND    fac.type_flag = #{req.typeFlag}
     </select>
     
-    
+    <!-- 取得计划下的点检项目数 -->
+	<select id="getFaItemCount" resultType="int">
+	    SELECT COUNT(fai.id)
+		FROM   first_article_item fai,
+		       first_article_workshop faw
+		WHERE  fai.workshop_id = faw.id
+		AND    faw.benteler_plan_id = #{req.bentelerPlanId}
+	</select>
+	
+	<!-- 取得计划下当前task的点检结果数 -->
+	<select id="getFaItemResultCount" resultType="int">
+	    SELECT  COUNT(fair.id)
+		FROM    first_article_item_result fair,
+		        first_article_item fai,
+		        first_article_workshop faw
+		WHERE   fair.first_article_item_id = fai.id
+		AND     fai.workshop_id = faw.id
+		AND     faw.benteler_plan_id = #{req.bentelerPlanId}
+		AND     fair.first_article_task_id = #{req.firstArticleTaskId}
+	</select>
     
     
     

+ 23 - 1
application-facade/src/main/resources/mapper/PreventMistakeMapper.xml

@@ -239,7 +239,8 @@
     <select id="getPmItemNoGoList" resultType="com.factory.web.entity.pm.res.PmItemNoGoListRes">
         SELECT
 			oir.onsite_item_id,
-			oi.item_content 
+			oi.item_content,
+			oir.result
 		FROM
 			onsite_item_result oir,
 			onsite_task ot,
@@ -315,4 +316,25 @@
 		AND     oap.approval_level = a.approval_level
 		AND     oap.benteler_plan_id = #{req.bentelerPlanId}
     </select>
+    
+    <!-- 取得计划下的点检项目数 -->
+	<select id="getPmItemCount" resultType="int">
+		SELECT COUNT(oi.id)
+		FROM   onsite_item oi,
+		       onsite_workshop ow
+		WHERE  oi.workshop_id = ow.id
+		AND    ow.benteler_plan_id = #{req.bentelerPlanId}
+	</select>
+	
+	<!-- 取得计划下当前task的点检结果数 -->
+	<select id="getPmItemResultCount" resultType="int">
+		SELECT  COUNT(oir.id)
+		FROM    onsite_item_result oir,
+		        onsite_item oi,
+		        onsite_workshop ow
+		WHERE   oir.onsite_item_id = oi.id
+		AND     oi.workshop_id = ow.id
+		AND     ow.benteler_plan_id = #{req.bentelerPlanId}
+		AND     oir.onsite_task_id = #{req.onsiteTaskId}
+	</select>
 </mapper>