Built motion from commit (unavailable).|2.5.5
[motion2.git] / server / api / intDynamics365Configuration / intDynamics365Configuration.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 _0x976d=['send','index','map','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','pick','VIRTUAL','merge','options','Dynamics365Configuration','includeAll','include','findAll','rows','show','params','rawAttributes','find','create','update','body','getFields','Dynamics365Field','filter','getSubjects','findOne','getDescriptions','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','util','path','ejs','lodash','squel','crypto','desk.js','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','jayson/promise','client','request','Dynamics365Configuration,\x20%s,\x20%s','Dynamics365Configuration,\x20%s,\x20%s,\x20%s','stringify','error','code','message','request\x20sent','catch','sendStatus','end','status','json','count','offset','set','apply','reject','then','destroy','stack','name'];(function(_0x507669,_0x10b9b6){var _0x2e6a27=function(_0x1ac2a2){while(--_0x1ac2a2){_0x507669['push'](_0x507669['shift']());}};_0x2e6a27(++_0x10b9b6);}(_0x976d,0x135));var _0xd976=function(_0x34bf97,_0xc60f9d){_0x34bf97=_0x34bf97-0x0;var _0x292719=_0x976d[_0x34bf97];return _0x292719;};'use strict';var pdf=require(_0xd976('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xd976('0x1'));var zipdir=require(_0xd976('0x2'));var jsonpatch=require(_0xd976('0x3'));var rp=require(_0xd976('0x4'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0xd976('0x5'));var path=require(_0xd976('0x6'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xd976('0x7'));var fs=require('fs');var _=require(_0xd976('0x8'));var squel=require(_0xd976('0x9'));var crypto=require(_0xd976('0xa'));var jsforce=require('jsforce');var deskjs=require(_0xd976('0xb'));var toCsv=require(_0xd976('0xc'));var querystring=require('querystring');var Papa=require(_0xd976('0xd'));var Redis=require(_0xd976('0xe'));var authService=require(_0xd976('0xf'));var qs=require(_0xd976('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xd976('0x11'));var logger=require(_0xd976('0x12'))(_0xd976('0x13'));var utils=require(_0xd976('0x14'));var config=require(_0xd976('0x15'));var licenseUtil=require(_0xd976('0x16'));var db=require('../../mysqldb')['db'];var jayson=require(_0xd976('0x17'));var client=jayson[_0xd976('0x18')]['http']({'port':0x232a});function respondWithRpcPromise(_0x56912d,_0x5da1ba,_0x1259f8,_0x41623f){return new BPromise(function(_0xd472c4,_0x65c8e3){var _0x3a2182=_0x41623f||client;return _0x3a2182[_0xd976('0x19')](_0x56912d,_0x1259f8)['then'](function(_0x378218){logger['info'](_0xd976('0x1a'),_0x5da1ba,'request\x20sent');logger['debug'](_0xd976('0x1b'),_0x5da1ba,'request\x20sent',JSON[_0xd976('0x1c')](_0x378218));if(_0x378218[_0xd976('0x1d')]){if(_0x378218[_0xd976('0x1d')][_0xd976('0x1e')]===0x1f4){logger[_0xd976('0x1d')](_0xd976('0x1a'),_0x5da1ba,_0x378218[_0xd976('0x1d')][_0xd976('0x1f')]);return _0x65c8e3(_0x378218[_0xd976('0x1d')][_0xd976('0x1f')]);}logger[_0xd976('0x1d')](_0xd976('0x1a'),_0x5da1ba,_0x378218[_0xd976('0x1d')]['message']);return _0xd472c4(_0x378218[_0xd976('0x1d')][_0xd976('0x1f')]);}else{logger['info']('Dynamics365Configuration,\x20%s,\x20%s',_0x5da1ba,_0xd976('0x20'));_0xd472c4(_0x378218['result'][_0xd976('0x1f')]);}})[_0xd976('0x21')](function(_0x456c3c){logger[_0xd976('0x1d')]('Dynamics365Configuration,\x20%s,\x20%s',_0x5da1ba,_0x456c3c);_0x65c8e3(_0x456c3c);});});}function respondWithStatusCode(_0x42d149,_0xcf6a19){_0xcf6a19=_0xcf6a19||0xcc;return function(_0x3c623c){if(_0x3c623c){return _0x42d149[_0xd976('0x22')](_0xcf6a19);}return _0x42d149['status'](_0xcf6a19)[_0xd976('0x23')]();};}function respondWithResult(_0x54e288,_0xe582f2){_0xe582f2=_0xe582f2||0xc8;return function(_0x854b47){if(_0x854b47){return _0x54e288[_0xd976('0x24')](_0xe582f2)[_0xd976('0x25')](_0x854b47);}};}function respondWithFilteredResult(_0x1b8527,_0x932580){return function(_0x180f41){if(_0x180f41){var _0x338f8d=_0x180f41[_0xd976('0x26')],_0x6097b0=_0x932580[_0xd976('0x27')],_0x2d3729=_0x932580[_0xd976('0x27')]+_0x932580['limit'],_0x59688a;if(_0x2d3729>=_0x338f8d){_0x2d3729=_0x338f8d;_0x59688a=0xc8;}else{_0x59688a=0xce;}_0x1b8527['status'](_0x59688a);return _0x1b8527[_0xd976('0x28')]('Content-Range',_0x6097b0+'-'+_0x2d3729+'/'+_0x338f8d)['json'](_0x180f41);}return null;};}function patchUpdates(_0x2c60f8){return function(_0x26058f){try{jsonpatch[_0xd976('0x29')](_0x26058f,_0x2c60f8,!![]);}catch(_0xdefd2f){return BPromise[_0xd976('0x2a')](_0xdefd2f);}return _0x26058f['save']();};}function saveUpdates(_0x509553,_0x4aa0f2){return function(_0x5292de){if(_0x5292de){return _0x5292de['update'](_0x509553)[_0xd976('0x2b')](function(_0x4b6c33){return _0x4b6c33;});}return null;};}function removeEntity(_0x58a7c3,_0x13d603){return function(_0x2aad6e){if(_0x2aad6e){return _0x2aad6e[_0xd976('0x2c')]()[_0xd976('0x2b')](function(){_0x58a7c3[_0xd976('0x24')](0xcc)['end']();});}};}function handleEntityNotFound(_0x41b9de,_0x9cf9b0){return function(_0x3e9f78){if(!_0x3e9f78){_0x41b9de[_0xd976('0x22')](0x194);}return _0x3e9f78;};}function handleError(_0x5a4074,_0x34219b){_0x34219b=_0x34219b||0x1f4;return function(_0x1851b2){logger[_0xd976('0x1d')](_0x1851b2[_0xd976('0x2d')]);if(_0x1851b2[_0xd976('0x2e')]){delete _0x1851b2[_0xd976('0x2e')];}_0x5a4074[_0xd976('0x24')](_0x34219b)[_0xd976('0x2f')](_0x1851b2);};}exports[_0xd976('0x30')]=function(_0x5decb5,_0x5915d8){var _0x256538={},_0xa6c358={},_0x864412={'count':0x0,'rows':[]};var _0x12048d=_[_0xd976('0x31')](db['Dynamics365Configuration']['rawAttributes'],function(_0x48fc8e){return{'name':_0x48fc8e[_0xd976('0x32')],'type':_0x48fc8e[_0xd976('0x33')][_0xd976('0x34')]};});_0xa6c358[_0xd976('0x35')]=_[_0xd976('0x31')](_0x12048d,_0xd976('0x2e'));_0xa6c358[_0xd976('0x36')]=_[_0xd976('0x37')](_0x5decb5[_0xd976('0x36')]);_0xa6c358[_0xd976('0x38')]=_[_0xd976('0x39')](_0xa6c358[_0xd976('0x35')],_0xa6c358[_0xd976('0x36')]);_0x256538[_0xd976('0x3a')]=_['intersection'](_0xa6c358[_0xd976('0x35')],qs[_0xd976('0x3b')](_0x5decb5['query'][_0xd976('0x3b')]));_0x256538[_0xd976('0x3a')]=_0x256538['attributes'][_0xd976('0x3c')]?_0x256538['attributes']:_0xa6c358[_0xd976('0x35')];if(!_0x5decb5[_0xd976('0x36')][_0xd976('0x3d')](_0xd976('0x3e'))){_0x256538[_0xd976('0x3f')]=qs['limit'](_0x5decb5['query'][_0xd976('0x3f')]);_0x256538[_0xd976('0x27')]=qs['offset'](_0x5decb5[_0xd976('0x36')][_0xd976('0x27')]);}_0x256538[_0xd976('0x40')]=qs[_0xd976('0x41')](_0x5decb5[_0xd976('0x36')][_0xd976('0x41')]);_0x256538[_0xd976('0x42')]=qs[_0xd976('0x38')](_[_0xd976('0x43')](_0x5decb5['query'],_0xa6c358[_0xd976('0x38')]),_0x12048d);if(_0x5decb5[_0xd976('0x36')]['filter']){_0x256538[_0xd976('0x42')]=_['merge'](_0x256538[_0xd976('0x42')],{'$or':_[_0xd976('0x31')](_0x12048d,function(_0x849432){if(_0x849432[_0xd976('0x33')]!==_0xd976('0x44')){var _0x4471a0={};_0x4471a0[_0x849432[_0xd976('0x2e')]]={'$like':'%'+_0x5decb5[_0xd976('0x36')]['filter']+'%'};return _0x4471a0;}})});}_0x256538=_[_0xd976('0x45')]({},_0x256538,_0x5decb5[_0xd976('0x46')]);var _0x1561d2={'where':_0x256538[_0xd976('0x42')]};return db[_0xd976('0x47')]['count'](_0x1561d2)['then'](function(_0x1feebb){_0x864412['count']=_0x1feebb;if(_0x5decb5[_0xd976('0x36')][_0xd976('0x48')]){_0x256538[_0xd976('0x49')]=[{'all':!![]}];}return db[_0xd976('0x47')][_0xd976('0x4a')](_0x256538);})['then'](function(_0x2a87b1){_0x864412[_0xd976('0x4b')]=_0x2a87b1;return _0x864412;})[_0xd976('0x2b')](respondWithFilteredResult(_0x5915d8,_0x256538))[_0xd976('0x21')](handleError(_0x5915d8,null));};exports[_0xd976('0x4c')]=function(_0x533ced,_0x554533){var _0x2ec915={'raw':![],'where':{'id':_0x533ced[_0xd976('0x4d')]['id']}},_0x11bbc5={};_0x11bbc5[_0xd976('0x35')]=_[_0xd976('0x37')](db['Dynamics365Configuration'][_0xd976('0x4e')]);_0x11bbc5[_0xd976('0x36')]=_[_0xd976('0x37')](_0x533ced[_0xd976('0x36')]);_0x11bbc5['filters']=_[_0xd976('0x39')](_0x11bbc5[_0xd976('0x35')],_0x11bbc5['query']);_0x2ec915[_0xd976('0x3a')]=_[_0xd976('0x39')](_0x11bbc5[_0xd976('0x35')],qs[_0xd976('0x3b')](_0x533ced[_0xd976('0x36')][_0xd976('0x3b')]));_0x2ec915['attributes']=_0x2ec915['attributes'][_0xd976('0x3c')]?_0x2ec915[_0xd976('0x3a')]:_0x11bbc5[_0xd976('0x35')];if(_0x533ced[_0xd976('0x36')][_0xd976('0x48')]){_0x2ec915[_0xd976('0x49')]=[{'all':!![]}];}_0x2ec915=_[_0xd976('0x45')]({},_0x2ec915,_0x533ced[_0xd976('0x46')]);return db[_0xd976('0x47')][_0xd976('0x4f')](_0x2ec915)[_0xd976('0x2b')](handleEntityNotFound(_0x554533,null))[_0xd976('0x2b')](respondWithResult(_0x554533,null))[_0xd976('0x21')](handleError(_0x554533,null));};exports[_0xd976('0x50')]=function(_0x49fae6,_0x32a3c8){return db['Dynamics365Configuration']['create'](_0x49fae6['body'],{})[_0xd976('0x2b')](respondWithResult(_0x32a3c8,0xc9))[_0xd976('0x21')](handleError(_0x32a3c8,null));};exports[_0xd976('0x51')]=function(_0x3ed5e0,_0x4ace2a){if(_0x3ed5e0[_0xd976('0x52')]['id']){delete _0x3ed5e0[_0xd976('0x52')]['id'];}return db[_0xd976('0x47')]['find']({'where':{'id':_0x3ed5e0[_0xd976('0x4d')]['id']}})[_0xd976('0x2b')](handleEntityNotFound(_0x4ace2a,null))[_0xd976('0x2b')](saveUpdates(_0x3ed5e0[_0xd976('0x52')],null))[_0xd976('0x2b')](respondWithResult(_0x4ace2a,null))['catch'](handleError(_0x4ace2a,null));};exports[_0xd976('0x2c')]=function(_0x10b179,_0x2690ad){return db[_0xd976('0x47')][_0xd976('0x4f')]({'where':{'id':_0x10b179[_0xd976('0x4d')]['id']}})[_0xd976('0x2b')](handleEntityNotFound(_0x2690ad,null))[_0xd976('0x2b')](removeEntity(_0x2690ad,null))[_0xd976('0x21')](handleError(_0x2690ad,null));};exports[_0xd976('0x53')]=function(_0x5c398a,_0x42daaf,_0x3af992){var _0x6a21d6={};var _0x1c8a6e={};var _0x4b6bc6;var _0x2631fe;return db['Dynamics365Configuration']['findOne']({'where':{'id':_0x5c398a[_0xd976('0x4d')]['id']}})[_0xd976('0x2b')](handleEntityNotFound(_0x42daaf,null))[_0xd976('0x2b')](function(_0x2f6a31){if(_0x2f6a31){_0x4b6bc6=_0x2f6a31;_0x1c8a6e[_0xd976('0x35')]=_[_0xd976('0x37')](db[_0xd976('0x54')]['rawAttributes']);_0x1c8a6e[_0xd976('0x36')]=_[_0xd976('0x37')](_0x5c398a[_0xd976('0x36')]);_0x1c8a6e[_0xd976('0x38')]=_[_0xd976('0x39')](_0x1c8a6e[_0xd976('0x35')],_0x1c8a6e['query']);_0x6a21d6[_0xd976('0x3a')]=_[_0xd976('0x39')](_0x1c8a6e['model'],qs[_0xd976('0x3b')](_0x5c398a['query'][_0xd976('0x3b')]));_0x6a21d6[_0xd976('0x3a')]=_0x6a21d6[_0xd976('0x3a')]['length']?_0x6a21d6[_0xd976('0x3a')]:_0x1c8a6e[_0xd976('0x35')];_0x6a21d6[_0xd976('0x40')]=qs[_0xd976('0x41')](_0x5c398a[_0xd976('0x36')][_0xd976('0x41')]);_0x6a21d6[_0xd976('0x42')]=qs[_0xd976('0x38')](_[_0xd976('0x43')](_0x5c398a['query'],_0x1c8a6e[_0xd976('0x38')]));if(_0x5c398a[_0xd976('0x36')][_0xd976('0x55')]){_0x6a21d6[_0xd976('0x42')]=_[_0xd976('0x45')](_0x6a21d6[_0xd976('0x42')],{'$or':_[_0xd976('0x31')](_0x6a21d6[_0xd976('0x3a')],function(_0x436063){var _0x422e4c={};_0x422e4c[_0x436063]={'$like':'%'+_0x5c398a[_0xd976('0x36')][_0xd976('0x55')]+'%'};return _0x422e4c;})});}_0x6a21d6=_['merge']({},_0x6a21d6,_0x5c398a[_0xd976('0x46')]);return _0x4b6bc6['getFields'](_0x6a21d6);}})[_0xd976('0x2b')](function(_0x75f6aa){if(_0x75f6aa){_0x2631fe=_0x75f6aa['length'];if(!_0x5c398a[_0xd976('0x36')][_0xd976('0x3d')](_0xd976('0x3e'))){_0x6a21d6[_0xd976('0x3f')]=qs[_0xd976('0x3f')](_0x5c398a[_0xd976('0x36')][_0xd976('0x3f')]);_0x6a21d6['offset']=qs[_0xd976('0x27')](_0x5c398a[_0xd976('0x36')][_0xd976('0x27')]);}return _0x4b6bc6[_0xd976('0x53')](_0x6a21d6);}})[_0xd976('0x2b')](function(_0x497ea2){if(_0x497ea2){return _0x497ea2?{'count':_0x2631fe,'rows':_0x497ea2}:null;}})[_0xd976('0x2b')](respondWithResult(_0x42daaf,null))[_0xd976('0x21')](handleError(_0x42daaf,null));};exports[_0xd976('0x56')]=function(_0xa1bfde,_0x5b1d42,_0x396801){var _0x5ccb37={};var _0x44d10b={};var _0x5c1304;var _0x3175b1;return db[_0xd976('0x47')][_0xd976('0x57')]({'where':{'id':_0xa1bfde['params']['id']}})[_0xd976('0x2b')](handleEntityNotFound(_0x5b1d42,null))[_0xd976('0x2b')](function(_0x4d5123){if(_0x4d5123){_0x5c1304=_0x4d5123;_0x44d10b[_0xd976('0x35')]=_['keys'](db[_0xd976('0x54')]['rawAttributes']);_0x44d10b[_0xd976('0x36')]=_[_0xd976('0x37')](_0xa1bfde['query']);_0x44d10b[_0xd976('0x38')]=_['intersection'](_0x44d10b[_0xd976('0x35')],_0x44d10b[_0xd976('0x36')]);_0x5ccb37[_0xd976('0x3a')]=_[_0xd976('0x39')](_0x44d10b[_0xd976('0x35')],qs['fields'](_0xa1bfde[_0xd976('0x36')][_0xd976('0x3b')]));_0x5ccb37[_0xd976('0x3a')]=_0x5ccb37[_0xd976('0x3a')][_0xd976('0x3c')]?_0x5ccb37[_0xd976('0x3a')]:_0x44d10b['model'];_0x5ccb37[_0xd976('0x40')]=qs['sort'](_0xa1bfde[_0xd976('0x36')][_0xd976('0x41')]);_0x5ccb37['where']=qs[_0xd976('0x38')](_[_0xd976('0x43')](_0xa1bfde[_0xd976('0x36')],_0x44d10b[_0xd976('0x38')]));if(_0xa1bfde['query'][_0xd976('0x55')]){_0x5ccb37[_0xd976('0x42')]=_[_0xd976('0x45')](_0x5ccb37[_0xd976('0x42')],{'$or':_[_0xd976('0x31')](_0x5ccb37[_0xd976('0x3a')],function(_0x40f15e){var _0x2b1cb9={};_0x2b1cb9[_0x40f15e]={'$like':'%'+_0xa1bfde[_0xd976('0x36')]['filter']+'%'};return _0x2b1cb9;})});}_0x5ccb37=_[_0xd976('0x45')]({},_0x5ccb37,_0xa1bfde['options']);return _0x5c1304[_0xd976('0x56')](_0x5ccb37);}})[_0xd976('0x2b')](function(_0x5f5ecf){if(_0x5f5ecf){_0x3175b1=_0x5f5ecf[_0xd976('0x3c')];if(!_0xa1bfde[_0xd976('0x36')][_0xd976('0x3d')](_0xd976('0x3e'))){_0x5ccb37['limit']=qs['limit'](_0xa1bfde[_0xd976('0x36')][_0xd976('0x3f')]);_0x5ccb37[_0xd976('0x27')]=qs[_0xd976('0x27')](_0xa1bfde[_0xd976('0x36')]['offset']);}return _0x5c1304['getSubjects'](_0x5ccb37);}})['then'](function(_0x2d7f5d){if(_0x2d7f5d){return _0x2d7f5d?{'count':_0x3175b1,'rows':_0x2d7f5d}:null;}})[_0xd976('0x2b')](respondWithResult(_0x5b1d42,null))[_0xd976('0x21')](handleError(_0x5b1d42,null));};exports[_0xd976('0x58')]=function(_0x482155,_0x20a694,_0x6690aa){var _0x518409={};var _0x51b171={};var _0xa12fbf;var _0x21293e;return db[_0xd976('0x47')][_0xd976('0x57')]({'where':{'id':_0x482155['params']['id']}})['then'](handleEntityNotFound(_0x20a694,null))[_0xd976('0x2b')](function(_0x5a863e){if(_0x5a863e){_0xa12fbf=_0x5a863e;_0x51b171[_0xd976('0x35')]=_[_0xd976('0x37')](db['Dynamics365Field'][_0xd976('0x4e')]);_0x51b171[_0xd976('0x36')]=_[_0xd976('0x37')](_0x482155[_0xd976('0x36')]);_0x51b171[_0xd976('0x38')]=_['intersection'](_0x51b171['model'],_0x51b171[_0xd976('0x36')]);_0x518409[_0xd976('0x3a')]=_[_0xd976('0x39')](_0x51b171[_0xd976('0x35')],qs['fields'](_0x482155[_0xd976('0x36')][_0xd976('0x3b')]));_0x518409['attributes']=_0x518409[_0xd976('0x3a')]['length']?_0x518409['attributes']:_0x51b171[_0xd976('0x35')];_0x518409['order']=qs[_0xd976('0x41')](_0x482155[_0xd976('0x36')][_0xd976('0x41')]);_0x518409['where']=qs['filters'](_[_0xd976('0x43')](_0x482155[_0xd976('0x36')],_0x51b171[_0xd976('0x38')]));if(_0x482155[_0xd976('0x36')]['filter']){_0x518409[_0xd976('0x42')]=_[_0xd976('0x45')](_0x518409[_0xd976('0x42')],{'$or':_[_0xd976('0x31')](_0x518409[_0xd976('0x3a')],function(_0x232605){var _0x30ddf8={};_0x30ddf8[_0x232605]={'$like':'%'+_0x482155[_0xd976('0x36')][_0xd976('0x55')]+'%'};return _0x30ddf8;})});}_0x518409=_[_0xd976('0x45')]({},_0x518409,_0x482155[_0xd976('0x46')]);return _0xa12fbf[_0xd976('0x58')](_0x518409);}})[_0xd976('0x2b')](function(_0x545c23){if(_0x545c23){_0x21293e=_0x545c23[_0xd976('0x3c')];if(!_0x482155['query']['hasOwnProperty'](_0xd976('0x3e'))){_0x518409[_0xd976('0x3f')]=qs['limit'](_0x482155[_0xd976('0x36')]['limit']);_0x518409[_0xd976('0x27')]=qs[_0xd976('0x27')](_0x482155[_0xd976('0x36')]['offset']);}return _0xa12fbf[_0xd976('0x58')](_0x518409);}})['then'](function(_0x518293){if(_0x518293){return _0x518293?{'count':_0x21293e,'rows':_0x518293}:null;}})[_0xd976('0x2b')](respondWithResult(_0x20a694,null))['catch'](handleError(_0x20a694,null));};