Built motion from commit 25580385.|2.6.2
[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 _0xe28d=['path','sox','to-csv','ejs','fs-extra','squel','crypto','desk.js','querystring','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','sendStatus','status','end','offset','undefined','limit','count','set','json','apply','reject','save','then','destroy','error','stack','name','index','map','ServicenowConfiguration','rawAttributes','fieldName','type','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','VIRTUAL','filter','merge','options','includeAll','include','findAll','show','params','find','catch','create','update','body','ServicenowField','getFields','getSubjects','getDescriptions','findOne','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache'];(function(_0x64e55,_0x2cd630){var _0x33dd01=function(_0x52abe0){while(--_0x52abe0){_0x64e55['push'](_0x64e55['shift']());}};_0x33dd01(++_0x2cd630);}(_0xe28d,0x139));var _0xde28=function(_0x43776a,_0x4eb74c){_0x43776a=_0x43776a-0x0;var _0x18eb8f=_0xe28d[_0x43776a];return _0x18eb8f;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xde28('0x0'));var zipdir=require(_0xde28('0x1'));var jsonpatch=require(_0xde28('0x2'));var rp=require(_0xde28('0x3'));var moment=require(_0xde28('0x4'));var BPromise=require(_0xde28('0x5'));var Mustache=require(_0xde28('0x6'));var util=require('util');var path=require(_0xde28('0x7'));var sox=require(_0xde28('0x8'));var csv=require(_0xde28('0x9'));var ejs=require(_0xde28('0xa'));var fs=require('fs');var fs_extra=require(_0xde28('0xb'));var _=require('lodash');var squel=require(_0xde28('0xc'));var crypto=require(_0xde28('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xde28('0xe'));var toCsv=require('to-csv');var querystring=require(_0xde28('0xf'));var Papa=require(_0xde28('0x10'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xde28('0x11'));var as=require(_0xde28('0x12'));var hardwareService=require(_0xde28('0x13'));var logger=require(_0xde28('0x14'))(_0xde28('0x15'));var utils=require(_0xde28('0x16'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xde28('0x17'))['db'];function respondWithStatusCode(_0x11f5c2,_0x166be9){_0x166be9=_0x166be9||0xcc;return function(_0x805675){if(_0x805675){return _0x11f5c2[_0xde28('0x18')](_0x166be9);}return _0x11f5c2[_0xde28('0x19')](_0x166be9)[_0xde28('0x1a')]();};}function respondWithResult(_0x2c358d,_0x3eb489){_0x3eb489=_0x3eb489||0xc8;return function(_0x300c87){if(_0x300c87){return _0x2c358d[_0xde28('0x19')](_0x3eb489)['json'](_0x300c87);}};}function respondWithFilteredResult(_0x427d4f,_0x545ba5){return function(_0x47fc8d){if(_0x47fc8d){var _0x280307=typeof _0x545ba5[_0xde28('0x1b')]===_0xde28('0x1c')&&typeof _0x545ba5[_0xde28('0x1d')]===_0xde28('0x1c');var _0x29bd3c=_0x47fc8d['count'];var _0x1c626f=_0x280307?0x0:_0x545ba5[_0xde28('0x1b')];var _0x51ebed=_0x280307?_0x47fc8d[_0xde28('0x1e')]:_0x545ba5[_0xde28('0x1b')]+_0x545ba5[_0xde28('0x1d')];var _0x1396d2;if(_0x51ebed>=_0x29bd3c){_0x51ebed=_0x29bd3c;_0x1396d2=0xc8;}else{_0x1396d2=0xce;}_0x427d4f['status'](_0x1396d2);return _0x427d4f[_0xde28('0x1f')]('Content-Range',_0x1c626f+'-'+_0x51ebed+'/'+_0x29bd3c)[_0xde28('0x20')](_0x47fc8d);}return null;};}function patchUpdates(_0x25b82d){return function(_0x5c2a88){try{jsonpatch[_0xde28('0x21')](_0x5c2a88,_0x25b82d,!![]);}catch(_0x3cad34){return BPromise[_0xde28('0x22')](_0x3cad34);}return _0x5c2a88[_0xde28('0x23')]();};}function saveUpdates(_0x153888,_0x5ea635){return function(_0x57c82b){if(_0x57c82b){return _0x57c82b['update'](_0x153888)[_0xde28('0x24')](function(_0x239aec){return _0x239aec;});}return null;};}function removeEntity(_0x25618e,_0x34a757){return function(_0x5188bc){if(_0x5188bc){return _0x5188bc[_0xde28('0x25')]()['then'](function(){_0x25618e[_0xde28('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0xfa73ff,_0x25bb59){return function(_0x531f74){if(!_0x531f74){_0xfa73ff[_0xde28('0x18')](0x194);}return _0x531f74;};}function handleError(_0x433659,_0x43bb7e){_0x43bb7e=_0x43bb7e||0x1f4;return function(_0x59c6a1){logger[_0xde28('0x26')](_0x59c6a1[_0xde28('0x27')]);if(_0x59c6a1[_0xde28('0x28')]){delete _0x59c6a1['name'];}_0x433659[_0xde28('0x19')](_0x43bb7e)['send'](_0x59c6a1);};}exports[_0xde28('0x29')]=function(_0x39a988,_0x5c82e8){var _0x1655d4={},_0xc896b={},_0x111c62={'count':0x0,'rows':[]};var _0x47641f=_[_0xde28('0x2a')](db[_0xde28('0x2b')][_0xde28('0x2c')],function(_0x270eae){return{'name':_0x270eae[_0xde28('0x2d')],'type':_0x270eae[_0xde28('0x2e')]['key']};});_0xc896b[_0xde28('0x2f')]=_['map'](_0x47641f,_0xde28('0x28'));_0xc896b[_0xde28('0x30')]=_[_0xde28('0x31')](_0x39a988[_0xde28('0x30')]);_0xc896b['filters']=_[_0xde28('0x32')](_0xc896b[_0xde28('0x2f')],_0xc896b[_0xde28('0x30')]);_0x1655d4[_0xde28('0x33')]=_[_0xde28('0x32')](_0xc896b[_0xde28('0x2f')],qs[_0xde28('0x34')](_0x39a988[_0xde28('0x30')][_0xde28('0x34')]));_0x1655d4[_0xde28('0x33')]=_0x1655d4[_0xde28('0x33')][_0xde28('0x35')]?_0x1655d4[_0xde28('0x33')]:_0xc896b['model'];if(!_0x39a988[_0xde28('0x30')][_0xde28('0x36')](_0xde28('0x37'))){_0x1655d4[_0xde28('0x1d')]=qs[_0xde28('0x1d')](_0x39a988[_0xde28('0x30')]['limit']);_0x1655d4[_0xde28('0x1b')]=qs[_0xde28('0x1b')](_0x39a988[_0xde28('0x30')][_0xde28('0x1b')]);}_0x1655d4[_0xde28('0x38')]=qs[_0xde28('0x39')](_0x39a988['query']['sort']);_0x1655d4[_0xde28('0x3a')]=qs[_0xde28('0x3b')](_[_0xde28('0x3c')](_0x39a988[_0xde28('0x30')],_0xc896b[_0xde28('0x3b')]),_0x47641f);if(_0x39a988[_0xde28('0x30')]['filter']){_0x1655d4['where']=_['merge'](_0x1655d4[_0xde28('0x3a')],{'$or':_[_0xde28('0x2a')](_0x47641f,function(_0x23c204){if(_0x23c204[_0xde28('0x2e')]!==_0xde28('0x3d')){var _0x4b0915={};_0x4b0915[_0x23c204[_0xde28('0x28')]]={'$like':'%'+_0x39a988[_0xde28('0x30')][_0xde28('0x3e')]+'%'};return _0x4b0915;}})});}_0x1655d4=_[_0xde28('0x3f')]({},_0x1655d4,_0x39a988[_0xde28('0x40')]);var _0x2fa45b={'where':_0x1655d4[_0xde28('0x3a')]};return db['ServicenowConfiguration'][_0xde28('0x1e')](_0x2fa45b)[_0xde28('0x24')](function(_0x3733c7){_0x111c62[_0xde28('0x1e')]=_0x3733c7;if(_0x39a988['query'][_0xde28('0x41')]){_0x1655d4[_0xde28('0x42')]=[{'all':!![]}];}return db[_0xde28('0x2b')][_0xde28('0x43')](_0x1655d4);})[_0xde28('0x24')](function(_0x235503){_0x111c62['rows']=_0x235503;return _0x111c62;})[_0xde28('0x24')](respondWithFilteredResult(_0x5c82e8,_0x1655d4))['catch'](handleError(_0x5c82e8,null));};exports[_0xde28('0x44')]=function(_0x87e9c5,_0x4d9a8f){var _0x3df679={'raw':![],'where':{'id':_0x87e9c5[_0xde28('0x45')]['id']}},_0x36747c={};_0x36747c['model']=_[_0xde28('0x31')](db[_0xde28('0x2b')]['rawAttributes']);_0x36747c['query']=_[_0xde28('0x31')](_0x87e9c5['query']);_0x36747c[_0xde28('0x3b')]=_[_0xde28('0x32')](_0x36747c[_0xde28('0x2f')],_0x36747c['query']);_0x3df679['attributes']=_['intersection'](_0x36747c[_0xde28('0x2f')],qs[_0xde28('0x34')](_0x87e9c5[_0xde28('0x30')][_0xde28('0x34')]));_0x3df679[_0xde28('0x33')]=_0x3df679[_0xde28('0x33')][_0xde28('0x35')]?_0x3df679[_0xde28('0x33')]:_0x36747c[_0xde28('0x2f')];if(_0x87e9c5[_0xde28('0x30')]['includeAll']){_0x3df679[_0xde28('0x42')]=[{'all':!![]}];}_0x3df679=_[_0xde28('0x3f')]({},_0x3df679,_0x87e9c5[_0xde28('0x40')]);return db[_0xde28('0x2b')][_0xde28('0x46')](_0x3df679)[_0xde28('0x24')](handleEntityNotFound(_0x4d9a8f,null))[_0xde28('0x24')](respondWithResult(_0x4d9a8f,null))[_0xde28('0x47')](handleError(_0x4d9a8f,null));};exports[_0xde28('0x48')]=function(_0x3eb4e1,_0x5508a2){return db[_0xde28('0x2b')][_0xde28('0x48')](_0x3eb4e1['body'],{})['then'](respondWithResult(_0x5508a2,0xc9))[_0xde28('0x47')](handleError(_0x5508a2,null));};exports[_0xde28('0x49')]=function(_0x495391,_0x187658){if(_0x495391[_0xde28('0x4a')]['id']){delete _0x495391[_0xde28('0x4a')]['id'];}return db['ServicenowConfiguration'][_0xde28('0x46')]({'where':{'id':_0x495391['params']['id']}})['then'](handleEntityNotFound(_0x187658,null))['then'](saveUpdates(_0x495391[_0xde28('0x4a')],null))[_0xde28('0x24')](respondWithResult(_0x187658,null))['catch'](handleError(_0x187658,null));};exports['destroy']=function(_0x14cf06,_0x3bb33b){return db['ServicenowConfiguration'][_0xde28('0x46')]({'where':{'id':_0x14cf06[_0xde28('0x45')]['id']}})[_0xde28('0x24')](handleEntityNotFound(_0x3bb33b,null))[_0xde28('0x24')](removeEntity(_0x3bb33b,null))[_0xde28('0x47')](handleError(_0x3bb33b,null));};exports['getFields']=function(_0x1bbf58,_0x315ac9,_0x5da8ff){var _0x56a804={};var _0x262831={};var _0x323572;var _0x47e21c;return db[_0xde28('0x2b')]['findOne']({'where':{'id':_0x1bbf58['params']['id']}})[_0xde28('0x24')](handleEntityNotFound(_0x315ac9,null))[_0xde28('0x24')](function(_0x395495){if(_0x395495){_0x323572=_0x395495;_0x262831[_0xde28('0x2f')]=_[_0xde28('0x31')](db[_0xde28('0x4b')][_0xde28('0x2c')]);_0x262831[_0xde28('0x30')]=_[_0xde28('0x31')](_0x1bbf58[_0xde28('0x30')]);_0x262831[_0xde28('0x3b')]=_[_0xde28('0x32')](_0x262831[_0xde28('0x2f')],_0x262831[_0xde28('0x30')]);_0x56a804[_0xde28('0x33')]=_[_0xde28('0x32')](_0x262831['model'],qs['fields'](_0x1bbf58['query'][_0xde28('0x34')]));_0x56a804[_0xde28('0x33')]=_0x56a804[_0xde28('0x33')][_0xde28('0x35')]?_0x56a804[_0xde28('0x33')]:_0x262831[_0xde28('0x2f')];_0x56a804['order']=qs[_0xde28('0x39')](_0x1bbf58[_0xde28('0x30')][_0xde28('0x39')]);_0x56a804[_0xde28('0x3a')]=qs[_0xde28('0x3b')](_[_0xde28('0x3c')](_0x1bbf58[_0xde28('0x30')],_0x262831[_0xde28('0x3b')]));if(_0x1bbf58['query'][_0xde28('0x3e')]){_0x56a804['where']=_[_0xde28('0x3f')](_0x56a804[_0xde28('0x3a')],{'$or':_[_0xde28('0x2a')](_0x56a804['attributes'],function(_0x338b2c){var _0x178d25={};_0x178d25[_0x338b2c]={'$like':'%'+_0x1bbf58[_0xde28('0x30')][_0xde28('0x3e')]+'%'};return _0x178d25;})});}_0x56a804=_['merge']({},_0x56a804,_0x1bbf58['options']);return _0x323572[_0xde28('0x4c')](_0x56a804);}})[_0xde28('0x24')](function(_0x83d894){if(_0x83d894){_0x47e21c=_0x83d894[_0xde28('0x35')];if(!_0x1bbf58[_0xde28('0x30')][_0xde28('0x36')](_0xde28('0x37'))){_0x56a804[_0xde28('0x1d')]=qs[_0xde28('0x1d')](_0x1bbf58[_0xde28('0x30')]['limit']);_0x56a804[_0xde28('0x1b')]=qs[_0xde28('0x1b')](_0x1bbf58['query'][_0xde28('0x1b')]);}return _0x323572[_0xde28('0x4c')](_0x56a804);}})[_0xde28('0x24')](function(_0x3b8f2d){if(_0x3b8f2d){return _0x3b8f2d?{'count':_0x47e21c,'rows':_0x3b8f2d}:null;}})[_0xde28('0x24')](respondWithResult(_0x315ac9,null))[_0xde28('0x47')](handleError(_0x315ac9,null));};exports[_0xde28('0x4d')]=function(_0x3965d1,_0x23e7ca,_0xdb5f90){var _0x3b4cde={};var _0x2297ee={};var _0x342fe9;var _0x226766;return db['ServicenowConfiguration']['findOne']({'where':{'id':_0x3965d1[_0xde28('0x45')]['id']}})[_0xde28('0x24')](handleEntityNotFound(_0x23e7ca,null))[_0xde28('0x24')](function(_0x5d2600){if(_0x5d2600){_0x342fe9=_0x5d2600;_0x2297ee['model']=_[_0xde28('0x31')](db[_0xde28('0x4b')][_0xde28('0x2c')]);_0x2297ee[_0xde28('0x30')]=_[_0xde28('0x31')](_0x3965d1[_0xde28('0x30')]);_0x2297ee[_0xde28('0x3b')]=_[_0xde28('0x32')](_0x2297ee[_0xde28('0x2f')],_0x2297ee[_0xde28('0x30')]);_0x3b4cde[_0xde28('0x33')]=_[_0xde28('0x32')](_0x2297ee[_0xde28('0x2f')],qs['fields'](_0x3965d1[_0xde28('0x30')]['fields']));_0x3b4cde[_0xde28('0x33')]=_0x3b4cde[_0xde28('0x33')][_0xde28('0x35')]?_0x3b4cde['attributes']:_0x2297ee['model'];_0x3b4cde[_0xde28('0x38')]=qs[_0xde28('0x39')](_0x3965d1['query'][_0xde28('0x39')]);_0x3b4cde[_0xde28('0x3a')]=qs['filters'](_[_0xde28('0x3c')](_0x3965d1['query'],_0x2297ee[_0xde28('0x3b')]));if(_0x3965d1[_0xde28('0x30')][_0xde28('0x3e')]){_0x3b4cde[_0xde28('0x3a')]=_[_0xde28('0x3f')](_0x3b4cde[_0xde28('0x3a')],{'$or':_[_0xde28('0x2a')](_0x3b4cde['attributes'],function(_0x552243){var _0x2b5a53={};_0x2b5a53[_0x552243]={'$like':'%'+_0x3965d1[_0xde28('0x30')][_0xde28('0x3e')]+'%'};return _0x2b5a53;})});}_0x3b4cde=_[_0xde28('0x3f')]({},_0x3b4cde,_0x3965d1[_0xde28('0x40')]);return _0x342fe9[_0xde28('0x4d')](_0x3b4cde);}})['then'](function(_0x39c0e4){if(_0x39c0e4){_0x226766=_0x39c0e4[_0xde28('0x35')];if(!_0x3965d1[_0xde28('0x30')]['hasOwnProperty']('nolimit')){_0x3b4cde['limit']=qs[_0xde28('0x1d')](_0x3965d1['query'][_0xde28('0x1d')]);_0x3b4cde[_0xde28('0x1b')]=qs['offset'](_0x3965d1['query']['offset']);}return _0x342fe9[_0xde28('0x4d')](_0x3b4cde);}})[_0xde28('0x24')](function(_0xc8c7b6){if(_0xc8c7b6){return _0xc8c7b6?{'count':_0x226766,'rows':_0xc8c7b6}:null;}})[_0xde28('0x24')](respondWithResult(_0x23e7ca,null))[_0xde28('0x47')](handleError(_0x23e7ca,null));};exports[_0xde28('0x4e')]=function(_0x6e07c6,_0x31929e,_0xa2e6c7){var _0x16be37={};var _0x2e0578={};var _0x335b57;var _0x2ee791;return db[_0xde28('0x2b')][_0xde28('0x4f')]({'where':{'id':_0x6e07c6[_0xde28('0x45')]['id']}})['then'](handleEntityNotFound(_0x31929e,null))[_0xde28('0x24')](function(_0x10e109){if(_0x10e109){_0x335b57=_0x10e109;_0x2e0578['model']=_[_0xde28('0x31')](db[_0xde28('0x4b')]['rawAttributes']);_0x2e0578['query']=_[_0xde28('0x31')](_0x6e07c6[_0xde28('0x30')]);_0x2e0578[_0xde28('0x3b')]=_[_0xde28('0x32')](_0x2e0578['model'],_0x2e0578['query']);_0x16be37['attributes']=_['intersection'](_0x2e0578[_0xde28('0x2f')],qs[_0xde28('0x34')](_0x6e07c6['query'][_0xde28('0x34')]));_0x16be37[_0xde28('0x33')]=_0x16be37['attributes']['length']?_0x16be37[_0xde28('0x33')]:_0x2e0578[_0xde28('0x2f')];_0x16be37[_0xde28('0x38')]=qs[_0xde28('0x39')](_0x6e07c6['query']['sort']);_0x16be37['where']=qs[_0xde28('0x3b')](_[_0xde28('0x3c')](_0x6e07c6[_0xde28('0x30')],_0x2e0578[_0xde28('0x3b')]));if(_0x6e07c6[_0xde28('0x30')][_0xde28('0x3e')]){_0x16be37[_0xde28('0x3a')]=_[_0xde28('0x3f')](_0x16be37[_0xde28('0x3a')],{'$or':_[_0xde28('0x2a')](_0x16be37[_0xde28('0x33')],function(_0x1eefdb){var _0x443818={};_0x443818[_0x1eefdb]={'$like':'%'+_0x6e07c6[_0xde28('0x30')][_0xde28('0x3e')]+'%'};return _0x443818;})});}_0x16be37=_[_0xde28('0x3f')]({},_0x16be37,_0x6e07c6[_0xde28('0x40')]);return _0x335b57['getDescriptions'](_0x16be37);}})['then'](function(_0x353933){if(_0x353933){_0x2ee791=_0x353933['length'];if(!_0x6e07c6[_0xde28('0x30')][_0xde28('0x36')](_0xde28('0x37'))){_0x16be37[_0xde28('0x1d')]=qs[_0xde28('0x1d')](_0x6e07c6[_0xde28('0x30')][_0xde28('0x1d')]);_0x16be37[_0xde28('0x1b')]=qs[_0xde28('0x1b')](_0x6e07c6[_0xde28('0x30')][_0xde28('0x1b')]);}return _0x335b57[_0xde28('0x4e')](_0x16be37);}})['then'](function(_0xcf0b7d){if(_0xcf0b7d){return _0xcf0b7d?{'count':_0x2ee791,'rows':_0xcf0b7d}:null;}})[_0xde28('0x24')](respondWithResult(_0x31929e,null))[_0xde28('0x47')](handleError(_0x31929e,null));};