临时失效时间必填

This commit is contained in:
luojiaquan
2026-09-28 15:18:22 +08:00
parent d3493f2bc5
commit 1083c2876f
3 changed files with 12 additions and 12 deletions
@@ -53,7 +53,7 @@ public class CustomerCreditApply extends BaseEntity
@JsonFormat(pattern = "yyyy-MM-dd")
private Date effectiveDate;
/** 临时额度失效日期(空=长期) */
/** 额度失效日期(信用/临时均必填,到期次日自动清零) */
@JsonFormat(pattern = "yyyy-MM-dd")
private Date expireDate;
@@ -411,7 +411,7 @@ public class CustomerMoneyServiceImpl implements ICustomerMoneyService
}
after = after.setScale(MONEY_SCALE, RoundingMode.HALF_UP);
// 3. 有效期处理:信用/临时同口径——不允许预约未来生效;信用额度失效日期必填,临时额度空=长期
// 3. 有效期处理:信用/临时同口径——不允许预约未来生效;失效日期均必填(validateAdjustCommand 已强校验)
Date effectiveDate = null;
Date expireDate = null;
LocalDate today = LocalDate.now();
@@ -724,10 +724,10 @@ public class CustomerMoneyServiceImpl implements ICustomerMoneyService
throw new ServiceException("额度未发生变化,无需调整");
}
if (!isTemp && cmd.getExpireDate() == null)
if (cmd.getExpireDate() == null)
{
// 信用额度必须设置失效日期(到期自动清零);临时额度不填=长期
throw new ServiceException("请选择信用额度失效日期");
// 信用额度、临时(额外)额度都必须设置失效日期(到期次日自动清零)
throw new ServiceException(isTemp ? "请选择临时额度失效日期" : "请选择信用额度失效日期");
}
LocalDate today = LocalDate.now();
LocalDate eff = cmd.getEffectiveDate() != null ? toLocalDate(cmd.getEffectiveDate()) : today;
@@ -836,17 +836,17 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="creditDialog.form.creditType === 'TEMP' ? '失效日期' : '失效日期'" prop="expireDate">
<el-form-item label="失效日期" prop="expireDate">
<el-date-picker
v-model="creditDialog.form.expireDate"
type="date"
value-format="YYYY-MM-DD"
:placeholder="creditDialog.form.creditType === 'TEMP' ? '不填为长期有效' : '必选,到期自动清零'"
placeholder="必选,到期自动清零"
style="width: 100%;"
/>
<div class="rate-tip">
{{ creditDialog.form.creditType === 'TEMP'
? '失效日当天仍有效,次日访问账户时自动清零并记到期流水'
? '临时额度失效日期必填;失效日当天仍有效,次日访问账户时自动清零并记到期流水'
: '信用额度失效日期必填;失效日当天仍有效,次日自动清零;额度失效后可用额度相应减少,若账户余额为负将形成欠费(可继续计费,请及时催收回款)' }}
</div>
</el-form-item>
@@ -1172,8 +1172,8 @@ const creditRules = computed(() => ({
reason: [{ required: true, message: '请填写调整原因', trigger: 'blur' }],
expireDate: [{
validator: (rule, value, callback) => {
if (creditDialog.form.creditType === 'CREDIT' && !value) {
callback(new Error('请选择信用额度失效日期'))
if ( !value) {
callback(new Error('请选择额度失效日期'))
} else {
callback()
}
@@ -1256,8 +1256,8 @@ function submitAdjustCredit() {
proxy.$modal.msgError('调整金额必须大于0')
return
}
if (f.creditType === 'CREDIT' && !f.expireDate) {
proxy.$modal.msgError('请选择信用额度失效日期')
if (!f.expireDate) {
proxy.$modal.msgError(f.creditType === 'TEMP' ? '请选择临时额度失效日期' : '请选择信用额度失效日期')
return
}
if (f.expireDate && f.effectiveDate && f.expireDate <= f.effectiveDate) {