synt_backend
Version:
Synt light-weight node backend service
46 lines (45 loc) • 1.21 kB
JavaScript
const { Model } = require("sequelize");
module.exports = (sequelize, DataTypes) => {
class GeneralLedgerDefinition extends Model {
/**
* Helper method for defining associations.
* This method is not a part of Sequelize lifecycle.
* The `models/index` file will call this method automatically.
*/
static associate(models) {
// define association here
GeneralLedgerDefinition.hasMany(models.GeneralLedgerAccount);
}
}
GeneralLedgerDefinition.init(
{
code: DataTypes.INTEGER,
name: DataTypes.STRING,
description: DataTypes.STRING,
balance_side: DataTypes.ENUM("C", "D"),
balance_type: {
type: DataTypes.VIRTUAL,
get() {
// B: balansrekening + R: resultaatrekening
if (parseInt(this.code.toString()[0]) < 6) {
return "B";
} else {
return "R";
}
},
},
order_number: {
type: DataTypes.VIRTUAL,
get() {
return 0; // all def accounts are "hoofdrekening"
},
},
},
{
sequelize,
modelName: "GeneralLedgerDefinition",
}
);
return GeneralLedgerDefinition;
};
;