UNPKG

@tomei/live-price

Version:

Tomei live-price Package

47 lines (38 loc) 1.55 kB
'use strict'; /** @type {import('sequelize-cli').Migration} */ module.exports = { async up(queryInterface, Sequelize) { const transaction = await queryInterface.sequelize.transaction(); try { // Add CompanyCode column to price_FeedManualPriceHistory table await queryInterface.addColumn('price_FeedManualPriceHistory', 'CompanyCode', { type: Sequelize.STRING(10), allowNull: true, defaultValue: 'CTH', comment: 'Company code for multi-company support' }, { transaction }); // Add composite index for better query performance await queryInterface.addIndex('price_FeedManualPriceHistory', { fields: ['FeedName', 'CompanyCode', 'Status'], name: 'idx_manual_price_history_feed_company_status' }, { transaction }); await transaction.commit(); } catch (error) { await transaction.rollback(); throw error; } }, async down(queryInterface, Sequelize) { const transaction = await queryInterface.sequelize.transaction(); try { // Remove index first await queryInterface.removeIndex('price_FeedManualPriceHistory', 'idx_manual_price_history_feed_company_status', { transaction }); // Remove CompanyCode column await queryInterface.removeColumn('price_FeedManualPriceHistory', 'CompanyCode', { transaction }); await transaction.commit(); } catch (error) { await transaction.rollback(); throw error; } } };