## 推荐架构逻辑修改:查询传入日结信息(当天查询上一天日结信息)

This commit is contained in:
zhangheng 2025-09-24 13:36:12 +08:00
parent bc3cd3d941
commit 9b6ec03b73
1 changed files with 10 additions and 11 deletions

View File

@ -43,6 +43,8 @@ import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.*; import java.util.*;
/** /**
@ -110,8 +112,9 @@ public class MemberStructureController extends BaseController {
period = csPeriod.getPkId(); period = csPeriod.getPkId();
settleDate = csPeriod.getSettleDate(); settleDate = csPeriod.getSettleDate();
} else { } else {
// 没有传入期数按当前时间取期数 // 没有传入期数按当前时间-1取期数
CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd")));
CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday);
if (csPeriod != null) { if (csPeriod != null) {
period = csPeriod.getPkId(); period = csPeriod.getPkId();
settleDate = csPeriod.getSettleDate(); settleDate = csPeriod.getSettleDate();
@ -121,7 +124,9 @@ public class MemberStructureController extends BaseController {
if (settleDate != null && DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, settleDate).equals(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, new Date()))) { if (settleDate != null && DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, settleDate).equals(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, new Date()))) {
// 查询当天 (秒结) // 查询当天 (秒结)
// 会员秒结表 // 会员秒结表
String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_S + period; String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd")));
CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday);
String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId();
// 校验秒结表是否存在 // 校验秒结表是否存在
Integer tableNumber = iCuMemberTreeService.queryExistOracleTable(settleTableName); Integer tableNumber = iCuMemberTreeService.queryExistOracleTable(settleTableName);
if (tableNumber != null && tableNumber == 1) { if (tableNumber != null && tableNumber == 1) {
@ -135,7 +140,7 @@ public class MemberStructureController extends BaseController {
// 秒结表不存在取昨天的结算表 // 秒结表不存在取昨天的结算表
DateTime dateTime = DateUtil.offsetDay(DateUtils.currentDate(), -1); DateTime dateTime = DateUtil.offsetDay(DateUtils.currentDate(), -1);
time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, dateTime); time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, dateTime);
CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time);
if (csPeriod != null) { if (csPeriod != null) {
period = csPeriod.getPkId(); period = csPeriod.getPkId();
} }
@ -174,13 +179,7 @@ public class MemberStructureController extends BaseController {
return AjaxResult.success(iCuMemberService.systemListTree(memberRetailExtList, cuMemberSettleExt, settleTableName)); return AjaxResult.success(iCuMemberService.systemListTree(memberRetailExtList, cuMemberSettleExt, settleTableName));
} }
} else { } else {
DateTime dateTime = DateUtil.offsetDay(DateUtils.currentDate(), -1); // 不是当天,查询传入日结信息
time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, dateTime);
CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time);
if (csPeriod != null) {
period = csPeriod.getPkId();
}
// 查询 历史
String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period;
Integer tableNumber = iCuMemberTreeService.queryExistOracleTable(settleTableName); Integer tableNumber = iCuMemberTreeService.queryExistOracleTable(settleTableName);