Sindbad~EG File Manager

Current Path : /home/infinitibizsol/irfarms.infinitibizsol.com/models/
Upload File :
Current File : /home/infinitibizsol/irfarms.infinitibizsol.com/models/customerModel.js

"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports["default"] = void 0;
var _mongoose = _interopRequireDefault(require("mongoose"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
var Customer = new _mongoose["default"].Schema({
  customer_type: {
    type: String,
    required: false
  },
  //[contractor,general]
  code: {
    type: String,
    required: false
  },
  name: {
    type: String,
    required: false,
    index: true
  },
  cnic: {
    type: String,
    required: false,
    index: true
  },
  contact_no: {
    type: String,
    required: false
  },
  image: {
    type: String,
    "default": ""
  },
  reference: {
    type: String,
    "default": ""
  },
  // they type reference name manually
  description: {
    type: String,
    "default": ""
  },
  address: {
    country: {
      type: String,
      "default": ""
    },
    province: {
      type: String,
      "default": ""
    },
    city: {
      type: String,
      "default": ""
    }
  },
  opening_type: {
    type: String,
    "enum": ["debit", "credit"],
    required: false
  },
  opening_balance: {
    //debit (k customer ki debit limit kitni ha)
    type: Number,
    required: false,
    "default": 0
  },
  debit_limit: {
    type: Number,
    required: false,
    "default": 0
  },
  opening_date: {
    type: Date,
    required: false,
    "default": Date.now
  },
  created_by: {
    type: _mongoose["default"].Schema.ObjectId,
    ref: "User"
  },
  store_id: {
    type: _mongoose["default"].Schema.ObjectId,
    ref: "Store"
  }
}, {
  timestamps: true
});

// Middleware to auto-populate refs with specific fields
function autoPopulateRefs(next) {
  this.populate({
    path: "created_by",
    select: "name _id"
  });
  next();
}
Customer.pre("find", autoPopulateRefs).pre("findOne", autoPopulateRefs);
var _default = exports["default"] = _mongoose["default"].model("Customer", Customer);

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists