120 lines
2.2 KiB
JavaScript
120 lines
2.2 KiB
JavaScript
import mongoose, { Schema, model } from "mongoose";
|
|
|
|
const KycSchema = new Schema(
|
|
{
|
|
name: {
|
|
type: String,
|
|
required: true,
|
|
maxlength: [50, "Name cannot be more than 50 characters"],
|
|
},
|
|
trade_name: {
|
|
type: String,
|
|
required: true,
|
|
maxlength: [50, "Trade Name cannot be more than 50 characters"],
|
|
},
|
|
address: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
state: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
city: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
district: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
pincode: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
mobile_number: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
principal_distributer: {
|
|
type: Schema.Types.ObjectId,
|
|
ref: "User",
|
|
required: true,
|
|
},
|
|
pan_number: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
pan_img: {
|
|
type: Object,
|
|
required: true,
|
|
},
|
|
aadhar_number: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
aadhar_img: {
|
|
type: Object,
|
|
required: true,
|
|
},
|
|
gst_number: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
gst_img: {
|
|
type: Object,
|
|
required: true,
|
|
},
|
|
pesticide_license_img: {
|
|
type: Object,
|
|
required: true,
|
|
},
|
|
fertilizer_license_img: {
|
|
type: Object,
|
|
},
|
|
selfie_entrance_img: {
|
|
type: Object,
|
|
required: true,
|
|
},
|
|
status: {
|
|
type: String,
|
|
enum: ["new", "reject", "approved"],
|
|
default: "new",
|
|
},
|
|
rejection_reason: {
|
|
type: String,
|
|
},
|
|
|
|
addedBy: {
|
|
type: mongoose.Schema.Types.ObjectId,
|
|
refPath: "userType",
|
|
required: true,
|
|
},
|
|
userType: {
|
|
type: String,
|
|
required: true,
|
|
enum: ["SalesCoOrdinator", "TerritoryManager"],
|
|
},
|
|
notes: [
|
|
{
|
|
message: {
|
|
type: String,
|
|
default: "",
|
|
},
|
|
user: {
|
|
type: String,
|
|
enum: ["Principal Distributer", "Sales Co-ordinator"],
|
|
default: "Sales Co-ordinator",
|
|
},
|
|
replyDate: {
|
|
type: Date,
|
|
default: Date.now,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
{ timestamps: true }
|
|
);
|
|
|
|
export const KYC = model("KYC", KycSchema);
|