UNPKG

dry-node

Version:

Initialiseur de structure Node Express typée et modulaire

47 lines (37 loc) 1.63 kB
const DryPersonModel = require("../../dry-module/dry-person/model/dry-person.model"); const DryMakeObject = require("./dry-make-object.function"); const DrySaveAddress = require("./dry-save-address.function"); const DrySaveLog = require("./dry-save-log.function"); const DryGenerateSlug = require("./dry-generate-slug.function"); const DryGenerateId = require("./dry-generate-id.function"); async function DrySavePerson(__person, req) { let person; if (typeof __person === 'string') { const _p = await DryPersonModel.findById(__person); if(_p){ return _p } } if (__person?._id && __person?._id !== "") { person = __person; } else if (__person && !__person?._id && __person.label !== '') { let _person = {}; _person.email = __person.email?.toLowerCase(); _person.name = __person.name; _person.firstName = __person.firstName; _person.label = __person.firstName + " " + _person.name; _person.gender = __person.gender; if (!person?.picture) { _person.picture = __person.gender === 'M' ? "m.png" : "f.png"; } _person.phone = __person.phone?.toLowerCase(); _person.fixPhone = __person.fixPhone?.toLowerCase(); _person.address = await DrySaveAddress(__person?.address, req); person = await DryPersonModel.create(_person); DrySaveLog(req, 'create', 'dry-person', person?._id, {}, {}).then({}); } else { person = null; } return person } module.exports = DrySavePerson;