转试新增流程卡号

liweidong
ShiJiuZhou 4 days ago
parent 550013194c
commit d36757c0c7
  1. 6
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/entity/PlanTest.java
  2. 45
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java
  3. 11
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/PlanTestController.java
  4. 14
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/PlanTestServiceImpl.java

@ -202,4 +202,10 @@ public class PlanTest extends BaseEntity {
*/ */
@Schema(description = "转试状态") @Schema(description = "转试状态")
private String testStatus; private String testStatus;
/**
* 流程卡号
*/
@Schema(description = "流程卡号")
private String cardNo;
} }

@ -24,7 +24,6 @@ import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.constant.FlowConst; import org.springblade.desk.basic.constant.FlowConst;
import org.springblade.desk.basic.pojo.entity.BasicClazz;
import org.springblade.desk.basic.pojo.entity.BsAssignEntity; import org.springblade.desk.basic.pojo.entity.BsAssignEntity;
import org.springblade.desk.basic.pojo.entity.OemCraftAbilityEntity; import org.springblade.desk.basic.pojo.entity.OemCraftAbilityEntity;
import org.springblade.desk.basic.pojo.entity.WorkCenter; import org.springblade.desk.basic.pojo.entity.WorkCenter;
@ -52,8 +51,8 @@ import org.springblade.desk.produce.mapper.PlateAroundMapper;
import org.springblade.desk.produce.mapper.WorkOrderMapper; import org.springblade.desk.produce.mapper.WorkOrderMapper;
import org.springblade.desk.produce.pojo.dto.*; import org.springblade.desk.produce.pojo.dto.*;
import org.springblade.desk.produce.pojo.entity.*; import org.springblade.desk.produce.pojo.entity.*;
import org.springblade.desk.produce.pojo.enums.WorkOrderEnum;
import org.springblade.desk.produce.pojo.enums.ProcessCycleEnum; import org.springblade.desk.produce.pojo.enums.ProcessCycleEnum;
import org.springblade.desk.produce.pojo.enums.WorkOrderEnum;
import org.springblade.desk.produce.pojo.vo.*; import org.springblade.desk.produce.pojo.vo.*;
import org.springblade.desk.produce.service.*; import org.springblade.desk.produce.service.*;
import org.springblade.desk.quality.mapper.InspectionTaskMapper; import org.springblade.desk.quality.mapper.InspectionTaskMapper;
@ -61,13 +60,14 @@ import org.springblade.desk.quality.pojo.entity.*;
import org.springblade.desk.quality.service.*; import org.springblade.desk.quality.service.*;
import org.springblade.desk.util.date.DateUtils; import org.springblade.desk.util.date.DateUtils;
import org.springblade.erpdata.feign.IErpDataLogisticsClient; import org.springblade.erpdata.feign.IErpDataLogisticsClient;
import org.springblade.scheduling.pojo.entity.WorkOrderEntity;
import org.springblade.erpdata.feign.IErpDataProduceClient; import org.springblade.erpdata.feign.IErpDataProduceClient;
import org.springblade.scheduling.pojo.entity.WorkOrderEntity;
import org.springblade.system.cache.DictCache; import org.springblade.system.cache.DictCache;
import org.springblade.system.cache.UserCache; import org.springblade.system.cache.UserCache;
import org.springblade.system.feign.IDictClient;
import org.springblade.system.pojo.entity.Dict;
import org.springblade.system.pojo.entity.User; import org.springblade.system.pojo.entity.User;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -175,14 +175,15 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
private final IWorkOrderAdjustService workOrderAdjustService; private final IWorkOrderAdjustService workOrderAdjustService;
private final IBasicClazzService basicClazzService;
@Resource @Resource
private final HttpRequestService httpRequestService; private final HttpRequestService httpRequestService;
@Resource @Resource
private final IErpDataLogisticsClient erpDataLogisticsClient; private final IErpDataLogisticsClient erpDataLogisticsClient;
@Resource
private final IDictClient dictClient;
@Override @Override
public IPage<WorkOrderVO> selectWorkOrderPage(IPage<WorkOrderVO> page, WorkOrderDTO workOrder) { public IPage<WorkOrderVO> selectWorkOrderPage(IPage<WorkOrderVO> page, WorkOrderDTO workOrder) {
return page.setRecords(baseMapper.selectWorkOrderPage(page, workOrder)); return page.setRecords(baseMapper.selectWorkOrderPage(page, workOrder));
@ -2653,18 +2654,17 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
@Override @Override
public List<Map<String, String>> trialItemList() { public List<Map<String, String>> trialItemList() {
// 构造 SQL 查询语句 // 查询字典值
List<BasicClazz> basicClazzList = basicClazzService.list(new LambdaQueryWrapper<BasicClazz>() R<List<Dict>> planTestTrailItem = dictClient.getList("plan_test_trail_item");
.eq(BasicClazz::getBizType, 11)); List<String> nameList = planTestTrailItem.getData().stream().map(Dict::getDictValue).toList();
List<String> nameList = basicClazzList.stream().map(BasicClazz::getName).collect(Collectors.toList());
List<Map<String, String>> mapList = erpDataProduceClient.trialItemList(nameList).getData(); List<Map<String, String>> mapList = erpDataProduceClient.trialItemList(nameList).getData();
// 转换查询结果 // 转换查询结果
List<Map<String, String>> result = new ArrayList<>(); List<Map<String, String>> result = new ArrayList<>();
if (mapList != null && !mapList.isEmpty()) { if (mapList != null && !mapList.isEmpty()) {
for (Map<String,String> map : mapList) { for (Map<String,String> map : mapList) {
Map<String, String> item = new HashMap<>(); Map<String, String> item = new HashMap<>();
item.put("value", map.get("key") != null ? map.get("key") : ""); item.put("value", map.get("KEY") != null ? map.get("KEY") : "");
item.put("label", map.get("value") != null ? map.get("value") : ""); item.put("label", map.get("VALUE") != null ? map.get("VALUE") : "");
result.add(item); result.add(item);
} }
} }
@ -2706,15 +2706,15 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
Object testListObj = data.get("testList"); Object testListObj = data.get("testList");
JSONArray testList = (JSONArray) JSON.toJSON(testListObj); JSONArray testList = (JSONArray) JSON.toJSON(testListObj);
Long woId = Long.parseLong(data.get("woId").toString()); Long woId = Long.parseLong(data.get("woId").toString());
// 生成转试单号 // 生成转试单号
String pptCode = generatePptCode(); String pptCode = generatePptCode();
// 获取相关工序 // 获取相关工序
WorkPlan workPlan = findRelevantWorkPlan(woId); WorkPlan workPlan = findRelevantWorkPlan(woId);
// 获取流程卡号
WorkOrder workOrder = this.getById(woId);
String cardNo = workOrder.getCardNo();
// 处理每个测试项 // 处理每个测试项
processTestItems(testList, batchNo, quantity, woCode, remark, partCode, partName, productType, pptCode, workPlan, user); processTestItems(testList, batchNo, quantity, woCode, remark, partCode, partName, productType, pptCode, workPlan, user,cardNo);
} }
private String generatePptCode() { private String generatePptCode() {
@ -2746,11 +2746,11 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
List<DsProcessProjectVO> dsProcessProjectEntities = dsPartService.selectDsProcessProjectByCraftId(yieldOrder.getCraftId(),null); List<DsProcessProjectVO> dsProcessProjectEntities = dsPartService.selectDsProcessProjectByCraftId(yieldOrder.getCraftId(),null);
WorkPlan prWorkPlan = null; WorkPlan prWorkPlan = null;
if (dsProcessProjectEntities != null && !dsProcessProjectEntities.isEmpty()) { if (dsProcessProjectEntities != null && !dsProcessProjectEntities.isEmpty()) {
for (DsProcessProjectEntity dsProcessProjectEntity : dsProcessProjectEntities) { for (DsProcessProjectVO dsProcessProjectEntity : dsProcessProjectEntities) {
if ("承压检测".equals(dsProcessProjectEntity.getProjectName())) { if ("承压检测".equals(dsProcessProjectEntity.getProjectName())) {
prWorkPlan = workPlanService.getOne(new LambdaQueryWrapper<WorkPlan>() prWorkPlan = workPlanService.getOne(new LambdaQueryWrapper<WorkPlan>()
.eq(WorkPlan::getWoId, woId) .eq(WorkPlan::getWoId, woId)
.eq(WorkPlan::getOrders,null)); .eq(WorkPlan::getOrders,dsProcessProjectEntity.getProcessNo()));
} }
} }
} }
@ -2759,7 +2759,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
private void processTestItems(JSONArray testList, String batchNo, Integer quantity, String woCode, String remark, private void processTestItems(JSONArray testList, String batchNo, Integer quantity, String woCode, String remark,
String partCode, String partName, String productType, String pptCode, String partCode, String partName, String productType, String pptCode,
WorkPlan workPlan, BladeUser user) throws Exception { WorkPlan workPlan, BladeUser user,String cardNo) throws Exception {
for (int i = 0; i < testList.size(); i++) { for (int i = 0; i < testList.size(); i++) {
JSONObject object = testList.getObject(i, JSONObject.class); JSONObject object = testList.getObject(i, JSONObject.class);
String value = object.getString("value"); String value = object.getString("value");
@ -2770,7 +2770,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
); );
if (response != null) { if (response != null) {
saveTestRecord(workPlan, user, value, label, pptCode, response, i + 1); saveTestRecord(workPlan, user, value, label, pptCode, response, i + 1,cardNo);
} else { } else {
throw new BusinessException("LIMS系统接口调用失败,请联系相关负责人处理。"); throw new BusinessException("LIMS系统接口调用失败,请联系相关负责人处理。");
} }
@ -2778,11 +2778,11 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
} }
private void saveTestRecord(WorkPlan workPlan, BladeUser user, String testKey, String testName, private void saveTestRecord(WorkPlan workPlan, BladeUser user, String testKey, String testName,
String pptCode, JSONObject response, int sequence) { String pptCode, JSONObject response, int sequence,String cardNo) {
PlanTest prPlanTest = new PlanTest(); PlanTest prPlanTest = new PlanTest();
prPlanTest.setWpId(workPlan.getId()); prPlanTest.setWpId(workPlan.getId());
prPlanTest.setTestUserId(user.getUserId()); prPlanTest.setTestUserId(user.getUserId());
prPlanTest.setTestUserName(user.getUserName()); prPlanTest.setTestUserName(user.getNickName());
prPlanTest.setTestTime(LocalDateTime.now()); prPlanTest.setTestTime(LocalDateTime.now());
prPlanTest.setTestNo((long) sequence); prPlanTest.setTestNo((long) sequence);
prPlanTest.setWpCode(testKey); prPlanTest.setWpCode(testKey);
@ -2791,6 +2791,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
prPlanTest.setCode(pptCode); prPlanTest.setCode(pptCode);
prPlanTest.setErpId(response.getString("id")); prPlanTest.setErpId(response.getString("id"));
prPlanTest.setDataId(response.getString("str1")); prPlanTest.setDataId(response.getString("str1"));
prPlanTest.setCardNo(cardNo);
planTestService.save(prPlanTest); planTestService.save(prPlanTest);
} }
} }

@ -12,7 +12,6 @@ import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.Configuration;
import jakarta.validation.Valid; import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springblade.core.boot.ctrl.BladeController; import org.springblade.core.boot.ctrl.BladeController;
@ -55,7 +54,7 @@ public class PlanTestController extends BladeController {
private final IPlanTestService service; private final IPlanTestService service;
private IWorkOrderService workOrderService; private final IWorkOrderService workOrderService;
/** /**
* [转试记录] 详情 * [转试记录] 详情
@ -77,14 +76,6 @@ public class PlanTestController extends BladeController {
return R.data(service.detailPage(planTest)); return R.data(service.detailPage(planTest));
} }
// @PostMapping(value = "/detailPage")
// public R detailPage(@RequestBody JSONObject data) {
// PrPlanTest prPlanTest = data.getObject("prPlanTest", PrPlanTest.class);
// return R.ok(prPlanTestService.detailPage(prPlanTest));
// }
/** /**
* [转试记录] list分页 * [转试记录] list分页
*/ */

@ -84,20 +84,6 @@ public class PlanTestServiceImpl extends BaseServiceImpl<PlanTestMapper, PlanTes
JSONObject data = obj.getJSONObject("data"); JSONObject data = obj.getJSONObject("data");
return data.getJSONArray("nodeEndTime"); return data.getJSONArray("nodeEndTime");
} }
// if(null != test){
// WorkPlan prWorkPlan = workPlanService.getById(test.getWpId());
// if(null != prWorkPlan){
// WorkOrder prWorkOrder = workOrderMapper.selectById(prWorkPlan.getWoId());
// if(null != prWorkOrder){
// JSONObject obj = testRec(prWorkOrder.getWoCode(), test.getErpId(),test.getDataId());
// if (obj != null) {
// JSONObject data = obj.getJSONObject("data");
// return data.getJSONArray("nodeEndTime");
// }
// }
//
// }
// }
return null; return null;
} }

Loading…
Cancel
Save