|
@@ -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;
|
|
|
+ }
|
|
|
|
|
|
|
|
|
/**
|