208 lines
6.5 KiB
JavaScript
208 lines
6.5 KiB
JavaScript
|
|
const { CompletedSupervision, User } = require('../models')
|
|||
|
|
|
|||
|
|
async function seedCompletedSupervisions() {
|
|||
|
|
try {
|
|||
|
|
console.log('开始创建监管任务已结项测试数据...')
|
|||
|
|
|
|||
|
|
// 获取第一个用户作为创建者
|
|||
|
|
const user = await User.findOne()
|
|||
|
|
if (!user) {
|
|||
|
|
console.error('未找到用户,请先创建用户')
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
const completedSupervisions = [
|
|||
|
|
{
|
|||
|
|
applicationNumber: 'APP2024001',
|
|||
|
|
contractNumber: 'LOAN2024001',
|
|||
|
|
productName: '生猪养殖贷',
|
|||
|
|
customerName: '张三',
|
|||
|
|
idType: 'ID_CARD',
|
|||
|
|
idNumber: '4401XXXXXXXXXXXXXX',
|
|||
|
|
assetType: '生猪',
|
|||
|
|
assetQuantity: 500,
|
|||
|
|
totalRepaymentPeriods: 12,
|
|||
|
|
settlementStatus: 'settled',
|
|||
|
|
settlementDate: '2024-01-15',
|
|||
|
|
importTime: new Date('2024-01-15 10:30:00'),
|
|||
|
|
settlementAmount: 500000.00,
|
|||
|
|
remainingAmount: 0.00,
|
|||
|
|
settlementNotes: '贷款已全部结清',
|
|||
|
|
createdBy: user.id
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
applicationNumber: 'APP2024002',
|
|||
|
|
contractNumber: 'LOAN2024002',
|
|||
|
|
productName: '肉牛养殖贷',
|
|||
|
|
customerName: '李四',
|
|||
|
|
idType: 'ID_CARD',
|
|||
|
|
idNumber: '4402XXXXXXXXXXXXXX',
|
|||
|
|
assetType: '肉牛',
|
|||
|
|
assetQuantity: 150,
|
|||
|
|
totalRepaymentPeriods: 24,
|
|||
|
|
settlementStatus: 'partial',
|
|||
|
|
settlementDate: '2024-01-20',
|
|||
|
|
importTime: new Date('2024-01-20 14:20:00'),
|
|||
|
|
settlementAmount: 300000.00,
|
|||
|
|
remainingAmount: 200000.00,
|
|||
|
|
settlementNotes: '部分结清,剩余20万待还',
|
|||
|
|
createdBy: user.id
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
applicationNumber: 'APP2024003',
|
|||
|
|
contractNumber: 'LOAN2024003',
|
|||
|
|
productName: '蛋鸡养殖贷',
|
|||
|
|
customerName: '王五',
|
|||
|
|
idType: 'ID_CARD',
|
|||
|
|
idNumber: '4403XXXXXXXXXXXXXX',
|
|||
|
|
assetType: '蛋鸡',
|
|||
|
|
assetQuantity: 10000,
|
|||
|
|
totalRepaymentPeriods: 18,
|
|||
|
|
settlementStatus: 'unsettled',
|
|||
|
|
settlementDate: null,
|
|||
|
|
importTime: new Date('2024-01-10 09:15:00'),
|
|||
|
|
settlementAmount: null,
|
|||
|
|
remainingAmount: 800000.00,
|
|||
|
|
settlementNotes: '尚未结清',
|
|||
|
|
createdBy: user.id
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
applicationNumber: 'APP2024004',
|
|||
|
|
contractNumber: 'LOAN2024004',
|
|||
|
|
productName: '肉羊养殖贷',
|
|||
|
|
customerName: '赵六',
|
|||
|
|
idType: 'ID_CARD',
|
|||
|
|
idNumber: '4404XXXXXXXXXXXXXX',
|
|||
|
|
assetType: '肉羊',
|
|||
|
|
assetQuantity: 300,
|
|||
|
|
totalRepaymentPeriods: 15,
|
|||
|
|
settlementStatus: 'settled',
|
|||
|
|
settlementDate: '2024-01-25',
|
|||
|
|
importTime: new Date('2024-01-25 16:45:00'),
|
|||
|
|
settlementAmount: 300000.00,
|
|||
|
|
remainingAmount: 0.00,
|
|||
|
|
settlementNotes: '贷款已全部结清',
|
|||
|
|
createdBy: user.id
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
applicationNumber: 'APP2024005',
|
|||
|
|
contractNumber: 'LOAN2024005',
|
|||
|
|
productName: '奶牛养殖贷',
|
|||
|
|
customerName: '孙七',
|
|||
|
|
idType: 'ID_CARD',
|
|||
|
|
idNumber: '4405XXXXXXXXXXXXXX',
|
|||
|
|
assetType: '奶牛',
|
|||
|
|
assetQuantity: 100,
|
|||
|
|
totalRepaymentPeriods: 36,
|
|||
|
|
settlementStatus: 'partial',
|
|||
|
|
settlementDate: '2024-01-30',
|
|||
|
|
importTime: new Date('2024-01-30 11:20:00'),
|
|||
|
|
settlementAmount: 200000.00,
|
|||
|
|
remainingAmount: 400000.00,
|
|||
|
|
settlementNotes: '部分结清,剩余40万待还',
|
|||
|
|
createdBy: user.id
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
applicationNumber: 'APP2024006',
|
|||
|
|
contractNumber: 'LOAN2024006',
|
|||
|
|
productName: '肉鸭养殖贷',
|
|||
|
|
customerName: '周八',
|
|||
|
|
idType: 'ID_CARD',
|
|||
|
|
idNumber: '4406XXXXXXXXXXXXXX',
|
|||
|
|
assetType: '肉鸭',
|
|||
|
|
assetQuantity: 5000,
|
|||
|
|
totalRepaymentPeriods: 12,
|
|||
|
|
settlementStatus: 'unsettled',
|
|||
|
|
settlementDate: null,
|
|||
|
|
importTime: new Date('2024-02-01 08:30:00'),
|
|||
|
|
settlementAmount: null,
|
|||
|
|
remainingAmount: 600000.00,
|
|||
|
|
settlementNotes: '尚未结清',
|
|||
|
|
createdBy: user.id
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
applicationNumber: 'APP2024007',
|
|||
|
|
contractNumber: 'LOAN2024007',
|
|||
|
|
productName: '肉鸡养殖贷',
|
|||
|
|
customerName: '吴九',
|
|||
|
|
idType: 'ID_CARD',
|
|||
|
|
idNumber: '4407XXXXXXXXXXXXXX',
|
|||
|
|
assetType: '肉鸡',
|
|||
|
|
assetQuantity: 15000,
|
|||
|
|
totalRepaymentPeriods: 9,
|
|||
|
|
settlementStatus: 'settled',
|
|||
|
|
settlementDate: '2024-02-05',
|
|||
|
|
importTime: new Date('2024-02-05 14:15:00'),
|
|||
|
|
settlementAmount: 400000.00,
|
|||
|
|
remainingAmount: 0.00,
|
|||
|
|
settlementNotes: '贷款已全部结清',
|
|||
|
|
createdBy: user.id
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
applicationNumber: 'APP2024008',
|
|||
|
|
contractNumber: 'LOAN2024008',
|
|||
|
|
productName: '肉猪养殖贷',
|
|||
|
|
customerName: '郑十',
|
|||
|
|
idType: 'ID_CARD',
|
|||
|
|
idNumber: '4408XXXXXXXXXXXXXX',
|
|||
|
|
assetType: '肉猪',
|
|||
|
|
assetQuantity: 800,
|
|||
|
|
totalRepaymentPeriods: 18,
|
|||
|
|
settlementStatus: 'partial',
|
|||
|
|
settlementDate: '2024-02-10',
|
|||
|
|
importTime: new Date('2024-02-10 10:00:00'),
|
|||
|
|
settlementAmount: 250000.00,
|
|||
|
|
remainingAmount: 350000.00,
|
|||
|
|
settlementNotes: '部分结清,剩余35万待还',
|
|||
|
|
createdBy: user.id
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
|
|||
|
|
// 检查是否已存在数据
|
|||
|
|
const existingCount = await CompletedSupervision.count()
|
|||
|
|
if (existingCount > 0) {
|
|||
|
|
console.log(`监管任务已结项表已有 ${existingCount} 条数据,跳过创建`)
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 批量创建监管任务已结项
|
|||
|
|
await CompletedSupervision.bulkCreate(completedSupervisions)
|
|||
|
|
|
|||
|
|
console.log(`✅ 成功创建 ${completedSupervisions.length} 条监管任务已结项测试数据`)
|
|||
|
|
|
|||
|
|
// 显示创建的数据
|
|||
|
|
const createdTasks = await CompletedSupervision.findAll({
|
|||
|
|
include: [
|
|||
|
|
{
|
|||
|
|
model: User,
|
|||
|
|
as: 'creator',
|
|||
|
|
attributes: ['id', 'username', 'real_name']
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
})
|
|||
|
|
|
|||
|
|
console.log('创建的监管任务已结项数据:')
|
|||
|
|
createdTasks.forEach((task, index) => {
|
|||
|
|
console.log(`${index + 1}. ${task.applicationNumber} - ${task.customerName} - ${task.settlementStatus}`)
|
|||
|
|
})
|
|||
|
|
|
|||
|
|
} catch (error) {
|
|||
|
|
console.error('创建监管任务已结项测试数据失败:', error)
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 如果直接运行此脚本
|
|||
|
|
if (require.main === module) {
|
|||
|
|
seedCompletedSupervisions()
|
|||
|
|
.then(() => {
|
|||
|
|
console.log('监管任务已结项测试数据创建完成')
|
|||
|
|
process.exit(0)
|
|||
|
|
})
|
|||
|
|
.catch((error) => {
|
|||
|
|
console.error('脚本执行失败:', error)
|
|||
|
|
process.exit(1)
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
module.exports = seedCompletedSupervisions
|