Built motion from commit (unavailable).|2.4.21
[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 _0x511f=['sort','where','filter','merge','VIRTUAL','options','count','includeAll','include','ServicenowField','catch','show','params','create','body','find','destroy','html-pdf','rimraf','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','status','offset','limit','Content-Range','json','apply','save','then','stack','name','send','index','map','rawAttributes','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','nolimit'];(function(_0x22b7c6,_0x10f6c8){var _0x6a58bc=function(_0x22889a){while(--_0x22889a){_0x22b7c6['push'](_0x22b7c6['shift']());}};_0x6a58bc(++_0x10f6c8);}(_0x511f,0xda));var _0xf511=function(_0x1db665,_0x8987d7){_0x1db665=_0x1db665-0x0;var _0x148940=_0x511f[_0x1db665];return _0x148940;};'use strict';var pdf=require(_0xf511('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xf511('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0xf511('0x2'));var moment=require(_0xf511('0x3'));var BPromise=require(_0xf511('0x4'));var Mustache=require(_0xf511('0x5'));var util=require(_0xf511('0x6'));var path=require('path');var sox=require(_0xf511('0x7'));var csv=require(_0xf511('0x8'));var ejs=require(_0xf511('0x9'));var fs=require('fs');var _=require('lodash');var squel=require(_0xf511('0xa'));var crypto=require(_0xf511('0xb'));var jsforce=require(_0xf511('0xc'));var deskjs=require(_0xf511('0xd'));var toCsv=require(_0xf511('0x8'));var querystring=require(_0xf511('0xe'));var Papa=require(_0xf511('0xf'));var Redis=require(_0xf511('0x10'));var authService=require(_0xf511('0x11'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xf511('0x12'));var logger=require(_0xf511('0x13'))('api');var utils=require(_0xf511('0x14'));var config=require(_0xf511('0x15'));var db=require(_0xf511('0x16'))['db'];function respondWithStatusCode(_0x368942,_0x2a8689){_0x2a8689=_0x2a8689||0xcc;return function(_0x5b7d6f){if(_0x5b7d6f){return _0x368942[_0xf511('0x17')](_0x2a8689);}return _0x368942['status'](_0x2a8689)[_0xf511('0x18')]();};}function respondWithResult(_0x4fb29e,_0x1e3f2d){_0x1e3f2d=_0x1e3f2d||0xc8;return function(_0x3ee7f8){if(_0x3ee7f8){return _0x4fb29e[_0xf511('0x19')](_0x1e3f2d)['json'](_0x3ee7f8);}};}function respondWithFilteredResult(_0x3a5da1,_0x46bb0c){return function(_0x58ba39){if(_0x58ba39){var _0x19804a=_0x58ba39['count'],_0x92a366=_0x46bb0c['offset'],_0x1d8850=_0x46bb0c[_0xf511('0x1a')]+_0x46bb0c[_0xf511('0x1b')],_0x2f3b02;if(_0x1d8850>=_0x19804a){_0x1d8850=_0x19804a;_0x2f3b02=0xc8;}else{_0x2f3b02=0xce;}_0x3a5da1[_0xf511('0x19')](_0x2f3b02);return _0x3a5da1['set'](_0xf511('0x1c'),_0x92a366+'-'+_0x1d8850+'/'+_0x19804a)[_0xf511('0x1d')](_0x58ba39);}return null;};}function patchUpdates(_0x35b3ef){return function(_0x122456){try{jsonpatch[_0xf511('0x1e')](_0x122456,_0x35b3ef,!![]);}catch(_0x39b230){return BPromise['reject'](_0x39b230);}return _0x122456[_0xf511('0x1f')]();};}function saveUpdates(_0xa2b7be,_0x507920){return function(_0x3777b9){if(_0x3777b9){return _0x3777b9['update'](_0xa2b7be)['then'](function(_0x2bc28d){return _0x2bc28d;});}return null;};}function removeEntity(_0x1851d2,_0x34f75e){return function(_0x48c8ca){if(_0x48c8ca){return _0x48c8ca['destroy']()[_0xf511('0x20')](function(){_0x1851d2[_0xf511('0x19')](0xcc)[_0xf511('0x18')]();});}};}function handleEntityNotFound(_0x50df08,_0x2a0dfa){return function(_0x2b6bca){if(!_0x2b6bca){_0x50df08[_0xf511('0x17')](0x194);}return _0x2b6bca;};}function handleError(_0x19bace,_0x54ad30){_0x54ad30=_0x54ad30||0x1f4;return function(_0x225a4d){logger['error'](_0x225a4d[_0xf511('0x21')]);if(_0x225a4d[_0xf511('0x22')]){delete _0x225a4d['name'];}_0x19bace[_0xf511('0x19')](_0x54ad30)[_0xf511('0x23')](_0x225a4d);};}exports[_0xf511('0x24')]=function(_0xcba54d,_0x423198){var _0x3514ca={},_0x324e8a={},_0x459413={'count':0x0,'rows':[]};var _0x2646c3=_[_0xf511('0x25')](db['ServicenowField'][_0xf511('0x26')],function(_0x1dec44){return{'name':_0x1dec44[_0xf511('0x27')],'type':_0x1dec44['type'][_0xf511('0x28')]};});_0x324e8a[_0xf511('0x29')]=_[_0xf511('0x25')](_0x2646c3,_0xf511('0x22'));_0x324e8a[_0xf511('0x2a')]=_[_0xf511('0x2b')](_0xcba54d[_0xf511('0x2a')]);_0x324e8a[_0xf511('0x2c')]=_[_0xf511('0x2d')](_0x324e8a['model'],_0x324e8a['query']);_0x3514ca[_0xf511('0x2e')]=_['intersection'](_0x324e8a['model'],qs[_0xf511('0x2f')](_0xcba54d[_0xf511('0x2a')][_0xf511('0x2f')]));_0x3514ca['attributes']=_0x3514ca['attributes'][_0xf511('0x30')]?_0x3514ca[_0xf511('0x2e')]:_0x324e8a[_0xf511('0x29')];if(!_0xcba54d[_0xf511('0x2a')]['hasOwnProperty'](_0xf511('0x31'))){_0x3514ca[_0xf511('0x1b')]=qs[_0xf511('0x1b')](_0xcba54d[_0xf511('0x2a')][_0xf511('0x1b')]);_0x3514ca['offset']=qs['offset'](_0xcba54d[_0xf511('0x2a')][_0xf511('0x1a')]);}_0x3514ca['order']=qs['sort'](_0xcba54d[_0xf511('0x2a')][_0xf511('0x32')]);_0x3514ca[_0xf511('0x33')]=qs[_0xf511('0x2c')](_['pick'](_0xcba54d[_0xf511('0x2a')],_0x324e8a[_0xf511('0x2c')]));if(_0xcba54d[_0xf511('0x2a')][_0xf511('0x34')]){_0x3514ca[_0xf511('0x33')]=_[_0xf511('0x35')](_0x3514ca[_0xf511('0x33')],{'$or':_[_0xf511('0x25')](_0x2646c3,function(_0x2b9fb1){if(_0x2b9fb1['type']!==_0xf511('0x36')){var _0x4cf12b={};_0x4cf12b[_0x2b9fb1[_0xf511('0x22')]]={'$like':'%'+_0xcba54d[_0xf511('0x2a')]['filter']+'%'};return _0x4cf12b;}})});}_0x3514ca=_[_0xf511('0x35')]({},_0x3514ca,_0xcba54d[_0xf511('0x37')]);var _0x3800f3={'where':_0x3514ca[_0xf511('0x33')]};return db['ServicenowField'][_0xf511('0x38')](_0x3800f3)[_0xf511('0x20')](function(_0x1ac05b){_0x459413[_0xf511('0x38')]=_0x1ac05b;if(_0xcba54d['query'][_0xf511('0x39')]){_0x3514ca[_0xf511('0x3a')]=[{'all':!![]}];}return db[_0xf511('0x3b')]['findAll'](_0x3514ca);})[_0xf511('0x20')](function(_0x52fa78){_0x459413['rows']=_0x52fa78;return _0x459413;})['then'](respondWithFilteredResult(_0x423198,_0x3514ca))[_0xf511('0x3c')](handleError(_0x423198,null));};exports[_0xf511('0x3d')]=function(_0x569bcf,_0x3af9b9){var _0x4a749b={'raw':!![],'where':{'id':_0x569bcf[_0xf511('0x3e')]['id']}},_0x180006={};_0x180006['model']=_[_0xf511('0x2b')](db[_0xf511('0x3b')][_0xf511('0x26')]);_0x180006[_0xf511('0x2a')]=_['keys'](_0x569bcf[_0xf511('0x2a')]);_0x180006[_0xf511('0x2c')]=_[_0xf511('0x2d')](_0x180006['model'],_0x180006[_0xf511('0x2a')]);_0x4a749b[_0xf511('0x2e')]=_['intersection'](_0x180006[_0xf511('0x29')],qs[_0xf511('0x2f')](_0x569bcf['query'][_0xf511('0x2f')]));_0x4a749b['attributes']=_0x4a749b[_0xf511('0x2e')][_0xf511('0x30')]?_0x4a749b[_0xf511('0x2e')]:_0x180006['model'];if(_0x569bcf[_0xf511('0x2a')][_0xf511('0x39')]){_0x4a749b['include']=[{'all':!![]}];}_0x4a749b=_[_0xf511('0x35')]({},_0x4a749b,_0x569bcf[_0xf511('0x37')]);return db[_0xf511('0x3b')]['find'](_0x4a749b)[_0xf511('0x20')](handleEntityNotFound(_0x3af9b9,null))['then'](respondWithResult(_0x3af9b9,null))['catch'](handleError(_0x3af9b9,null));};exports['create']=function(_0x572a1d,_0x1d90d1){return db['ServicenowField'][_0xf511('0x3f')](_0x572a1d[_0xf511('0x40')],{})[_0xf511('0x20')](respondWithResult(_0x1d90d1,0xc9))[_0xf511('0x3c')](handleError(_0x1d90d1,null));};exports['update']=function(_0x284249,_0x539f9b){if(_0x284249[_0xf511('0x40')]['id']){delete _0x284249['body']['id'];}return db['ServicenowField'][_0xf511('0x41')]({'where':{'id':_0x284249[_0xf511('0x3e')]['id']}})[_0xf511('0x20')](handleEntityNotFound(_0x539f9b,null))[_0xf511('0x20')](saveUpdates(_0x284249['body'],null))[_0xf511('0x20')](respondWithResult(_0x539f9b,null))[_0xf511('0x3c')](handleError(_0x539f9b,null));};exports[_0xf511('0x42')]=function(_0x2baa37,_0xe86de4){return db[_0xf511('0x3b')][_0xf511('0x41')]({'where':{'id':_0x2baa37[_0xf511('0x3e')]['id']}})['then'](handleEntityNotFound(_0xe86de4,null))[_0xf511('0x20')](removeEntity(_0xe86de4,null))[_0xf511('0x3c')](handleError(_0xe86de4,null));};