const Sequelize = require('sequelize');
module.exports = function(sequelize, DataTypes) {
  return sequelize.define('product', {
    id: {
      autoIncrement: true,
      type: DataTypes.INTEGER.UNSIGNED,
      allowNull: false,
      primaryKey: true
    },
    code: {
      type: DataTypes.STRING(9),
      allowNull: false,
      unique: "UX_product_code"
    },
    name: {
      type: DataTypes.STRING(90),
      allowNull: false
    },
    category: {
      type: DataTypes.STRING(28),
      allowNull: false
    },
    brand: {
      type: DataTypes.STRING(28),
      allowNull: true
    },
    type: {
      type: DataTypes.STRING(21),
      allowNull: true
    },
    description: {
      type: DataTypes.STRING(180),
      allowNull: true
    }
  }, {
    sequelize,
    tableName: 'product',
    timestamps: true,
    indexes: [
      {
        name: "PRIMARY",
        unique: true,
        using: "BTREE",
        fields: [
          { name: "id" },
        ]
      },
      {
        name: "UX_product_code",
        unique: true,
        using: "BTREE",
        fields: [
          { name: "code" },
        ]
      },
    ]
  });
};