转试新增流程卡号

liweidong
ShiJiuZhou 2 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 = "转试状态")
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.Func;
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.OemCraftAbilityEntity;
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.pojo.dto.*;
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.WorkOrderEnum;
import org.springblade.desk.produce.pojo.vo.*;
import org.springblade.desk.produce.service.*;
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.util.date.DateUtils;
import org.springblade.erpdata.feign.IErpDataLogisticsClient;
import org.springblade.scheduling.pojo.entity.WorkOrderEntity;
import org.springblade.erpdata.feign.IErpDataProduceClient;
import org.springblade.scheduling.pojo.entity.WorkOrderEntity;
import org.springblade.system.cache.DictCache;
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.springframework.beans.BeanUtils;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -175,14 +175,15 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
private final IWorkOrderAdjustService workOrderAdjustService;
private final IBasicClazzService basicClazzService;
@Resource
private final HttpRequestService httpRequestService;
@Resource
private final IErpDataLogisticsClient erpDataLogisticsClient;
@Resource
private final IDictClient dictClient;
@Override
public IPage<WorkOrderVO> selectWorkOrderPage(IPage<WorkOrderVO> page, WorkOrderDTO workOrder) {
return page.setRecords(baseMapper.selectWorkOrderPage(page, workOrder));
@ -2653,18 +2654,17 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
@Override
public List<Map<String, String>> trialItemList() {
// 构造 SQL 查询语句
List<BasicClazz> basicClazzList = basicClazzService.list(new LambdaQueryWrapper<BasicClazz>()
.eq(BasicClazz::getBizType, 11));
List<String> nameList = basicClazzList.stream().map(BasicClazz::getName).collect(Collectors.toList());
// 查询字典值
R<List<Dict>> planTestTrailItem = dictClient.getList("plan_test_trail_item");
List<String> nameList = planTestTrailItem.getData().stream().map(Dict::getDictValue).toList();
List<Map<String, String>> mapList = erpDataProduceClient.trialItemList(nameList).getData();
// 转换查询结果
List<Map<String, String>> result = new ArrayList<>();
if (mapList != null && !mapList.isEmpty()) {
for (Map<String,String> map : mapList) {
Map<String, String> item = new HashMap<>();
item.put("value", map.get("key") != null ? map.get("key") : "");
item.put("label", map.get("value") != null ? map.get("value") : "");
item.put("value", map.get("KEY") != null ? map.get("KEY") : "");
item.put("label", map.get("VALUE") != null ? map.get("VALUE") : "");
result.add(item);
}
}
@ -2706,15 +2706,15 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
Object testListObj = data.get("testList");
JSONArray testList = (JSONArray) JSON.toJSON(testListObj);
Long woId = Long.parseLong(data.get("woId").toString());
// 生成转试单号
String pptCode = generatePptCode();
// 获取相关工序
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() {
@ -2746,11 +2746,11 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
List<DsProcessProjectVO> dsProcessProjectEntities = dsPartService.selectDsProcessProjectByCraftId(yieldOrder.getCraftId(),null);
WorkPlan prWorkPlan = null;
if (dsProcessProjectEntities != null && !dsProcessProjectEntities.isEmpty()) {
for (DsProcessProjectEntity dsProcessProjectEntity : dsProcessProjectEntities) {
for (DsProcessProjectVO dsProcessProjectEntity : dsProcessProjectEntities) {
if ("承压检测".equals(dsProcessProjectEntity.getProjectName())) {
prWorkPlan = workPlanService.getOne(new LambdaQueryWrapper<WorkPlan>()
.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,
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++) {
JSONObject object = testList.getObject(i, JSONObject.class);
String value = object.getString("value");
@ -2770,7 +2770,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
);
if (response != null) {
saveTestRecord(workPlan, user, value, label, pptCode, response, i + 1);
saveTestRecord(workPlan, user, value, label, pptCode, response, i + 1,cardNo);
} else {
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,
String pptCode, JSONObject response, int sequence) {
String pptCode, JSONObject response, int sequence,String cardNo) {
PlanTest prPlanTest = new PlanTest();
prPlanTest.setWpId(workPlan.getId());
prPlanTest.setTestUserId(user.getUserId());
prPlanTest.setTestUserName(user.getUserName());
prPlanTest.setTestUserName(user.getNickName());
prPlanTest.setTestTime(LocalDateTime.now());
prPlanTest.setTestNo((long) sequence);
prPlanTest.setWpCode(testKey);
@ -2791,6 +2791,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
prPlanTest.setCode(pptCode);
prPlanTest.setErpId(response.getString("id"));
prPlanTest.setDataId(response.getString("str1"));
prPlanTest.setCardNo(cardNo);
planTestService.save(prPlanTest);
}
}

@ -12,7 +12,6 @@ import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.Configuration;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor;
import org.springblade.core.boot.ctrl.BladeController;
@ -55,7 +54,7 @@ public class PlanTestController extends BladeController {
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));
}
// @PostMapping(value = "/detailPage")
// public R detailPage(@RequestBody JSONObject data) {
// PrPlanTest prPlanTest = data.getObject("prPlanTest", PrPlanTest.class);
// return R.ok(prPlanTestService.detailPage(prPlanTest));
// }
/**
* [转试记录] list分页
*/

@ -84,20 +84,6 @@ public class PlanTestServiceImpl extends BaseServiceImpl<PlanTestMapper, PlanTes
JSONObject data = obj.getJSONObject("data");
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;
}

Loading…
Cancel
Save