9f86f6f20a1fe704fc875ed6d65c4ef5f2e84d0f
[motion2.git] / server / api / intServicenowField / intServicenowField.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 _0x00ff=['fs-extra','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','status','end','json','offset','limit','undefined','count','set','apply','reject','save','update','then','sendStatus','stack','name','map','ServicenowField','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','merge','VIRTUAL','filter','includeAll','findAll','params','keys','options','find','catch','create','body','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs'];(function(_0x24890e,_0x34a7bc){var _0x4da125=function(_0x239166){while(--_0x239166){_0x24890e['push'](_0x24890e['shift']());}};_0x4da125(++_0x34a7bc);}(_0x00ff,0x199));var _0xf00f=function(_0x131c16,_0xd46eed){_0x131c16=_0x131c16-0x0;var _0x5df325=_0x00ff[_0x131c16];return _0x5df325;};'use strict';var emlformat=require(_0xf00f('0x0'));var rimraf=require(_0xf00f('0x1'));var zipdir=require(_0xf00f('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xf00f('0x3'));var moment=require(_0xf00f('0x4'));var BPromise=require(_0xf00f('0x5'));var Mustache=require(_0xf00f('0x6'));var util=require('util');var path=require(_0xf00f('0x7'));var sox=require(_0xf00f('0x8'));var csv=require(_0xf00f('0x9'));var ejs=require(_0xf00f('0xa'));var fs=require('fs');var fs_extra=require(_0xf00f('0xb'));var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0xf00f('0xc'));var toCsv=require(_0xf00f('0x9'));var querystring=require(_0xf00f('0xd'));var Papa=require(_0xf00f('0xe'));var Redis=require(_0xf00f('0xf'));var authService=require(_0xf00f('0x10'));var qs=require(_0xf00f('0x11'));var as=require(_0xf00f('0x12'));var hardwareService=require(_0xf00f('0x13'));var logger=require(_0xf00f('0x14'))(_0xf00f('0x15'));var utils=require(_0xf00f('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0xf00f('0x17'));var db=require(_0xf00f('0x18'))['db'];function respondWithStatusCode(_0x561c39,_0x3aca94){_0x3aca94=_0x3aca94||0xcc;return function(_0x2121a3){if(_0x2121a3){return _0x561c39['sendStatus'](_0x3aca94);}return _0x561c39[_0xf00f('0x19')](_0x3aca94)[_0xf00f('0x1a')]();};}function respondWithResult(_0x54f923,_0x12b684){_0x12b684=_0x12b684||0xc8;return function(_0x37384c){if(_0x37384c){return _0x54f923[_0xf00f('0x19')](_0x12b684)[_0xf00f('0x1b')](_0x37384c);}};}function respondWithFilteredResult(_0x2a311f,_0x2a7cf6){return function(_0x659d36){if(_0x659d36){var _0x3dd4dc=typeof _0x2a7cf6[_0xf00f('0x1c')]==='undefined'&&typeof _0x2a7cf6[_0xf00f('0x1d')]===_0xf00f('0x1e');var _0xfbe17c=_0x659d36[_0xf00f('0x1f')];var _0x91ef61=_0x3dd4dc?0x0:_0x2a7cf6[_0xf00f('0x1c')];var _0x371b00=_0x3dd4dc?_0x659d36[_0xf00f('0x1f')]:_0x2a7cf6[_0xf00f('0x1c')]+_0x2a7cf6[_0xf00f('0x1d')];var _0x1d84e7;if(_0x371b00>=_0xfbe17c){_0x371b00=_0xfbe17c;_0x1d84e7=0xc8;}else{_0x1d84e7=0xce;}_0x2a311f[_0xf00f('0x19')](_0x1d84e7);return _0x2a311f[_0xf00f('0x20')]('Content-Range',_0x91ef61+'-'+_0x371b00+'/'+_0xfbe17c)[_0xf00f('0x1b')](_0x659d36);}return null;};}function patchUpdates(_0x287668){return function(_0xe7104e){try{jsonpatch[_0xf00f('0x21')](_0xe7104e,_0x287668,!![]);}catch(_0x2daab7){return BPromise[_0xf00f('0x22')](_0x2daab7);}return _0xe7104e[_0xf00f('0x23')]();};}function saveUpdates(_0x5d3f2a,_0x5bff38){return function(_0x30b042){if(_0x30b042){return _0x30b042[_0xf00f('0x24')](_0x5d3f2a)['then'](function(_0x3ba5ee){return _0x3ba5ee;});}return null;};}function removeEntity(_0x48ade9,_0xb7db3b){return function(_0x239926){if(_0x239926){return _0x239926['destroy']()[_0xf00f('0x25')](function(){_0x48ade9[_0xf00f('0x19')](0xcc)[_0xf00f('0x1a')]();});}};}function handleEntityNotFound(_0x21ba29,_0xfbfe4b){return function(_0x29bf09){if(!_0x29bf09){_0x21ba29[_0xf00f('0x26')](0x194);}return _0x29bf09;};}function handleError(_0x180313,_0x5e99e6){_0x5e99e6=_0x5e99e6||0x1f4;return function(_0x136d42){logger['error'](_0x136d42[_0xf00f('0x27')]);if(_0x136d42[_0xf00f('0x28')]){delete _0x136d42[_0xf00f('0x28')];}_0x180313[_0xf00f('0x19')](_0x5e99e6)['send'](_0x136d42);};}exports['index']=function(_0x3c0b4a,_0x3b3263){var _0xacdb7c={},_0x306269={},_0x4d5d52={'count':0x0,'rows':[]};var _0x116677=_[_0xf00f('0x29')](db[_0xf00f('0x2a')][_0xf00f('0x2b')],function(_0x459930){return{'name':_0x459930[_0xf00f('0x2c')],'type':_0x459930[_0xf00f('0x2d')][_0xf00f('0x2e')]};});_0x306269[_0xf00f('0x2f')]=_[_0xf00f('0x29')](_0x116677,_0xf00f('0x28'));_0x306269['query']=_['keys'](_0x3c0b4a[_0xf00f('0x30')]);_0x306269[_0xf00f('0x31')]=_[_0xf00f('0x32')](_0x306269[_0xf00f('0x2f')],_0x306269[_0xf00f('0x30')]);_0xacdb7c[_0xf00f('0x33')]=_[_0xf00f('0x32')](_0x306269['model'],qs['fields'](_0x3c0b4a['query'][_0xf00f('0x34')]));_0xacdb7c[_0xf00f('0x33')]=_0xacdb7c[_0xf00f('0x33')][_0xf00f('0x35')]?_0xacdb7c[_0xf00f('0x33')]:_0x306269[_0xf00f('0x2f')];if(!_0x3c0b4a['query'][_0xf00f('0x36')]('nolimit')){_0xacdb7c[_0xf00f('0x1d')]=qs[_0xf00f('0x1d')](_0x3c0b4a[_0xf00f('0x30')][_0xf00f('0x1d')]);_0xacdb7c[_0xf00f('0x1c')]=qs[_0xf00f('0x1c')](_0x3c0b4a[_0xf00f('0x30')]['offset']);}_0xacdb7c[_0xf00f('0x37')]=qs['sort'](_0x3c0b4a[_0xf00f('0x30')][_0xf00f('0x38')]);_0xacdb7c[_0xf00f('0x39')]=qs['filters'](_['pick'](_0x3c0b4a[_0xf00f('0x30')],_0x306269[_0xf00f('0x31')]),_0x116677);if(_0x3c0b4a[_0xf00f('0x30')]['filter']){_0xacdb7c['where']=_[_0xf00f('0x3a')](_0xacdb7c['where'],{'$or':_[_0xf00f('0x29')](_0x116677,function(_0x5b6123){if(_0x5b6123['type']!==_0xf00f('0x3b')){var _0x39b537={};_0x39b537[_0x5b6123[_0xf00f('0x28')]]={'$like':'%'+_0x3c0b4a[_0xf00f('0x30')][_0xf00f('0x3c')]+'%'};return _0x39b537;}})});}_0xacdb7c=_[_0xf00f('0x3a')]({},_0xacdb7c,_0x3c0b4a['options']);var _0x3779c4={'where':_0xacdb7c[_0xf00f('0x39')]};return db[_0xf00f('0x2a')][_0xf00f('0x1f')](_0x3779c4)[_0xf00f('0x25')](function(_0x42cb51){_0x4d5d52[_0xf00f('0x1f')]=_0x42cb51;if(_0x3c0b4a[_0xf00f('0x30')][_0xf00f('0x3d')]){_0xacdb7c['include']=[{'all':!![]}];}return db['ServicenowField'][_0xf00f('0x3e')](_0xacdb7c);})['then'](function(_0x343833){_0x4d5d52['rows']=_0x343833;return _0x4d5d52;})[_0xf00f('0x25')](respondWithFilteredResult(_0x3b3263,_0xacdb7c))['catch'](handleError(_0x3b3263,null));};exports['show']=function(_0x13096e,_0x540a68){var _0x24f2ff={'raw':!![],'where':{'id':_0x13096e[_0xf00f('0x3f')]['id']}},_0x165630={};_0x165630[_0xf00f('0x2f')]=_['keys'](db[_0xf00f('0x2a')][_0xf00f('0x2b')]);_0x165630['query']=_[_0xf00f('0x40')](_0x13096e['query']);_0x165630[_0xf00f('0x31')]=_[_0xf00f('0x32')](_0x165630['model'],_0x165630[_0xf00f('0x30')]);_0x24f2ff[_0xf00f('0x33')]=_[_0xf00f('0x32')](_0x165630[_0xf00f('0x2f')],qs[_0xf00f('0x34')](_0x13096e[_0xf00f('0x30')][_0xf00f('0x34')]));_0x24f2ff[_0xf00f('0x33')]=_0x24f2ff[_0xf00f('0x33')]['length']?_0x24f2ff[_0xf00f('0x33')]:_0x165630[_0xf00f('0x2f')];if(_0x13096e[_0xf00f('0x30')][_0xf00f('0x3d')]){_0x24f2ff['include']=[{'all':!![]}];}_0x24f2ff=_[_0xf00f('0x3a')]({},_0x24f2ff,_0x13096e[_0xf00f('0x41')]);return db[_0xf00f('0x2a')][_0xf00f('0x42')](_0x24f2ff)[_0xf00f('0x25')](handleEntityNotFound(_0x540a68,null))[_0xf00f('0x25')](respondWithResult(_0x540a68,null))[_0xf00f('0x43')](handleError(_0x540a68,null));};exports[_0xf00f('0x44')]=function(_0x3c7b2c,_0xb8980c){return db[_0xf00f('0x2a')][_0xf00f('0x44')](_0x3c7b2c[_0xf00f('0x45')],{})[_0xf00f('0x25')](respondWithResult(_0xb8980c,0xc9))['catch'](handleError(_0xb8980c,null));};exports['update']=function(_0xbee72,_0x4dac54){if(_0xbee72[_0xf00f('0x45')]['id']){delete _0xbee72[_0xf00f('0x45')]['id'];}return db[_0xf00f('0x2a')]['find']({'where':{'id':_0xbee72['params']['id']}})[_0xf00f('0x25')](handleEntityNotFound(_0x4dac54,null))[_0xf00f('0x25')](saveUpdates(_0xbee72[_0xf00f('0x45')],null))['then'](respondWithResult(_0x4dac54,null))['catch'](handleError(_0x4dac54,null));};exports['destroy']=function(_0x43fd10,_0x432ae3){return db[_0xf00f('0x2a')]['find']({'where':{'id':_0x43fd10[_0xf00f('0x3f')]['id']}})['then'](handleEntityNotFound(_0x432ae3,null))[_0xf00f('0x25')](removeEntity(_0x432ae3,null))[_0xf00f('0x43')](handleError(_0x432ae3,null));};