susee
This commit is contained in:
parent
0951526f88
commit
12b0084d9a
@ -1,4 +1,4 @@
|
||||
const { sequelize , LoanDetail , EntityDetails , ApplicantsDetails , ApplicantsRelationship , ResidenceAddressDetails , PropertyOwnershipIncomeConsidered , DueDiligenceCheck , TradeReferences , CheckTypeMaster , EnquiriesAndDisbursements , PropertyAndLtv , ATNWrelatedInputs , SalesPD , ATNWrelatedInputMaster ,ATNWrelationship , OtherParameterMaster ,OtherParameterMasterValue , OtherParameterRelationship , OtherParameters } = require('../models')
|
||||
const { sequelize , LoanDetail , EntityDetails , ApplicantsDetails , ApplicantsRelationship , ResidenceAddressDetails , PropertyOwnershipIncomeConsidered , DueDiligenceCheck , TradeReferences , CheckTypeMaster , EnquiriesAndDisbursements , PropertyAndLtv , ATNWrelatedInputs , SalesPD , ATNWrelatedInputMaster ,ATNWrelationship , OtherParameterMaster ,OtherParameterMasterValue , OtherParameterRelationship , OtherParameters , ATNErelatedInputSubVal } = require('../models')
|
||||
const { logMsg } = require('../services/logger.js');
|
||||
|
||||
|
||||
@ -35,21 +35,43 @@ exports.createEntityDetails = async (req, res) =>
|
||||
{
|
||||
entityid = data.dataValues.id;
|
||||
ATNWrelatedInputMasterData_arr = [];
|
||||
ATNWrelatedInputMasterData_arr_val = [];
|
||||
for (const value of ATNWrelatedInputMasterData)
|
||||
{
|
||||
atnw_master_data = {entity_id:entityid , atnw_related_input_id:value.id , atnw_related_input:value.master_name};
|
||||
ATNWrelatedInputMasterData_arr.push(atnw_master_data);
|
||||
if ( value.id == 9 || value.id == 10 )
|
||||
{
|
||||
atnw_master_value_data = { atnw_related_input :value.master_name };
|
||||
ATNWrelatedInputMasterData_arr_val.push(atnw_master_value_data);
|
||||
}
|
||||
else
|
||||
{
|
||||
atnw_master_data = {entity_id:entityid , atnw_related_input_id:value.id , atnw_related_input:value.master_name};
|
||||
ATNWrelatedInputMasterData_arr.push(atnw_master_data);
|
||||
}
|
||||
}
|
||||
setTimeout(() => {
|
||||
ATNWrelatedInputs.bulkCreate(ATNWrelatedInputMasterData_arr)
|
||||
.then(ATNWrelatedInputMasterData_arr =>{ logMsg.info("ATNWrelatedInputs Data Creation Success for EntityId= "+entityid); })
|
||||
.then(ATNWrelatedInputMasterData_arr =>
|
||||
{
|
||||
ATNWrelatedInputMasterData_arr.forEach( async (atnw_element) => {
|
||||
if (atnw_element.atnw_related_input_id == 8) {
|
||||
ATNWrelatedInputMasterData_arr_val.forEach( async (atnw_related_input_id_element) => {
|
||||
Object.assign( atnw_related_input_id_element, { master_id : atnw_element.id });
|
||||
ATNErelatedInputSubVal.create(atnw_related_input_id_element).then(data => {
|
||||
logMsg.info("ATNWrelatedInputs_subValue Data Creation Success for EntityId= "+entityid);
|
||||
})
|
||||
});
|
||||
}
|
||||
});
|
||||
logMsg.info("ATNWrelatedInputs Data Creation Success for EntityId= "+entityid);
|
||||
})
|
||||
.catch(err =>{ logMsg.info("ATNWrelatedInputs Data Creation Failed for EntityId= "+entityid+" Error= "+err); });
|
||||
}, 500);
|
||||
})
|
||||
.catch(err => { logMsg.info("ATNWrelatedInputs Data Fetching Failed for EntityId= "+entityid+" Error= "+err); });
|
||||
|
||||
|
||||
|
||||
// delete from atnw_related_inputs where entity_id = 2
|
||||
// otherParameter data create
|
||||
OtherParameterMaster.findAll({raw: true , where : {is_active : 1}}).then(async(OtherParameterMasterData) =>
|
||||
{
|
||||
@ -466,7 +488,7 @@ exports.LoanNumberDetailsList = async (req, res) =>
|
||||
{
|
||||
try
|
||||
{
|
||||
LoanDetail.findAll({raw: true , where : {is_active : 1}}).then(data =>
|
||||
LoanDetail.findAll({raw: true , where : { losid : req.query.losid , is_active : 1}}).then(data =>
|
||||
{
|
||||
if(data.length > 0)
|
||||
{
|
||||
@ -739,18 +761,36 @@ exports.updateATNWrelatedInputs = async (req, res) =>
|
||||
{
|
||||
try
|
||||
{
|
||||
const update_subValue_data = req.body.subValue;
|
||||
delete req.body.subValue;
|
||||
id = req.body.id;
|
||||
delete req.body.id;
|
||||
// update value
|
||||
ATNWrelatedInputs.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" });
|
||||
});
|
||||
{
|
||||
logMsg.info("ATNWrelatedInputs Data Update Success "+data);
|
||||
})
|
||||
.catch(err => {
|
||||
res.send({'status':404,
|
||||
message: err.message || "Some error occurred while retrieving statements." ,'data': "No data" });
|
||||
});
|
||||
if (req.body.atnw_related_input_id == 8)
|
||||
{
|
||||
update_subValue_data.forEach( async (update_subValue_data_element) => {
|
||||
id = update_subValue_data_element.id;
|
||||
delete update_subValue_data_element.id;
|
||||
ATNErelatedInputSubVal.update(update_subValue_data_element,{ 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" });
|
||||
@ -848,7 +888,9 @@ exports.PropertyAndLtvList = async (req, res) =>
|
||||
{
|
||||
try
|
||||
{
|
||||
PropertyAndLtv.findAll({raw: true , where : {is_active : 1}}).then(data =>
|
||||
PropertyAndLtv.findAll({ where : { losid : req.query.losid , is_active : 1},
|
||||
include : [{ model : LoanDetail}],
|
||||
}).then(data =>
|
||||
{
|
||||
if(data.length > 0)
|
||||
{
|
||||
@ -929,7 +971,9 @@ exports.ATNWrelatedInputsList = async (req, res) =>
|
||||
{
|
||||
try
|
||||
{
|
||||
ATNWrelatedInputs.findAll({raw: true , where : {entity_id : req.query.entity_id , is_active : 1}}).then(data =>
|
||||
ATNWrelatedInputs.findAll({where : {entity_id : req.query.entity_id , is_active : 1},
|
||||
include : [{ model: ATNErelatedInputSubVal }]
|
||||
}).then(data =>
|
||||
{
|
||||
if(data.length > 0)
|
||||
{
|
||||
|
||||
@ -18,52 +18,21 @@ exports.Welcome = (req, res) =>
|
||||
};
|
||||
|
||||
|
||||
exports.createModel = async (req, res) =>
|
||||
{
|
||||
var storeData = [ ];
|
||||
var a = [ "money" , "int" , "numeric" , "real" ]
|
||||
var b = [ "nvarchar" ]
|
||||
var c = [ "datetimeoffset" , "datetime" , "date" ]
|
||||
|
||||
|
||||
let query = "SELECT COLUMN_NAME, DATA_TYPE FROM mainapp_staging.INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='sales_PD';";
|
||||
storeData = await sequelize.query(query)
|
||||
storeData.forEach(async(element) => {
|
||||
|
||||
Object.values(element).forEach( async (element) => {
|
||||
if ( a.includes(element.DATA_TYPE)) {
|
||||
console.log( element.COLUMN_NAME, ": { type: DataTypes.INTEGER },");
|
||||
}
|
||||
if ( b.includes(element.DATA_TYPE)) {
|
||||
console.log( element.COLUMN_NAME, ": { type: DataTypes.STRING },");
|
||||
}
|
||||
if ( c.includes(element.DATA_TYPE)) {
|
||||
console.log( element.COLUMN_NAME, ": { type: DataTypes.DATE },");
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
exports.excel = async ( req , res ) => {
|
||||
// Requiring the module
|
||||
const reader = require('xlsx')
|
||||
// IF(
|
||||
// AND( variance_in_mv1_and_mv2 > 10% OR (mark_valuation_1 = "",mark_valuation_1 = 0, mark_valuation_2 ="",mark_valuation_2 =0,third_val_not_req="",third_val_not_req=0)),
|
||||
// "Inputs Required",
|
||||
|
||||
// Reading our test file
|
||||
const file = reader.readFile('./Commercial_CIBIL_Raw_Data 1.xlsx')
|
||||
let data = []
|
||||
const sheets = file.SheetNames[0]
|
||||
console.log(sheets);
|
||||
for(let i = 0; i < sheets.length; i++)
|
||||
{
|
||||
const temp = reader.utils.sheet_to_json(
|
||||
file.Sheets[file.SheetNames[0]])
|
||||
temp.forEach((res) => {
|
||||
data.push(res)
|
||||
})
|
||||
}
|
||||
res.send(data[0].ApplicationRefno)
|
||||
}
|
||||
// IF(
|
||||
// OR( override="", override ="Average"),
|
||||
// IF( variance_in_mv1_and_mv2 <= 10% ,( mark_valuation_1 + mark_valuation_2 )/2 ,
|
||||
// ( third_val_not_req + mark_valuation_2 + mark_valuation_1 - MAX(third_val_not_req , mark_valuation_2, mark_valuation_1))/2),
|
||||
|
||||
// IF( override ="Lower",IF(variance_in_mv1_and_mv2 <= 10% ,
|
||||
// MIN(mark_valuation_1, mark_valuation_2 ),
|
||||
// MIN(third_val_not_req ,mark_valuation_2,mark_valuation_1)),
|
||||
|
||||
// IF( override ="Higher",IF(variance_in_mv1_and_mv2 <= 10% ,
|
||||
// MAX(mark_valuation_1,mark_valuation_2),
|
||||
// MAX(third_val_not_req ,mark_valuation_2,mark_valuation_1))))
|
||||
// )
|
||||
// )
|
||||
27
app/models/ATNWrelatedInputSubVal.js
Normal file
27
app/models/ATNWrelatedInputSubVal.js
Normal file
@ -0,0 +1,27 @@
|
||||
'use strict'
|
||||
const { Model } = require('sequelize')
|
||||
module.exports = (sequelize, DataTypes) => {
|
||||
class ATNErelatedInputSubVal extends Model {
|
||||
|
||||
}
|
||||
ATNErelatedInputSubVal.init(
|
||||
{
|
||||
master_id : { type: DataTypes.INTEGER },
|
||||
atnw_related_input : { type: DataTypes.STRING },
|
||||
atnw_related_input_value : { type: DataTypes.STRING },
|
||||
createdAt : { type: DataTypes.DATE },
|
||||
updatedAt : { type: DataTypes.DATE },
|
||||
createdby : { type: DataTypes.INTEGER },
|
||||
updatedby : { type: DataTypes.INTEGER },
|
||||
is_active : { type: DataTypes.INTEGER },
|
||||
|
||||
},
|
||||
{
|
||||
sequelize,
|
||||
tableName: 'atnw_related_input_sub_value',
|
||||
modelName: 'ATNErelatedInputSubVal',
|
||||
}
|
||||
)
|
||||
|
||||
return ATNErelatedInputSubVal
|
||||
}
|
||||
@ -23,6 +23,12 @@ module.exports = (sequelize, DataTypes) => {
|
||||
modelName: 'ATNWrelatedInputs',
|
||||
}
|
||||
)
|
||||
ATNWrelatedInputs.associate = models => {
|
||||
ATNWrelatedInputs.hasMany(models.ATNErelatedInputSubVal, {
|
||||
foreignKey: 'master_id',
|
||||
sourceKey : 'id'
|
||||
});
|
||||
}
|
||||
|
||||
return ATNWrelatedInputs
|
||||
}
|
||||
@ -57,5 +57,14 @@ module.exports = (sequelize, DataTypes) => {
|
||||
modelName: 'PropertyAndLtv',
|
||||
}
|
||||
)
|
||||
|
||||
PropertyAndLtv.associate = models => {
|
||||
PropertyAndLtv.hasMany(models.LoanDetail, {
|
||||
foreignKey: 'losid',
|
||||
sourceKey : 'losid'
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
return PropertyAndLtv
|
||||
}
|
||||
|
||||
@ -74,6 +74,14 @@ router.get("/MainApplicantDetailsList", Entitycontroller.MainApplicantDetailsLis
|
||||
* get:
|
||||
* summary: Loan Numbers Details List
|
||||
* description: Get loan Number Details List
|
||||
* parameters:
|
||||
* - in: query
|
||||
* name: losid
|
||||
* schema:
|
||||
* type: string
|
||||
* required: true
|
||||
* description: id of the entity Details (primart key of entity)
|
||||
* example: MW112233
|
||||
* responses:
|
||||
* 200:
|
||||
* description: success
|
||||
@ -2003,118 +2011,6 @@ router.post("/updatePropertyAndLtv", Entitycontroller.updatePropertyAndLtv);
|
||||
router.get("/PropertyAndLtvList", Entitycontroller.PropertyAndLtvList);
|
||||
|
||||
|
||||
|
||||
// create LoanDetail
|
||||
/**
|
||||
* @swagger
|
||||
* definitions:
|
||||
* createLoanDetail:
|
||||
* type: object
|
||||
* properties:
|
||||
* losid:
|
||||
* type: string
|
||||
* description:
|
||||
* example: MW112233
|
||||
* product:
|
||||
* type: string
|
||||
* description:
|
||||
* example: LFMP
|
||||
* date_of_login:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: 2021/05/05
|
||||
* sourcing_channel_type:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: Connector
|
||||
* sourcing_channel_name:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: Test Name
|
||||
* proposal:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: Fresh
|
||||
* sanction_date_of_earlier_exposure:
|
||||
* type: integer
|
||||
* description:
|
||||
* example:
|
||||
* current_outstnd_bal_of_earlier_exposure:
|
||||
* type: integer
|
||||
* description:
|
||||
* example:
|
||||
* emi_of_earlier_exposure:
|
||||
* type: integer
|
||||
* description:
|
||||
* example:
|
||||
* additional_loan_amnt_applied_for:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: 5000000
|
||||
* insurance_premium_amnt_being_funded:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: 500000
|
||||
* insurance_premium_loan_applied_for:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: 1
|
||||
* additional_loan_amnt_applied_for_and_insu_premium:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: 5500000
|
||||
* load_tenure_applied_for_months:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: 30
|
||||
* rate_of_interest_per_annum:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: 1
|
||||
* emi_per_lac_of_loan:
|
||||
* type: integer
|
||||
* description:
|
||||
* example:
|
||||
* purpose_of_loan:
|
||||
* type: integer
|
||||
* description:
|
||||
* example:
|
||||
* emi_of_loan_applied_for:
|
||||
* type: integer
|
||||
* description:
|
||||
* example:
|
||||
* createdby:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: 1
|
||||
* updatedby:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: 1
|
||||
* is_active:
|
||||
* type: integer
|
||||
* description:
|
||||
* example: 1
|
||||
*/
|
||||
/**
|
||||
* @swagger
|
||||
* /api/createLoanDetail:
|
||||
* post:
|
||||
* summary: create LoanDetail
|
||||
* description: create LoanDetail details
|
||||
* requestBody:
|
||||
* content:
|
||||
* application/json:
|
||||
* schema:
|
||||
* $ref: '#/definitions/createLoanDetail'
|
||||
* responses:
|
||||
* 200:
|
||||
* description: New LoanDetail inserted
|
||||
* 500:
|
||||
* description: failure in inserting LoanDetail
|
||||
*/
|
||||
router.post("/createLoanDetail", Entitycontroller.createLoanDetail);
|
||||
|
||||
// update Property & LTV Details
|
||||
/**
|
||||
* @swagger
|
||||
@ -2239,6 +2135,14 @@ router.post("/updateLoanDetail", Entitycontroller.updateLoanDetail);
|
||||
* get:
|
||||
* summary: Dropdown loan And property & Ltv Master Api
|
||||
* description: All master data for dropdown value
|
||||
* parameters:
|
||||
* - in: query
|
||||
* name: losid
|
||||
* schema:
|
||||
* type: string
|
||||
* required: true
|
||||
* description: id of the entity Details (primart key of entity)
|
||||
* example: MW112233
|
||||
* responses:
|
||||
* 200:
|
||||
* description: success
|
||||
@ -2246,7 +2150,7 @@ router.post("/updateLoanDetail", Entitycontroller.updateLoanDetail);
|
||||
router.get("/loanAndLtvMaster", Mastercontroller.loanAndLtvMaster);
|
||||
|
||||
|
||||
// CheckResultMaster select api
|
||||
// atnwRelationMaster select api
|
||||
|
||||
/**
|
||||
* @swagger
|
||||
@ -2292,6 +2196,10 @@ router.get("/atnwRelationMaster", Mastercontroller.atnwRelationMaster);
|
||||
* type: integer
|
||||
* description:
|
||||
* example: 1
|
||||
* subValue:
|
||||
* type: string
|
||||
* description: json string
|
||||
* example:
|
||||
*/
|
||||
/**
|
||||
* @swagger
|
||||
|
||||
109
package-lock.json
generated
109
package-lock.json
generated
@ -11,12 +11,13 @@
|
||||
"dependencies": {
|
||||
"body-parser": "^1.19.0",
|
||||
"cors": "^2.8.5",
|
||||
"dist": "^0.1.2",
|
||||
"dotenv": "^10.0.0",
|
||||
"express": "^4.17.1",
|
||||
"log4js": "^6.3.0",
|
||||
"mssql": "^7.2.0",
|
||||
"request": "^2.88.2",
|
||||
"sequelize": "^6.6.5",
|
||||
"sequelize": "^6.21.1",
|
||||
"swagger-jsdoc": "^6.1.0",
|
||||
"swagger-ui-express": "^4.1.6",
|
||||
"winston": "^3.3.3",
|
||||
@ -539,6 +540,11 @@
|
||||
"@types/node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/validator": {
|
||||
"version": "13.7.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.7.3.tgz",
|
||||
"integrity": "sha512-DNviAE5OUcZ5s+XEQHRhERLg8fOp8gSgvyJ4aaFASx5wwaObm+PBwTIMXiOFm1QrSee5oYwEAYb7LMzX2O88gA=="
|
||||
},
|
||||
"node_modules/@xmldom/xmldom": {
|
||||
"version": "0.7.5",
|
||||
"resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.5.tgz",
|
||||
@ -1547,6 +1553,19 @@
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/dist": {
|
||||
"version": "0.1.2",
|
||||
"resolved": "https://registry.npmjs.org/dist/-/dist-0.1.2.tgz",
|
||||
"integrity": "sha512-TmsZfJybRs3IZC8SL/rLU3KYanR31BNPlCutao8MpmiN6S47WN2eEBNSdSafi0cQtdMAixgNXfrqZyuqkz/sOQ==",
|
||||
"dependencies": {
|
||||
"filesize": "~1.6.6",
|
||||
"optimist": "~0.3.5",
|
||||
"uglify-js": "~1.3.4"
|
||||
},
|
||||
"bin": {
|
||||
"dist": "bin/dist.js"
|
||||
}
|
||||
},
|
||||
"node_modules/doctrine": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
|
||||
@ -1770,6 +1789,14 @@
|
||||
"moment": "^2.29.1"
|
||||
}
|
||||
},
|
||||
"node_modules/filesize": {
|
||||
"version": "1.6.7",
|
||||
"resolved": "https://registry.npmjs.org/filesize/-/filesize-1.6.7.tgz",
|
||||
"integrity": "sha512-A/ANn+qBa3WmjgxHmyKfQbQ+AFwVoKrWwCGrNVjWJJMZclBrvhZ+85/xLxcTjn/G70PjbDKpVDewCHn+ShMyTA==",
|
||||
"engines": {
|
||||
"node": ">= 0.6.0"
|
||||
}
|
||||
},
|
||||
"node_modules/fill-range": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
|
||||
@ -3206,6 +3233,14 @@
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/optimist": {
|
||||
"version": "0.3.7",
|
||||
"resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz",
|
||||
"integrity": "sha512-TCx0dXQzVtSCg2OgY/bO9hjM9cV4XYx09TVK+s3+FhkjT6LovsLe+pPMzpWf+6yXK/hUizs2gUoTw3jHM0VaTQ==",
|
||||
"dependencies": {
|
||||
"wordwrap": "~0.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/p-cancelable": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz",
|
||||
@ -3677,9 +3712,9 @@
|
||||
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
|
||||
},
|
||||
"node_modules/sequelize": {
|
||||
"version": "6.15.0",
|
||||
"resolved": "https://registry.npmjs.org/sequelize/-/sequelize-6.15.0.tgz",
|
||||
"integrity": "sha512-Ks2jSaKMfICZ8jMlhH401fLw5ikE8Vqt6slcR2peKOn4lA3H+LRfXdlnAl/CUDO1MflFl7PhifnzPxwhamciGQ==",
|
||||
"version": "6.21.1",
|
||||
"resolved": "https://registry.npmjs.org/sequelize/-/sequelize-6.21.1.tgz",
|
||||
"integrity": "sha512-vbRreGOdBFLoGUrSINaNVLnaGZGSjhLq2b80tBezuqxbumMG3V2QkCnsvgggQ+LoRVYxERwWin1BL7YO4b5PSQ==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "opencollective",
|
||||
@ -3688,9 +3723,10 @@
|
||||
],
|
||||
"dependencies": {
|
||||
"@types/debug": "^4.1.7",
|
||||
"@types/validator": "^13.7.1",
|
||||
"debug": "^4.3.3",
|
||||
"dottie": "^2.0.2",
|
||||
"inflection": "^1.13.1",
|
||||
"inflection": "^1.13.2",
|
||||
"lodash": "^4.17.21",
|
||||
"moment": "^2.29.1",
|
||||
"moment-timezone": "^0.5.34",
|
||||
@ -4315,6 +4351,14 @@
|
||||
"is-typedarray": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/uglify-js": {
|
||||
"version": "1.3.5",
|
||||
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.5.tgz",
|
||||
"integrity": "sha512-YPX1DjKtom8l9XslmPFQnqWzTBkvI4N0pbkzLuPZZ4QTyig0uQqvZz9NgUdfEV+qccJzi7fVcGWdESvRIjWptQ==",
|
||||
"bin": {
|
||||
"uglifyjs": "bin/uglifyjs"
|
||||
}
|
||||
},
|
||||
"node_modules/undefsafe": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz",
|
||||
@ -4656,6 +4700,14 @@
|
||||
"node": ">=0.8"
|
||||
}
|
||||
},
|
||||
"node_modules/wordwrap": {
|
||||
"version": "0.0.3",
|
||||
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
|
||||
"integrity": "sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw==",
|
||||
"engines": {
|
||||
"node": ">=0.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/wrap-ansi": {
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
||||
@ -5271,6 +5323,11 @@
|
||||
"@types/node": "*"
|
||||
}
|
||||
},
|
||||
"@types/validator": {
|
||||
"version": "13.7.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.7.3.tgz",
|
||||
"integrity": "sha512-DNviAE5OUcZ5s+XEQHRhERLg8fOp8gSgvyJ4aaFASx5wwaObm+PBwTIMXiOFm1QrSee5oYwEAYb7LMzX2O88gA=="
|
||||
},
|
||||
"@xmldom/xmldom": {
|
||||
"version": "0.7.5",
|
||||
"resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.5.tgz",
|
||||
@ -6036,6 +6093,16 @@
|
||||
"integrity": "sha512-S55LzUl8HUav8l9E2PBTlC5PAJrHK7tkM+XXFGD+fbsbkTzhCpG6K05LxJcUOEWzMa4v6ptcMZ9s3fOdJDu0Zw==",
|
||||
"optional": true
|
||||
},
|
||||
"dist": {
|
||||
"version": "0.1.2",
|
||||
"resolved": "https://registry.npmjs.org/dist/-/dist-0.1.2.tgz",
|
||||
"integrity": "sha512-TmsZfJybRs3IZC8SL/rLU3KYanR31BNPlCutao8MpmiN6S47WN2eEBNSdSafi0cQtdMAixgNXfrqZyuqkz/sOQ==",
|
||||
"requires": {
|
||||
"filesize": "~1.6.6",
|
||||
"optimist": "~0.3.5",
|
||||
"uglify-js": "~1.3.4"
|
||||
}
|
||||
},
|
||||
"doctrine": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
|
||||
@ -6223,6 +6290,11 @@
|
||||
"moment": "^2.29.1"
|
||||
}
|
||||
},
|
||||
"filesize": {
|
||||
"version": "1.6.7",
|
||||
"resolved": "https://registry.npmjs.org/filesize/-/filesize-1.6.7.tgz",
|
||||
"integrity": "sha512-A/ANn+qBa3WmjgxHmyKfQbQ+AFwVoKrWwCGrNVjWJJMZclBrvhZ+85/xLxcTjn/G70PjbDKpVDewCHn+ShMyTA=="
|
||||
},
|
||||
"fill-range": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
|
||||
@ -7323,6 +7395,14 @@
|
||||
"is-wsl": "^2.1.1"
|
||||
}
|
||||
},
|
||||
"optimist": {
|
||||
"version": "0.3.7",
|
||||
"resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz",
|
||||
"integrity": "sha512-TCx0dXQzVtSCg2OgY/bO9hjM9cV4XYx09TVK+s3+FhkjT6LovsLe+pPMzpWf+6yXK/hUizs2gUoTw3jHM0VaTQ==",
|
||||
"requires": {
|
||||
"wordwrap": "~0.0.2"
|
||||
}
|
||||
},
|
||||
"p-cancelable": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz",
|
||||
@ -7692,14 +7772,15 @@
|
||||
}
|
||||
},
|
||||
"sequelize": {
|
||||
"version": "6.15.0",
|
||||
"resolved": "https://registry.npmjs.org/sequelize/-/sequelize-6.15.0.tgz",
|
||||
"integrity": "sha512-Ks2jSaKMfICZ8jMlhH401fLw5ikE8Vqt6slcR2peKOn4lA3H+LRfXdlnAl/CUDO1MflFl7PhifnzPxwhamciGQ==",
|
||||
"version": "6.21.1",
|
||||
"resolved": "https://registry.npmjs.org/sequelize/-/sequelize-6.21.1.tgz",
|
||||
"integrity": "sha512-vbRreGOdBFLoGUrSINaNVLnaGZGSjhLq2b80tBezuqxbumMG3V2QkCnsvgggQ+LoRVYxERwWin1BL7YO4b5PSQ==",
|
||||
"requires": {
|
||||
"@types/debug": "^4.1.7",
|
||||
"@types/validator": "^13.7.1",
|
||||
"debug": "^4.3.3",
|
||||
"dottie": "^2.0.2",
|
||||
"inflection": "^1.13.1",
|
||||
"inflection": "^1.13.2",
|
||||
"lodash": "^4.17.21",
|
||||
"moment": "^2.29.1",
|
||||
"moment-timezone": "^0.5.34",
|
||||
@ -8149,6 +8230,11 @@
|
||||
"is-typedarray": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"uglify-js": {
|
||||
"version": "1.3.5",
|
||||
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-1.3.5.tgz",
|
||||
"integrity": "sha512-YPX1DjKtom8l9XslmPFQnqWzTBkvI4N0pbkzLuPZZ4QTyig0uQqvZz9NgUdfEV+qccJzi7fVcGWdESvRIjWptQ=="
|
||||
},
|
||||
"undefsafe": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz",
|
||||
@ -8422,6 +8508,11 @@
|
||||
"resolved": "https://registry.npmjs.org/word/-/word-0.3.0.tgz",
|
||||
"integrity": "sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA=="
|
||||
},
|
||||
"wordwrap": {
|
||||
"version": "0.0.3",
|
||||
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
|
||||
"integrity": "sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw=="
|
||||
},
|
||||
"wrap-ansi": {
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
||||
|
||||
@ -12,12 +12,13 @@
|
||||
"dependencies": {
|
||||
"body-parser": "^1.19.0",
|
||||
"cors": "^2.8.5",
|
||||
"dist": "^0.1.2",
|
||||
"dotenv": "^10.0.0",
|
||||
"express": "^4.17.1",
|
||||
"log4js": "^6.3.0",
|
||||
"mssql": "^7.2.0",
|
||||
"request": "^2.88.2",
|
||||
"sequelize": "^6.6.5",
|
||||
"sequelize": "^6.21.1",
|
||||
"swagger-jsdoc": "^6.1.0",
|
||||
"swagger-ui-express": "^4.1.6",
|
||||
"winston": "^3.3.3",
|
||||
|
||||
Loading…
Reference in New Issue
Block a user