Built motion from commit (unavailable).|2.5.31
[motion2.git] / server / api / intDynamics365Field / intDynamics365Field.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 _0xf8bd=['then','end','error','stack','name','send','render','merge','contact','agent','interaction','account','index','map','fieldName','type','key','model','query','keys','intersection','attributes','length','hasOwnProperty','nolimit','sort','where','filters','pick','filter','VIRTUAL','Dynamics365Field','includeAll','include','rows','catch','params','rawAttributes','fields','find','create','body','destroy','eml-format','zip-dir','request-promise','moment','bluebird','mustache','path','ejs','lodash','squel','crypto','jsforce','desk.js','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','undefined','limit','offset','count','Content-Range','apply','reject','save','update'];(function(_0x13b02f,_0x462a53){var _0x12e9a6=function(_0x187d57){while(--_0x187d57){_0x13b02f['push'](_0x13b02f['shift']());}};_0x12e9a6(++_0x462a53);}(_0xf8bd,0x11b));var _0xdf8b=function(_0x1221e8,_0x2e7229){_0x1221e8=_0x1221e8-0x0;var _0x3f3041=_0xf8bd[_0x1221e8];return _0x3f3041;};'use strict';var emlformat=require(_0xdf8b('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xdf8b('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xdf8b('0x2'));var moment=require(_0xdf8b('0x3'));var BPromise=require(_0xdf8b('0x4'));var Mustache=require(_0xdf8b('0x5'));var util=require('util');var path=require(_0xdf8b('0x6'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xdf8b('0x7'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xdf8b('0x8'));var squel=require(_0xdf8b('0x9'));var crypto=require(_0xdf8b('0xa'));var jsforce=require(_0xdf8b('0xb'));var deskjs=require(_0xdf8b('0xc'));var toCsv=require(_0xdf8b('0xd'));var querystring=require('querystring');var Papa=require(_0xdf8b('0xe'));var Redis=require(_0xdf8b('0xf'));var authService=require(_0xdf8b('0x10'));var qs=require(_0xdf8b('0x11'));var as=require(_0xdf8b('0x12'));var hardwareService=require(_0xdf8b('0x13'));var logger=require(_0xdf8b('0x14'))(_0xdf8b('0x15'));var utils=require('../../config/utils');var config=require(_0xdf8b('0x16'));var licenseUtil=require(_0xdf8b('0x17'));var db=require(_0xdf8b('0x18'))['db'];function respondWithStatusCode(_0x32d575,_0x53a025){_0x53a025=_0x53a025||0xcc;return function(_0x2c4669){if(_0x2c4669){return _0x32d575[_0xdf8b('0x19')](_0x53a025);}return _0x32d575[_0xdf8b('0x1a')](_0x53a025)['end']();};}function respondWithResult(_0x52e90e,_0x595188){_0x595188=_0x595188||0xc8;return function(_0x130bab){if(_0x130bab){return _0x52e90e[_0xdf8b('0x1a')](_0x595188)[_0xdf8b('0x1b')](_0x130bab);}};}function respondWithFilteredResult(_0x11034d,_0x2a0ca3){return function(_0x2434f0){if(_0x2434f0){var _0x638b8f=typeof _0x2a0ca3['offset']===_0xdf8b('0x1c')&&typeof _0x2a0ca3[_0xdf8b('0x1d')]==='undefined';var _0x282ef2=_0x2434f0['count'];var _0x3b521d=_0x638b8f?0x0:_0x2a0ca3[_0xdf8b('0x1e')];var _0x53896f=_0x638b8f?_0x2434f0[_0xdf8b('0x1f')]:_0x2a0ca3[_0xdf8b('0x1e')]+_0x2a0ca3[_0xdf8b('0x1d')];var _0x538ba2;if(_0x53896f>=_0x282ef2){_0x53896f=_0x282ef2;_0x538ba2=0xc8;}else{_0x538ba2=0xce;}_0x11034d[_0xdf8b('0x1a')](_0x538ba2);return _0x11034d['set'](_0xdf8b('0x20'),_0x3b521d+'-'+_0x53896f+'/'+_0x282ef2)['json'](_0x2434f0);}return null;};}function patchUpdates(_0x1687de){return function(_0x5e7489){try{jsonpatch[_0xdf8b('0x21')](_0x5e7489,_0x1687de,!![]);}catch(_0x4aa72d){return BPromise[_0xdf8b('0x22')](_0x4aa72d);}return _0x5e7489[_0xdf8b('0x23')]();};}function saveUpdates(_0x1c5249,_0x3472fd){return function(_0x450140){if(_0x450140){return _0x450140[_0xdf8b('0x24')](_0x1c5249)[_0xdf8b('0x25')](function(_0x4eb06b){return _0x4eb06b;});}return null;};}function removeEntity(_0x43c9a3,_0x2f4827){return function(_0x38e425){if(_0x38e425){return _0x38e425['destroy']()['then'](function(){_0x43c9a3[_0xdf8b('0x1a')](0xcc)[_0xdf8b('0x26')]();});}};}function handleEntityNotFound(_0x8607f6,_0x89cc3e){return function(_0x293a26){if(!_0x293a26){_0x8607f6['sendStatus'](0x194);}return _0x293a26;};}function handleError(_0x4b8c87,_0x5fb351){_0x5fb351=_0x5fb351||0x1f4;return function(_0x1cccbc){logger[_0xdf8b('0x27')](_0x1cccbc[_0xdf8b('0x28')]);if(_0x1cccbc[_0xdf8b('0x29')]){delete _0x1cccbc[_0xdf8b('0x29')];}_0x4b8c87[_0xdf8b('0x1a')](_0x5fb351)[_0xdf8b('0x2a')](_0x1cccbc);};}function getMustacheRender(_0x307b1a,_0x571ab7){return Mustache[_0xdf8b('0x2b')](_0x307b1a,_[_0xdf8b('0x2c')](_0x571ab7['body'],{'contact':_0x571ab7[_0xdf8b('0x2d')],'message':_0x571ab7['message'],'agent':_0x571ab7[_0xdf8b('0x2e')],'interaction':_0x571ab7[_0xdf8b('0x2f')],'account':_0x571ab7[_0xdf8b('0x30')]}))||'';}exports[_0xdf8b('0x31')]=function(_0x21ca16,_0x4fe5df){var _0x108531={},_0x579b0b={},_0x308798={'count':0x0,'rows':[]};var _0x822d0c=_[_0xdf8b('0x32')](db['Dynamics365Field']['rawAttributes'],function(_0x2832ae){return{'name':_0x2832ae[_0xdf8b('0x33')],'type':_0x2832ae[_0xdf8b('0x34')][_0xdf8b('0x35')]};});_0x579b0b[_0xdf8b('0x36')]=_[_0xdf8b('0x32')](_0x822d0c,_0xdf8b('0x29'));_0x579b0b[_0xdf8b('0x37')]=_[_0xdf8b('0x38')](_0x21ca16[_0xdf8b('0x37')]);_0x579b0b['filters']=_[_0xdf8b('0x39')](_0x579b0b[_0xdf8b('0x36')],_0x579b0b[_0xdf8b('0x37')]);_0x108531[_0xdf8b('0x3a')]=_[_0xdf8b('0x39')](_0x579b0b[_0xdf8b('0x36')],qs['fields'](_0x21ca16['query']['fields']));_0x108531[_0xdf8b('0x3a')]=_0x108531[_0xdf8b('0x3a')][_0xdf8b('0x3b')]?_0x108531[_0xdf8b('0x3a')]:_0x579b0b['model'];if(!_0x21ca16[_0xdf8b('0x37')][_0xdf8b('0x3c')](_0xdf8b('0x3d'))){_0x108531[_0xdf8b('0x1d')]=qs[_0xdf8b('0x1d')](_0x21ca16[_0xdf8b('0x37')]['limit']);_0x108531[_0xdf8b('0x1e')]=qs[_0xdf8b('0x1e')](_0x21ca16[_0xdf8b('0x37')][_0xdf8b('0x1e')]);}_0x108531['order']=qs['sort'](_0x21ca16[_0xdf8b('0x37')][_0xdf8b('0x3e')]);_0x108531[_0xdf8b('0x3f')]=qs[_0xdf8b('0x40')](_[_0xdf8b('0x41')](_0x21ca16[_0xdf8b('0x37')],_0x579b0b['filters']),_0x822d0c);if(_0x21ca16[_0xdf8b('0x37')][_0xdf8b('0x42')]){_0x108531[_0xdf8b('0x3f')]=_[_0xdf8b('0x2c')](_0x108531['where'],{'$or':_['map'](_0x822d0c,function(_0x336205){if(_0x336205[_0xdf8b('0x34')]!==_0xdf8b('0x43')){var _0xdf7138={};_0xdf7138[_0x336205['name']]={'$like':'%'+_0x21ca16[_0xdf8b('0x37')][_0xdf8b('0x42')]+'%'};return _0xdf7138;}})});}_0x108531=_[_0xdf8b('0x2c')]({},_0x108531,_0x21ca16['options']);var _0x5baad7={'where':_0x108531[_0xdf8b('0x3f')]};return db[_0xdf8b('0x44')][_0xdf8b('0x1f')](_0x5baad7)[_0xdf8b('0x25')](function(_0x58a599){_0x308798[_0xdf8b('0x1f')]=_0x58a599;if(_0x21ca16[_0xdf8b('0x37')][_0xdf8b('0x45')]){_0x108531[_0xdf8b('0x46')]=[{'all':!![]}];}return db[_0xdf8b('0x44')]['findAll'](_0x108531);})['then'](function(_0x51dd13){_0x308798[_0xdf8b('0x47')]=_0x51dd13;return _0x308798;})[_0xdf8b('0x25')](respondWithFilteredResult(_0x4fe5df,_0x108531))[_0xdf8b('0x48')](handleError(_0x4fe5df,null));};exports['show']=function(_0x39f787,_0x3c3e28){var _0x1f1f2d={'raw':!![],'where':{'id':_0x39f787[_0xdf8b('0x49')]['id']}},_0x255467={};_0x255467[_0xdf8b('0x36')]=_['keys'](db['Dynamics365Field'][_0xdf8b('0x4a')]);_0x255467[_0xdf8b('0x37')]=_['keys'](_0x39f787['query']);_0x255467[_0xdf8b('0x40')]=_[_0xdf8b('0x39')](_0x255467[_0xdf8b('0x36')],_0x255467[_0xdf8b('0x37')]);_0x1f1f2d[_0xdf8b('0x3a')]=_[_0xdf8b('0x39')](_0x255467[_0xdf8b('0x36')],qs['fields'](_0x39f787[_0xdf8b('0x37')][_0xdf8b('0x4b')]));_0x1f1f2d[_0xdf8b('0x3a')]=_0x1f1f2d[_0xdf8b('0x3a')][_0xdf8b('0x3b')]?_0x1f1f2d[_0xdf8b('0x3a')]:_0x255467[_0xdf8b('0x36')];if(_0x39f787[_0xdf8b('0x37')][_0xdf8b('0x45')]){_0x1f1f2d['include']=[{'all':!![]}];}_0x1f1f2d=_[_0xdf8b('0x2c')]({},_0x1f1f2d,_0x39f787['options']);return db[_0xdf8b('0x44')][_0xdf8b('0x4c')](_0x1f1f2d)[_0xdf8b('0x25')](handleEntityNotFound(_0x3c3e28,null))[_0xdf8b('0x25')](respondWithResult(_0x3c3e28,null))[_0xdf8b('0x48')](handleError(_0x3c3e28,null));};exports[_0xdf8b('0x4d')]=function(_0x492b39,_0x137c01){return db['Dynamics365Field'][_0xdf8b('0x4d')](_0x492b39['body'],{})['then'](respondWithResult(_0x137c01,0xc9))[_0xdf8b('0x48')](handleError(_0x137c01,null));};exports[_0xdf8b('0x24')]=function(_0x47bdc4,_0x132d0a){if(_0x47bdc4[_0xdf8b('0x4e')]['id']){delete _0x47bdc4['body']['id'];}return db[_0xdf8b('0x44')]['find']({'where':{'id':_0x47bdc4[_0xdf8b('0x49')]['id']}})['then'](handleEntityNotFound(_0x132d0a,null))['then'](saveUpdates(_0x47bdc4[_0xdf8b('0x4e')],null))['then'](respondWithResult(_0x132d0a,null))[_0xdf8b('0x48')](handleError(_0x132d0a,null));};exports[_0xdf8b('0x4f')]=function(_0x412005,_0x1a7dfb){return db['Dynamics365Field']['find']({'where':{'id':_0x412005[_0xdf8b('0x49')]['id']}})[_0xdf8b('0x25')](handleEntityNotFound(_0x1a7dfb,null))[_0xdf8b('0x25')](removeEntity(_0x1a7dfb,null))[_0xdf8b('0x48')](handleError(_0x1a7dfb,null));};