125 lines
3.7 KiB
JavaScript
125 lines
3.7 KiB
JavaScript
const logger = require('../config/winston')
|
|
const sequelize = require('./index')
|
|
const bcrypt = require('bcrypt')
|
|
|
|
async function reset() {
|
|
logger.warn('Reset database...');
|
|
await sequelize.sync({ force: true });
|
|
logger.info('...Done');
|
|
logger.info('Populating with default value...');
|
|
await sequelize.models.preset_cut.bulkCreate([
|
|
{
|
|
name: "Wood, Plywood",
|
|
cut_speed: 500,
|
|
feed_by_tooth_more_1: 0.025,
|
|
feed_by_tooth_more_2: 0.03,
|
|
feed_by_tooth_more_3: 0.035,
|
|
feed_by_tooth_more_4: 0.06,
|
|
feed_by_tooth_more_5: 0.07,
|
|
feed_by_tooth_more_6: 0.09,
|
|
feed_by_tooth_more_8: 0.1,
|
|
},
|
|
{
|
|
name: "Hard Wood",
|
|
cut_speed: 450,
|
|
feed_by_tooth_more_1: 0.02,
|
|
feed_by_tooth_more_2: 0.025,
|
|
feed_by_tooth_more_3: 0.030,
|
|
feed_by_tooth_more_4: 0.055,
|
|
feed_by_tooth_more_5: 0.065,
|
|
feed_by_tooth_more_6: 0.085,
|
|
feed_by_tooth_more_8: 0.095,
|
|
},
|
|
{
|
|
name: "MDF",
|
|
cut_speed: 450,
|
|
feed_by_tooth_more_1: 0.050,
|
|
feed_by_tooth_more_2: 0.070,
|
|
feed_by_tooth_more_3: 0.100,
|
|
feed_by_tooth_more_4: 0.150,
|
|
feed_by_tooth_more_5: 0.200,
|
|
feed_by_tooth_more_6: 0.300,
|
|
feed_by_tooth_more_8: 0.400,
|
|
},
|
|
{
|
|
name: "Expanded PVC",
|
|
cut_speed: 300,
|
|
feed_by_tooth_more_1: 0.040,
|
|
feed_by_tooth_more_2: 0.060,
|
|
feed_by_tooth_more_3: 0.150,
|
|
feed_by_tooth_more_4: 0.200,
|
|
feed_by_tooth_more_5: 0.250,
|
|
feed_by_tooth_more_6: 0.350,
|
|
feed_by_tooth_more_8: 0.400,
|
|
},
|
|
{
|
|
name: "PMMA, PC, POM, ...",
|
|
cut_speed: 250,
|
|
feed_by_tooth_more_1: 0.015,
|
|
feed_by_tooth_more_2: 0.020,
|
|
feed_by_tooth_more_3: 0.025,
|
|
feed_by_tooth_more_4: 0.050,
|
|
feed_by_tooth_more_5: 0.060,
|
|
feed_by_tooth_more_6: 0.080,
|
|
feed_by_tooth_more_8: 0.090,
|
|
},
|
|
{
|
|
name: "Aluminum (2017A, 5083, ...) ",
|
|
cut_speed: 125,
|
|
feed_by_tooth_more_1: 0.010,
|
|
feed_by_tooth_more_2: 0.010,
|
|
feed_by_tooth_more_3: 0.010,
|
|
feed_by_tooth_more_4: 0.015,
|
|
feed_by_tooth_more_5: 0.015,
|
|
feed_by_tooth_more_6: 0.020,
|
|
feed_by_tooth_more_8: 0.030,
|
|
}
|
|
]);
|
|
await sequelize.models.preset_step_down_factor.bulkCreate([
|
|
{
|
|
name: "Soft",
|
|
k_less_2: 0.5,
|
|
k_more_2: 0.5,
|
|
k_more_3: 0.8,
|
|
k_more_4: 1,
|
|
k_more_5: 1,
|
|
k_more_6: 1
|
|
},
|
|
{
|
|
name: "Hard (Nonferrous) ",
|
|
k_less_2: 0.2,
|
|
k_more_2: 0.2,
|
|
k_more_3: 0.4,
|
|
k_more_4: 0.5,
|
|
k_more_5: 0.6,
|
|
k_more_6: 1
|
|
},
|
|
{
|
|
name: "Aluminium",
|
|
k_less_2: 0.1,
|
|
k_more_2: 0.1,
|
|
k_more_3: 0.2,
|
|
k_more_4: 0.25,
|
|
k_more_5: 0.35,
|
|
k_more_6: 0.35
|
|
},
|
|
])
|
|
await sequelize.models.user.create({username: "admin", password: bcrypt.hashSync("love_cnc", 10), is_admin: true} )
|
|
await sequelize.models.need_init.create({name: 'init'})
|
|
|
|
logger.info('...Done')
|
|
}
|
|
|
|
async function check_database() {
|
|
await sequelize.sync({alter: true});
|
|
let val = await sequelize.models.need_init.findAll({where: {name: 'init'}});
|
|
if(val.length === 0){
|
|
logger.info('Need init !');
|
|
await reset();
|
|
logger.info('Done')
|
|
}
|
|
|
|
}
|
|
|
|
exports.check_database = check_database;
|