Built motion from commit 911eb874.|2.6.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 _0xb413=['intersection','attributes','fields','hasOwnProperty','nolimit','sort','where','pick','filter','merge','type','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','length','find','create','body','rimraf','moment','bluebird','mustache','path','to-csv','ejs','lodash','crypto','papaparse','ioredis','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','count','limit','set','apply','reject','save','update','then','destroy','end','error','stack','name','send','map','Dynamics365Field','rawAttributes','fieldName','key','model','query','keys','filters'];(function(_0x501510,_0x61caa9){var _0x1e6ee5=function(_0x32845b){while(--_0x32845b){_0x501510['push'](_0x501510['shift']());}};_0x1e6ee5(++_0x61caa9);}(_0xb413,0x130));var _0x3b41=function(_0x4861d3,_0x4fef8a){_0x4861d3=_0x4861d3-0x0;var _0x4c523f=_0xb413[_0x4861d3];return _0x4c523f;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x3b41('0x0'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x3b41('0x1'));var BPromise=require(_0x3b41('0x2'));var Mustache=require(_0x3b41('0x3'));var util=require('util');var path=require(_0x3b41('0x4'));var sox=require('sox');var csv=require(_0x3b41('0x5'));var ejs=require(_0x3b41('0x6'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x3b41('0x7'));var squel=require('squel');var crypto=require(_0x3b41('0x8'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x3b41('0x9'));var Redis=require(_0x3b41('0xa'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x3b41('0xb'));var logger=require(_0x3b41('0xc'))(_0x3b41('0xd'));var utils=require(_0x3b41('0xe'));var config=require(_0x3b41('0xf'));var licenseUtil=require(_0x3b41('0x10'));var db=require(_0x3b41('0x11'))['db'];function respondWithStatusCode(_0x4334d2,_0x3af8e7){_0x3af8e7=_0x3af8e7||0xcc;return function(_0x2ef493){if(_0x2ef493){return _0x4334d2[_0x3b41('0x12')](_0x3af8e7);}return _0x4334d2[_0x3b41('0x13')](_0x3af8e7)['end']();};}function respondWithResult(_0x410edd,_0x5bf775){_0x5bf775=_0x5bf775||0xc8;return function(_0x2c1a8b){if(_0x2c1a8b){return _0x410edd[_0x3b41('0x13')](_0x5bf775)[_0x3b41('0x14')](_0x2c1a8b);}};}function respondWithFilteredResult(_0x1d00ff,_0x28b35b){return function(_0x4c90b6){if(_0x4c90b6){var _0x70d4d3=typeof _0x28b35b[_0x3b41('0x15')]===_0x3b41('0x16')&&typeof _0x28b35b['limit']===_0x3b41('0x16');var _0x26de42=_0x4c90b6[_0x3b41('0x17')];var _0x1b1696=_0x70d4d3?0x0:_0x28b35b['offset'];var _0x4af33e=_0x70d4d3?_0x4c90b6['count']:_0x28b35b['offset']+_0x28b35b[_0x3b41('0x18')];var _0x5a0d32;if(_0x4af33e>=_0x26de42){_0x4af33e=_0x26de42;_0x5a0d32=0xc8;}else{_0x5a0d32=0xce;}_0x1d00ff[_0x3b41('0x13')](_0x5a0d32);return _0x1d00ff[_0x3b41('0x19')]('Content-Range',_0x1b1696+'-'+_0x4af33e+'/'+_0x26de42)[_0x3b41('0x14')](_0x4c90b6);}return null;};}function patchUpdates(_0x5ed093){return function(_0x3140b1){try{jsonpatch[_0x3b41('0x1a')](_0x3140b1,_0x5ed093,!![]);}catch(_0x57fbec){return BPromise[_0x3b41('0x1b')](_0x57fbec);}return _0x3140b1[_0x3b41('0x1c')]();};}function saveUpdates(_0xb8dc2c,_0x4fe51d){return function(_0x4577a3){if(_0x4577a3){return _0x4577a3[_0x3b41('0x1d')](_0xb8dc2c)[_0x3b41('0x1e')](function(_0x26f30d){return _0x26f30d;});}return null;};}function removeEntity(_0x3e25b3,_0x3a6f1){return function(_0x3c6e33){if(_0x3c6e33){return _0x3c6e33[_0x3b41('0x1f')]()['then'](function(){_0x3e25b3[_0x3b41('0x13')](0xcc)[_0x3b41('0x20')]();});}};}function handleEntityNotFound(_0x1577a1,_0x297411){return function(_0x5a9efb){if(!_0x5a9efb){_0x1577a1[_0x3b41('0x12')](0x194);}return _0x5a9efb;};}function handleError(_0x4aa173,_0x26a8c8){_0x26a8c8=_0x26a8c8||0x1f4;return function(_0x124771){logger[_0x3b41('0x21')](_0x124771[_0x3b41('0x22')]);if(_0x124771['name']){delete _0x124771[_0x3b41('0x23')];}_0x4aa173[_0x3b41('0x13')](_0x26a8c8)[_0x3b41('0x24')](_0x124771);};}exports['index']=function(_0x4b18b6,_0x163f9b){var _0x6d566c={},_0x502595={},_0x116ff3={'count':0x0,'rows':[]};var _0x50890e=_[_0x3b41('0x25')](db[_0x3b41('0x26')][_0x3b41('0x27')],function(_0x32e408){return{'name':_0x32e408[_0x3b41('0x28')],'type':_0x32e408['type'][_0x3b41('0x29')]};});_0x502595[_0x3b41('0x2a')]=_[_0x3b41('0x25')](_0x50890e,'name');_0x502595[_0x3b41('0x2b')]=_[_0x3b41('0x2c')](_0x4b18b6[_0x3b41('0x2b')]);_0x502595[_0x3b41('0x2d')]=_[_0x3b41('0x2e')](_0x502595[_0x3b41('0x2a')],_0x502595[_0x3b41('0x2b')]);_0x6d566c[_0x3b41('0x2f')]=_[_0x3b41('0x2e')](_0x502595[_0x3b41('0x2a')],qs['fields'](_0x4b18b6['query'][_0x3b41('0x30')]));_0x6d566c[_0x3b41('0x2f')]=_0x6d566c[_0x3b41('0x2f')]['length']?_0x6d566c['attributes']:_0x502595['model'];if(!_0x4b18b6[_0x3b41('0x2b')][_0x3b41('0x31')](_0x3b41('0x32'))){_0x6d566c['limit']=qs[_0x3b41('0x18')](_0x4b18b6[_0x3b41('0x2b')]['limit']);_0x6d566c[_0x3b41('0x15')]=qs[_0x3b41('0x15')](_0x4b18b6[_0x3b41('0x2b')][_0x3b41('0x15')]);}_0x6d566c['order']=qs[_0x3b41('0x33')](_0x4b18b6[_0x3b41('0x2b')][_0x3b41('0x33')]);_0x6d566c[_0x3b41('0x34')]=qs[_0x3b41('0x2d')](_[_0x3b41('0x35')](_0x4b18b6['query'],_0x502595[_0x3b41('0x2d')]),_0x50890e);if(_0x4b18b6[_0x3b41('0x2b')][_0x3b41('0x36')]){_0x6d566c[_0x3b41('0x34')]=_[_0x3b41('0x37')](_0x6d566c['where'],{'$or':_[_0x3b41('0x25')](_0x50890e,function(_0x32b791){if(_0x32b791[_0x3b41('0x38')]!==_0x3b41('0x39')){var _0x38981f={};_0x38981f[_0x32b791[_0x3b41('0x23')]]={'$like':'%'+_0x4b18b6['query'][_0x3b41('0x36')]+'%'};return _0x38981f;}})});}_0x6d566c=_[_0x3b41('0x37')]({},_0x6d566c,_0x4b18b6[_0x3b41('0x3a')]);var _0x424722={'where':_0x6d566c['where']};return db[_0x3b41('0x26')]['count'](_0x424722)[_0x3b41('0x1e')](function(_0x4d7129){_0x116ff3['count']=_0x4d7129;if(_0x4b18b6[_0x3b41('0x2b')][_0x3b41('0x3b')]){_0x6d566c[_0x3b41('0x3c')]=[{'all':!![]}];}return db[_0x3b41('0x26')][_0x3b41('0x3d')](_0x6d566c);})[_0x3b41('0x1e')](function(_0x5ee23a){_0x116ff3[_0x3b41('0x3e')]=_0x5ee23a;return _0x116ff3;})[_0x3b41('0x1e')](respondWithFilteredResult(_0x163f9b,_0x6d566c))[_0x3b41('0x3f')](handleError(_0x163f9b,null));};exports[_0x3b41('0x40')]=function(_0x5768d9,_0x20e4b8){var _0x5921b0={'raw':!![],'where':{'id':_0x5768d9[_0x3b41('0x41')]['id']}},_0x5b5270={};_0x5b5270['model']=_[_0x3b41('0x2c')](db[_0x3b41('0x26')]['rawAttributes']);_0x5b5270[_0x3b41('0x2b')]=_[_0x3b41('0x2c')](_0x5768d9[_0x3b41('0x2b')]);_0x5b5270[_0x3b41('0x2d')]=_[_0x3b41('0x2e')](_0x5b5270['model'],_0x5b5270['query']);_0x5921b0[_0x3b41('0x2f')]=_['intersection'](_0x5b5270[_0x3b41('0x2a')],qs[_0x3b41('0x30')](_0x5768d9['query'][_0x3b41('0x30')]));_0x5921b0[_0x3b41('0x2f')]=_0x5921b0['attributes'][_0x3b41('0x42')]?_0x5921b0[_0x3b41('0x2f')]:_0x5b5270['model'];if(_0x5768d9[_0x3b41('0x2b')]['includeAll']){_0x5921b0[_0x3b41('0x3c')]=[{'all':!![]}];}_0x5921b0=_[_0x3b41('0x37')]({},_0x5921b0,_0x5768d9['options']);return db[_0x3b41('0x26')][_0x3b41('0x43')](_0x5921b0)[_0x3b41('0x1e')](handleEntityNotFound(_0x20e4b8,null))['then'](respondWithResult(_0x20e4b8,null))[_0x3b41('0x3f')](handleError(_0x20e4b8,null));};exports[_0x3b41('0x44')]=function(_0x4171d0,_0x240878){return db[_0x3b41('0x26')]['create'](_0x4171d0[_0x3b41('0x45')],{})[_0x3b41('0x1e')](respondWithResult(_0x240878,0xc9))[_0x3b41('0x3f')](handleError(_0x240878,null));};exports[_0x3b41('0x1d')]=function(_0x4f0695,_0x510fe2){if(_0x4f0695[_0x3b41('0x45')]['id']){delete _0x4f0695[_0x3b41('0x45')]['id'];}return db[_0x3b41('0x26')]['find']({'where':{'id':_0x4f0695[_0x3b41('0x41')]['id']}})['then'](handleEntityNotFound(_0x510fe2,null))[_0x3b41('0x1e')](saveUpdates(_0x4f0695['body'],null))[_0x3b41('0x1e')](respondWithResult(_0x510fe2,null))[_0x3b41('0x3f')](handleError(_0x510fe2,null));};exports[_0x3b41('0x1f')]=function(_0x1ad3f4,_0x27d6c4){return db[_0x3b41('0x26')]['find']({'where':{'id':_0x1ad3f4[_0x3b41('0x41')]['id']}})[_0x3b41('0x1e')](handleEntityNotFound(_0x27d6c4,null))[_0x3b41('0x1e')](removeEntity(_0x27d6c4,null))['catch'](handleError(_0x27d6c4,null));};