Ver código fonte

fix: 财务批量结算校验是不是当月数据2

lixuesong 1 ano atrás
pai
commit
0a74a82f26

+ 6 - 5
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/WmPayOffController.java

@@ -663,17 +663,18 @@ public class WmPayOffController {
 				return R.failed("数据异常");
 			}
 
-			Optional<WmScorePackageSettleNote> checkMonthOpt = input.getNotes().stream().filter(note -> note.getSubTime() == null || note.getSubTime().getMonthValue() != monthValue).findAny();
-			if (checkMonthOpt.isPresent()) {
-				return R.failed("不支持结算非当月提交记录,请回退并重新提交后重试");
-			}
-
 			// 查询结算详情(用于拼接notes数据)
 			R<?> queryR = wmPayOffService.settleById(input.getId());
 
 			if (queryR.getCode() == 0) {
 				Map<String, Object> queryData = (Map<String, Object>) queryR.getData();
 				List<WmScorePackageSettleNote> notes = (List<WmScorePackageSettleNote>) queryData.get("notes");
+
+				Optional<WmScorePackageSettleNote> checkMonthOpt = notes.stream().filter(note -> note.getSubTime() == null || note.getSubTime().getMonthValue() != monthValue).findAny();
+				if (checkMonthOpt.isPresent()) {
+					return R.failed("不支持结算非当月提交记录,请回退并重新提交后重试");
+				}
+
 				input.setNotes(notes);
 				// 调用单个结算
 				R<?> settleR = wmPayOffService.settleIssueBySubType(input);