REQ-3201: 更新动作
This commit is contained in:
parent
cc26856c76
commit
c8ceb51534
@ -145,7 +145,7 @@ public class CardManager {
|
||||
for (List<Card> cards : cardsCursor(request, cardProps.getUpdateCardBatchSize())) {
|
||||
updated = true;
|
||||
UpdateCollector collector = new UpdateCollector(requestContext, "updateState", templateModel, cards);
|
||||
collector.updateState((card) -> {
|
||||
collector.update(card -> {
|
||||
Card update = collector.createUpdate(card);
|
||||
if (request.determineIsCardCompleted())
|
||||
update.setCardState(CardState.COMPLETED);
|
||||
@ -166,7 +166,7 @@ public class CardManager {
|
||||
CardRequestContext<SetActionPerformedRequest> requestContext = CardRequestContext.create(request);
|
||||
for (List<Card> cards : cardsCursor(request, cardProps.getUpdateCardBatchSize())) {
|
||||
UpdateCollector collector = new UpdateCollector(requestContext, "setActionPerformed", templateModel, cards);
|
||||
collector.updateState(new SetActionPerformedBuilder(collector, button, request.getCardBizState()));
|
||||
collector.update(new SetActionPerformedBuilder(collector, button, request.getCardBizState()));
|
||||
}
|
||||
}
|
||||
|
||||
@ -199,7 +199,7 @@ public class CardManager {
|
||||
BizAssertions.assertNotNull(button, "找不到对应的预设按钮, request={}", JSON.toJSONString(request));
|
||||
CardBizState bizState = CardBizState.fromPresetButton(request.getPresetButtonType());
|
||||
UpdateCollector collector = new UpdateCollector(requestContext, "presetButtonPressed", templateModel, cards);
|
||||
UpdateStateResult result = collector.updateState(new SetActionPerformedBuilder(collector, button, bizState));
|
||||
UpdateStateResult result = collector.update(new SetActionPerformedBuilder(collector, button, bizState));
|
||||
if (result == UpdateStateResult.SUCCESS) {
|
||||
cardBroadcaster.firePresetButtonPressed(collector.updatedCards, request);
|
||||
collector.updateCardLogger.reloadAndLogCards("presetButtonPressed:mq:success");
|
||||
@ -248,11 +248,11 @@ public class CardManager {
|
||||
this.cards = cards;
|
||||
}
|
||||
|
||||
UpdateStateResult updateState(CardUpdateStateBuilder stateBuilder) {
|
||||
UpdateStateResult update(UpdateBuilder builder) {
|
||||
if (CollectionUtils.isEmpty(cards)) return UpdateStateResult.EMPTY_CARDS;
|
||||
boolean recordsUpdated = execTransactional(() -> {
|
||||
for (Card card : cardDao.reloadCardsForUpdate(cards))
|
||||
stateBuilder.buildUpdate(card);
|
||||
builder.buildUpdate(card);
|
||||
if (CollectionUtils.isEmpty(updates))
|
||||
return false;
|
||||
cardDao.updateBatchById(updates);
|
||||
@ -325,12 +325,12 @@ public class CardManager {
|
||||
SUCCESS, FAIL, EMPTY_CARDS, NO_UPDATE
|
||||
}
|
||||
|
||||
private interface CardUpdateStateBuilder {
|
||||
private interface UpdateBuilder {
|
||||
void buildUpdate(Card card);
|
||||
}
|
||||
|
||||
@RequiredArgsConstructor
|
||||
private static class SetActionPerformedBuilder implements CardUpdateStateBuilder {
|
||||
private static class SetActionPerformedBuilder implements UpdateBuilder {
|
||||
|
||||
private final UpdateCollector collector;
|
||||
private final ButtonV3 button;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user