Built motion from commit b5996064.|2.6.21
[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 _0xd89e=['findAll','catch','show','params','keys','length','includeAll','create','body','find','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','status','end','json','offset','limit','undefined','count','set','Content-Range','apply','reject','update','then','destroy','error','name','index','map','Dynamics365Field','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','hasOwnProperty','order','sort','where','pick','merge','VIRTUAL','filter','options','include'];(function(_0x13193e,_0x49cd42){var _0xcc200c=function(_0x3111c8){while(--_0x3111c8){_0x13193e['push'](_0x13193e['shift']());}};_0xcc200c(++_0x49cd42);}(_0xd89e,0xf4));var _0xed89=function(_0x15d885,_0x48eb23){_0x15d885=_0x15d885-0x0;var _0x581c75=_0xd89e[_0x15d885];return _0x581c75;};'use strict';var emlformat=require(_0xed89('0x0'));var rimraf=require(_0xed89('0x1'));var zipdir=require(_0xed89('0x2'));var jsonpatch=require(_0xed89('0x3'));var rp=require(_0xed89('0x4'));var moment=require(_0xed89('0x5'));var BPromise=require(_0xed89('0x6'));var Mustache=require(_0xed89('0x7'));var util=require(_0xed89('0x8'));var path=require(_0xed89('0x9'));var sox=require(_0xed89('0xa'));var csv=require(_0xed89('0xb'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xed89('0xc'));var _=require(_0xed89('0xd'));var squel=require(_0xed89('0xe'));var crypto=require(_0xed89('0xf'));var jsforce=require(_0xed89('0x10'));var deskjs=require(_0xed89('0x11'));var toCsv=require(_0xed89('0xb'));var querystring=require(_0xed89('0x12'));var Papa=require(_0xed89('0x13'));var Redis=require(_0xed89('0x14'));var authService=require(_0xed89('0x15'));var qs=require(_0xed89('0x16'));var as=require(_0xed89('0x17'));var hardwareService=require(_0xed89('0x18'));var logger=require(_0xed89('0x19'))(_0xed89('0x1a'));var utils=require('../../config/utils');var config=require(_0xed89('0x1b'));var licenseUtil=require(_0xed89('0x1c'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x339096,_0x4c9edd){_0x4c9edd=_0x4c9edd||0xcc;return function(_0x25edaf){if(_0x25edaf){return _0x339096['sendStatus'](_0x4c9edd);}return _0x339096[_0xed89('0x1d')](_0x4c9edd)[_0xed89('0x1e')]();};}function respondWithResult(_0x42d682,_0x2cf186){_0x2cf186=_0x2cf186||0xc8;return function(_0xce2ed8){if(_0xce2ed8){return _0x42d682[_0xed89('0x1d')](_0x2cf186)[_0xed89('0x1f')](_0xce2ed8);}};}function respondWithFilteredResult(_0x4d5623,_0x193c5f){return function(_0x47e5c7){if(_0x47e5c7){var _0xd2694e=typeof _0x193c5f[_0xed89('0x20')]==='undefined'&&typeof _0x193c5f[_0xed89('0x21')]===_0xed89('0x22');var _0x4a05ea=_0x47e5c7[_0xed89('0x23')];var _0x1da11f=_0xd2694e?0x0:_0x193c5f[_0xed89('0x20')];var _0x8b6f09=_0xd2694e?_0x47e5c7[_0xed89('0x23')]:_0x193c5f[_0xed89('0x20')]+_0x193c5f[_0xed89('0x21')];var _0x557884;if(_0x8b6f09>=_0x4a05ea){_0x8b6f09=_0x4a05ea;_0x557884=0xc8;}else{_0x557884=0xce;}_0x4d5623[_0xed89('0x1d')](_0x557884);return _0x4d5623[_0xed89('0x24')](_0xed89('0x25'),_0x1da11f+'-'+_0x8b6f09+'/'+_0x4a05ea)['json'](_0x47e5c7);}return null;};}function patchUpdates(_0x409607){return function(_0x22c051){try{jsonpatch[_0xed89('0x26')](_0x22c051,_0x409607,!![]);}catch(_0x34a3d7){return BPromise[_0xed89('0x27')](_0x34a3d7);}return _0x22c051['save']();};}function saveUpdates(_0x1962e7,_0x1986c6){return function(_0x20aeb4){if(_0x20aeb4){return _0x20aeb4[_0xed89('0x28')](_0x1962e7)[_0xed89('0x29')](function(_0x4c0c62){return _0x4c0c62;});}return null;};}function removeEntity(_0x3f7fed,_0xafd51c){return function(_0x5128e1){if(_0x5128e1){return _0x5128e1[_0xed89('0x2a')]()[_0xed89('0x29')](function(){_0x3f7fed[_0xed89('0x1d')](0xcc)[_0xed89('0x1e')]();});}};}function handleEntityNotFound(_0x5ab97f,_0xee1d31){return function(_0x57c7bb){if(!_0x57c7bb){_0x5ab97f['sendStatus'](0x194);}return _0x57c7bb;};}function handleError(_0x4f792d,_0x5a27c4){_0x5a27c4=_0x5a27c4||0x1f4;return function(_0x129804){logger[_0xed89('0x2b')](_0x129804['stack']);if(_0x129804[_0xed89('0x2c')]){delete _0x129804['name'];}_0x4f792d[_0xed89('0x1d')](_0x5a27c4)['send'](_0x129804);};}exports[_0xed89('0x2d')]=function(_0x43052e,_0x1b9b7a){var _0x257875={},_0x30601a={},_0x542584={'count':0x0,'rows':[]};var _0x3785c4=_[_0xed89('0x2e')](db[_0xed89('0x2f')][_0xed89('0x30')],function(_0x825ac1){return{'name':_0x825ac1[_0xed89('0x31')],'type':_0x825ac1[_0xed89('0x32')][_0xed89('0x33')]};});_0x30601a[_0xed89('0x34')]=_[_0xed89('0x2e')](_0x3785c4,'name');_0x30601a[_0xed89('0x35')]=_['keys'](_0x43052e[_0xed89('0x35')]);_0x30601a[_0xed89('0x36')]=_[_0xed89('0x37')](_0x30601a[_0xed89('0x34')],_0x30601a[_0xed89('0x35')]);_0x257875[_0xed89('0x38')]=_[_0xed89('0x37')](_0x30601a[_0xed89('0x34')],qs[_0xed89('0x39')](_0x43052e[_0xed89('0x35')]['fields']));_0x257875[_0xed89('0x38')]=_0x257875[_0xed89('0x38')]['length']?_0x257875[_0xed89('0x38')]:_0x30601a['model'];if(!_0x43052e[_0xed89('0x35')][_0xed89('0x3a')]('nolimit')){_0x257875[_0xed89('0x21')]=qs[_0xed89('0x21')](_0x43052e[_0xed89('0x35')]['limit']);_0x257875[_0xed89('0x20')]=qs[_0xed89('0x20')](_0x43052e[_0xed89('0x35')][_0xed89('0x20')]);}_0x257875[_0xed89('0x3b')]=qs[_0xed89('0x3c')](_0x43052e['query'][_0xed89('0x3c')]);_0x257875[_0xed89('0x3d')]=qs[_0xed89('0x36')](_[_0xed89('0x3e')](_0x43052e[_0xed89('0x35')],_0x30601a[_0xed89('0x36')]),_0x3785c4);if(_0x43052e['query']['filter']){_0x257875[_0xed89('0x3d')]=_[_0xed89('0x3f')](_0x257875[_0xed89('0x3d')],{'$or':_[_0xed89('0x2e')](_0x3785c4,function(_0x2ea41a){if(_0x2ea41a[_0xed89('0x32')]!==_0xed89('0x40')){var _0x333e55={};_0x333e55[_0x2ea41a['name']]={'$like':'%'+_0x43052e[_0xed89('0x35')][_0xed89('0x41')]+'%'};return _0x333e55;}})});}_0x257875=_[_0xed89('0x3f')]({},_0x257875,_0x43052e[_0xed89('0x42')]);var _0x584bd9={'where':_0x257875[_0xed89('0x3d')]};return db['Dynamics365Field']['count'](_0x584bd9)[_0xed89('0x29')](function(_0x5d0565){_0x542584['count']=_0x5d0565;if(_0x43052e[_0xed89('0x35')]['includeAll']){_0x257875[_0xed89('0x43')]=[{'all':!![]}];}return db['Dynamics365Field'][_0xed89('0x44')](_0x257875);})['then'](function(_0x29f3f6){_0x542584['rows']=_0x29f3f6;return _0x542584;})[_0xed89('0x29')](respondWithFilteredResult(_0x1b9b7a,_0x257875))[_0xed89('0x45')](handleError(_0x1b9b7a,null));};exports[_0xed89('0x46')]=function(_0x577c23,_0x10bc54){var _0x80868e={'raw':!![],'where':{'id':_0x577c23[_0xed89('0x47')]['id']}},_0x2d491a={};_0x2d491a[_0xed89('0x34')]=_[_0xed89('0x48')](db['Dynamics365Field'][_0xed89('0x30')]);_0x2d491a[_0xed89('0x35')]=_[_0xed89('0x48')](_0x577c23[_0xed89('0x35')]);_0x2d491a[_0xed89('0x36')]=_['intersection'](_0x2d491a[_0xed89('0x34')],_0x2d491a[_0xed89('0x35')]);_0x80868e[_0xed89('0x38')]=_[_0xed89('0x37')](_0x2d491a[_0xed89('0x34')],qs['fields'](_0x577c23[_0xed89('0x35')][_0xed89('0x39')]));_0x80868e['attributes']=_0x80868e[_0xed89('0x38')][_0xed89('0x49')]?_0x80868e['attributes']:_0x2d491a[_0xed89('0x34')];if(_0x577c23[_0xed89('0x35')][_0xed89('0x4a')]){_0x80868e[_0xed89('0x43')]=[{'all':!![]}];}_0x80868e=_[_0xed89('0x3f')]({},_0x80868e,_0x577c23[_0xed89('0x42')]);return db['Dynamics365Field']['find'](_0x80868e)[_0xed89('0x29')](handleEntityNotFound(_0x10bc54,null))[_0xed89('0x29')](respondWithResult(_0x10bc54,null))[_0xed89('0x45')](handleError(_0x10bc54,null));};exports['create']=function(_0x861b62,_0x31bc4e){return db['Dynamics365Field'][_0xed89('0x4b')](_0x861b62['body'],{})['then'](respondWithResult(_0x31bc4e,0xc9))[_0xed89('0x45')](handleError(_0x31bc4e,null));};exports[_0xed89('0x28')]=function(_0x396868,_0xc1ea1a){if(_0x396868['body']['id']){delete _0x396868[_0xed89('0x4c')]['id'];}return db[_0xed89('0x2f')][_0xed89('0x4d')]({'where':{'id':_0x396868[_0xed89('0x47')]['id']}})[_0xed89('0x29')](handleEntityNotFound(_0xc1ea1a,null))[_0xed89('0x29')](saveUpdates(_0x396868[_0xed89('0x4c')],null))[_0xed89('0x29')](respondWithResult(_0xc1ea1a,null))[_0xed89('0x45')](handleError(_0xc1ea1a,null));};exports[_0xed89('0x2a')]=function(_0x3241a8,_0x1fab04){return db[_0xed89('0x2f')]['find']({'where':{'id':_0x3241a8[_0xed89('0x47')]['id']}})[_0xed89('0x29')](handleEntityNotFound(_0x1fab04,null))[_0xed89('0x29')](removeEntity(_0x1fab04,null))[_0xed89('0x45')](handleError(_0x1fab04,null));};