%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/opti/workflow/src/models/
Upload File :
Create Path :
Current File : /home/opti/workflow/src/models/invoice.js

'use strict';

module.exports = (sequelize, DataTypes) => {
  const Invoice = sequelize.define('Invoice', {
    invoiceTypeId: DataTypes.INTEGER,
    invoiceCategoryId: DataTypes.INTEGER,
    uuid: {
      type: DataTypes.UUID,
      defaultValue: DataTypes.UUIDV4
    },
    orgId: DataTypes.INTEGER,
    partyToId: DataTypes.INTEGER,
    partyFromId: DataTypes.INTEGER,
    roleTypeId: DataTypes.INTEGER,
    statusId: DataTypes.INTEGER,
    billingAccountId: DataTypes.INTEGER,
    invoiceDate: DataTypes.DATE,
    invoiceDate: DataTypes.DATE,
    amount: DataTypes.DECIMAL,
    balanceDue: DataTypes.DECIMAL,
    dueDate: DataTypes.DATE,
    paidDate: DataTypes.DATE,
    invoiceMessage: DataTypes.STRING,
    referenceNumber: DataTypes.STRING,
    number: DataTypes.INTEGER,
    description: DataTypes.TEXT,
    currencyId: DataTypes.INTEGER,
    termsId: DataTypes.INTEGER,
    draft: DataTypes.BOOLEAN,
    paymentApplication: DataTypes.INTEGER
  }, {});


  // Invoice.belongsTo(Person, {foreignKey: 'Id', targetKey: 'id', as: 'invoiceStatus'});



  Invoice.associate = function(models) {
    // associations can be defined here
    Invoice.belongsTo(models.InvoiceType, {foreignKey: 'invoiceTypeId', targetKey: 'id', as: 'invoiceType'});
    Invoice.belongsTo(models.Organization, {foreignKey: 'orgId', targetKey: 'id', as: 'organisation'});
    Invoice.hasMany(models.InvoiceHistory, {foreignKey: 'id', sourceKey: 'id', as: 'invoiceHistories'});
    Invoice.belongsTo(models.InvoiceStatus, {foreignKey: 'statusId', targetKey: 'id', as: 'invoiceStatus'});
    Invoice.belongsTo(models.Contact, {foreignKey: 'partyFromId', targetKey: 'id', as: 'contactFrom'});
    Invoice.belongsTo(models.Contact, {foreignKey: 'partyToId', targetKey: 'id', as: 'contactTo'});

    Invoice.hasMany(models.InvoiceItem, {foreignKey: 'invoiceId', as: 'invoiceItems'});

  };
  return Invoice;
};

Zerion Mini Shell 1.0