341b74fa58233caa5edcf729fb6042a301942644
[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 _0x4b0f=['where','merge','VIRTUAL','options','Dynamics365Field','includeAll','include','catch','show','params','find','create','body','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit','reject','save','update','then','destroy','error','stack','name','send','map','rawAttributes','fieldName','type','key','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort'];(function(_0x103ff9,_0x3dd592){var _0x39df63=function(_0x574ca4){while(--_0x574ca4){_0x103ff9['push'](_0x103ff9['shift']());}};_0x39df63(++_0x3dd592);}(_0x4b0f,0xa3));var _0xf4b0=function(_0x20634c,_0x5534fc){_0x20634c=_0x20634c-0x0;var _0x5d8936=_0x4b0f[_0x20634c];return _0x5d8936;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xf4b0('0x0'));var rimraf=require(_0xf4b0('0x1'));var zipdir=require(_0xf4b0('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xf4b0('0x3'));var moment=require(_0xf4b0('0x4'));var BPromise=require(_0xf4b0('0x5'));var Mustache=require(_0xf4b0('0x6'));var util=require(_0xf4b0('0x7'));var path=require(_0xf4b0('0x8'));var sox=require(_0xf4b0('0x9'));var csv=require(_0xf4b0('0xa'));var ejs=require(_0xf4b0('0xb'));var fs=require('fs');var _=require(_0xf4b0('0xc'));var squel=require(_0xf4b0('0xd'));var crypto=require(_0xf4b0('0xe'));var jsforce=require(_0xf4b0('0xf'));var deskjs=require(_0xf4b0('0x10'));var toCsv=require(_0xf4b0('0xa'));var querystring=require(_0xf4b0('0x11'));var Papa=require('papaparse');var Redis=require(_0xf4b0('0x12'));var authService=require(_0xf4b0('0x13'));var qs=require(_0xf4b0('0x14'));var as=require(_0xf4b0('0x15'));var hardwareService=require(_0xf4b0('0x16'));var logger=require(_0xf4b0('0x17'))(_0xf4b0('0x18'));var utils=require(_0xf4b0('0x19'));var config=require(_0xf4b0('0x1a'));var licenseUtil=require(_0xf4b0('0x1b'));var db=require(_0xf4b0('0x1c'))['db'];function respondWithStatusCode(_0x40a3fb,_0x3c594c){_0x3c594c=_0x3c594c||0xcc;return function(_0x12480f){if(_0x12480f){return _0x40a3fb[_0xf4b0('0x1d')](_0x3c594c);}return _0x40a3fb[_0xf4b0('0x1e')](_0x3c594c)[_0xf4b0('0x1f')]();};}function respondWithResult(_0x21fe78,_0x3aa005){_0x3aa005=_0x3aa005||0xc8;return function(_0x38f1b4){if(_0x38f1b4){return _0x21fe78[_0xf4b0('0x1e')](_0x3aa005)[_0xf4b0('0x20')](_0x38f1b4);}};}function respondWithFilteredResult(_0x498d8a,_0x2f2a7a){return function(_0x19229f){if(_0x19229f){var _0x22173d=_0x19229f[_0xf4b0('0x21')],_0x54991b=_0x2f2a7a['offset'],_0x252835=_0x2f2a7a[_0xf4b0('0x22')]+_0x2f2a7a[_0xf4b0('0x23')],_0x1f2d74;if(_0x252835>=_0x22173d){_0x252835=_0x22173d;_0x1f2d74=0xc8;}else{_0x1f2d74=0xce;}_0x498d8a[_0xf4b0('0x1e')](_0x1f2d74);return _0x498d8a['set']('Content-Range',_0x54991b+'-'+_0x252835+'/'+_0x22173d)[_0xf4b0('0x20')](_0x19229f);}return null;};}function patchUpdates(_0x40a444){return function(_0x4f1093){try{jsonpatch['apply'](_0x4f1093,_0x40a444,!![]);}catch(_0x23a4e7){return BPromise[_0xf4b0('0x24')](_0x23a4e7);}return _0x4f1093[_0xf4b0('0x25')]();};}function saveUpdates(_0x4e65cd,_0x3a0b8c){return function(_0x1e4804){if(_0x1e4804){return _0x1e4804[_0xf4b0('0x26')](_0x4e65cd)[_0xf4b0('0x27')](function(_0x156806){return _0x156806;});}return null;};}function removeEntity(_0x2fc6a2,_0x221b1d){return function(_0x4df2b4){if(_0x4df2b4){return _0x4df2b4[_0xf4b0('0x28')]()[_0xf4b0('0x27')](function(){_0x2fc6a2[_0xf4b0('0x1e')](0xcc)[_0xf4b0('0x1f')]();});}};}function handleEntityNotFound(_0x2670af,_0x338975){return function(_0x28ecb0){if(!_0x28ecb0){_0x2670af[_0xf4b0('0x1d')](0x194);}return _0x28ecb0;};}function handleError(_0x4a0da1,_0x2e9df3){_0x2e9df3=_0x2e9df3||0x1f4;return function(_0x4c9d3c){logger[_0xf4b0('0x29')](_0x4c9d3c[_0xf4b0('0x2a')]);if(_0x4c9d3c[_0xf4b0('0x2b')]){delete _0x4c9d3c[_0xf4b0('0x2b')];}_0x4a0da1[_0xf4b0('0x1e')](_0x2e9df3)[_0xf4b0('0x2c')](_0x4c9d3c);};}exports['index']=function(_0x259106,_0x3594d3){var _0xcf121={},_0x5d9c36={},_0x2d9376={'count':0x0,'rows':[]};var _0x17a14b=_[_0xf4b0('0x2d')](db['Dynamics365Field'][_0xf4b0('0x2e')],function(_0x1ef8e1){return{'name':_0x1ef8e1[_0xf4b0('0x2f')],'type':_0x1ef8e1[_0xf4b0('0x30')][_0xf4b0('0x31')]};});_0x5d9c36[_0xf4b0('0x32')]=_[_0xf4b0('0x2d')](_0x17a14b,_0xf4b0('0x2b'));_0x5d9c36['query']=_[_0xf4b0('0x33')](_0x259106[_0xf4b0('0x34')]);_0x5d9c36[_0xf4b0('0x35')]=_[_0xf4b0('0x36')](_0x5d9c36[_0xf4b0('0x32')],_0x5d9c36[_0xf4b0('0x34')]);_0xcf121[_0xf4b0('0x37')]=_[_0xf4b0('0x36')](_0x5d9c36[_0xf4b0('0x32')],qs[_0xf4b0('0x38')](_0x259106[_0xf4b0('0x34')][_0xf4b0('0x38')]));_0xcf121['attributes']=_0xcf121['attributes'][_0xf4b0('0x39')]?_0xcf121[_0xf4b0('0x37')]:_0x5d9c36['model'];if(!_0x259106[_0xf4b0('0x34')][_0xf4b0('0x3a')](_0xf4b0('0x3b'))){_0xcf121[_0xf4b0('0x23')]=qs[_0xf4b0('0x23')](_0x259106[_0xf4b0('0x34')][_0xf4b0('0x23')]);_0xcf121['offset']=qs[_0xf4b0('0x22')](_0x259106['query'][_0xf4b0('0x22')]);}_0xcf121[_0xf4b0('0x3c')]=qs[_0xf4b0('0x3d')](_0x259106[_0xf4b0('0x34')][_0xf4b0('0x3d')]);_0xcf121[_0xf4b0('0x3e')]=qs[_0xf4b0('0x35')](_['pick'](_0x259106[_0xf4b0('0x34')],_0x5d9c36[_0xf4b0('0x35')]),_0x17a14b);if(_0x259106[_0xf4b0('0x34')]['filter']){_0xcf121[_0xf4b0('0x3e')]=_[_0xf4b0('0x3f')](_0xcf121[_0xf4b0('0x3e')],{'$or':_[_0xf4b0('0x2d')](_0x17a14b,function(_0x2fd052){if(_0x2fd052[_0xf4b0('0x30')]!==_0xf4b0('0x40')){var _0x49b8f8={};_0x49b8f8[_0x2fd052[_0xf4b0('0x2b')]]={'$like':'%'+_0x259106[_0xf4b0('0x34')]['filter']+'%'};return _0x49b8f8;}})});}_0xcf121=_[_0xf4b0('0x3f')]({},_0xcf121,_0x259106[_0xf4b0('0x41')]);var _0x566b2d={'where':_0xcf121['where']};return db[_0xf4b0('0x42')]['count'](_0x566b2d)[_0xf4b0('0x27')](function(_0x50df3e){_0x2d9376['count']=_0x50df3e;if(_0x259106[_0xf4b0('0x34')][_0xf4b0('0x43')]){_0xcf121[_0xf4b0('0x44')]=[{'all':!![]}];}return db[_0xf4b0('0x42')]['findAll'](_0xcf121);})[_0xf4b0('0x27')](function(_0x3eddb2){_0x2d9376['rows']=_0x3eddb2;return _0x2d9376;})['then'](respondWithFilteredResult(_0x3594d3,_0xcf121))[_0xf4b0('0x45')](handleError(_0x3594d3,null));};exports[_0xf4b0('0x46')]=function(_0x2a3b0f,_0x18ca44){var _0x4dc52c={'raw':!![],'where':{'id':_0x2a3b0f[_0xf4b0('0x47')]['id']}},_0x2e6d74={};_0x2e6d74[_0xf4b0('0x32')]=_[_0xf4b0('0x33')](db[_0xf4b0('0x42')]['rawAttributes']);_0x2e6d74[_0xf4b0('0x34')]=_[_0xf4b0('0x33')](_0x2a3b0f['query']);_0x2e6d74[_0xf4b0('0x35')]=_[_0xf4b0('0x36')](_0x2e6d74['model'],_0x2e6d74[_0xf4b0('0x34')]);_0x4dc52c[_0xf4b0('0x37')]=_[_0xf4b0('0x36')](_0x2e6d74['model'],qs[_0xf4b0('0x38')](_0x2a3b0f['query'][_0xf4b0('0x38')]));_0x4dc52c[_0xf4b0('0x37')]=_0x4dc52c['attributes']['length']?_0x4dc52c[_0xf4b0('0x37')]:_0x2e6d74['model'];if(_0x2a3b0f[_0xf4b0('0x34')][_0xf4b0('0x43')]){_0x4dc52c[_0xf4b0('0x44')]=[{'all':!![]}];}_0x4dc52c=_[_0xf4b0('0x3f')]({},_0x4dc52c,_0x2a3b0f[_0xf4b0('0x41')]);return db[_0xf4b0('0x42')][_0xf4b0('0x48')](_0x4dc52c)[_0xf4b0('0x27')](handleEntityNotFound(_0x18ca44,null))[_0xf4b0('0x27')](respondWithResult(_0x18ca44,null))[_0xf4b0('0x45')](handleError(_0x18ca44,null));};exports[_0xf4b0('0x49')]=function(_0x50ff95,_0x5ba47f){return db[_0xf4b0('0x42')][_0xf4b0('0x49')](_0x50ff95[_0xf4b0('0x4a')],{})[_0xf4b0('0x27')](respondWithResult(_0x5ba47f,0xc9))[_0xf4b0('0x45')](handleError(_0x5ba47f,null));};exports['update']=function(_0x48a590,_0x391ef9){if(_0x48a590[_0xf4b0('0x4a')]['id']){delete _0x48a590[_0xf4b0('0x4a')]['id'];}return db['Dynamics365Field']['find']({'where':{'id':_0x48a590['params']['id']}})[_0xf4b0('0x27')](handleEntityNotFound(_0x391ef9,null))[_0xf4b0('0x27')](saveUpdates(_0x48a590['body'],null))[_0xf4b0('0x27')](respondWithResult(_0x391ef9,null))[_0xf4b0('0x45')](handleError(_0x391ef9,null));};exports[_0xf4b0('0x28')]=function(_0x24849b,_0x2c2e4e){return db[_0xf4b0('0x42')][_0xf4b0('0x48')]({'where':{'id':_0x24849b[_0xf4b0('0x47')]['id']}})[_0xf4b0('0x27')](handleEntityNotFound(_0x2c2e4e,null))[_0xf4b0('0x27')](removeEntity(_0x2c2e4e,null))['catch'](handleError(_0x2c2e4e,null));};