| | |
| | | if (preRecord != null) { |
| | | record.id = preRecord.id; |
| | | record.inTime = preRecord.outTime; |
| | | record.outLineTime = preRecord.outLineTime; |
| | | }else{ |
| | | record.inTime = new Date(); |
| | | record.inLineTime = new Date(); |
| | | assemblyPlan.setInputNumber(assemblyPlan.getInputNumber() + 1); |
| | | } |
| | | record.outTime = new Date(); |
| | |
| | | if (node.isRecord) { |
| | | record.deviceCycleContent = node.deviceCycleContent; |
| | | } |
| | | if(node.getIsEnd()){ |
| | | if(node.getIsEnd() && record.outLineTime == null){ |
| | | record.outLineTime = new Date(); |
| | | assemblyPlan.setOutputNumber(assemblyPlan.getOutputNumber() + 1); |
| | | } |
| | | assemblyPlanDao.updateByPrimaryKeySelective(assemblyPlan); |
| | | record.status = getStatus(params.status, node.isEnd,workLast.workType.toString()); |
| | | if(record.status == null){ |
| | | record.status = preRecord.status; |
| | | } |
| | | return record; |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | /** |
| | | * 状态: 1:组装中,2:完成,3:维修,4:报废 |
| | | * 状态: 0:待生产,1:组装中,2:完成,3:维修,4:报废,5:测试不通过,6:品检不通过 |
| | | * |
| | | * @param status 状态 |
| | | * @param isEndNode 是否结束节点 |
| | | * @return 状态 |
| | | */ |
| | | private int getStatus(String status, boolean isEndNode,String workType) { |
| | | private Integer getStatus(String status, boolean isEndNode,String workType) { |
| | | //组装,维修 |
| | | if (WORK_TYPE_ASSEMBLY.equals(workType)||WORK_TYPE_REPAIR.equals(workType)) { |
| | | return switch (status) { |
| | |
| | | //品检,测试 |
| | | }else if(WORK_TYPE_INSPECTION.equals(workType)||WORK_TYPE_TEST.equals(workType)){ |
| | | return switch (status) { |
| | | case QrCodeConstant.MarkOk -> DeviceStatus.COMPLETED.getCode(); |
| | | case QrCodeConstant.MarkOk -> null;//DeviceStatus.COMPLETED.getCode(); |
| | | case QrCodeConstant.MarkUnqualified -> DeviceStatus.TEST_FAILED.getCode(); |
| | | case QrCodeConstant.MarkWaste -> DeviceStatus.WASTE.getCode(); |
| | | default -> throw new RuntimeException("状态错误"); |
| | |
| | | public Map<String,String> queryByDeviceNo(String deviceNo) { |
| | | Map<String,String> map = new HashMap<>(); |
| | | map.put("deviceNo", deviceNo); |
| | | map.put("proName", "-"); |
| | | map.put("proType", "-"); |
| | | map.put("proName", ""); |
| | | map.put("proType", ""); |
| | | |
| | | PltProduct product = productDao.selectByCode(deviceNo.substring(3,6)); |
| | | if(product != null){ |
| | | map.put("proName", product.getName()); |
| | | map.put("proType", product.getType()); |
| | | } |
| | | /*else{ |
| | | throw new RuntimeException("该编码("+deviceNo +")不是主要物料(系统中管控的其他设备)"); |
| | | }*/ |
| | | return map; |
| | | } |
| | | |