irest-app-test
Version:
iRest simulator application tooling and scripts - Backend
1 lines • 4.59 kB
JavaScript
;var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=void 0;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator")),_asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")),_defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty")),_sqliteConf=_interopRequireDefault(require("../../../sqliteConf")),_responseHelper=_interopRequireDefault(require("../../../helpers/responseHelper")),_messages=require("../../../constants/messages"),_httpStatus=_interopRequireDefault(require("../../../constants/httpStatus")),_logger=_interopRequireDefault(require("../../../logger"));function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){(0,_defineProperty2["default"])(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}var _require=require("sequelize"),Op=_require.Op;function create(a,b){var c=_sqliteConf["default"].Company,d=_sqliteConf["default"].Department,e=a.body,f=e.name,g=e.domain;c.findAll({where:(0,_defineProperty2["default"])({},Op.or,[{name:(0,_defineProperty2["default"])({},Op.eq,f)},{domain:(0,_defineProperty2["default"])({},Op.eq,g)}])}).then(function(h){var i=h.filter(function(a){return a.name===f}),j=h.filter(function(a){return a.domain===g});return _logger["default"].debug(h),0<i.length&&0<j.length?(a.statusCode=_httpStatus["default"].ClientErrorExpectationFailed,a.error=[{code:_httpStatus["default"].ClientErrorExpectationFailed,message:_messages.companyExistMessage,field:"name"},{code:_httpStatus["default"].ClientErrorExpectationFailed,message:_messages.companyDomainDuplicacy,field:"domain"}],(0,_responseHelper["default"])(a,b)):0<i.length?(a.statusCode=_httpStatus["default"].ClientErrorExpectationFailed,a.error=[{code:_httpStatus["default"].ClientErrorExpectationFailed,message:_messages.companyExistMessage,field:"name"}],(0,_responseHelper["default"])(a,b)):0<j.length?(a.statusCode=_httpStatus["default"].ClientErrorExpectationFailed,a.error=[{code:_httpStatus["default"].ClientErrorExpectationFailed,message:_messages.companyDomainDuplicacy,field:"domain"}],(0,_responseHelper["default"])(a,b)):void(_logger["default"].debug(e),0===h.length&&c.create(e).then(/*#__PURE__*/function(){var c=(0,_asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function f(c){var g;return _regenerator["default"].wrap(function(f){for(;;)switch(f.prev=f.next){case 0:_logger["default"].debug(c),a.statusCode=_httpStatus["default"].SuccessCreated,a.responseMessage=_messages.companyCreationSuccessMessage,a.responseData={company:c},g={companyId:c._id,createdBy:e.userId,name:"Default",status:"enabled"},d.create(_objectSpread({},g)).then(/*#__PURE__*/function(){var c=(0,_asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function c(){return _regenerator["default"].wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return a.statusCode=_httpStatus["default"].SuccessCreated,a.responseMessage=_messages.companyCreationSuccessMessage,c.abrupt("return",(0,_responseHelper["default"])(a,b));case 1:case"end":return c.stop()}},c)}));return function(){return c.apply(this,arguments)}}())["catch"](function(c){var d;return(_logger["default"].error(JSON.stringify(c)),null!==c&&void 0!==c&&null!==(d=c.fields)&&void 0!==d&&d.includes("name"))?(a.error=[{code:_httpStatus["default"].ClientErrorExpectationFailed,message:_messages.departmentExistMessage,field:"name"}],(0,_responseHelper["default"])(a,b)):(a.statusCode=c.code,a.responseMessage=c.message,(0,_responseHelper["default"])(a,b))});case 1:case"end":return f.stop()}},f)}));return function(){return c.apply(this,arguments)}}())["catch"](function(c){return _logger["default"].error(JSON.stringify(c)),a.statusCode=c.code,a.responseMessage=c.message,(0,_responseHelper["default"])(a,b)}))})["catch"](function(c){return _logger["default"].error(JSON.stringify(c)),a.statusCode=c.code,a.responseMessage=c.message,(0,_responseHelper["default"])(a,b)})}var _default=exports["default"]=create;