fix: 签署日期不能晚于当前日期
后端 /sign-date 和 /paper-sign 均增加校验,签署日期晚于今天则报错。 前端日期选择器增加 max 属性限制为今天。
This commit is contained in:
@@ -221,6 +221,12 @@ router.post('/sign-date', async (req: AuthRequest, res: Response, next: NextFunc
|
||||
if (isNaN(parsedDate.getTime())) {
|
||||
return res.status(400).json({ success: false, error: { code: 'VALIDATION_ERROR', message: '签署日期格式无效' } })
|
||||
}
|
||||
// 签署日期不能晚于当前日期
|
||||
const today = new Date()
|
||||
today.setHours(23, 59, 59, 999)
|
||||
if (parsedDate > today) {
|
||||
return res.status(400).json({ success: false, error: { code: 'VALIDATION_ERROR', message: '签署日期不能晚于当前日期' } })
|
||||
}
|
||||
// 更新合同签署日期
|
||||
await prisma.laborContract.update({
|
||||
where: { id: contractId },
|
||||
@@ -623,6 +629,14 @@ router.post('/paper-sign', authMiddleware, async (req: AuthRequest, res: Respons
|
||||
return res.status(404).json({ success: false, error: { code: 'NOT_FOUND', message: '员工不存在' } })
|
||||
}
|
||||
|
||||
// 签署日期不能晚于当前日期
|
||||
const signDate = new Date(data.signedAt)
|
||||
const todayEnd = new Date()
|
||||
todayEnd.setHours(23, 59, 59, 999)
|
||||
if (signDate > todayEnd) {
|
||||
return res.status(400).json({ success: false, error: { code: 'VALIDATION_ERROR', message: '签署日期不能晚于当前日期' } })
|
||||
}
|
||||
|
||||
// 创建签署记录(线下手签直接为 COMPLETED 状态)
|
||||
const record = await prisma.eSignRecord.create({
|
||||
data: {
|
||||
|
||||
Reference in New Issue
Block a user