shadowsocks-manager
Version:
A shadowsocks manager tool for multi user and traffic control.
37 lines (30 loc) • 956 B
JavaScript
;
const knex = appRequire('init/knex').knex;
const tableName = 'saveFlowHour';
const createTable = async () => {
const exist = await knex.schema.hasTable(tableName);
if (exist) {
await knex.schema.table(tableName, function (table) {
table.index('id');
table.index('accountId');
});
const hasColumnAccountId = await knex.schema.hasColumn(tableName, 'accountId');
if (!hasColumnAccountId) {
await knex.schema.table(tableName, function (table) {
table.integer('accountId').defaultTo(0);
});
}
return;
}
return knex.schema.createTableIfNotExists(tableName, function (table) {
table.integer('id');
table.integer('accountId').defaultTo(0);
table.integer('port');
table.bigInteger('flow');
table.bigInteger('time');
table.index(['time', 'port'], 'hourIndex');
table.index('id');
table.index('accountId');
});
};
exports.createTable = createTable;