dry-node
Version:
Initialiseur de structure Node Express typée et modulaire
60 lines (49 loc) • 2.12 kB
JavaScript
const DryAddressModel = require("../../dry-module/dry-group-location/dry-address/model/dry-address.model");
const DryMakeObject = require("./dry-make-object.function");
const DrySaveCity = require("./dry-save-city.function");
const DrySaveLog = require("./dry-save-log.function");
const DryGenerateSlug = require("./dry-generate-slug.function");
const DryGenerateId = require("./dry-generate-id.function");
async function DrySaveAddress(__address, req) {
if (typeof __address === 'string') {
const _a = await DryAddressModel.findById(__address);
if (_a) {
return _a
}
}
let address;
if (__address?._id && __address?._id !== "") {
address =await DryAddressModel.findByIdAndUpdate(_address?._id, __address, {
new: true,
runValidators: false
})
// address = __address;
}else if (__address && __address._id !== '') {
let _address = {...__address};
delete __address._id;
address = await DryAddressModel.create(_address);
DrySaveLog(req, 'create', 'dry-address', address._id, {}, {}).then({})
return address;
}
else if (__address && !__address?._id && __address.label !== '') {
let _address = {};
_address.city = await DrySaveCity(__address.city)
_address.country = __address.country;
_address.countryOne = __address.countryOne;
_address.cityOne = __address.cityOne;
_address.quarter = __address.quarter;
_address.districtOne = __address.districtOne;
_address.address = __address.address;
_address.addressSuite = __address.addressSuite;
_address.label = __address.address;
if (!__address.label) __address.label = "ADD";
address = await DryAddressModel.create(_address);
DrySaveLog(req, 'create', 'dry-address', address._id, {}, {}).then({})
return address;
} else {
console.log("seuie, fiable");
address = null;
}
return address
}
module.exports = DrySaveAddress;