merging susee

This commit is contained in:
suseendhiran17 2022-03-09 10:02:51 +05:30
commit b765aa43dc
10 changed files with 1275 additions and 133 deletions

View File

@ -1,8 +1,10 @@
const { sequelize , EntityDetails , ApplicantsDetails , ApplicantsRelationship , ResidenceAddressDetails , PropertyOwnershipIncomeConsidered} = require('../models') const { sequelize , LoanDetail , EntityDetails , ApplicantsDetails , ApplicantsRelationship , ResidenceAddressDetails , PropertyOwnershipIncomeConsidered , DueDiligenceCheck , TradeReferences} = require('../models')
const { logMsg } = require('../services/logger.js'); const { logMsg } = require('../services/logger.js');
//create EntityDetails Api
exports.createEntityDetails = async (req, res) => exports.createEntityDetails = async (req, res) =>
{ {
try try
@ -24,6 +26,32 @@ exports.createEntityDetails = async (req, res) =>
}; };
//update Entity Details Api
exports.updateEntityDetails = async (req, res) =>
{
try
{
id = req.body.id;
delete req.body.id;
// update check value
EntityDetails.update(req.body,{ where: { id: id }}).then(data =>
{
res.send({'status':200,'message':"success",'data':data});
})
.catch(err => {
res.send({'status':404,
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
});
} catch(err) {
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch
};
//create Applicant Details with ResidenceAddress & ApplicantRelationship & PropertyOwnership Details (or) Applicant Details with PropertyOwnership Details
exports.createApplicantDetails = async (req, res) => exports.createApplicantDetails = async (req, res) =>
{ {
try try
@ -34,25 +62,29 @@ exports.createApplicantDetails = async (req, res) =>
delete req.body.applicant_relationship delete req.body.applicant_relationship
delete req.body.residence_address delete req.body.residence_address
delete req.body.property_ownership_income_considered ; delete req.body.property_ownership_income_considered ;
await ApplicantsDetails.create(req.body).then(async (data) => await ApplicantsDetails.create(req.body).then(async (data) =>
{ {
if(req.body.entity_type == "Individual") if(req.body.entity_type == "Individual")
{ {
ApplicantsRelationshipData = Object.assign(ApplicantsRelationshipData, {loan_no_id: req.body.loan_no_id});
ApplicantsRelationshipData = Object.assign(ApplicantsRelationshipData, {applicant_id: data.dataValues.id}); ApplicantsRelationshipData = Object.assign(ApplicantsRelationshipData, {applicant_id: data.dataValues.id});
await ApplicantsRelationship.create(ApplicantsRelationshipData) await ApplicantsRelationship.create(ApplicantsRelationshipData)
.then(data=>{logMsg.info("ApplicantsRelationship inserted");}).catch(err=>{logMsg.info("ApplicantsRelationship Failed , Msg :" +err);}); .then(data=>{logMsg.info("ApplicantsRelationship inserted");}).catch(err=>{logMsg.info("ApplicantsRelationship Failed , Msg :" +err);});
ResidenceAddressDetailsData = Object.assign(ResidenceAddressDetailsData, {loan_no_id: req.body.loan_no_id});
ResidenceAddressDetailsData = Object.assign(ResidenceAddressDetailsData, {applicant_id: data.dataValues.id}); ResidenceAddressDetailsData = Object.assign(ResidenceAddressDetailsData, {applicant_id: data.dataValues.id});
await ResidenceAddressDetails.create(ResidenceAddressDetailsData) await ResidenceAddressDetails.create(ResidenceAddressDetailsData)
.then(data=>{logMsg.info("ResidenceAddressDetails inserted");}).catch(err=>{logMsg.info("ResidenceAddressDetails Failed , Msg :" +err);}); .then(data=>{logMsg.info("ResidenceAddressDetails inserted");}).catch(err=>{logMsg.info("ResidenceAddressDetails Failed , Msg :" +err);});
PropertyOwnershipIncomeConsideredData = Object.assign(PropertyOwnershipIncomeConsideredData, {loan_no_id: req.body.loan_no_id});
PropertyOwnershipIncomeConsideredData = Object.assign(PropertyOwnershipIncomeConsideredData, {applicant_id: data.dataValues.id}); PropertyOwnershipIncomeConsideredData = Object.assign(PropertyOwnershipIncomeConsideredData, {applicant_id: data.dataValues.id});
await PropertyOwnershipIncomeConsidered.create(PropertyOwnershipIncomeConsideredData) await PropertyOwnershipIncomeConsidered.create(PropertyOwnershipIncomeConsideredData)
.then(data=>{logMsg.info("PropertyOwnershipIncomeConsidered inserted");}).catch(err=>{logMsg.info("PropertyOwnershipIncomeConsidered Failed , Msg :" +err);}); .then(data=>{logMsg.info("PropertyOwnershipIncomeConsidered inserted");}).catch(err=>{logMsg.info("PropertyOwnershipIncomeConsidered Failed , Msg :" +err);});
} }
else { else
{
PropertyOwnershipIncomeConsideredData = Object.assign(PropertyOwnershipIncomeConsideredData, {loan_no_id: req.body.loan_no_id});
PropertyOwnershipIncomeConsideredData = Object.assign(PropertyOwnershipIncomeConsideredData, {applicant_id: data.dataValues.id}); PropertyOwnershipIncomeConsideredData = Object.assign(PropertyOwnershipIncomeConsideredData, {applicant_id: data.dataValues.id});
await PropertyOwnershipIncomeConsidered.create(PropertyOwnershipIncomeConsideredData) await PropertyOwnershipIncomeConsidered.create(PropertyOwnershipIncomeConsideredData)
.then(data=>{logMsg.info("PropertyOwnershipIncomeConsidered inserted");}).catch(err=>{logMsg.info("PropertyOwnershipIncomeConsidered Failed , Msg :" +err);}); .then(data=>{logMsg.info("PropertyOwnershipIncomeConsidered inserted");}).catch(err=>{logMsg.info("PropertyOwnershipIncomeConsidered Failed , Msg :" +err);});
@ -74,13 +106,236 @@ exports.createApplicantDetails = async (req, res) =>
}; };
//update ApplicantDetails
exports.updateApplicantDetails = async (req, res) =>
{
try
{
id = req.body.id;
delete req.body.id;
ApplicantsDetails.update(req.body,{ where: { id: id }}).then(data =>
{
res.send({'status':200,'message':"success",'data':data});
})
.catch(err => {
res.send({'status':404,
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
});
} catch(err) {
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch
};
//update ApplicantsRelationship Api (Deactivate old value create new record)
exports.updateApplicantsRelationship = async (req, res) =>
{
try
{
id = req.body.id;
updatedby = req.body.updatedby;
delete req.body.id;
delete req.body.updatedby;
// update old value is_active = 0 where requested id
await ApplicantsRelationship.update({ updatedby : updatedby ,is_active : 0 },{ where: { id: id }});
// create new entry
ApplicantsRelationship.create(req.body).then(data =>
{
res.send({'status':200,'message':"success",'data':data});
})
.catch(err => {
res.send({'status':404,
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
});
} catch(err) {
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch
}
//update ResidenceAddressDetails Api (Deactivate old value create new record)
exports.updateResidenceAddressDetails = async (req, res) =>
{
try
{
id = req.body.id;
updatedby = req.body.updatedby;
delete req.body.id;
delete req.body.updatedby;
// update old value is_active = 0 where requested id
await ResidenceAddressDetails.update({ updatedby : updatedby ,is_active : 0 },{ where: { id: id }});
// create new entry
ResidenceAddressDetails.create(req.body).then(data =>
{
res.send({'status':200,'message':"success",'data':data});
})
.catch(err => {
res.send({'status':404,
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
});
} catch(err) {
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch
}
//update PropertyOwnership and IncomeConsidered data Api (Deactivate old value create new record)
exports.updatePropertyOwnershipIncomeConsidered = async (req, res) =>
{
try
{
id = req.body.id;
updatedby = req.body.updatedby;
delete req.body.id;
delete req.body.updatedby;
// update old value is_active = 0 where requested id
await PropertyOwnershipIncomeConsidered.update({ updatedby : updatedby ,is_active : 0 },{ where: { id: id }});
// create new entry
PropertyOwnershipIncomeConsidered.create(req.body).then(data =>
{
res.send({'status':200,'message':"success",'data':data});
})
.catch(err => {
res.send({'status':404,
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
});
} catch(err) {
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch
}
//create TradeReferencesDetails Api
exports.createTradeReferencesDetails = async (req, res) =>
{
try
{
TradeReferences.create(req.body).then(data =>
{
res.send({'status':200,'message':"success",'data':data});
})
.catch(err => {
res.send({'status':404,
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
});
} catch(err) {
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch
};
//update TradeReferencesDetails Api (Deactivate old value create new record)
exports.updateTradeReferencesDetails = async (req, res) =>
{
try
{
id = req.body.id;
updatedby = req.body.updatedby;
delete req.body.id;
delete req.body.updatedby;
// update old value is_active = 0 where requested id
await TradeReferences.update({ updatedby : updatedby ,is_active : 0 },{ where: { id: id }});
// create new entry
TradeReferences.create(req.body).then(data =>
{
res.send({'status':200,'message':"success",'data':data});
})
.catch(err => {
res.send({'status':404,
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
});
} catch(err) {
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch
};
//update DueDiligenceCheck Api
exports.updateDueDiligenceCheck = async (req, res) =>
{
try
{
id = req.body.id;
delete req.body.id;
// update value
DueDiligenceCheck.update(req.body,{ where: { id: id }}).then(data =>
{
res.send({'status':200,'message':"success",'data':data});
})
.catch(err => {
res.send({'status':404,
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
});
} catch(err) {
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch
};
//LoanNumberDetails List Api
exports.LoanNumberDetailsList = async (req, res) =>
{
try
{
LoanDetail.findAll({raw: true , where : {is_active : 1}}).then(data =>
{
if(data.length > 0)
{
res.send({'status':200,'message':"success",'data':data});
}
else {
res.send({'status':404,'message':"failed",'data':"No data"});
}
})
.catch(err => {
res.send({'status':404,
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
});
} catch(err) {
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch
};
//EntityDetails List Api
exports.EntityDetailsList = async (req, res) => exports.EntityDetailsList = async (req, res) =>
{ {
try try
{ {
EntityDetails.findAll({where:{loan_no_id : req.query.loan_no_id}}).then(data => EntityDetails.findAll({raw: true ,where:{loan_no_id : req.query.loan_no_id , is_active : 1}}).then(data =>
{ {
res.send({'status':200,'message':"success",'data':data}); if(data.length > 0)
{
res.send({'status':200,'message':"success",'data':data});
}
else {
res.send({'status':404,'message':"failed",'data':"No data"});
}
}) })
.catch(err => { .catch(err => {
@ -94,13 +349,21 @@ exports.EntityDetailsList = async (req, res) =>
}; };
//ApplicantDetails List Api
exports.ApplicantDetailsList = async (req, res) => exports.ApplicantDetailsList = async (req, res) =>
{ {
try try
{ {
ApplicantsDetails.findAll({where:{loan_no_id : req.query.loan_no_id}}).then(data => ApplicantsDetails.findAll({raw: true , where:{loan_no_id : req.query.loan_no_id , is_active : 1}}).then(data =>
{ {
res.send({'status':200,'message':"success",'data':data}); if(data.length > 0)
{
res.send({'status':200,'message':"success",'data':data});
}
else {
res.send({'status':404,'message':"failed",'data':"No data"});
}
}) })
.catch(err => { .catch(err => {
@ -114,13 +377,21 @@ exports.ApplicantDetailsList = async (req, res) =>
}; };
//ApplicantRelationship List Api
exports.ApplicantRelationshipList = async (req, res) => exports.ApplicantRelationshipList = async (req, res) =>
{ {
try try
{ {
ApplicantsRelationship.findAll({where:{loan_no_id : req.query.loan_no_id }}).then(data => ApplicantsRelationship.findAll({raw: true , where:{loan_no_id : req.query.loan_no_id , is_active : 1 }}).then(data =>
{ {
res.send({'status':200,'message':"success",'data':data}); if(data.length > 0)
{
res.send({'status':200,'message':"success",'data':data});
}
else {
res.send({'status':404,'message':"failed",'data':"No data"});
}
}) })
.catch(err => { .catch(err => {
@ -134,13 +405,21 @@ exports.ApplicantRelationshipList = async (req, res) =>
}; };
//ResidenceAddressDetails List Api
exports.ResidenceAddressDetailsList = async (req, res) => exports.ResidenceAddressDetailsList = async (req, res) =>
{ {
try try
{ {
ResidenceAddressDetails.findAll({where:{loan_no_id : req.query.loan_no_id }}).then(data => ResidenceAddressDetails.findAll({raw: true , where:{loan_no_id : req.query.loan_no_id , is_active : 1}}).then(data =>
{ {
res.send({'status':200,'message':"success",'data':data}); if(data.length > 0)
{
res.send({'status':200,'message':"success",'data':data});
}
else {
res.send({'status':404,'message':"failed",'data':"No data"});
}
}) })
.catch(err => { .catch(err => {
@ -154,13 +433,21 @@ exports.ResidenceAddressDetailsList = async (req, res) =>
}; };
//PropertyOwnership List Api
exports.PropertyOwnershipList = async (req, res) => exports.PropertyOwnershipList = async (req, res) =>
{ {
try try
{ {
PropertyOwnershipIncomeConsidered.findAll({where:{loan_no_id : req.query.loan_no_id }}).then(data => PropertyOwnershipIncomeConsidered.findAll({raw: true , where:{loan_no_id : req.query.loan_no_id , is_active : 1 }}).then(data =>
{ {
res.send({'status':200,'message':"success",'data':data}); if(data.length > 0)
{
res.send({'status':200,'message':"success",'data':data});
}
else {
res.send({'status':404,'message':"failed",'data':"No data"});
}
}) })
.catch(err => { .catch(err => {
@ -172,4 +459,61 @@ exports.PropertyOwnershipList = async (req, res) =>
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" }); res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch } //end of try catch
}; };
//DueDiligenceCheck List Api
exports.DueDiligenceCheckList = async (req, res) =>
{
try
{
DueDiligenceCheck.findAll({raw: true , where : {entity_id : req.query.entity_id , is_active : 1}}).then(data =>
{
if(data.length > 0)
{
res.send({'status':200,'message':"success",'data':data});
}
else {
res.send({'status':404,'message':"failed",'data':"No data"});
}
})
.catch(err => {
res.send({'status':404,
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
});
} catch(err) {
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch
};
//TradeReferences List Api
exports.TradeReferencesList = async (req, res) =>
{
try
{
TradeReferences.findAll({raw: true , where : {entity_id : req.query.entity_id , is_active : 1}}).then(data =>
{
if(data.length > 0)
{
res.send({'status':200,'message':"success",'data':data});
}
else {
res.send({'status':404,'message':"failed",'data':"No data"});
}
})
.catch(err => {
res.send({'status':404,
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
});
} catch(err) {
res.send({'status':404,message: err.message || "Some error occurred while inserting statements." ,'data': "No data" });
} //end of try catch
};

View File

@ -27,6 +27,7 @@ module.exports = (sequelize, DataTypes) => {
bureau_score: { type: DataTypes.STRING }, bureau_score: { type: DataTypes.STRING },
heir_in_business_and_on_loan_struct: { type: DataTypes.STRING }, heir_in_business_and_on_loan_struct: { type: DataTypes.STRING },
nri: { type: DataTypes.STRING }, nri: { type: DataTypes.STRING },
is_active : { type: DataTypes.INTEGER },
createdby: { type: DataTypes.INTEGER }, createdby: { type: DataTypes.INTEGER },
updatedby: { type: DataTypes.INTEGER }, updatedby: { type: DataTypes.INTEGER },

View File

@ -19,6 +19,7 @@ module.exports = (sequelize, DataTypes) => {
age: { type: DataTypes.INTEGER }, age: { type: DataTypes.INTEGER },
gender: { type: DataTypes.STRING }, gender: { type: DataTypes.STRING },
remarks: { type: DataTypes.STRING }, remarks: { type: DataTypes.STRING },
is_active : { type: DataTypes.INTEGER },
createdBy: { type: DataTypes.INTEGER }, createdBy: { type: DataTypes.INTEGER },
updatedBy: { type: DataTypes.INTEGER }, updatedBy: { type: DataTypes.INTEGER },

View File

@ -6,9 +6,15 @@ module.exports = (sequelize, DataTypes) => {
} }
DueDiligenceCheck.init( DueDiligenceCheck.init(
{ {
entity_id: { type: DataTypes.INTEGER },
check_type_id: { type: DataTypes.INTEGER },
check_type: { type: DataTypes.STRING }, check_type: { type: DataTypes.STRING },
check_result: { type: DataTypes.STRING }, check_result: { type: DataTypes.STRING },
remarks: { type: DataTypes.STRING } remarks: { type: DataTypes.STRING },
createdby: { type: DataTypes.INTEGER },
updatedby: { type: DataTypes.INTEGER },
is_active: {type : DataTypes.INTEGER}
}, },
{ {
sequelize, sequelize,

View File

@ -53,6 +53,7 @@ module.exports = (sequelize, DataTypes) => {
remark_on_change__in_directorship: { type: DataTypes.STRING }, remark_on_change__in_directorship: { type: DataTypes.STRING },
createdby: { type: DataTypes.INTEGER }, createdby: { type: DataTypes.INTEGER },
updatedby: { type: DataTypes.INTEGER }, updatedby: { type: DataTypes.INTEGER },
is_active: {type : DataTypes.INTEGER}
}, },
{ {

View File

@ -23,11 +23,14 @@ module.exports = (sequelize, DataTypes) => {
rate_of_interest_per_annum: { type: DataTypes.INTEGER }, rate_of_interest_per_annum: { type: DataTypes.INTEGER },
emi_per_lac_of_loan: { type: DataTypes.INTEGER }, emi_per_lac_of_loan: { type: DataTypes.INTEGER },
purpose_of_loan: { type: DataTypes.INTEGER }, purpose_of_loan: { type: DataTypes.INTEGER },
emi_of_loan_applied_for: { type: DataTypes.INTEGER } emi_of_loan_applied_for: { type: DataTypes.INTEGER },
createdby: { type: DataTypes.INTEGER },
updatedby: { type: DataTypes.INTEGER },
is_active: {type : DataTypes.INTEGER}
}, },
{ {
sequelize, sequelize,
tableName: 'load_details', tableName: 'loan_details',
modelName: 'LoanDetail', modelName: 'LoanDetail',
} }
) )

View File

@ -12,6 +12,7 @@ module.exports = (sequelize, DataTypes) => {
applicant_type: { type: DataTypes.STRING }, applicant_type: { type: DataTypes.STRING },
income_considered: { type: DataTypes.STRING }, income_considered: { type: DataTypes.STRING },
property_owner: { type: DataTypes.STRING }, property_owner: { type: DataTypes.STRING },
is_active : { type: DataTypes.INTEGER },
createdby: { type: DataTypes.INTEGER }, createdby: { type: DataTypes.INTEGER },
updatedby: { type: DataTypes.INTEGER }, updatedby: { type: DataTypes.INTEGER },
}, },

View File

@ -25,6 +25,7 @@ module.exports = (sequelize, DataTypes) => {
ownership_status: { type: DataTypes.STRING }, ownership_status: { type: DataTypes.STRING },
residence_stay_period_in_years: { type: DataTypes.INTEGER }, residence_stay_period_in_years: { type: DataTypes.INTEGER },
residence_stay_period_in_bracket: { type: DataTypes.STRING }, residence_stay_period_in_bracket: { type: DataTypes.STRING },
is_active : { type: DataTypes.INTEGER },
remarks: { type: DataTypes.STRING }, remarks: { type: DataTypes.STRING },
createdby: { type: DataTypes.INTEGER }, createdby: { type: DataTypes.INTEGER },
updatedby: { type: DataTypes.INTEGER }, updatedby: { type: DataTypes.INTEGER },

View File

@ -0,0 +1,28 @@
'use strict'
const { Model } = require('sequelize')
module.exports = (sequelize, DataTypes) => {
class TradeReferences extends Model {
}
TradeReferences.init(
{
entity_id: { type: DataTypes.INTEGER },
name: { type: DataTypes.STRING },
contact: { type: DataTypes.INTEGER },
feedback: { type: DataTypes.STRING },
feedback_result: { type: DataTypes.STRING },
createdby: { type: DataTypes.INTEGER },
updatedby: { type: DataTypes.INTEGER },
is_active: {type : DataTypes.INTEGER},
},
{
sequelize,
tableName: 'trade_references',
modelName: 'TradeReferences',
}
)
return TradeReferences
}

File diff suppressed because it is too large Load Diff