Built motion from commit (unavailable).|2.5.26
[motion2.git] / server / api / intServicenowConfiguration / intServicenowConfiguration.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x9259=['model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filter','merge','VIRTUAL','options','ServicenowConfiguration','include','findAll','rows','catch','params','keys','find','create','body','ServicenowField','getFields','getSubjects','findOne','pick','getDescriptions','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','to-csv','ejs','fs-extra','lodash','squel','jsforce','querystring','ioredis','../../components/auth/service','../../config/license/hardware','api','../../config/utils','../../config/license/util','jayson/promise','client','request','then','info','ServicenowConfiguration,\x20%s,\x20%s','request\x20sent','debug','ServicenowConfiguration,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','sendStatus','status','end','json','count','offset','limit','Content-Range','reject','update','destroy','stack','name','index','map','rawAttributes','fieldName','type','key'];(function(_0x3867e7,_0x3eacfb){var _0x2b6e4b=function(_0x52a4d9){while(--_0x52a4d9){_0x3867e7['push'](_0x3867e7['shift']());}};_0x2b6e4b(++_0x3eacfb);}(_0x9259,0x125));var _0x9925=function(_0x47cd62,_0x19bbf3){_0x47cd62=_0x47cd62-0x0;var _0x7923b9=_0x9259[_0x47cd62];return _0x7923b9;};'use strict';var emlformat=require(_0x9925('0x0'));var rimraf=require(_0x9925('0x1'));var zipdir=require(_0x9925('0x2'));var jsonpatch=require(_0x9925('0x3'));var rp=require(_0x9925('0x4'));var moment=require(_0x9925('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x9925('0x6'));var util=require(_0x9925('0x7'));var path=require(_0x9925('0x8'));var sox=require('sox');var csv=require(_0x9925('0x9'));var ejs=require(_0x9925('0xa'));var fs=require('fs');var fs_extra=require(_0x9925('0xb'));var _=require(_0x9925('0xc'));var squel=require(_0x9925('0xd'));var crypto=require('crypto');var jsforce=require(_0x9925('0xe'));var deskjs=require('desk.js');var toCsv=require(_0x9925('0x9'));var querystring=require(_0x9925('0xf'));var Papa=require('papaparse');var Redis=require(_0x9925('0x10'));var authService=require(_0x9925('0x11'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x9925('0x12'));var logger=require('../../config/logger')(_0x9925('0x13'));var utils=require(_0x9925('0x14'));var config=require('../../config/environment');var licenseUtil=require(_0x9925('0x15'));var db=require('../../mysqldb')['db'];var jayson=require(_0x9925('0x16'));var client=jayson[_0x9925('0x17')]['http']({'port':0x232a});function respondWithRpcPromise(_0x4451f9,_0x4d05ec,_0x17ef6b,_0x476dd6){return new BPromise(function(_0x339906,_0x15b29f){var _0x3e89d8=_0x476dd6||client;return _0x3e89d8[_0x9925('0x18')](_0x4451f9,_0x17ef6b)[_0x9925('0x19')](function(_0x3e7adb){logger[_0x9925('0x1a')](_0x9925('0x1b'),_0x4d05ec,_0x9925('0x1c'));logger[_0x9925('0x1d')](_0x9925('0x1e'),_0x4d05ec,_0x9925('0x1c'),JSON[_0x9925('0x1f')](_0x3e7adb));if(_0x3e7adb['error']){if(_0x3e7adb[_0x9925('0x20')][_0x9925('0x21')]===0x1f4){logger[_0x9925('0x20')]('ServicenowConfiguration,\x20%s,\x20%s',_0x4d05ec,_0x3e7adb[_0x9925('0x20')][_0x9925('0x22')]);return _0x15b29f(_0x3e7adb[_0x9925('0x20')][_0x9925('0x22')]);}logger[_0x9925('0x20')](_0x9925('0x1b'),_0x4d05ec,_0x3e7adb[_0x9925('0x20')]['message']);return _0x339906(_0x3e7adb[_0x9925('0x20')][_0x9925('0x22')]);}else{logger[_0x9925('0x1a')](_0x9925('0x1b'),_0x4d05ec,_0x9925('0x1c'));_0x339906(_0x3e7adb[_0x9925('0x23')][_0x9925('0x22')]);}})['catch'](function(_0xee7c43){logger[_0x9925('0x20')]('ServicenowConfiguration,\x20%s,\x20%s',_0x4d05ec,_0xee7c43);_0x15b29f(_0xee7c43);});});}function respondWithStatusCode(_0x5a15dc,_0x280c9a){_0x280c9a=_0x280c9a||0xcc;return function(_0xdb68d7){if(_0xdb68d7){return _0x5a15dc[_0x9925('0x24')](_0x280c9a);}return _0x5a15dc[_0x9925('0x25')](_0x280c9a)[_0x9925('0x26')]();};}function respondWithResult(_0x58db9a,_0x2177f3){_0x2177f3=_0x2177f3||0xc8;return function(_0x79f7d7){if(_0x79f7d7){return _0x58db9a[_0x9925('0x25')](_0x2177f3)[_0x9925('0x27')](_0x79f7d7);}};}function respondWithFilteredResult(_0x498c6d,_0x53a0b3){return function(_0x5eb7da){if(_0x5eb7da){var _0x453f3f=_0x5eb7da[_0x9925('0x28')],_0x3908c7=_0x53a0b3[_0x9925('0x29')],_0x3d6632=_0x53a0b3[_0x9925('0x29')]+_0x53a0b3[_0x9925('0x2a')],_0x5173d9;if(_0x3d6632>=_0x453f3f){_0x3d6632=_0x453f3f;_0x5173d9=0xc8;}else{_0x5173d9=0xce;}_0x498c6d[_0x9925('0x25')](_0x5173d9);return _0x498c6d['set'](_0x9925('0x2b'),_0x3908c7+'-'+_0x3d6632+'/'+_0x453f3f)[_0x9925('0x27')](_0x5eb7da);}return null;};}function patchUpdates(_0x2b63b0){return function(_0x2ae83e){try{jsonpatch['apply'](_0x2ae83e,_0x2b63b0,!![]);}catch(_0x32a10b){return BPromise[_0x9925('0x2c')](_0x32a10b);}return _0x2ae83e['save']();};}function saveUpdates(_0x58ca24,_0x814927){return function(_0xbaab23){if(_0xbaab23){return _0xbaab23[_0x9925('0x2d')](_0x58ca24)[_0x9925('0x19')](function(_0x1b1335){return _0x1b1335;});}return null;};}function removeEntity(_0x30313a,_0xa2c863){return function(_0x35c534){if(_0x35c534){return _0x35c534[_0x9925('0x2e')]()[_0x9925('0x19')](function(){_0x30313a[_0x9925('0x25')](0xcc)[_0x9925('0x26')]();});}};}function handleEntityNotFound(_0x330dbd,_0x228216){return function(_0x468f48){if(!_0x468f48){_0x330dbd[_0x9925('0x24')](0x194);}return _0x468f48;};}function handleError(_0x380603,_0x3c1224){_0x3c1224=_0x3c1224||0x1f4;return function(_0xfc405b){logger[_0x9925('0x20')](_0xfc405b[_0x9925('0x2f')]);if(_0xfc405b[_0x9925('0x30')]){delete _0xfc405b[_0x9925('0x30')];}_0x380603[_0x9925('0x25')](_0x3c1224)['send'](_0xfc405b);};}exports[_0x9925('0x31')]=function(_0x1d2f9a,_0x4d65a3){var _0x504cc4={},_0x38ea5a={},_0xcdf1ea={'count':0x0,'rows':[]};var _0x1e0526=_[_0x9925('0x32')](db['ServicenowConfiguration'][_0x9925('0x33')],function(_0x466606){return{'name':_0x466606[_0x9925('0x34')],'type':_0x466606[_0x9925('0x35')][_0x9925('0x36')]};});_0x38ea5a[_0x9925('0x37')]=_[_0x9925('0x32')](_0x1e0526,_0x9925('0x30'));_0x38ea5a['query']=_['keys'](_0x1d2f9a[_0x9925('0x38')]);_0x38ea5a[_0x9925('0x39')]=_[_0x9925('0x3a')](_0x38ea5a[_0x9925('0x37')],_0x38ea5a[_0x9925('0x38')]);_0x504cc4[_0x9925('0x3b')]=_[_0x9925('0x3a')](_0x38ea5a['model'],qs['fields'](_0x1d2f9a['query'][_0x9925('0x3c')]));_0x504cc4[_0x9925('0x3b')]=_0x504cc4[_0x9925('0x3b')][_0x9925('0x3d')]?_0x504cc4[_0x9925('0x3b')]:_0x38ea5a[_0x9925('0x37')];if(!_0x1d2f9a[_0x9925('0x38')][_0x9925('0x3e')](_0x9925('0x3f'))){_0x504cc4['limit']=qs['limit'](_0x1d2f9a['query'][_0x9925('0x2a')]);_0x504cc4[_0x9925('0x29')]=qs[_0x9925('0x29')](_0x1d2f9a[_0x9925('0x38')][_0x9925('0x29')]);}_0x504cc4[_0x9925('0x40')]=qs[_0x9925('0x41')](_0x1d2f9a['query'][_0x9925('0x41')]);_0x504cc4[_0x9925('0x42')]=qs['filters'](_['pick'](_0x1d2f9a[_0x9925('0x38')],_0x38ea5a[_0x9925('0x39')]),_0x1e0526);if(_0x1d2f9a[_0x9925('0x38')][_0x9925('0x43')]){_0x504cc4[_0x9925('0x42')]=_[_0x9925('0x44')](_0x504cc4[_0x9925('0x42')],{'$or':_['map'](_0x1e0526,function(_0x4b4a5c){if(_0x4b4a5c[_0x9925('0x35')]!==_0x9925('0x45')){var _0x5e048c={};_0x5e048c[_0x4b4a5c[_0x9925('0x30')]]={'$like':'%'+_0x1d2f9a[_0x9925('0x38')][_0x9925('0x43')]+'%'};return _0x5e048c;}})});}_0x504cc4=_['merge']({},_0x504cc4,_0x1d2f9a[_0x9925('0x46')]);var _0x24690d={'where':_0x504cc4[_0x9925('0x42')]};return db[_0x9925('0x47')][_0x9925('0x28')](_0x24690d)[_0x9925('0x19')](function(_0x518a4c){_0xcdf1ea[_0x9925('0x28')]=_0x518a4c;if(_0x1d2f9a['query']['includeAll']){_0x504cc4[_0x9925('0x48')]=[{'all':!![]}];}return db[_0x9925('0x47')][_0x9925('0x49')](_0x504cc4);})['then'](function(_0x2653a0){_0xcdf1ea[_0x9925('0x4a')]=_0x2653a0;return _0xcdf1ea;})[_0x9925('0x19')](respondWithFilteredResult(_0x4d65a3,_0x504cc4))[_0x9925('0x4b')](handleError(_0x4d65a3,null));};exports['show']=function(_0x342c14,_0x3b29eb){var _0x4ba42e={'raw':![],'where':{'id':_0x342c14[_0x9925('0x4c')]['id']}},_0x5b23e1={};_0x5b23e1[_0x9925('0x37')]=_[_0x9925('0x4d')](db[_0x9925('0x47')][_0x9925('0x33')]);_0x5b23e1['query']=_[_0x9925('0x4d')](_0x342c14['query']);_0x5b23e1[_0x9925('0x39')]=_[_0x9925('0x3a')](_0x5b23e1[_0x9925('0x37')],_0x5b23e1[_0x9925('0x38')]);_0x4ba42e[_0x9925('0x3b')]=_[_0x9925('0x3a')](_0x5b23e1[_0x9925('0x37')],qs['fields'](_0x342c14['query'][_0x9925('0x3c')]));_0x4ba42e[_0x9925('0x3b')]=_0x4ba42e[_0x9925('0x3b')][_0x9925('0x3d')]?_0x4ba42e[_0x9925('0x3b')]:_0x5b23e1[_0x9925('0x37')];if(_0x342c14[_0x9925('0x38')]['includeAll']){_0x4ba42e[_0x9925('0x48')]=[{'all':!![]}];}_0x4ba42e=_[_0x9925('0x44')]({},_0x4ba42e,_0x342c14[_0x9925('0x46')]);return db[_0x9925('0x47')][_0x9925('0x4e')](_0x4ba42e)[_0x9925('0x19')](handleEntityNotFound(_0x3b29eb,null))[_0x9925('0x19')](respondWithResult(_0x3b29eb,null))[_0x9925('0x4b')](handleError(_0x3b29eb,null));};exports[_0x9925('0x4f')]=function(_0x519779,_0x4a4dbb){return db['ServicenowConfiguration'][_0x9925('0x4f')](_0x519779['body'],{})['then'](respondWithResult(_0x4a4dbb,0xc9))['catch'](handleError(_0x4a4dbb,null));};exports[_0x9925('0x2d')]=function(_0x42285c,_0x58abcb){if(_0x42285c[_0x9925('0x50')]['id']){delete _0x42285c[_0x9925('0x50')]['id'];}return db[_0x9925('0x47')]['find']({'where':{'id':_0x42285c[_0x9925('0x4c')]['id']}})[_0x9925('0x19')](handleEntityNotFound(_0x58abcb,null))[_0x9925('0x19')](saveUpdates(_0x42285c[_0x9925('0x50')],null))['then'](respondWithResult(_0x58abcb,null))['catch'](handleError(_0x58abcb,null));};exports['destroy']=function(_0x3468f4,_0x4ecb88){return db['ServicenowConfiguration']['find']({'where':{'id':_0x3468f4['params']['id']}})[_0x9925('0x19')](handleEntityNotFound(_0x4ecb88,null))['then'](removeEntity(_0x4ecb88,null))['catch'](handleError(_0x4ecb88,null));};exports['getFields']=function(_0x3c740c,_0x3bdd4e,_0x14fb71){var _0x2807af={};var _0x41ab8f={};var _0x1bf8f0;var _0x4becf0;return db['ServicenowConfiguration']['findOne']({'where':{'id':_0x3c740c[_0x9925('0x4c')]['id']}})['then'](handleEntityNotFound(_0x3bdd4e,null))[_0x9925('0x19')](function(_0x5c7220){if(_0x5c7220){_0x1bf8f0=_0x5c7220;_0x41ab8f[_0x9925('0x37')]=_['keys'](db[_0x9925('0x51')][_0x9925('0x33')]);_0x41ab8f['query']=_[_0x9925('0x4d')](_0x3c740c['query']);_0x41ab8f['filters']=_['intersection'](_0x41ab8f[_0x9925('0x37')],_0x41ab8f[_0x9925('0x38')]);_0x2807af[_0x9925('0x3b')]=_[_0x9925('0x3a')](_0x41ab8f['model'],qs[_0x9925('0x3c')](_0x3c740c[_0x9925('0x38')][_0x9925('0x3c')]));_0x2807af['attributes']=_0x2807af[_0x9925('0x3b')][_0x9925('0x3d')]?_0x2807af['attributes']:_0x41ab8f[_0x9925('0x37')];_0x2807af[_0x9925('0x40')]=qs['sort'](_0x3c740c['query'][_0x9925('0x41')]);_0x2807af[_0x9925('0x42')]=qs[_0x9925('0x39')](_['pick'](_0x3c740c[_0x9925('0x38')],_0x41ab8f[_0x9925('0x39')]));if(_0x3c740c[_0x9925('0x38')]['filter']){_0x2807af[_0x9925('0x42')]=_[_0x9925('0x44')](_0x2807af[_0x9925('0x42')],{'$or':_[_0x9925('0x32')](_0x2807af[_0x9925('0x3b')],function(_0x12569e){var _0x283dad={};_0x283dad[_0x12569e]={'$like':'%'+_0x3c740c[_0x9925('0x38')][_0x9925('0x43')]+'%'};return _0x283dad;})});}_0x2807af=_[_0x9925('0x44')]({},_0x2807af,_0x3c740c['options']);return _0x1bf8f0[_0x9925('0x52')](_0x2807af);}})[_0x9925('0x19')](function(_0x1a2278){if(_0x1a2278){_0x4becf0=_0x1a2278[_0x9925('0x3d')];if(!_0x3c740c[_0x9925('0x38')]['hasOwnProperty'](_0x9925('0x3f'))){_0x2807af['limit']=qs[_0x9925('0x2a')](_0x3c740c[_0x9925('0x38')][_0x9925('0x2a')]);_0x2807af[_0x9925('0x29')]=qs[_0x9925('0x29')](_0x3c740c[_0x9925('0x38')]['offset']);}return _0x1bf8f0[_0x9925('0x52')](_0x2807af);}})[_0x9925('0x19')](function(_0x53452b){if(_0x53452b){return _0x53452b?{'count':_0x4becf0,'rows':_0x53452b}:null;}})[_0x9925('0x19')](respondWithResult(_0x3bdd4e,null))['catch'](handleError(_0x3bdd4e,null));};exports[_0x9925('0x53')]=function(_0x15b074,_0x1ce779,_0x1c6197){var _0x5cad03={};var _0x438cb8={};var _0xf73569;var _0x4cd0f5;return db[_0x9925('0x47')][_0x9925('0x54')]({'where':{'id':_0x15b074['params']['id']}})[_0x9925('0x19')](handleEntityNotFound(_0x1ce779,null))[_0x9925('0x19')](function(_0x85b804){if(_0x85b804){_0xf73569=_0x85b804;_0x438cb8[_0x9925('0x37')]=_[_0x9925('0x4d')](db[_0x9925('0x51')][_0x9925('0x33')]);_0x438cb8[_0x9925('0x38')]=_[_0x9925('0x4d')](_0x15b074[_0x9925('0x38')]);_0x438cb8['filters']=_[_0x9925('0x3a')](_0x438cb8['model'],_0x438cb8[_0x9925('0x38')]);_0x5cad03[_0x9925('0x3b')]=_[_0x9925('0x3a')](_0x438cb8[_0x9925('0x37')],qs[_0x9925('0x3c')](_0x15b074[_0x9925('0x38')][_0x9925('0x3c')]));_0x5cad03[_0x9925('0x3b')]=_0x5cad03[_0x9925('0x3b')][_0x9925('0x3d')]?_0x5cad03[_0x9925('0x3b')]:_0x438cb8['model'];_0x5cad03['order']=qs[_0x9925('0x41')](_0x15b074[_0x9925('0x38')][_0x9925('0x41')]);_0x5cad03[_0x9925('0x42')]=qs[_0x9925('0x39')](_[_0x9925('0x55')](_0x15b074[_0x9925('0x38')],_0x438cb8['filters']));if(_0x15b074[_0x9925('0x38')][_0x9925('0x43')]){_0x5cad03[_0x9925('0x42')]=_['merge'](_0x5cad03[_0x9925('0x42')],{'$or':_[_0x9925('0x32')](_0x5cad03[_0x9925('0x3b')],function(_0x31a8fe){var _0x415676={};_0x415676[_0x31a8fe]={'$like':'%'+_0x15b074[_0x9925('0x38')][_0x9925('0x43')]+'%'};return _0x415676;})});}_0x5cad03=_[_0x9925('0x44')]({},_0x5cad03,_0x15b074[_0x9925('0x46')]);return _0xf73569[_0x9925('0x53')](_0x5cad03);}})[_0x9925('0x19')](function(_0x1c5625){if(_0x1c5625){_0x4cd0f5=_0x1c5625['length'];if(!_0x15b074[_0x9925('0x38')][_0x9925('0x3e')]('nolimit')){_0x5cad03[_0x9925('0x2a')]=qs[_0x9925('0x2a')](_0x15b074['query'][_0x9925('0x2a')]);_0x5cad03[_0x9925('0x29')]=qs[_0x9925('0x29')](_0x15b074[_0x9925('0x38')][_0x9925('0x29')]);}return _0xf73569['getSubjects'](_0x5cad03);}})[_0x9925('0x19')](function(_0x1022f0){if(_0x1022f0){return _0x1022f0?{'count':_0x4cd0f5,'rows':_0x1022f0}:null;}})[_0x9925('0x19')](respondWithResult(_0x1ce779,null))[_0x9925('0x4b')](handleError(_0x1ce779,null));};exports['getDescriptions']=function(_0x4011d4,_0xb4c7c6,_0x2d58fa){var _0x4ee27f={};var _0x145824={};var _0x1faf68;var _0x55affc;return db[_0x9925('0x47')]['findOne']({'where':{'id':_0x4011d4[_0x9925('0x4c')]['id']}})[_0x9925('0x19')](handleEntityNotFound(_0xb4c7c6,null))[_0x9925('0x19')](function(_0x47b7cb){if(_0x47b7cb){_0x1faf68=_0x47b7cb;_0x145824[_0x9925('0x37')]=_[_0x9925('0x4d')](db[_0x9925('0x51')]['rawAttributes']);_0x145824['query']=_[_0x9925('0x4d')](_0x4011d4[_0x9925('0x38')]);_0x145824[_0x9925('0x39')]=_[_0x9925('0x3a')](_0x145824[_0x9925('0x37')],_0x145824['query']);_0x4ee27f[_0x9925('0x3b')]=_[_0x9925('0x3a')](_0x145824[_0x9925('0x37')],qs[_0x9925('0x3c')](_0x4011d4[_0x9925('0x38')][_0x9925('0x3c')]));_0x4ee27f['attributes']=_0x4ee27f[_0x9925('0x3b')][_0x9925('0x3d')]?_0x4ee27f[_0x9925('0x3b')]:_0x145824[_0x9925('0x37')];_0x4ee27f[_0x9925('0x40')]=qs[_0x9925('0x41')](_0x4011d4[_0x9925('0x38')][_0x9925('0x41')]);_0x4ee27f[_0x9925('0x42')]=qs['filters'](_[_0x9925('0x55')](_0x4011d4['query'],_0x145824[_0x9925('0x39')]));if(_0x4011d4[_0x9925('0x38')][_0x9925('0x43')]){_0x4ee27f[_0x9925('0x42')]=_[_0x9925('0x44')](_0x4ee27f[_0x9925('0x42')],{'$or':_[_0x9925('0x32')](_0x4ee27f['attributes'],function(_0x582c86){var _0x27e1c7={};_0x27e1c7[_0x582c86]={'$like':'%'+_0x4011d4[_0x9925('0x38')][_0x9925('0x43')]+'%'};return _0x27e1c7;})});}_0x4ee27f=_[_0x9925('0x44')]({},_0x4ee27f,_0x4011d4['options']);return _0x1faf68[_0x9925('0x56')](_0x4ee27f);}})[_0x9925('0x19')](function(_0x40124e){if(_0x40124e){_0x55affc=_0x40124e[_0x9925('0x3d')];if(!_0x4011d4[_0x9925('0x38')][_0x9925('0x3e')]('nolimit')){_0x4ee27f[_0x9925('0x2a')]=qs[_0x9925('0x2a')](_0x4011d4[_0x9925('0x38')]['limit']);_0x4ee27f[_0x9925('0x29')]=qs[_0x9925('0x29')](_0x4011d4[_0x9925('0x38')]['offset']);}return _0x1faf68[_0x9925('0x56')](_0x4ee27f);}})['then'](function(_0xb42783){if(_0xb42783){return _0xb42783?{'count':_0x55affc,'rows':_0xb42783}:null;}})['then'](respondWithResult(_0xb4c7c6,null))['catch'](handleError(_0xb4c7c6,null));};