UNPKG

dry-node

Version:

Initialiseur de structure Node Express typée et modulaire

45 lines (37 loc) 1.43 kB
const DryCityModel = require("../../dry-module/dry-group-location/dry-city/model/dry-city.model"); const DryMakeObject = require("./dry-make-object.function"); const DrySaveLog = require("./dry-save-log.function"); const DryGenerateSlug = require("./dry-generate-slug.function"); const DryAddressModel = require("../../dry-module/dry-group-location/dry-address/model/dry-address.model"); const DryGenerateId = require("./dry-generate-id.function"); async function DrySaveCity(__city, req) { if (typeof __city === "string") { const _c = await DryAddressModel.findById(__city); if (_c) { return _c; } } let city; if (__city?._id && __city?._id !== "") { city = __city; } else if (__city && !__city?._id && __city.label !== "") { let _city = await DryCityModel.findOne({ label: __city.label }); if (!_city) { _city = {}; _city.label = __city?.label; _city.country = __city.country; _city.isExternal = true; _city.id = DryMakeObject("city"); // _city.slug = await DryGenerateSlug(_city.label, DryCityModel); // _city.id = await DryGenerateId("ADD", DryCityModel); city = await DryCityModel.create(_city); //await DrySaveLog(req, 'create', 'dry-city', city._id, {}, {}); } else { city = _city; } } else { city = null; } return city; } module.exports = DrySaveCity;