Browse Source

钢坯原始生产记录表添加字段

qiangxuan 3 weeks ago
parent
commit
5c48318c7c

+ 21 - 3
zgztBus/jeecg-module-sbm/src/main/java/org/jeecg/modules/billet/billetOriginalProductRecord/controller/BilletOriginalProductRecordController.java

@@ -136,7 +136,12 @@ public class BilletOriginalProductRecordController extends JeecgController<Bille
 		if(bopr == null) {
 			return Result.error("未找到对应数据,编辑失败!");
 		}
-		LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+		// 检查是否更新了hotChargeLength字段
+		boolean hotChargeLengthUpdated = false;
+		if (billetOriginalProductRecord.getHotChargeLength() != null &&
+				!billetOriginalProductRecord.getHotChargeLength().equals(bopr.getHotChargeLength())) {
+			hotChargeLengthUpdated = true;
+		}
 		if (bopr.getAmount() != null && !bopr.getAmount().equals(billetOriginalProductRecord.getAmount())) {
 			Integer newTotal = billetOriginalProductRecord.getAmount();
 			// 确保新合计数非负
@@ -161,10 +166,22 @@ public class BilletOriginalProductRecordController extends JeecgController<Bille
 					"id", "oneStrandSum", "twoStrandSum", "threeStrandSum",
 					"fourStrandSum", "fiveStrandSum", "sixStrandSum",
 					"sevenStrandSum", "eightStrandSum", "amount");
+			// 如果更新了hotChargeLength,设置is_edit_charge为2
+			if (hotChargeLengthUpdated) {
+				bopr.setIsEditCharge("2");
+			}
 			// 保存修改
 			billetOriginalProductRecordService.updateById(bopr);
 		}else {
-			billetOriginalProductRecordService.updateById(billetOriginalProductRecord);
+			// 复制所有非空字段(忽略ID)
+			BeanUtils.copyProperties(billetOriginalProductRecord, bopr, "id");
+			// 如果更新了hotChargeLength,设置is_edit_charge为2
+			if (hotChargeLengthUpdated) {
+				bopr.setIsEditCharge("2");
+			}
+			bopr.setUpdateTime(new Date());
+			// 保存修改
+			billetOriginalProductRecordService.updateById(bopr);
 		}
 		return Result.OK("编辑成功!");
 	}
@@ -531,7 +548,8 @@ public class BilletOriginalProductRecordController extends JeecgController<Bille
 								 .eq(StorageBillPrint::getClasses, shiftAndShiftGroup) // 新增的条件
 								 .apply("JSON_EXTRACT(heat_no, '" + jsonPath + "') IS NOT NULL")
 				 );
-				 if (oConvertUtils.listIsNotEmpty(storageBillPrintList)){
+				 // 如果装运单打印表数据不为空,并且热装字段已经被编辑过,就不在实时读取装运打印表的实时热装数据
+				 if (oConvertUtils.listIsNotEmpty(storageBillPrintList) && "1".equals(x.getIsEditCharge())){
 					 List<Map<String, Object>> finalResult = handleStorageBillPrintHotCharge(storageBillPrintList, heatNo);
 					 log.info("钢坯原始记录,获取最新装运单打印表信息: {}", JSON.toJSONString(finalResult));
 					 x.setHotChargeLength(JSON.toJSONString(finalResult));

+ 5 - 0
zgztBus/jeecg-module-sbm/src/main/java/org/jeecg/modules/billet/billetOriginalProductRecord/entity/BilletOriginalProductRecord.java

@@ -159,4 +159,9 @@ public class BilletOriginalProductRecord implements Serializable {
     @ApiModelProperty(value = "确认日期")
     private Date confirmTime;
 
+    @Excel(name = "是否编辑过热装", width = 15)
+    @ApiModelProperty(value = "是否编辑过热装")
+    private String isEditCharge;
+
+
 }