d9ef00934835d2f3eed36c755c0b49acf0224b01
[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 _0xdcc5=['include','findAll','catch','show','params','rawAttributes','create','body','destroy','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','undefined','limit','count','offset','set','Content-Range','apply','then','sendStatus','error','stack','name','send','map','ServicenowField','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','filter','merge','options','includeAll'];(function(_0x1780f8,_0x11ba93){var _0x33a410=function(_0x2a015f){while(--_0x2a015f){_0x1780f8['push'](_0x1780f8['shift']());}};_0x33a410(++_0x11ba93);}(_0xdcc5,0x121));var _0x5dcc=function(_0x528ca6,_0x19d493){_0x528ca6=_0x528ca6-0x0;var _0x44f41c=_0xdcc5[_0x528ca6];return _0x44f41c;};'use strict';var emlformat=require(_0x5dcc('0x0'));var rimraf=require(_0x5dcc('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x5dcc('0x2'));var rp=require(_0x5dcc('0x3'));var moment=require(_0x5dcc('0x4'));var BPromise=require(_0x5dcc('0x5'));var Mustache=require(_0x5dcc('0x6'));var util=require(_0x5dcc('0x7'));var path=require('path');var sox=require(_0x5dcc('0x8'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x5dcc('0x9'));var squel=require(_0x5dcc('0xa'));var crypto=require(_0x5dcc('0xb'));var jsforce=require(_0x5dcc('0xc'));var deskjs=require(_0x5dcc('0xd'));var toCsv=require('to-csv');var querystring=require(_0x5dcc('0xe'));var Papa=require(_0x5dcc('0xf'));var Redis=require(_0x5dcc('0x10'));var authService=require(_0x5dcc('0x11'));var qs=require(_0x5dcc('0x12'));var as=require(_0x5dcc('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x5dcc('0x14'))(_0x5dcc('0x15'));var utils=require('../../config/utils');var config=require(_0x5dcc('0x16'));var licenseUtil=require(_0x5dcc('0x17'));var db=require(_0x5dcc('0x18'))['db'];function respondWithStatusCode(_0x2280c2,_0x5b5d27){_0x5b5d27=_0x5b5d27||0xcc;return function(_0x29fc6f){if(_0x29fc6f){return _0x2280c2['sendStatus'](_0x5b5d27);}return _0x2280c2[_0x5dcc('0x19')](_0x5b5d27)[_0x5dcc('0x1a')]();};}function respondWithResult(_0x3c1d69,_0x56a12f){_0x56a12f=_0x56a12f||0xc8;return function(_0x1915ed){if(_0x1915ed){return _0x3c1d69[_0x5dcc('0x19')](_0x56a12f)[_0x5dcc('0x1b')](_0x1915ed);}};}function respondWithFilteredResult(_0x5b241e,_0x28f6a9){return function(_0x3fa20a){if(_0x3fa20a){var _0x1218ce=typeof _0x28f6a9['offset']===_0x5dcc('0x1c')&&typeof _0x28f6a9[_0x5dcc('0x1d')]==='undefined';var _0x1b0e9f=_0x3fa20a[_0x5dcc('0x1e')];var _0x59f779=_0x1218ce?0x0:_0x28f6a9[_0x5dcc('0x1f')];var _0x27277f=_0x1218ce?_0x3fa20a['count']:_0x28f6a9[_0x5dcc('0x1f')]+_0x28f6a9[_0x5dcc('0x1d')];var _0x9b9d17;if(_0x27277f>=_0x1b0e9f){_0x27277f=_0x1b0e9f;_0x9b9d17=0xc8;}else{_0x9b9d17=0xce;}_0x5b241e[_0x5dcc('0x19')](_0x9b9d17);return _0x5b241e[_0x5dcc('0x20')](_0x5dcc('0x21'),_0x59f779+'-'+_0x27277f+'/'+_0x1b0e9f)[_0x5dcc('0x1b')](_0x3fa20a);}return null;};}function patchUpdates(_0x4f5922){return function(_0x424e0c){try{jsonpatch[_0x5dcc('0x22')](_0x424e0c,_0x4f5922,!![]);}catch(_0x4254d6){return BPromise['reject'](_0x4254d6);}return _0x424e0c['save']();};}function saveUpdates(_0x34698b,_0x4c7df2){return function(_0x2d9405){if(_0x2d9405){return _0x2d9405['update'](_0x34698b)[_0x5dcc('0x23')](function(_0x1f5f22){return _0x1f5f22;});}return null;};}function removeEntity(_0x6955f6,_0xe621f3){return function(_0x17dcd3){if(_0x17dcd3){return _0x17dcd3['destroy']()[_0x5dcc('0x23')](function(){_0x6955f6[_0x5dcc('0x19')](0xcc)[_0x5dcc('0x1a')]();});}};}function handleEntityNotFound(_0xfa19d7,_0x1fb430){return function(_0x12f4c8){if(!_0x12f4c8){_0xfa19d7[_0x5dcc('0x24')](0x194);}return _0x12f4c8;};}function handleError(_0x305c13,_0x198688){_0x198688=_0x198688||0x1f4;return function(_0x5aaae2){logger[_0x5dcc('0x25')](_0x5aaae2[_0x5dcc('0x26')]);if(_0x5aaae2['name']){delete _0x5aaae2[_0x5dcc('0x27')];}_0x305c13[_0x5dcc('0x19')](_0x198688)[_0x5dcc('0x28')](_0x5aaae2);};}exports['index']=function(_0x5b157e,_0x4d9202){var _0x3f8739={},_0x3dacbd={},_0xcd65d3={'count':0x0,'rows':[]};var _0x18458f=_[_0x5dcc('0x29')](db[_0x5dcc('0x2a')]['rawAttributes'],function(_0x40351c){return{'name':_0x40351c[_0x5dcc('0x2b')],'type':_0x40351c[_0x5dcc('0x2c')]['key']};});_0x3dacbd[_0x5dcc('0x2d')]=_['map'](_0x18458f,_0x5dcc('0x27'));_0x3dacbd[_0x5dcc('0x2e')]=_[_0x5dcc('0x2f')](_0x5b157e[_0x5dcc('0x2e')]);_0x3dacbd[_0x5dcc('0x30')]=_[_0x5dcc('0x31')](_0x3dacbd[_0x5dcc('0x2d')],_0x3dacbd[_0x5dcc('0x2e')]);_0x3f8739[_0x5dcc('0x32')]=_['intersection'](_0x3dacbd[_0x5dcc('0x2d')],qs[_0x5dcc('0x33')](_0x5b157e[_0x5dcc('0x2e')][_0x5dcc('0x33')]));_0x3f8739[_0x5dcc('0x32')]=_0x3f8739[_0x5dcc('0x32')][_0x5dcc('0x34')]?_0x3f8739[_0x5dcc('0x32')]:_0x3dacbd[_0x5dcc('0x2d')];if(!_0x5b157e[_0x5dcc('0x2e')][_0x5dcc('0x35')](_0x5dcc('0x36'))){_0x3f8739[_0x5dcc('0x1d')]=qs[_0x5dcc('0x1d')](_0x5b157e['query'][_0x5dcc('0x1d')]);_0x3f8739['offset']=qs[_0x5dcc('0x1f')](_0x5b157e['query'][_0x5dcc('0x1f')]);}_0x3f8739['order']=qs[_0x5dcc('0x37')](_0x5b157e[_0x5dcc('0x2e')]['sort']);_0x3f8739[_0x5dcc('0x38')]=qs['filters'](_['pick'](_0x5b157e[_0x5dcc('0x2e')],_0x3dacbd['filters']),_0x18458f);if(_0x5b157e['query'][_0x5dcc('0x39')]){_0x3f8739[_0x5dcc('0x38')]=_[_0x5dcc('0x3a')](_0x3f8739[_0x5dcc('0x38')],{'$or':_[_0x5dcc('0x29')](_0x18458f,function(_0x431b21){if(_0x431b21[_0x5dcc('0x2c')]!=='VIRTUAL'){var _0xbc76bd={};_0xbc76bd[_0x431b21[_0x5dcc('0x27')]]={'$like':'%'+_0x5b157e['query'][_0x5dcc('0x39')]+'%'};return _0xbc76bd;}})});}_0x3f8739=_[_0x5dcc('0x3a')]({},_0x3f8739,_0x5b157e[_0x5dcc('0x3b')]);var _0x18b477={'where':_0x3f8739[_0x5dcc('0x38')]};return db[_0x5dcc('0x2a')][_0x5dcc('0x1e')](_0x18b477)[_0x5dcc('0x23')](function(_0x419e05){_0xcd65d3[_0x5dcc('0x1e')]=_0x419e05;if(_0x5b157e[_0x5dcc('0x2e')][_0x5dcc('0x3c')]){_0x3f8739[_0x5dcc('0x3d')]=[{'all':!![]}];}return db[_0x5dcc('0x2a')][_0x5dcc('0x3e')](_0x3f8739);})[_0x5dcc('0x23')](function(_0x83ad5d){_0xcd65d3['rows']=_0x83ad5d;return _0xcd65d3;})[_0x5dcc('0x23')](respondWithFilteredResult(_0x4d9202,_0x3f8739))[_0x5dcc('0x3f')](handleError(_0x4d9202,null));};exports[_0x5dcc('0x40')]=function(_0x207ae8,_0x2e1778){var _0x34d615={'raw':!![],'where':{'id':_0x207ae8[_0x5dcc('0x41')]['id']}},_0x40b8e={};_0x40b8e[_0x5dcc('0x2d')]=_[_0x5dcc('0x2f')](db[_0x5dcc('0x2a')][_0x5dcc('0x42')]);_0x40b8e[_0x5dcc('0x2e')]=_[_0x5dcc('0x2f')](_0x207ae8[_0x5dcc('0x2e')]);_0x40b8e[_0x5dcc('0x30')]=_['intersection'](_0x40b8e[_0x5dcc('0x2d')],_0x40b8e[_0x5dcc('0x2e')]);_0x34d615[_0x5dcc('0x32')]=_[_0x5dcc('0x31')](_0x40b8e[_0x5dcc('0x2d')],qs[_0x5dcc('0x33')](_0x207ae8[_0x5dcc('0x2e')]['fields']));_0x34d615[_0x5dcc('0x32')]=_0x34d615[_0x5dcc('0x32')]['length']?_0x34d615[_0x5dcc('0x32')]:_0x40b8e[_0x5dcc('0x2d')];if(_0x207ae8[_0x5dcc('0x2e')][_0x5dcc('0x3c')]){_0x34d615[_0x5dcc('0x3d')]=[{'all':!![]}];}_0x34d615=_[_0x5dcc('0x3a')]({},_0x34d615,_0x207ae8[_0x5dcc('0x3b')]);return db[_0x5dcc('0x2a')]['find'](_0x34d615)[_0x5dcc('0x23')](handleEntityNotFound(_0x2e1778,null))[_0x5dcc('0x23')](respondWithResult(_0x2e1778,null))['catch'](handleError(_0x2e1778,null));};exports[_0x5dcc('0x43')]=function(_0xeef390,_0x2d2ed3){return db[_0x5dcc('0x2a')][_0x5dcc('0x43')](_0xeef390[_0x5dcc('0x44')],{})[_0x5dcc('0x23')](respondWithResult(_0x2d2ed3,0xc9))['catch'](handleError(_0x2d2ed3,null));};exports['update']=function(_0x2fb3dd,_0x1fedc5){if(_0x2fb3dd[_0x5dcc('0x44')]['id']){delete _0x2fb3dd[_0x5dcc('0x44')]['id'];}return db['ServicenowField']['find']({'where':{'id':_0x2fb3dd[_0x5dcc('0x41')]['id']}})[_0x5dcc('0x23')](handleEntityNotFound(_0x1fedc5,null))[_0x5dcc('0x23')](saveUpdates(_0x2fb3dd[_0x5dcc('0x44')],null))['then'](respondWithResult(_0x1fedc5,null))['catch'](handleError(_0x1fedc5,null));};exports[_0x5dcc('0x45')]=function(_0x14bc5f,_0xe7c336){return db[_0x5dcc('0x2a')]['find']({'where':{'id':_0x14bc5f['params']['id']}})[_0x5dcc('0x23')](handleEntityNotFound(_0xe7c336,null))[_0x5dcc('0x23')](removeEntity(_0xe7c336,null))[_0x5dcc('0x3f')](handleError(_0xe7c336,null));};