6837707e7426d6138c9f241a77101863e787f030
[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 _0x2057=['fast-json-patch','moment','bluebird','mustache','path','to-csv','ejs','fs-extra','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','Content-Range','reject','save','destroy','then','error','stack','name','send','index','map','rawAttributes','type','key','keys','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','pick','filter','where','VIRTUAL','merge','options','ServicenowField','include','findAll','rows','catch','find','create','body','params','rimraf'];(function(_0x1ed116,_0x23bc80){var _0x574066=function(_0x424f9e){while(--_0x424f9e){_0x1ed116['push'](_0x1ed116['shift']());}};_0x574066(++_0x23bc80);}(_0x2057,0x162));var _0x7205=function(_0x184bb5,_0x2580e8){_0x184bb5=_0x184bb5-0x0;var _0x4c15d8=_0x2057[_0x184bb5];return _0x4c15d8;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x7205('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x7205('0x1'));var rp=require('request-promise');var moment=require(_0x7205('0x2'));var BPromise=require(_0x7205('0x3'));var Mustache=require(_0x7205('0x4'));var util=require('util');var path=require(_0x7205('0x5'));var sox=require('sox');var csv=require(_0x7205('0x6'));var ejs=require(_0x7205('0x7'));var fs=require('fs');var fs_extra=require(_0x7205('0x8'));var _=require('lodash');var squel=require('squel');var crypto=require(_0x7205('0x9'));var jsforce=require(_0x7205('0xa'));var deskjs=require(_0x7205('0xb'));var toCsv=require(_0x7205('0x6'));var querystring=require('querystring');var Papa=require(_0x7205('0xc'));var Redis=require(_0x7205('0xd'));var authService=require(_0x7205('0xe'));var qs=require(_0x7205('0xf'));var as=require(_0x7205('0x10'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x7205('0x11'))(_0x7205('0x12'));var utils=require(_0x7205('0x13'));var config=require(_0x7205('0x14'));var licenseUtil=require(_0x7205('0x15'));var db=require(_0x7205('0x16'))['db'];function respondWithStatusCode(_0x562566,_0x5e24a3){_0x5e24a3=_0x5e24a3||0xcc;return function(_0x4c832e){if(_0x4c832e){return _0x562566[_0x7205('0x17')](_0x5e24a3);}return _0x562566[_0x7205('0x18')](_0x5e24a3)[_0x7205('0x19')]();};}function respondWithResult(_0x16eb4a,_0x4515d2){_0x4515d2=_0x4515d2||0xc8;return function(_0x42b7ae){if(_0x42b7ae){return _0x16eb4a[_0x7205('0x18')](_0x4515d2)[_0x7205('0x1a')](_0x42b7ae);}};}function respondWithFilteredResult(_0x5a49d2,_0x1a40f3){return function(_0x29442a){if(_0x29442a){var _0x147ee1=typeof _0x1a40f3[_0x7205('0x1b')]===_0x7205('0x1c')&&typeof _0x1a40f3[_0x7205('0x1d')]===_0x7205('0x1c');var _0x2a6776=_0x29442a[_0x7205('0x1e')];var _0xdd3fb=_0x147ee1?0x0:_0x1a40f3[_0x7205('0x1b')];var _0x42b7be=_0x147ee1?_0x29442a[_0x7205('0x1e')]:_0x1a40f3[_0x7205('0x1b')]+_0x1a40f3[_0x7205('0x1d')];var _0x366878;if(_0x42b7be>=_0x2a6776){_0x42b7be=_0x2a6776;_0x366878=0xc8;}else{_0x366878=0xce;}_0x5a49d2[_0x7205('0x18')](_0x366878);return _0x5a49d2['set'](_0x7205('0x1f'),_0xdd3fb+'-'+_0x42b7be+'/'+_0x2a6776)[_0x7205('0x1a')](_0x29442a);}return null;};}function patchUpdates(_0x1bf44f){return function(_0xf65c86){try{jsonpatch['apply'](_0xf65c86,_0x1bf44f,!![]);}catch(_0x338445){return BPromise[_0x7205('0x20')](_0x338445);}return _0xf65c86[_0x7205('0x21')]();};}function saveUpdates(_0x1403ad,_0x1bce8b){return function(_0x2a0b66){if(_0x2a0b66){return _0x2a0b66['update'](_0x1403ad)['then'](function(_0x5b21fd){return _0x5b21fd;});}return null;};}function removeEntity(_0x61b367,_0x209576){return function(_0x382d65){if(_0x382d65){return _0x382d65[_0x7205('0x22')]()[_0x7205('0x23')](function(){_0x61b367[_0x7205('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0x51a16b,_0x1be1ce){return function(_0x202db0){if(!_0x202db0){_0x51a16b['sendStatus'](0x194);}return _0x202db0;};}function handleError(_0x1c8c7d,_0x318448){_0x318448=_0x318448||0x1f4;return function(_0x241c2b){logger[_0x7205('0x24')](_0x241c2b[_0x7205('0x25')]);if(_0x241c2b[_0x7205('0x26')]){delete _0x241c2b[_0x7205('0x26')];}_0x1c8c7d[_0x7205('0x18')](_0x318448)[_0x7205('0x27')](_0x241c2b);};}exports[_0x7205('0x28')]=function(_0x59e6ae,_0x29cfc2){var _0x2d5c81={},_0x3ab7e5={},_0x745d10={'count':0x0,'rows':[]};var _0x53790d=_[_0x7205('0x29')](db['ServicenowField'][_0x7205('0x2a')],function(_0x56dfd4){return{'name':_0x56dfd4['fieldName'],'type':_0x56dfd4[_0x7205('0x2b')][_0x7205('0x2c')]};});_0x3ab7e5['model']=_[_0x7205('0x29')](_0x53790d,_0x7205('0x26'));_0x3ab7e5['query']=_[_0x7205('0x2d')](_0x59e6ae[_0x7205('0x2e')]);_0x3ab7e5[_0x7205('0x2f')]=_[_0x7205('0x30')](_0x3ab7e5[_0x7205('0x31')],_0x3ab7e5[_0x7205('0x2e')]);_0x2d5c81[_0x7205('0x32')]=_[_0x7205('0x30')](_0x3ab7e5[_0x7205('0x31')],qs[_0x7205('0x33')](_0x59e6ae[_0x7205('0x2e')][_0x7205('0x33')]));_0x2d5c81[_0x7205('0x32')]=_0x2d5c81[_0x7205('0x32')][_0x7205('0x34')]?_0x2d5c81[_0x7205('0x32')]:_0x3ab7e5[_0x7205('0x31')];if(!_0x59e6ae[_0x7205('0x2e')][_0x7205('0x35')](_0x7205('0x36'))){_0x2d5c81[_0x7205('0x1d')]=qs[_0x7205('0x1d')](_0x59e6ae[_0x7205('0x2e')][_0x7205('0x1d')]);_0x2d5c81[_0x7205('0x1b')]=qs[_0x7205('0x1b')](_0x59e6ae[_0x7205('0x2e')][_0x7205('0x1b')]);}_0x2d5c81[_0x7205('0x37')]=qs['sort'](_0x59e6ae['query']['sort']);_0x2d5c81['where']=qs['filters'](_[_0x7205('0x38')](_0x59e6ae[_0x7205('0x2e')],_0x3ab7e5[_0x7205('0x2f')]),_0x53790d);if(_0x59e6ae['query'][_0x7205('0x39')]){_0x2d5c81['where']=_['merge'](_0x2d5c81[_0x7205('0x3a')],{'$or':_[_0x7205('0x29')](_0x53790d,function(_0x43be66){if(_0x43be66[_0x7205('0x2b')]!==_0x7205('0x3b')){var _0x513cdd={};_0x513cdd[_0x43be66['name']]={'$like':'%'+_0x59e6ae[_0x7205('0x2e')][_0x7205('0x39')]+'%'};return _0x513cdd;}})});}_0x2d5c81=_[_0x7205('0x3c')]({},_0x2d5c81,_0x59e6ae[_0x7205('0x3d')]);var _0x2dd824={'where':_0x2d5c81[_0x7205('0x3a')]};return db[_0x7205('0x3e')]['count'](_0x2dd824)[_0x7205('0x23')](function(_0x233e5b){_0x745d10[_0x7205('0x1e')]=_0x233e5b;if(_0x59e6ae['query']['includeAll']){_0x2d5c81[_0x7205('0x3f')]=[{'all':!![]}];}return db[_0x7205('0x3e')][_0x7205('0x40')](_0x2d5c81);})[_0x7205('0x23')](function(_0x27a52a){_0x745d10[_0x7205('0x41')]=_0x27a52a;return _0x745d10;})[_0x7205('0x23')](respondWithFilteredResult(_0x29cfc2,_0x2d5c81))[_0x7205('0x42')](handleError(_0x29cfc2,null));};exports['show']=function(_0x34236a,_0x39ad3d){var _0x227250={'raw':!![],'where':{'id':_0x34236a['params']['id']}},_0x26dc1e={};_0x26dc1e[_0x7205('0x31')]=_[_0x7205('0x2d')](db[_0x7205('0x3e')][_0x7205('0x2a')]);_0x26dc1e[_0x7205('0x2e')]=_[_0x7205('0x2d')](_0x34236a[_0x7205('0x2e')]);_0x26dc1e[_0x7205('0x2f')]=_[_0x7205('0x30')](_0x26dc1e[_0x7205('0x31')],_0x26dc1e[_0x7205('0x2e')]);_0x227250[_0x7205('0x32')]=_[_0x7205('0x30')](_0x26dc1e['model'],qs[_0x7205('0x33')](_0x34236a[_0x7205('0x2e')]['fields']));_0x227250[_0x7205('0x32')]=_0x227250['attributes']['length']?_0x227250[_0x7205('0x32')]:_0x26dc1e[_0x7205('0x31')];if(_0x34236a[_0x7205('0x2e')]['includeAll']){_0x227250[_0x7205('0x3f')]=[{'all':!![]}];}_0x227250=_['merge']({},_0x227250,_0x34236a[_0x7205('0x3d')]);return db[_0x7205('0x3e')][_0x7205('0x43')](_0x227250)[_0x7205('0x23')](handleEntityNotFound(_0x39ad3d,null))[_0x7205('0x23')](respondWithResult(_0x39ad3d,null))[_0x7205('0x42')](handleError(_0x39ad3d,null));};exports[_0x7205('0x44')]=function(_0x5a1d75,_0xc88799){return db[_0x7205('0x3e')][_0x7205('0x44')](_0x5a1d75[_0x7205('0x45')],{})[_0x7205('0x23')](respondWithResult(_0xc88799,0xc9))[_0x7205('0x42')](handleError(_0xc88799,null));};exports['update']=function(_0x4f4757,_0x5ee901){if(_0x4f4757[_0x7205('0x45')]['id']){delete _0x4f4757[_0x7205('0x45')]['id'];}return db['ServicenowField']['find']({'where':{'id':_0x4f4757[_0x7205('0x46')]['id']}})[_0x7205('0x23')](handleEntityNotFound(_0x5ee901,null))[_0x7205('0x23')](saveUpdates(_0x4f4757['body'],null))['then'](respondWithResult(_0x5ee901,null))['catch'](handleError(_0x5ee901,null));};exports['destroy']=function(_0x3b550a,_0x1cc260){return db[_0x7205('0x3e')][_0x7205('0x43')]({'where':{'id':_0x3b550a[_0x7205('0x46')]['id']}})[_0x7205('0x23')](handleEntityNotFound(_0x1cc260,null))[_0x7205('0x23')](removeEntity(_0x1cc260,null))[_0x7205('0x42')](handleError(_0x1cc260,null));};