生产质量检验 - 量具 - 同炉同槽

liweidong
张乾翔 2 months ago
parent acefc64fe9
commit 86492d2d3b
  1. 6
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/WorkPlanItemDetailVO.java
  2. 26
      blade-service/blade-desk/src/main/java/org/springblade/desk/oem/service/impl/OemStatementServiceImpl.java
  3. 30
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/InspectionTaskController.java
  4. 17
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/WorkPlanItemDetailServiceImpl.java

@ -3,12 +3,14 @@
*/
package org.springblade.desk.quality.pojo.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.WorkPlanItemDetail;
import java.io.Serial;
import java.util.Date;
/**
* [工序检验项明细] 视图实体类
@ -27,4 +29,8 @@ public class WorkPlanItemDetailVO extends WorkPlanItemDetail {
@Schema(description = "实际[量具]名称")
private String actMtName ;
@Schema(description = "到期日期(有效日期)")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date dueDate;
}

@ -569,18 +569,20 @@ public class OemStatementServiceImpl extends BaseServiceImpl<OemStatementMapper,
@Override
public R notNeedSettlement(List<StatementVO> list) {
if (null != list && list.size() > 0) {
List<OemStatementEntity> saves = list.stream().map(statementVO -> {
OemStatementEntity entity = new OemStatementEntity();
BeanUtils.copyProperties(statementVO, entity);
entity.setApprovalStatus(OemStatementEntity.APPROVAL_STATUS_VIA);
entity.setRosStatus(OemStatementEntity.NOT_NEED_SETTLEMENT);
entity.setMemo("无需结算");
entity.setTotalPrice(null);
entity.setUnitPrice(null);
entity.setQuotation("");
entity.setUpdateTime(new Date());
return entity;
}).collect(Collectors.toList());
List<OemStatementEntity> saves = list.stream()
.map(statementVO -> {
OemStatementEntity entity = new OemStatementEntity();
BeanUtils.copyProperties(statementVO, entity);
entity.setApprovalStatus(OemStatementEntity.APPROVAL_STATUS_VIA);
entity.setRosStatus(OemStatementEntity.ERR_SETTLEMENT);
entity.setMemo("无需结算");
entity.setTotalPrice(null);
entity.setUnitPrice(null);
entity.setQuotation("");
entity.setUpdateTime(new Date());
return entity;
})
.collect(Collectors.toList());
// baseMapper.insertOrUpdate(saves);
// 逐条处理

@ -76,10 +76,7 @@ import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
/**
@ -729,12 +726,28 @@ public class InspectionTaskController extends BladeController {
qw.eq("TASK_ID", id);
List<ReviewSheet> listSheet = rsSubService.list(qw);
// InspectionTask inspectionTask = new InspectionTask();
// inspectionTask.setId(id);
// InspectionTask detail = service.getOne(Condition.getQueryWrapper(inspectionTask));
InspectionTask detail = service.getById( id);
WorkPlan workPlan = workPlanService.getOne(new QueryWrapper<WorkPlan>().lambda().eq(WorkPlan::getId, detail.getWpId()));
// 根据workPlan的frontWpId(上一到工序ID)一直往上循环查询到cruxProcess为1的关键工序
if (workPlan != null && workPlan.getFrontWpId() != null) {
Long currentFrontWpId = workPlan.getFrontWpId();
//(A→B→A)
int maxIterations = 100;
int iterations = 0;
while (Objects.nonNull(currentFrontWpId) && iterations < maxIterations) {
WorkPlan frontWorkPlan = workPlanService.getById(currentFrontWpId);
if (BeanUtil.isEmpty(frontWorkPlan)) {
break;
}
// 关键工序
if (StrUtil.isNotEmpty(frontWorkPlan.getCruxProcess()) && "1".equals(frontWorkPlan.getCruxProcess().trim())) {
workPlan = frontWorkPlan;
break;
}
currentFrontWpId = frontWorkPlan.getFrontWpId();
iterations++;
}
}
List<ProduceMonitorSlotListVO> list = new ArrayList<>();
if(null != workPlan){
list = macToolUseService.listSlotInfo(workPlan);
@ -749,7 +762,6 @@ public class InspectionTaskController extends BladeController {
}
}
return R.data(list);
// return service.getSamePlace(id);
}

@ -3,6 +3,8 @@
*/
package org.springblade.desk.quality.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@ -15,6 +17,8 @@ import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.desk.dashboard.pojo.entity.DsProcessMeasuringToolEntity;
import org.springblade.desk.dashboard.service.IDsProcessMeasuringToolService;
import org.springblade.desk.device.pojo.entity.MeasurementRecordsEntity;
import org.springblade.desk.device.service.IMeasurementRecordsService;
import org.springblade.desk.quality.excel.WorkPlanItemDetailExcel;
import org.springblade.desk.quality.mapper.WorkPlanItemDetailMapper;
import org.springblade.desk.quality.pojo.entity.WorkPlanItem;
@ -29,6 +33,7 @@ import org.springblade.system.feign.IUserClient;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
/**
* [工序检验项明细] 服务实现类
@ -51,6 +56,7 @@ public class WorkPlanItemDetailServiceImpl extends BaseServiceImpl<WorkPlanItemD
private final IDsProcessMeasuringToolService processMeasuringToolService;
private final IMeasurementRecordsService mesMeasurementRecordsService;
@Override
public IPage<WorkPlanItemDetailVO> selectWorkPlanItemDetailPage(IPage<WorkPlanItemDetailVO> page, WorkPlanItemDetailVO workPlanItemDetail) {
return page.setRecords(baseMapper.selectWorkPlanItemDetailPage(page, workPlanItemDetail));
@ -67,7 +73,16 @@ public class WorkPlanItemDetailServiceImpl extends BaseServiceImpl<WorkPlanItemD
@Override
public void setVOValue(WorkPlanItemDetailVO vo) {
if (BeanUtil.isEmpty(vo)) {
return;
}
if (Objects.isNull(vo.getActMtId())) {
return;
}
MeasurementRecordsEntity processMeasuringToolEntity = mesMeasurementRecordsService.getById(vo.getActMtId());
vo.setActMtName(processMeasuringToolEntity.getMcName());
vo.setRuleSize(processMeasuringToolEntity.getNorms());
vo.setDueDate(processMeasuringToolEntity.getDueDate());
}
@Override

Loading…
Cancel
Save