Built motion from commit 9d0783e6.|2.6.13
[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 _0x2dce=['limit','count','set','Content-Range','apply','update','then','destroy','error','stack','name','send','index','ServicenowConfiguration','type','key','map','query','filters','model','attributes','intersection','fields','length','order','sort','where','pick','filter','VIRTUAL','merge','options','include','rows','show','params','keys','rawAttributes','includeAll','find','catch','create','body','getFields','findOne','nolimit','getSubjects','hasOwnProperty','getDescriptions','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined'];(function(_0x545390,_0x5a8b85){var _0x4eca8a=function(_0x1ad17b){while(--_0x1ad17b){_0x545390['push'](_0x545390['shift']());}};_0x4eca8a(++_0x5a8b85);}(_0x2dce,0x1cb));var _0xe2dc=function(_0x13c59f,_0x3752ba){_0x13c59f=_0x13c59f-0x0;var _0x3c582b=_0x2dce[_0x13c59f];return _0x3c582b;};'use strict';var emlformat=require(_0xe2dc('0x0'));var rimraf=require(_0xe2dc('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xe2dc('0x2'));var rp=require(_0xe2dc('0x3'));var moment=require(_0xe2dc('0x4'));var BPromise=require(_0xe2dc('0x5'));var Mustache=require(_0xe2dc('0x6'));var util=require(_0xe2dc('0x7'));var path=require('path');var sox=require('sox');var csv=require(_0xe2dc('0x8'));var ejs=require(_0xe2dc('0x9'));var fs=require('fs');var fs_extra=require(_0xe2dc('0xa'));var _=require(_0xe2dc('0xb'));var squel=require(_0xe2dc('0xc'));var crypto=require(_0xe2dc('0xd'));var jsforce=require(_0xe2dc('0xe'));var deskjs=require('desk.js');var toCsv=require(_0xe2dc('0x8'));var querystring=require(_0xe2dc('0xf'));var Papa=require(_0xe2dc('0x10'));var Redis=require(_0xe2dc('0x11'));var authService=require(_0xe2dc('0x12'));var qs=require(_0xe2dc('0x13'));var as=require(_0xe2dc('0x14'));var hardwareService=require(_0xe2dc('0x15'));var logger=require(_0xe2dc('0x16'))('api');var utils=require(_0xe2dc('0x17'));var config=require(_0xe2dc('0x18'));var licenseUtil=require(_0xe2dc('0x19'));var db=require(_0xe2dc('0x1a'))['db'];function respondWithStatusCode(_0x5c2032,_0x1d2cf5){_0x1d2cf5=_0x1d2cf5||0xcc;return function(_0x55a1d8){if(_0x55a1d8){return _0x5c2032[_0xe2dc('0x1b')](_0x1d2cf5);}return _0x5c2032[_0xe2dc('0x1c')](_0x1d2cf5)[_0xe2dc('0x1d')]();};}function respondWithResult(_0x57faa4,_0x52c144){_0x52c144=_0x52c144||0xc8;return function(_0x3b3830){if(_0x3b3830){return _0x57faa4[_0xe2dc('0x1c')](_0x52c144)[_0xe2dc('0x1e')](_0x3b3830);}};}function respondWithFilteredResult(_0x472571,_0x2ace65){return function(_0xa5d6b5){if(_0xa5d6b5){var _0x3cafd3=typeof _0x2ace65[_0xe2dc('0x1f')]===_0xe2dc('0x20')&&typeof _0x2ace65[_0xe2dc('0x21')]===_0xe2dc('0x20');var _0x3d4b88=_0xa5d6b5[_0xe2dc('0x22')];var _0x255ffc=_0x3cafd3?0x0:_0x2ace65[_0xe2dc('0x1f')];var _0x543999=_0x3cafd3?_0xa5d6b5['count']:_0x2ace65[_0xe2dc('0x1f')]+_0x2ace65[_0xe2dc('0x21')];var _0x27366;if(_0x543999>=_0x3d4b88){_0x543999=_0x3d4b88;_0x27366=0xc8;}else{_0x27366=0xce;}_0x472571[_0xe2dc('0x1c')](_0x27366);return _0x472571[_0xe2dc('0x23')](_0xe2dc('0x24'),_0x255ffc+'-'+_0x543999+'/'+_0x3d4b88)['json'](_0xa5d6b5);}return null;};}function patchUpdates(_0xbf326d){return function(_0x41e425){try{jsonpatch[_0xe2dc('0x25')](_0x41e425,_0xbf326d,!![]);}catch(_0x56d2ff){return BPromise['reject'](_0x56d2ff);}return _0x41e425['save']();};}function saveUpdates(_0x3c8583,_0x208103){return function(_0x2253c6){if(_0x2253c6){return _0x2253c6[_0xe2dc('0x26')](_0x3c8583)[_0xe2dc('0x27')](function(_0x5bb044){return _0x5bb044;});}return null;};}function removeEntity(_0x4f1d69,_0x58e6e9){return function(_0x24ae8d){if(_0x24ae8d){return _0x24ae8d[_0xe2dc('0x28')]()[_0xe2dc('0x27')](function(){_0x4f1d69[_0xe2dc('0x1c')](0xcc)[_0xe2dc('0x1d')]();});}};}function handleEntityNotFound(_0x4f4f81,_0x4cdd5b){return function(_0x647675){if(!_0x647675){_0x4f4f81[_0xe2dc('0x1b')](0x194);}return _0x647675;};}function handleError(_0x4b289a,_0x41084d){_0x41084d=_0x41084d||0x1f4;return function(_0x311b2a){logger[_0xe2dc('0x29')](_0x311b2a[_0xe2dc('0x2a')]);if(_0x311b2a[_0xe2dc('0x2b')]){delete _0x311b2a['name'];}_0x4b289a[_0xe2dc('0x1c')](_0x41084d)[_0xe2dc('0x2c')](_0x311b2a);};}exports[_0xe2dc('0x2d')]=function(_0x491b41,_0xca1761){var _0x18ac7b={},_0x93846c={},_0x28270f={'count':0x0,'rows':[]};var _0x4be309=_['map'](db[_0xe2dc('0x2e')]['rawAttributes'],function(_0x59a8c5){return{'name':_0x59a8c5['fieldName'],'type':_0x59a8c5[_0xe2dc('0x2f')][_0xe2dc('0x30')]};});_0x93846c['model']=_[_0xe2dc('0x31')](_0x4be309,_0xe2dc('0x2b'));_0x93846c[_0xe2dc('0x32')]=_['keys'](_0x491b41[_0xe2dc('0x32')]);_0x93846c[_0xe2dc('0x33')]=_['intersection'](_0x93846c[_0xe2dc('0x34')],_0x93846c[_0xe2dc('0x32')]);_0x18ac7b[_0xe2dc('0x35')]=_[_0xe2dc('0x36')](_0x93846c[_0xe2dc('0x34')],qs['fields'](_0x491b41[_0xe2dc('0x32')][_0xe2dc('0x37')]));_0x18ac7b[_0xe2dc('0x35')]=_0x18ac7b['attributes'][_0xe2dc('0x38')]?_0x18ac7b[_0xe2dc('0x35')]:_0x93846c[_0xe2dc('0x34')];if(!_0x491b41[_0xe2dc('0x32')]['hasOwnProperty']('nolimit')){_0x18ac7b[_0xe2dc('0x21')]=qs[_0xe2dc('0x21')](_0x491b41['query'][_0xe2dc('0x21')]);_0x18ac7b[_0xe2dc('0x1f')]=qs['offset'](_0x491b41['query'][_0xe2dc('0x1f')]);}_0x18ac7b[_0xe2dc('0x39')]=qs['sort'](_0x491b41[_0xe2dc('0x32')][_0xe2dc('0x3a')]);_0x18ac7b[_0xe2dc('0x3b')]=qs[_0xe2dc('0x33')](_[_0xe2dc('0x3c')](_0x491b41[_0xe2dc('0x32')],_0x93846c['filters']),_0x4be309);if(_0x491b41[_0xe2dc('0x32')][_0xe2dc('0x3d')]){_0x18ac7b[_0xe2dc('0x3b')]=_['merge'](_0x18ac7b[_0xe2dc('0x3b')],{'$or':_[_0xe2dc('0x31')](_0x4be309,function(_0xcc139a){if(_0xcc139a[_0xe2dc('0x2f')]!==_0xe2dc('0x3e')){var _0x4a6da1={};_0x4a6da1[_0xcc139a['name']]={'$like':'%'+_0x491b41[_0xe2dc('0x32')][_0xe2dc('0x3d')]+'%'};return _0x4a6da1;}})});}_0x18ac7b=_[_0xe2dc('0x3f')]({},_0x18ac7b,_0x491b41[_0xe2dc('0x40')]);var _0x44c1ce={'where':_0x18ac7b[_0xe2dc('0x3b')]};return db['ServicenowConfiguration'][_0xe2dc('0x22')](_0x44c1ce)['then'](function(_0x3ab4ca){_0x28270f[_0xe2dc('0x22')]=_0x3ab4ca;if(_0x491b41[_0xe2dc('0x32')]['includeAll']){_0x18ac7b[_0xe2dc('0x41')]=[{'all':!![]}];}return db['ServicenowConfiguration']['findAll'](_0x18ac7b);})[_0xe2dc('0x27')](function(_0x527a14){_0x28270f[_0xe2dc('0x42')]=_0x527a14;return _0x28270f;})[_0xe2dc('0x27')](respondWithFilteredResult(_0xca1761,_0x18ac7b))['catch'](handleError(_0xca1761,null));};exports[_0xe2dc('0x43')]=function(_0x242ec0,_0x213c2e){var _0x5bd2a9={'raw':![],'where':{'id':_0x242ec0[_0xe2dc('0x44')]['id']}},_0x10ce47={};_0x10ce47[_0xe2dc('0x34')]=_[_0xe2dc('0x45')](db[_0xe2dc('0x2e')][_0xe2dc('0x46')]);_0x10ce47[_0xe2dc('0x32')]=_[_0xe2dc('0x45')](_0x242ec0[_0xe2dc('0x32')]);_0x10ce47[_0xe2dc('0x33')]=_[_0xe2dc('0x36')](_0x10ce47['model'],_0x10ce47[_0xe2dc('0x32')]);_0x5bd2a9[_0xe2dc('0x35')]=_['intersection'](_0x10ce47[_0xe2dc('0x34')],qs[_0xe2dc('0x37')](_0x242ec0['query'][_0xe2dc('0x37')]));_0x5bd2a9[_0xe2dc('0x35')]=_0x5bd2a9['attributes'][_0xe2dc('0x38')]?_0x5bd2a9[_0xe2dc('0x35')]:_0x10ce47['model'];if(_0x242ec0[_0xe2dc('0x32')][_0xe2dc('0x47')]){_0x5bd2a9[_0xe2dc('0x41')]=[{'all':!![]}];}_0x5bd2a9=_['merge']({},_0x5bd2a9,_0x242ec0[_0xe2dc('0x40')]);return db['ServicenowConfiguration'][_0xe2dc('0x48')](_0x5bd2a9)[_0xe2dc('0x27')](handleEntityNotFound(_0x213c2e,null))[_0xe2dc('0x27')](respondWithResult(_0x213c2e,null))[_0xe2dc('0x49')](handleError(_0x213c2e,null));};exports[_0xe2dc('0x4a')]=function(_0x42741b,_0x3c2c99){return db['ServicenowConfiguration'][_0xe2dc('0x4a')](_0x42741b['body'],{})[_0xe2dc('0x27')](respondWithResult(_0x3c2c99,0xc9))[_0xe2dc('0x49')](handleError(_0x3c2c99,null));};exports[_0xe2dc('0x26')]=function(_0x28313b,_0xa12445){if(_0x28313b[_0xe2dc('0x4b')]['id']){delete _0x28313b[_0xe2dc('0x4b')]['id'];}return db[_0xe2dc('0x2e')]['find']({'where':{'id':_0x28313b[_0xe2dc('0x44')]['id']}})['then'](handleEntityNotFound(_0xa12445,null))[_0xe2dc('0x27')](saveUpdates(_0x28313b[_0xe2dc('0x4b')],null))[_0xe2dc('0x27')](respondWithResult(_0xa12445,null))['catch'](handleError(_0xa12445,null));};exports[_0xe2dc('0x28')]=function(_0x529d42,_0x5ce110){return db[_0xe2dc('0x2e')][_0xe2dc('0x48')]({'where':{'id':_0x529d42[_0xe2dc('0x44')]['id']}})[_0xe2dc('0x27')](handleEntityNotFound(_0x5ce110,null))[_0xe2dc('0x27')](removeEntity(_0x5ce110,null))[_0xe2dc('0x49')](handleError(_0x5ce110,null));};exports[_0xe2dc('0x4c')]=function(_0x5dde0d,_0x334cb9,_0xaf101a){var _0x31366d={};var _0x2c9c74={};var _0x51026b;var _0x246a0a;return db[_0xe2dc('0x2e')][_0xe2dc('0x4d')]({'where':{'id':_0x5dde0d['params']['id']}})[_0xe2dc('0x27')](handleEntityNotFound(_0x334cb9,null))[_0xe2dc('0x27')](function(_0x29d1a5){if(_0x29d1a5){_0x51026b=_0x29d1a5;_0x2c9c74[_0xe2dc('0x34')]=_[_0xe2dc('0x45')](db['ServicenowField'][_0xe2dc('0x46')]);_0x2c9c74[_0xe2dc('0x32')]=_[_0xe2dc('0x45')](_0x5dde0d['query']);_0x2c9c74['filters']=_[_0xe2dc('0x36')](_0x2c9c74[_0xe2dc('0x34')],_0x2c9c74['query']);_0x31366d[_0xe2dc('0x35')]=_[_0xe2dc('0x36')](_0x2c9c74['model'],qs[_0xe2dc('0x37')](_0x5dde0d[_0xe2dc('0x32')]['fields']));_0x31366d[_0xe2dc('0x35')]=_0x31366d[_0xe2dc('0x35')][_0xe2dc('0x38')]?_0x31366d[_0xe2dc('0x35')]:_0x2c9c74[_0xe2dc('0x34')];_0x31366d[_0xe2dc('0x39')]=qs['sort'](_0x5dde0d[_0xe2dc('0x32')][_0xe2dc('0x3a')]);_0x31366d[_0xe2dc('0x3b')]=qs[_0xe2dc('0x33')](_['pick'](_0x5dde0d[_0xe2dc('0x32')],_0x2c9c74[_0xe2dc('0x33')]));if(_0x5dde0d['query'][_0xe2dc('0x3d')]){_0x31366d[_0xe2dc('0x3b')]=_['merge'](_0x31366d['where'],{'$or':_[_0xe2dc('0x31')](_0x31366d[_0xe2dc('0x35')],function(_0x35fa7e){var _0x4e4b71={};_0x4e4b71[_0x35fa7e]={'$like':'%'+_0x5dde0d['query'][_0xe2dc('0x3d')]+'%'};return _0x4e4b71;})});}_0x31366d=_['merge']({},_0x31366d,_0x5dde0d[_0xe2dc('0x40')]);return _0x51026b[_0xe2dc('0x4c')](_0x31366d);}})[_0xe2dc('0x27')](function(_0x5e1d8f){if(_0x5e1d8f){_0x246a0a=_0x5e1d8f[_0xe2dc('0x38')];if(!_0x5dde0d[_0xe2dc('0x32')]['hasOwnProperty'](_0xe2dc('0x4e'))){_0x31366d['limit']=qs[_0xe2dc('0x21')](_0x5dde0d['query']['limit']);_0x31366d[_0xe2dc('0x1f')]=qs[_0xe2dc('0x1f')](_0x5dde0d[_0xe2dc('0x32')]['offset']);}return _0x51026b[_0xe2dc('0x4c')](_0x31366d);}})[_0xe2dc('0x27')](function(_0x1139e6){if(_0x1139e6){return _0x1139e6?{'count':_0x246a0a,'rows':_0x1139e6}:null;}})[_0xe2dc('0x27')](respondWithResult(_0x334cb9,null))['catch'](handleError(_0x334cb9,null));};exports[_0xe2dc('0x4f')]=function(_0x7c950e,_0x3edbb3,_0x225281){var _0x393dc2={};var _0x2aa131={};var _0x3d4163;var _0x4c434d;return db[_0xe2dc('0x2e')]['findOne']({'where':{'id':_0x7c950e['params']['id']}})[_0xe2dc('0x27')](handleEntityNotFound(_0x3edbb3,null))[_0xe2dc('0x27')](function(_0x2e91b4){if(_0x2e91b4){_0x3d4163=_0x2e91b4;_0x2aa131['model']=_['keys'](db['ServicenowField'][_0xe2dc('0x46')]);_0x2aa131[_0xe2dc('0x32')]=_[_0xe2dc('0x45')](_0x7c950e[_0xe2dc('0x32')]);_0x2aa131[_0xe2dc('0x33')]=_['intersection'](_0x2aa131[_0xe2dc('0x34')],_0x2aa131[_0xe2dc('0x32')]);_0x393dc2[_0xe2dc('0x35')]=_[_0xe2dc('0x36')](_0x2aa131[_0xe2dc('0x34')],qs['fields'](_0x7c950e[_0xe2dc('0x32')][_0xe2dc('0x37')]));_0x393dc2[_0xe2dc('0x35')]=_0x393dc2[_0xe2dc('0x35')][_0xe2dc('0x38')]?_0x393dc2[_0xe2dc('0x35')]:_0x2aa131[_0xe2dc('0x34')];_0x393dc2['order']=qs[_0xe2dc('0x3a')](_0x7c950e[_0xe2dc('0x32')][_0xe2dc('0x3a')]);_0x393dc2[_0xe2dc('0x3b')]=qs[_0xe2dc('0x33')](_[_0xe2dc('0x3c')](_0x7c950e[_0xe2dc('0x32')],_0x2aa131['filters']));if(_0x7c950e[_0xe2dc('0x32')][_0xe2dc('0x3d')]){_0x393dc2[_0xe2dc('0x3b')]=_[_0xe2dc('0x3f')](_0x393dc2['where'],{'$or':_[_0xe2dc('0x31')](_0x393dc2['attributes'],function(_0x5f2448){var _0x4d64fd={};_0x4d64fd[_0x5f2448]={'$like':'%'+_0x7c950e[_0xe2dc('0x32')][_0xe2dc('0x3d')]+'%'};return _0x4d64fd;})});}_0x393dc2=_['merge']({},_0x393dc2,_0x7c950e['options']);return _0x3d4163[_0xe2dc('0x4f')](_0x393dc2);}})[_0xe2dc('0x27')](function(_0x415b8e){if(_0x415b8e){_0x4c434d=_0x415b8e[_0xe2dc('0x38')];if(!_0x7c950e[_0xe2dc('0x32')][_0xe2dc('0x50')]('nolimit')){_0x393dc2[_0xe2dc('0x21')]=qs[_0xe2dc('0x21')](_0x7c950e[_0xe2dc('0x32')][_0xe2dc('0x21')]);_0x393dc2[_0xe2dc('0x1f')]=qs[_0xe2dc('0x1f')](_0x7c950e[_0xe2dc('0x32')][_0xe2dc('0x1f')]);}return _0x3d4163[_0xe2dc('0x4f')](_0x393dc2);}})[_0xe2dc('0x27')](function(_0x378f3f){if(_0x378f3f){return _0x378f3f?{'count':_0x4c434d,'rows':_0x378f3f}:null;}})['then'](respondWithResult(_0x3edbb3,null))[_0xe2dc('0x49')](handleError(_0x3edbb3,null));};exports['getDescriptions']=function(_0x5b6762,_0x37a937,_0x5ae9b2){var _0x28484c={};var _0x3f7a2e={};var _0x50cfdd;var _0x40a833;return db[_0xe2dc('0x2e')]['findOne']({'where':{'id':_0x5b6762[_0xe2dc('0x44')]['id']}})[_0xe2dc('0x27')](handleEntityNotFound(_0x37a937,null))['then'](function(_0x91b17b){if(_0x91b17b){_0x50cfdd=_0x91b17b;_0x3f7a2e[_0xe2dc('0x34')]=_['keys'](db['ServicenowField'][_0xe2dc('0x46')]);_0x3f7a2e[_0xe2dc('0x32')]=_['keys'](_0x5b6762[_0xe2dc('0x32')]);_0x3f7a2e[_0xe2dc('0x33')]=_[_0xe2dc('0x36')](_0x3f7a2e[_0xe2dc('0x34')],_0x3f7a2e[_0xe2dc('0x32')]);_0x28484c[_0xe2dc('0x35')]=_[_0xe2dc('0x36')](_0x3f7a2e[_0xe2dc('0x34')],qs['fields'](_0x5b6762[_0xe2dc('0x32')]['fields']));_0x28484c['attributes']=_0x28484c[_0xe2dc('0x35')][_0xe2dc('0x38')]?_0x28484c[_0xe2dc('0x35')]:_0x3f7a2e[_0xe2dc('0x34')];_0x28484c[_0xe2dc('0x39')]=qs[_0xe2dc('0x3a')](_0x5b6762[_0xe2dc('0x32')][_0xe2dc('0x3a')]);_0x28484c[_0xe2dc('0x3b')]=qs['filters'](_['pick'](_0x5b6762[_0xe2dc('0x32')],_0x3f7a2e['filters']));if(_0x5b6762[_0xe2dc('0x32')][_0xe2dc('0x3d')]){_0x28484c['where']=_[_0xe2dc('0x3f')](_0x28484c[_0xe2dc('0x3b')],{'$or':_[_0xe2dc('0x31')](_0x28484c[_0xe2dc('0x35')],function(_0x2ac002){var _0x4563c9={};_0x4563c9[_0x2ac002]={'$like':'%'+_0x5b6762[_0xe2dc('0x32')][_0xe2dc('0x3d')]+'%'};return _0x4563c9;})});}_0x28484c=_[_0xe2dc('0x3f')]({},_0x28484c,_0x5b6762[_0xe2dc('0x40')]);return _0x50cfdd[_0xe2dc('0x51')](_0x28484c);}})['then'](function(_0x550d5c){if(_0x550d5c){_0x40a833=_0x550d5c[_0xe2dc('0x38')];if(!_0x5b6762[_0xe2dc('0x32')][_0xe2dc('0x50')](_0xe2dc('0x4e'))){_0x28484c['limit']=qs['limit'](_0x5b6762[_0xe2dc('0x32')][_0xe2dc('0x21')]);_0x28484c[_0xe2dc('0x1f')]=qs['offset'](_0x5b6762[_0xe2dc('0x32')][_0xe2dc('0x1f')]);}return _0x50cfdd[_0xe2dc('0x51')](_0x28484c);}})[_0xe2dc('0x27')](function(_0x367350){if(_0x367350){return _0x367350?{'count':_0x40a833,'rows':_0x367350}:null;}})['then'](respondWithResult(_0x37a937,null))['catch'](handleError(_0x37a937,null));};