Built motion from commit (unavailable).|2.5.27
[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 _0x819a=['send','index','ServicenowConfiguration','rawAttributes','fieldName','type','key','model','map','keys','query','intersection','attributes','fields','hasOwnProperty','order','sort','where','filters','pick','merge','VIRTUAL','filter','count','include','rows','show','params','length','includeAll','options','find','create','body','findOne','ServicenowField','getFields','getSubjects','nolimit','getDescriptions','eml-format','rimraf','zip-dir','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','jayson/promise','client','http','request','info','ServicenowConfiguration,\x20%s,\x20%s','ServicenowConfiguration,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','message','catch','sendStatus','end','status','json','offset','limit','set','apply','update','destroy','then','name'];(function(_0x534944,_0x134d68){var _0x57f82f=function(_0x325fa1){while(--_0x325fa1){_0x534944['push'](_0x534944['shift']());}};_0x57f82f(++_0x134d68);}(_0x819a,0x139));var _0xa819=function(_0x17a22a,_0x4d1ba7){_0x17a22a=_0x17a22a-0x0;var _0x1c1735=_0x819a[_0x17a22a];return _0x1c1735;};'use strict';var emlformat=require(_0xa819('0x0'));var rimraf=require(_0xa819('0x1'));var zipdir=require(_0xa819('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xa819('0x3'));var BPromise=require(_0xa819('0x4'));var Mustache=require(_0xa819('0x5'));var util=require(_0xa819('0x6'));var path=require(_0xa819('0x7'));var sox=require(_0xa819('0x8'));var csv=require(_0xa819('0x9'));var ejs=require(_0xa819('0xa'));var fs=require('fs');var fs_extra=require(_0xa819('0xb'));var _=require(_0xa819('0xc'));var squel=require('squel');var crypto=require(_0xa819('0xd'));var jsforce=require(_0xa819('0xe'));var deskjs=require('desk.js');var toCsv=require(_0xa819('0x9'));var querystring=require(_0xa819('0xf'));var Papa=require(_0xa819('0x10'));var Redis=require(_0xa819('0x11'));var authService=require(_0xa819('0x12'));var qs=require(_0xa819('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xa819('0x14'));var logger=require(_0xa819('0x15'))(_0xa819('0x16'));var utils=require(_0xa819('0x17'));var config=require(_0xa819('0x18'));var licenseUtil=require(_0xa819('0x19'));var db=require(_0xa819('0x1a'))['db'];var jayson=require(_0xa819('0x1b'));var client=jayson[_0xa819('0x1c')][_0xa819('0x1d')]({'port':0x232a});function respondWithRpcPromise(_0x4432be,_0x59cc7a,_0x16f3e7,_0x75dd59){return new BPromise(function(_0x49c716,_0x3dfb97){var _0x363944=_0x75dd59||client;return _0x363944[_0xa819('0x1e')](_0x4432be,_0x16f3e7)['then'](function(_0x3712d5){logger[_0xa819('0x1f')](_0xa819('0x20'),_0x59cc7a,'request\x20sent');logger['debug'](_0xa819('0x21'),_0x59cc7a,_0xa819('0x22'),JSON[_0xa819('0x23')](_0x3712d5));if(_0x3712d5[_0xa819('0x24')]){if(_0x3712d5['error']['code']===0x1f4){logger[_0xa819('0x24')]('ServicenowConfiguration,\x20%s,\x20%s',_0x59cc7a,_0x3712d5[_0xa819('0x24')][_0xa819('0x25')]);return _0x3dfb97(_0x3712d5[_0xa819('0x24')][_0xa819('0x25')]);}logger['error']('ServicenowConfiguration,\x20%s,\x20%s',_0x59cc7a,_0x3712d5[_0xa819('0x24')][_0xa819('0x25')]);return _0x49c716(_0x3712d5[_0xa819('0x24')][_0xa819('0x25')]);}else{logger[_0xa819('0x1f')]('ServicenowConfiguration,\x20%s,\x20%s',_0x59cc7a,_0xa819('0x22'));_0x49c716(_0x3712d5['result'][_0xa819('0x25')]);}})[_0xa819('0x26')](function(_0x5e9085){logger[_0xa819('0x24')]('ServicenowConfiguration,\x20%s,\x20%s',_0x59cc7a,_0x5e9085);_0x3dfb97(_0x5e9085);});});}function respondWithStatusCode(_0x1c69d0,_0x4b5aad){_0x4b5aad=_0x4b5aad||0xcc;return function(_0x71dbf6){if(_0x71dbf6){return _0x1c69d0[_0xa819('0x27')](_0x4b5aad);}return _0x1c69d0['status'](_0x4b5aad)[_0xa819('0x28')]();};}function respondWithResult(_0x1432b1,_0x47fb98){_0x47fb98=_0x47fb98||0xc8;return function(_0x690bb0){if(_0x690bb0){return _0x1432b1[_0xa819('0x29')](_0x47fb98)[_0xa819('0x2a')](_0x690bb0);}};}function respondWithFilteredResult(_0x42c4e9,_0x48f9dc){return function(_0x4c44b0){if(_0x4c44b0){var _0x4e8fde=_0x4c44b0['count'],_0x1aca62=_0x48f9dc[_0xa819('0x2b')],_0x471591=_0x48f9dc['offset']+_0x48f9dc[_0xa819('0x2c')],_0x3bdffc;if(_0x471591>=_0x4e8fde){_0x471591=_0x4e8fde;_0x3bdffc=0xc8;}else{_0x3bdffc=0xce;}_0x42c4e9[_0xa819('0x29')](_0x3bdffc);return _0x42c4e9[_0xa819('0x2d')]('Content-Range',_0x1aca62+'-'+_0x471591+'/'+_0x4e8fde)[_0xa819('0x2a')](_0x4c44b0);}return null;};}function patchUpdates(_0x1dddc8){return function(_0x117e53){try{jsonpatch[_0xa819('0x2e')](_0x117e53,_0x1dddc8,!![]);}catch(_0x9b4d0b){return BPromise['reject'](_0x9b4d0b);}return _0x117e53['save']();};}function saveUpdates(_0xab26de,_0x29d71b){return function(_0x15492d){if(_0x15492d){return _0x15492d[_0xa819('0x2f')](_0xab26de)['then'](function(_0x345d3d){return _0x345d3d;});}return null;};}function removeEntity(_0x17bce1,_0xfbb743){return function(_0x13c345){if(_0x13c345){return _0x13c345[_0xa819('0x30')]()[_0xa819('0x31')](function(){_0x17bce1[_0xa819('0x29')](0xcc)['end']();});}};}function handleEntityNotFound(_0x56782a,_0x5a57ca){return function(_0x45da03){if(!_0x45da03){_0x56782a[_0xa819('0x27')](0x194);}return _0x45da03;};}function handleError(_0x59214d,_0x1c6523){_0x1c6523=_0x1c6523||0x1f4;return function(_0x1ae87e){logger[_0xa819('0x24')](_0x1ae87e['stack']);if(_0x1ae87e[_0xa819('0x32')]){delete _0x1ae87e[_0xa819('0x32')];}_0x59214d[_0xa819('0x29')](_0x1c6523)[_0xa819('0x33')](_0x1ae87e);};}exports[_0xa819('0x34')]=function(_0x2199d1,_0x3a9733){var _0x98fd2d={},_0x407261={},_0x1728fe={'count':0x0,'rows':[]};var _0x322949=_['map'](db[_0xa819('0x35')][_0xa819('0x36')],function(_0x181284){return{'name':_0x181284[_0xa819('0x37')],'type':_0x181284[_0xa819('0x38')][_0xa819('0x39')]};});_0x407261[_0xa819('0x3a')]=_[_0xa819('0x3b')](_0x322949,_0xa819('0x32'));_0x407261['query']=_[_0xa819('0x3c')](_0x2199d1[_0xa819('0x3d')]);_0x407261['filters']=_[_0xa819('0x3e')](_0x407261[_0xa819('0x3a')],_0x407261[_0xa819('0x3d')]);_0x98fd2d[_0xa819('0x3f')]=_[_0xa819('0x3e')](_0x407261['model'],qs[_0xa819('0x40')](_0x2199d1[_0xa819('0x3d')]['fields']));_0x98fd2d['attributes']=_0x98fd2d[_0xa819('0x3f')]['length']?_0x98fd2d[_0xa819('0x3f')]:_0x407261[_0xa819('0x3a')];if(!_0x2199d1[_0xa819('0x3d')][_0xa819('0x41')]('nolimit')){_0x98fd2d[_0xa819('0x2c')]=qs[_0xa819('0x2c')](_0x2199d1[_0xa819('0x3d')][_0xa819('0x2c')]);_0x98fd2d[_0xa819('0x2b')]=qs[_0xa819('0x2b')](_0x2199d1[_0xa819('0x3d')]['offset']);}_0x98fd2d[_0xa819('0x42')]=qs[_0xa819('0x43')](_0x2199d1[_0xa819('0x3d')][_0xa819('0x43')]);_0x98fd2d[_0xa819('0x44')]=qs[_0xa819('0x45')](_[_0xa819('0x46')](_0x2199d1['query'],_0x407261[_0xa819('0x45')]),_0x322949);if(_0x2199d1['query']['filter']){_0x98fd2d[_0xa819('0x44')]=_[_0xa819('0x47')](_0x98fd2d[_0xa819('0x44')],{'$or':_['map'](_0x322949,function(_0xacbe13){if(_0xacbe13['type']!==_0xa819('0x48')){var _0x56dd5a={};_0x56dd5a[_0xacbe13[_0xa819('0x32')]]={'$like':'%'+_0x2199d1[_0xa819('0x3d')][_0xa819('0x49')]+'%'};return _0x56dd5a;}})});}_0x98fd2d=_[_0xa819('0x47')]({},_0x98fd2d,_0x2199d1['options']);var _0x5aa49c={'where':_0x98fd2d['where']};return db[_0xa819('0x35')][_0xa819('0x4a')](_0x5aa49c)[_0xa819('0x31')](function(_0x2512d8){_0x1728fe[_0xa819('0x4a')]=_0x2512d8;if(_0x2199d1[_0xa819('0x3d')]['includeAll']){_0x98fd2d[_0xa819('0x4b')]=[{'all':!![]}];}return db[_0xa819('0x35')]['findAll'](_0x98fd2d);})['then'](function(_0xb07b4d){_0x1728fe[_0xa819('0x4c')]=_0xb07b4d;return _0x1728fe;})['then'](respondWithFilteredResult(_0x3a9733,_0x98fd2d))['catch'](handleError(_0x3a9733,null));};exports[_0xa819('0x4d')]=function(_0x2442c6,_0x324401){var _0x21afe5={'raw':![],'where':{'id':_0x2442c6[_0xa819('0x4e')]['id']}},_0x198428={};_0x198428['model']=_[_0xa819('0x3c')](db[_0xa819('0x35')]['rawAttributes']);_0x198428[_0xa819('0x3d')]=_[_0xa819('0x3c')](_0x2442c6[_0xa819('0x3d')]);_0x198428[_0xa819('0x45')]=_['intersection'](_0x198428[_0xa819('0x3a')],_0x198428[_0xa819('0x3d')]);_0x21afe5[_0xa819('0x3f')]=_[_0xa819('0x3e')](_0x198428[_0xa819('0x3a')],qs[_0xa819('0x40')](_0x2442c6[_0xa819('0x3d')][_0xa819('0x40')]));_0x21afe5[_0xa819('0x3f')]=_0x21afe5[_0xa819('0x3f')][_0xa819('0x4f')]?_0x21afe5[_0xa819('0x3f')]:_0x198428[_0xa819('0x3a')];if(_0x2442c6[_0xa819('0x3d')][_0xa819('0x50')]){_0x21afe5['include']=[{'all':!![]}];}_0x21afe5=_['merge']({},_0x21afe5,_0x2442c6[_0xa819('0x51')]);return db['ServicenowConfiguration'][_0xa819('0x52')](_0x21afe5)[_0xa819('0x31')](handleEntityNotFound(_0x324401,null))[_0xa819('0x31')](respondWithResult(_0x324401,null))[_0xa819('0x26')](handleError(_0x324401,null));};exports[_0xa819('0x53')]=function(_0x382de5,_0x27e267){return db[_0xa819('0x35')][_0xa819('0x53')](_0x382de5[_0xa819('0x54')],{})[_0xa819('0x31')](respondWithResult(_0x27e267,0xc9))['catch'](handleError(_0x27e267,null));};exports[_0xa819('0x2f')]=function(_0x7b2a8f,_0x180106){if(_0x7b2a8f[_0xa819('0x54')]['id']){delete _0x7b2a8f[_0xa819('0x54')]['id'];}return db[_0xa819('0x35')][_0xa819('0x52')]({'where':{'id':_0x7b2a8f[_0xa819('0x4e')]['id']}})[_0xa819('0x31')](handleEntityNotFound(_0x180106,null))['then'](saveUpdates(_0x7b2a8f['body'],null))[_0xa819('0x31')](respondWithResult(_0x180106,null))[_0xa819('0x26')](handleError(_0x180106,null));};exports[_0xa819('0x30')]=function(_0x6cd2a8,_0xc29cee){return db[_0xa819('0x35')][_0xa819('0x52')]({'where':{'id':_0x6cd2a8['params']['id']}})[_0xa819('0x31')](handleEntityNotFound(_0xc29cee,null))[_0xa819('0x31')](removeEntity(_0xc29cee,null))[_0xa819('0x26')](handleError(_0xc29cee,null));};exports['getFields']=function(_0x1e75b9,_0x559eca,_0x3f1157){var _0x574071={};var _0x4e25cf={};var _0x5bbb21;var _0x516d7e;return db['ServicenowConfiguration'][_0xa819('0x55')]({'where':{'id':_0x1e75b9[_0xa819('0x4e')]['id']}})[_0xa819('0x31')](handleEntityNotFound(_0x559eca,null))[_0xa819('0x31')](function(_0x35d832){if(_0x35d832){_0x5bbb21=_0x35d832;_0x4e25cf['model']=_[_0xa819('0x3c')](db[_0xa819('0x56')]['rawAttributes']);_0x4e25cf['query']=_[_0xa819('0x3c')](_0x1e75b9['query']);_0x4e25cf[_0xa819('0x45')]=_[_0xa819('0x3e')](_0x4e25cf['model'],_0x4e25cf[_0xa819('0x3d')]);_0x574071['attributes']=_['intersection'](_0x4e25cf[_0xa819('0x3a')],qs[_0xa819('0x40')](_0x1e75b9[_0xa819('0x3d')]['fields']));_0x574071['attributes']=_0x574071[_0xa819('0x3f')][_0xa819('0x4f')]?_0x574071[_0xa819('0x3f')]:_0x4e25cf['model'];_0x574071['order']=qs['sort'](_0x1e75b9['query'][_0xa819('0x43')]);_0x574071[_0xa819('0x44')]=qs[_0xa819('0x45')](_['pick'](_0x1e75b9['query'],_0x4e25cf[_0xa819('0x45')]));if(_0x1e75b9[_0xa819('0x3d')]['filter']){_0x574071[_0xa819('0x44')]=_['merge'](_0x574071[_0xa819('0x44')],{'$or':_[_0xa819('0x3b')](_0x574071[_0xa819('0x3f')],function(_0x2f01a8){var _0x26b474={};_0x26b474[_0x2f01a8]={'$like':'%'+_0x1e75b9[_0xa819('0x3d')][_0xa819('0x49')]+'%'};return _0x26b474;})});}_0x574071=_[_0xa819('0x47')]({},_0x574071,_0x1e75b9['options']);return _0x5bbb21['getFields'](_0x574071);}})[_0xa819('0x31')](function(_0x4ca065){if(_0x4ca065){_0x516d7e=_0x4ca065[_0xa819('0x4f')];if(!_0x1e75b9[_0xa819('0x3d')]['hasOwnProperty']('nolimit')){_0x574071[_0xa819('0x2c')]=qs[_0xa819('0x2c')](_0x1e75b9[_0xa819('0x3d')][_0xa819('0x2c')]);_0x574071[_0xa819('0x2b')]=qs[_0xa819('0x2b')](_0x1e75b9[_0xa819('0x3d')][_0xa819('0x2b')]);}return _0x5bbb21[_0xa819('0x57')](_0x574071);}})['then'](function(_0x2d73e0){if(_0x2d73e0){return _0x2d73e0?{'count':_0x516d7e,'rows':_0x2d73e0}:null;}})[_0xa819('0x31')](respondWithResult(_0x559eca,null))[_0xa819('0x26')](handleError(_0x559eca,null));};exports['getSubjects']=function(_0x1f18e9,_0x302d6c,_0x2cb56f){var _0x5385c9={};var _0x535349={};var _0x47b53f;var _0xd769e5;return db[_0xa819('0x35')][_0xa819('0x55')]({'where':{'id':_0x1f18e9['params']['id']}})['then'](handleEntityNotFound(_0x302d6c,null))[_0xa819('0x31')](function(_0x53a8a3){if(_0x53a8a3){_0x47b53f=_0x53a8a3;_0x535349[_0xa819('0x3a')]=_[_0xa819('0x3c')](db[_0xa819('0x56')]['rawAttributes']);_0x535349[_0xa819('0x3d')]=_[_0xa819('0x3c')](_0x1f18e9['query']);_0x535349[_0xa819('0x45')]=_[_0xa819('0x3e')](_0x535349[_0xa819('0x3a')],_0x535349[_0xa819('0x3d')]);_0x5385c9[_0xa819('0x3f')]=_[_0xa819('0x3e')](_0x535349['model'],qs['fields'](_0x1f18e9[_0xa819('0x3d')][_0xa819('0x40')]));_0x5385c9[_0xa819('0x3f')]=_0x5385c9[_0xa819('0x3f')][_0xa819('0x4f')]?_0x5385c9[_0xa819('0x3f')]:_0x535349[_0xa819('0x3a')];_0x5385c9[_0xa819('0x42')]=qs[_0xa819('0x43')](_0x1f18e9[_0xa819('0x3d')]['sort']);_0x5385c9['where']=qs[_0xa819('0x45')](_['pick'](_0x1f18e9['query'],_0x535349[_0xa819('0x45')]));if(_0x1f18e9[_0xa819('0x3d')]['filter']){_0x5385c9['where']=_['merge'](_0x5385c9[_0xa819('0x44')],{'$or':_[_0xa819('0x3b')](_0x5385c9[_0xa819('0x3f')],function(_0x8f6a8c){var _0x173138={};_0x173138[_0x8f6a8c]={'$like':'%'+_0x1f18e9[_0xa819('0x3d')]['filter']+'%'};return _0x173138;})});}_0x5385c9=_[_0xa819('0x47')]({},_0x5385c9,_0x1f18e9['options']);return _0x47b53f[_0xa819('0x58')](_0x5385c9);}})[_0xa819('0x31')](function(_0xba9c33){if(_0xba9c33){_0xd769e5=_0xba9c33[_0xa819('0x4f')];if(!_0x1f18e9[_0xa819('0x3d')][_0xa819('0x41')](_0xa819('0x59'))){_0x5385c9['limit']=qs[_0xa819('0x2c')](_0x1f18e9['query'][_0xa819('0x2c')]);_0x5385c9['offset']=qs[_0xa819('0x2b')](_0x1f18e9[_0xa819('0x3d')][_0xa819('0x2b')]);}return _0x47b53f[_0xa819('0x58')](_0x5385c9);}})['then'](function(_0x52b96e){if(_0x52b96e){return _0x52b96e?{'count':_0xd769e5,'rows':_0x52b96e}:null;}})[_0xa819('0x31')](respondWithResult(_0x302d6c,null))[_0xa819('0x26')](handleError(_0x302d6c,null));};exports[_0xa819('0x5a')]=function(_0x34fb43,_0x3c16a0,_0x58864b){var _0x5e66dc={};var _0x38500e={};var _0x40657f;var _0x58b895;return db[_0xa819('0x35')][_0xa819('0x55')]({'where':{'id':_0x34fb43['params']['id']}})[_0xa819('0x31')](handleEntityNotFound(_0x3c16a0,null))[_0xa819('0x31')](function(_0x3cd9cf){if(_0x3cd9cf){_0x40657f=_0x3cd9cf;_0x38500e['model']=_[_0xa819('0x3c')](db[_0xa819('0x56')]['rawAttributes']);_0x38500e[_0xa819('0x3d')]=_[_0xa819('0x3c')](_0x34fb43[_0xa819('0x3d')]);_0x38500e[_0xa819('0x45')]=_[_0xa819('0x3e')](_0x38500e[_0xa819('0x3a')],_0x38500e['query']);_0x5e66dc['attributes']=_[_0xa819('0x3e')](_0x38500e[_0xa819('0x3a')],qs['fields'](_0x34fb43[_0xa819('0x3d')][_0xa819('0x40')]));_0x5e66dc[_0xa819('0x3f')]=_0x5e66dc[_0xa819('0x3f')]['length']?_0x5e66dc[_0xa819('0x3f')]:_0x38500e[_0xa819('0x3a')];_0x5e66dc[_0xa819('0x42')]=qs[_0xa819('0x43')](_0x34fb43['query'][_0xa819('0x43')]);_0x5e66dc[_0xa819('0x44')]=qs[_0xa819('0x45')](_[_0xa819('0x46')](_0x34fb43[_0xa819('0x3d')],_0x38500e[_0xa819('0x45')]));if(_0x34fb43[_0xa819('0x3d')][_0xa819('0x49')]){_0x5e66dc[_0xa819('0x44')]=_[_0xa819('0x47')](_0x5e66dc[_0xa819('0x44')],{'$or':_[_0xa819('0x3b')](_0x5e66dc[_0xa819('0x3f')],function(_0xb6d50f){var _0xd55497={};_0xd55497[_0xb6d50f]={'$like':'%'+_0x34fb43[_0xa819('0x3d')][_0xa819('0x49')]+'%'};return _0xd55497;})});}_0x5e66dc=_[_0xa819('0x47')]({},_0x5e66dc,_0x34fb43[_0xa819('0x51')]);return _0x40657f['getDescriptions'](_0x5e66dc);}})['then'](function(_0x375d89){if(_0x375d89){_0x58b895=_0x375d89['length'];if(!_0x34fb43['query'][_0xa819('0x41')](_0xa819('0x59'))){_0x5e66dc['limit']=qs['limit'](_0x34fb43[_0xa819('0x3d')]['limit']);_0x5e66dc[_0xa819('0x2b')]=qs['offset'](_0x34fb43[_0xa819('0x3d')][_0xa819('0x2b')]);}return _0x40657f[_0xa819('0x5a')](_0x5e66dc);}})[_0xa819('0x31')](function(_0x47c059){if(_0x47c059){return _0x47c059?{'count':_0x58b895,'rows':_0x47c059}:null;}})[_0xa819('0x31')](respondWithResult(_0x3c16a0,null))[_0xa819('0x26')](handleError(_0x3c16a0,null));};