ignore campaign quota validate self

This commit is contained in:
Shaun Chyxion 2021-10-20 00:58:30 +08:00
parent 2f44766cff
commit 4905c5e22a

View File

@ -31,7 +31,7 @@ public class CampaignQuotaServiceImpl
@Override
protected void beforeCreate(final FormCreateCampaignQuota form, final CampaignQuota model) {
super.beforeCreate(form, model);
validateDailyTime(form.getCampaignId(), form.getDailyFrom(), form.getDailyTo());
validateDailyTime(null, form.getCampaignId(), form.getDailyFrom(), form.getDailyTo());
}
/**
@ -40,14 +40,21 @@ public class CampaignQuotaServiceImpl
@Override
protected void beforeUpdate(final FormUpdateCampaignQuota form, final CampaignQuota model) {
super.beforeUpdate(form, model);
validateDailyTime(model.getCampaignId(), form.getDailyFrom(), form.getDailyTo());
validateDailyTime(model.getId(), model.getCampaignId(), form.getDailyFrom(), form.getDailyTo());
}
void validateDailyTime(final Integer campaignId, final DailyTime dailyFrom, final DailyTime dailyTo) {
void validateDailyTime(final Integer quoaId, final Integer campaignId, final DailyTime dailyFrom, final DailyTime dailyTo) {
Assert.state(dailyFrom.getSecondOfDay() < dailyTo.getSecondOfDay(),
() -> "无效开始时间[" + dailyFrom + "]和结束时间[" + dailyTo + "],开始时间须小于结束时间");
mapper.scan(128, new Search(CampaignQuota.CAMPAIGN_ID, campaignId), item -> {
val search = new Search(CampaignQuota.CAMPAIGN_ID, campaignId);
// ignore self
if (quoaId != null) {
search.ne(CampaignQuota.ID, quoaId);
}
mapper.scan(128, search, item -> {
val itemDailyFrom = item.getDailyFrom();
val itemDailyTo = item.getDailyTo();