Built motion from commit (unavailable).|2.5.25
[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 _0x5334=['desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','status','end','offset','limit','Content-Range','apply','save','update','then','destroy','sendStatus','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','order','sort','pick','filter','where','merge','VIRTUAL','options','Dynamics365Field','count','include','findAll','rows','catch','show','params','includeAll','create','body','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','moment','mustache','util','ejs','jsforce'];(function(_0x340b82,_0x3f416c){var _0x3a8a6a=function(_0x4a51f){while(--_0x4a51f){_0x340b82['push'](_0x340b82['shift']());}};_0x3a8a6a(++_0x3f416c);}(_0x5334,0x84));var _0x4533=function(_0x20cae5,_0x375f02){_0x20cae5=_0x20cae5-0x0;var _0x580f44=_0x5334[_0x20cae5];return _0x580f44;};'use strict';var pdf=require(_0x4533('0x0'));var emlformat=require(_0x4533('0x1'));var rimraf=require(_0x4533('0x2'));var zipdir=require(_0x4533('0x3'));var jsonpatch=require(_0x4533('0x4'));var rp=require('request-promise');var moment=require(_0x4533('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x4533('0x6'));var util=require(_0x4533('0x7'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x4533('0x8'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x4533('0x9'));var deskjs=require(_0x4533('0xa'));var toCsv=require(_0x4533('0xb'));var querystring=require(_0x4533('0xc'));var Papa=require(_0x4533('0xd'));var Redis=require(_0x4533('0xe'));var authService=require(_0x4533('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0x4533('0x10'));var hardwareService=require(_0x4533('0x11'));var logger=require(_0x4533('0x12'))(_0x4533('0x13'));var utils=require('../../config/utils');var config=require(_0x4533('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x4533('0x15'))['db'];function respondWithStatusCode(_0x439210,_0x45ba67){_0x45ba67=_0x45ba67||0xcc;return function(_0x19b74e){if(_0x19b74e){return _0x439210['sendStatus'](_0x45ba67);}return _0x439210[_0x4533('0x16')](_0x45ba67)[_0x4533('0x17')]();};}function respondWithResult(_0x187f05,_0x18d4f0){_0x18d4f0=_0x18d4f0||0xc8;return function(_0x533a26){if(_0x533a26){return _0x187f05[_0x4533('0x16')](_0x18d4f0)['json'](_0x533a26);}};}function respondWithFilteredResult(_0x4c703c,_0x466545){return function(_0x34dea9){if(_0x34dea9){var _0x5da8b8=_0x34dea9['count'],_0x30c68c=_0x466545[_0x4533('0x18')],_0x1e6a1a=_0x466545['offset']+_0x466545[_0x4533('0x19')],_0x2a9877;if(_0x1e6a1a>=_0x5da8b8){_0x1e6a1a=_0x5da8b8;_0x2a9877=0xc8;}else{_0x2a9877=0xce;}_0x4c703c[_0x4533('0x16')](_0x2a9877);return _0x4c703c['set'](_0x4533('0x1a'),_0x30c68c+'-'+_0x1e6a1a+'/'+_0x5da8b8)['json'](_0x34dea9);}return null;};}function patchUpdates(_0x5c2c9c){return function(_0x1c5cdd){try{jsonpatch[_0x4533('0x1b')](_0x1c5cdd,_0x5c2c9c,!![]);}catch(_0x49fb91){return BPromise['reject'](_0x49fb91);}return _0x1c5cdd[_0x4533('0x1c')]();};}function saveUpdates(_0x3b18c1,_0x3467ba){return function(_0x1b08fa){if(_0x1b08fa){return _0x1b08fa[_0x4533('0x1d')](_0x3b18c1)[_0x4533('0x1e')](function(_0x12adde){return _0x12adde;});}return null;};}function removeEntity(_0x5c3abb,_0x231bae){return function(_0xd55c04){if(_0xd55c04){return _0xd55c04[_0x4533('0x1f')]()['then'](function(){_0x5c3abb['status'](0xcc)[_0x4533('0x17')]();});}};}function handleEntityNotFound(_0x11e93a,_0x4c640c){return function(_0x5dcfd2){if(!_0x5dcfd2){_0x11e93a[_0x4533('0x20')](0x194);}return _0x5dcfd2;};}function handleError(_0x1fa8be,_0xfd9409){_0xfd9409=_0xfd9409||0x1f4;return function(_0x4d8189){logger[_0x4533('0x21')](_0x4d8189[_0x4533('0x22')]);if(_0x4d8189[_0x4533('0x23')]){delete _0x4d8189[_0x4533('0x23')];}_0x1fa8be[_0x4533('0x16')](_0xfd9409)[_0x4533('0x24')](_0x4d8189);};}exports[_0x4533('0x25')]=function(_0x27b653,_0x45ad98){var _0x5f16bb={},_0x5c1e24={},_0xa2e602={'count':0x0,'rows':[]};var _0x5aaf2d=_[_0x4533('0x26')](db['Dynamics365Field'][_0x4533('0x27')],function(_0x42ba2d){return{'name':_0x42ba2d[_0x4533('0x28')],'type':_0x42ba2d[_0x4533('0x29')][_0x4533('0x2a')]};});_0x5c1e24[_0x4533('0x2b')]=_[_0x4533('0x26')](_0x5aaf2d,_0x4533('0x23'));_0x5c1e24[_0x4533('0x2c')]=_[_0x4533('0x2d')](_0x27b653[_0x4533('0x2c')]);_0x5c1e24[_0x4533('0x2e')]=_[_0x4533('0x2f')](_0x5c1e24['model'],_0x5c1e24[_0x4533('0x2c')]);_0x5f16bb['attributes']=_[_0x4533('0x2f')](_0x5c1e24[_0x4533('0x2b')],qs[_0x4533('0x30')](_0x27b653[_0x4533('0x2c')][_0x4533('0x30')]));_0x5f16bb[_0x4533('0x31')]=_0x5f16bb[_0x4533('0x31')][_0x4533('0x32')]?_0x5f16bb[_0x4533('0x31')]:_0x5c1e24[_0x4533('0x2b')];if(!_0x27b653[_0x4533('0x2c')][_0x4533('0x33')]('nolimit')){_0x5f16bb[_0x4533('0x19')]=qs[_0x4533('0x19')](_0x27b653[_0x4533('0x2c')][_0x4533('0x19')]);_0x5f16bb[_0x4533('0x18')]=qs['offset'](_0x27b653[_0x4533('0x2c')][_0x4533('0x18')]);}_0x5f16bb[_0x4533('0x34')]=qs[_0x4533('0x35')](_0x27b653[_0x4533('0x2c')][_0x4533('0x35')]);_0x5f16bb['where']=qs[_0x4533('0x2e')](_[_0x4533('0x36')](_0x27b653['query'],_0x5c1e24[_0x4533('0x2e')]),_0x5aaf2d);if(_0x27b653[_0x4533('0x2c')][_0x4533('0x37')]){_0x5f16bb[_0x4533('0x38')]=_[_0x4533('0x39')](_0x5f16bb[_0x4533('0x38')],{'$or':_[_0x4533('0x26')](_0x5aaf2d,function(_0x603753){if(_0x603753[_0x4533('0x29')]!==_0x4533('0x3a')){var _0x527c54={};_0x527c54[_0x603753[_0x4533('0x23')]]={'$like':'%'+_0x27b653[_0x4533('0x2c')][_0x4533('0x37')]+'%'};return _0x527c54;}})});}_0x5f16bb=_[_0x4533('0x39')]({},_0x5f16bb,_0x27b653[_0x4533('0x3b')]);var _0x17af88={'where':_0x5f16bb[_0x4533('0x38')]};return db[_0x4533('0x3c')][_0x4533('0x3d')](_0x17af88)[_0x4533('0x1e')](function(_0x1890ad){_0xa2e602[_0x4533('0x3d')]=_0x1890ad;if(_0x27b653['query']['includeAll']){_0x5f16bb[_0x4533('0x3e')]=[{'all':!![]}];}return db['Dynamics365Field'][_0x4533('0x3f')](_0x5f16bb);})[_0x4533('0x1e')](function(_0x18ac32){_0xa2e602[_0x4533('0x40')]=_0x18ac32;return _0xa2e602;})[_0x4533('0x1e')](respondWithFilteredResult(_0x45ad98,_0x5f16bb))[_0x4533('0x41')](handleError(_0x45ad98,null));};exports[_0x4533('0x42')]=function(_0x2686f4,_0x11bc6b){var _0x44e754={'raw':!![],'where':{'id':_0x2686f4[_0x4533('0x43')]['id']}},_0x44013d={};_0x44013d[_0x4533('0x2b')]=_['keys'](db[_0x4533('0x3c')]['rawAttributes']);_0x44013d['query']=_['keys'](_0x2686f4['query']);_0x44013d[_0x4533('0x2e')]=_[_0x4533('0x2f')](_0x44013d[_0x4533('0x2b')],_0x44013d[_0x4533('0x2c')]);_0x44e754['attributes']=_[_0x4533('0x2f')](_0x44013d[_0x4533('0x2b')],qs[_0x4533('0x30')](_0x2686f4[_0x4533('0x2c')][_0x4533('0x30')]));_0x44e754[_0x4533('0x31')]=_0x44e754[_0x4533('0x31')]['length']?_0x44e754[_0x4533('0x31')]:_0x44013d['model'];if(_0x2686f4['query'][_0x4533('0x44')]){_0x44e754[_0x4533('0x3e')]=[{'all':!![]}];}_0x44e754=_[_0x4533('0x39')]({},_0x44e754,_0x2686f4[_0x4533('0x3b')]);return db['Dynamics365Field']['find'](_0x44e754)[_0x4533('0x1e')](handleEntityNotFound(_0x11bc6b,null))['then'](respondWithResult(_0x11bc6b,null))[_0x4533('0x41')](handleError(_0x11bc6b,null));};exports[_0x4533('0x45')]=function(_0x4e46c5,_0x55eabc){return db['Dynamics365Field']['create'](_0x4e46c5['body'],{})[_0x4533('0x1e')](respondWithResult(_0x55eabc,0xc9))['catch'](handleError(_0x55eabc,null));};exports[_0x4533('0x1d')]=function(_0x52b36c,_0x2e70b7){if(_0x52b36c['body']['id']){delete _0x52b36c['body']['id'];}return db[_0x4533('0x3c')]['find']({'where':{'id':_0x52b36c[_0x4533('0x43')]['id']}})['then'](handleEntityNotFound(_0x2e70b7,null))[_0x4533('0x1e')](saveUpdates(_0x52b36c[_0x4533('0x46')],null))['then'](respondWithResult(_0x2e70b7,null))[_0x4533('0x41')](handleError(_0x2e70b7,null));};exports[_0x4533('0x1f')]=function(_0x37867f,_0x36137e){return db[_0x4533('0x3c')]['find']({'where':{'id':_0x37867f[_0x4533('0x43')]['id']}})[_0x4533('0x1e')](handleEntityNotFound(_0x36137e,null))['then'](removeEntity(_0x36137e,null))[_0x4533('0x41')](handleError(_0x36137e,null));};