添加银行政府后端接口
This commit is contained in:
173
bank-backend/scripts/seed-employees.js
Normal file
173
bank-backend/scripts/seed-employees.js
Normal file
@@ -0,0 +1,173 @@
|
||||
const { sequelize, Employee } = require('../models');
|
||||
|
||||
/**
|
||||
* 添加员工测试数据
|
||||
*/
|
||||
async function seedEmployees() {
|
||||
try {
|
||||
console.log('开始添加员工测试数据...');
|
||||
|
||||
// 检查数据库连接
|
||||
await sequelize.authenticate();
|
||||
console.log('✅ 银行系统数据库连接成功');
|
||||
|
||||
// 清空现有员工数据
|
||||
await Employee.destroy({
|
||||
where: {},
|
||||
force: true
|
||||
});
|
||||
console.log('✅ 清空现有员工数据');
|
||||
|
||||
// 员工测试数据
|
||||
const employeesData = [
|
||||
{
|
||||
employeeNumber: 'EMP001',
|
||||
name: '刘超',
|
||||
phone: '15012341368',
|
||||
email: 'liuchao@bank.com',
|
||||
password: '123456',
|
||||
isLoanSpecialist: false,
|
||||
department: '风险管理部',
|
||||
position: '风险专员',
|
||||
status: 'active'
|
||||
},
|
||||
{
|
||||
employeeNumber: 'EMP002',
|
||||
name: '张明',
|
||||
phone: '13812345678',
|
||||
email: 'zhangming@bank.com',
|
||||
password: '123456',
|
||||
isLoanSpecialist: true,
|
||||
department: '信贷部',
|
||||
position: '贷款专员',
|
||||
status: 'active'
|
||||
},
|
||||
{
|
||||
employeeNumber: 'EMP003',
|
||||
name: '李红',
|
||||
phone: '13987654321',
|
||||
email: 'lihong@bank.com',
|
||||
password: '123456',
|
||||
isLoanSpecialist: true,
|
||||
department: '信贷部',
|
||||
position: '高级贷款专员',
|
||||
status: 'active'
|
||||
},
|
||||
{
|
||||
employeeNumber: 'EMP004',
|
||||
name: '王强',
|
||||
phone: '13611111111',
|
||||
email: 'wangqiang@bank.com',
|
||||
password: '123456',
|
||||
isLoanSpecialist: false,
|
||||
department: '运营部',
|
||||
position: '运营专员',
|
||||
status: 'active'
|
||||
},
|
||||
{
|
||||
employeeNumber: 'EMP005',
|
||||
name: '陈静',
|
||||
phone: '13722222222',
|
||||
email: 'chenjing@bank.com',
|
||||
password: '123456',
|
||||
isLoanSpecialist: true,
|
||||
department: '信贷部',
|
||||
position: '贷款专员',
|
||||
status: 'inactive'
|
||||
},
|
||||
{
|
||||
employeeNumber: 'EMP006',
|
||||
name: '赵磊',
|
||||
phone: '13833333333',
|
||||
email: 'zhaolei@bank.com',
|
||||
password: '123456',
|
||||
isLoanSpecialist: false,
|
||||
department: '技术部',
|
||||
position: '系统管理员',
|
||||
status: 'active'
|
||||
},
|
||||
{
|
||||
employeeNumber: 'EMP007',
|
||||
name: '孙丽',
|
||||
phone: '13944444444',
|
||||
email: 'sunli@bank.com',
|
||||
password: '123456',
|
||||
isLoanSpecialist: true,
|
||||
department: '信贷部',
|
||||
position: '贷款专员',
|
||||
status: 'locked'
|
||||
},
|
||||
{
|
||||
employeeNumber: 'EMP008',
|
||||
name: '周涛',
|
||||
phone: '13555555555',
|
||||
email: 'zhoutao@bank.com',
|
||||
password: '123456',
|
||||
isLoanSpecialist: false,
|
||||
department: '财务部',
|
||||
position: '财务专员',
|
||||
status: 'active'
|
||||
},
|
||||
{
|
||||
employeeNumber: 'EMP009',
|
||||
name: '吴敏',
|
||||
phone: '13466666666',
|
||||
email: 'wumin@bank.com',
|
||||
password: '123456',
|
||||
isLoanSpecialist: true,
|
||||
department: '信贷部',
|
||||
position: '贷款专员',
|
||||
status: 'active'
|
||||
},
|
||||
{
|
||||
employeeNumber: 'EMP010',
|
||||
name: '郑华',
|
||||
phone: '13377777777',
|
||||
email: 'zhenghua@bank.com',
|
||||
password: '123456',
|
||||
isLoanSpecialist: false,
|
||||
department: '人事部',
|
||||
position: '人事专员',
|
||||
status: 'active'
|
||||
}
|
||||
];
|
||||
|
||||
// 创建员工
|
||||
const employees = await Employee.bulkCreate(employeesData);
|
||||
console.log(`✅ 成功创建${employees.length}个员工`);
|
||||
|
||||
// 统计信息
|
||||
const activeCount = await Employee.count({ where: { status: 'active' } });
|
||||
const inactiveCount = await Employee.count({ where: { status: 'inactive' } });
|
||||
const lockedCount = await Employee.count({ where: { status: 'locked' } });
|
||||
const loanSpecialistCount = await Employee.count({ where: { isLoanSpecialist: true } });
|
||||
|
||||
console.log('\n📊 员工数据统计:');
|
||||
console.log(`- 活跃员工:${activeCount}个`);
|
||||
console.log(`- 停用员工:${inactiveCount}个`);
|
||||
console.log(`- 锁定员工:${lockedCount}个`);
|
||||
console.log(`- 贷款专员:${loanSpecialistCount}个`);
|
||||
console.log(`- 总员工数:${employees.length}个`);
|
||||
|
||||
console.log('\n🎉 员工测试数据添加完成!');
|
||||
|
||||
} catch (error) {
|
||||
console.error('❌ 添加员工测试数据失败:', error);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
|
||||
// 如果直接运行此脚本
|
||||
if (require.main === module) {
|
||||
seedEmployees()
|
||||
.then(() => {
|
||||
console.log('脚本执行完成');
|
||||
process.exit(0);
|
||||
})
|
||||
.catch((error) => {
|
||||
console.error('❌ 脚本执行失败:', error);
|
||||
process.exit(1);
|
||||
});
|
||||
}
|
||||
|
||||
module.exports = seedEmployees;
|
||||
Reference in New Issue
Block a user