|  |  | @ -2,12 +2,14 @@ | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | module.exports = { |  |  |  | module.exports = { | 
			
		
	
		
		
			
				
					
					|  |  |  |   up: async (queryInterface, Sequelize) => { |  |  |  |   up: async (queryInterface, Sequelize) => { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     await queryInterface.dropTable('Invoices', { cascade: true }); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     await queryInterface.createTable('Invoices', { |  |  |  |     await queryInterface.createTable('Invoices', { | 
			
		
	
		
		
			
				
					
					|  |  |  |       id: { |  |  |  |       id: { | 
			
		
	
		
		
			
				
					
					|  |  |  |         type: Sequelize.INTEGER, |  |  |  |         type: Sequelize.INTEGER, | 
			
		
	
		
		
			
				
					
					|  |  |  |         allowNull: false, |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |         autoIncrement: true, |  |  |  |         autoIncrement: true, | 
			
		
	
		
		
			
				
					
					|  |  |  |         primaryKey: true, |  |  |  |         primaryKey: true, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         allowNull: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |       }, |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |       userId: { |  |  |  |       userId: { | 
			
		
	
		
		
			
				
					
					|  |  |  |         type: Sequelize.INTEGER, |  |  |  |         type: Sequelize.INTEGER, | 
			
		
	
	
		
		
			
				
					|  |  | @ -18,36 +20,58 @@ module.exports = { | 
			
		
	
		
		
			
				
					
					|  |  |  |         }, |  |  |  |         }, | 
			
		
	
		
		
			
				
					
					|  |  |  |         onDelete: 'CASCADE', |  |  |  |         onDelete: 'CASCADE', | 
			
		
	
		
		
			
				
					
					|  |  |  |       }, |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       firstName: { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         type: Sequelize.STRING, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         allowNull: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       lastName: { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         type: Sequelize.STRING, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         allowNull: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       phoneNumber: { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         type: Sequelize.STRING, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         allowNull: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       email: { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         type: Sequelize.STRING, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         allowNull: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         unique: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |       totalAmount: { |  |  |  |       totalAmount: { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         type: Sequelize.FLOAT, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         allowNull: true, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       productId: { | 
			
		
	
		
		
			
				
					
					|  |  |  |         type: Sequelize.INTEGER, |  |  |  |         type: Sequelize.INTEGER, | 
			
		
	
		
		
			
				
					
					|  |  |  |         allowNull: false, |  |  |  |         allowNull: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |       }, |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |       products: { |  |  |  |       quantity: { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |         type: Sequelize.JSON, 
 |  |  |  |         type: Sequelize.INTEGER, | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |         allowNull: false, |  |  |  |         allowNull: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |       }, |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |       paymentStatus: { |  |  |  |       price: { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |         type: Sequelize.STRING, |  |  |  |         type: Sequelize.DECIMAL(10, 2), | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |         allowNull: false, |  |  |  |         allowNull: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |       }, |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |       refId: { |  |  |  |       productName: { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |         type: Sequelize.STRING, |  |  |  |         type: Sequelize.STRING, | 
			
		
	
		
		
			
				
					
					|  |  |  |         allowNull: false, |  |  |  |         allowNull: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |       }, |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |       createdAt: { |  |  |  |       createdAt: { | 
			
		
	
		
		
			
				
					
					|  |  |  |         type: Sequelize.DATE, |  |  |  |         type: Sequelize.DATE, | 
			
		
	
		
		
			
				
					
					|  |  |  |         allowNull: false, |  |  |  |         allowNull: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |         defaultValue: Sequelize.NOW, |  |  |  |         defaultValue: Sequelize.fn('NOW'), | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |       }, |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |       updatedAt: { |  |  |  |       updatedAt: { | 
			
		
	
		
		
			
				
					
					|  |  |  |         type: Sequelize.DATE, |  |  |  |         type: Sequelize.DATE, | 
			
		
	
		
		
			
				
					
					|  |  |  |         allowNull: false, |  |  |  |         allowNull: false, | 
			
		
	
		
		
			
				
					
					|  |  |  |         defaultValue: Sequelize.NOW, |  |  |  |         defaultValue: Sequelize.fn('NOW'), | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |       }, |  |  |  |       }, | 
			
		
	
		
		
			
				
					
					|  |  |  |     }); |  |  |  |     }); | 
			
		
	
		
		
			
				
					
					|  |  |  |   }, |  |  |  |   }, | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |   down: async (queryInterface, Sequelize) => { |  |  |  |   down: async (queryInterface, Sequelize) => { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     await queryInterface.dropTable('Invoices'); |  |  |  |     await queryInterface.dropTable('Invoices'); | 
			
		
	
		
		
			
				
					
					|  |  |  |   }, |  |  |  |   }, | 
			
		
	
		
		
			
				
					
					|  |  |  | }; |  |  |  | }; | 
			
		
	
	
		
		
			
				
					|  |  | 
 |