41f1721040bb739f3dd9a9c80a22c31fa3904f37
[motion2.git] / server / api / squareReport / squareReport.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 _0x7303=['includeAll','find','update','body','params','describe','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','util','path','to-csv','lodash','crypto','querystring','papaparse','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','destroy','then','error','stack','name','send','rawAttributes','type','key','model','map','query','keys','filters','intersection','attributes','fields','hasOwnProperty','sort','filter','where','merge','VIRTUAL','options','include','SquareReport','findAll','rows','catch','length'];(function(_0x368fb9,_0x1a9895){var _0x4892fb=function(_0x28d735){while(--_0x28d735){_0x368fb9['push'](_0x368fb9['shift']());}};_0x4892fb(++_0x1a9895);}(_0x7303,0x90));var _0x3730=function(_0x5db3df,_0x3e0396){_0x5db3df=_0x5db3df-0x0;var _0x37a765=_0x7303[_0x5db3df];return _0x37a765;};'use strict';var emlformat=require(_0x3730('0x0'));var rimraf=require(_0x3730('0x1'));var zipdir=require(_0x3730('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x3730('0x3'));var moment=require(_0x3730('0x4'));var BPromise=require(_0x3730('0x5'));var Mustache=require('mustache');var util=require(_0x3730('0x6'));var path=require(_0x3730('0x7'));var sox=require('sox');var csv=require(_0x3730('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x3730('0x9'));var squel=require('squel');var crypto=require(_0x3730('0xa'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x3730('0x8'));var querystring=require(_0x3730('0xb'));var Papa=require(_0x3730('0xc'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x3730('0xd'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x3730('0xe'));var logger=require(_0x3730('0xf'))(_0x3730('0x10'));var utils=require(_0x3730('0x11'));var config=require(_0x3730('0x12'));var licenseUtil=require('../../config/license/util');var db=require(_0x3730('0x13'))['db'];function respondWithStatusCode(_0x30952a,_0xb55389){_0xb55389=_0xb55389||0xcc;return function(_0x1813fd){if(_0x1813fd){return _0x30952a[_0x3730('0x14')](_0xb55389);}return _0x30952a[_0x3730('0x15')](_0xb55389)[_0x3730('0x16')]();};}function respondWithResult(_0x2e07c5,_0x391236){_0x391236=_0x391236||0xc8;return function(_0x45b264){if(_0x45b264){return _0x2e07c5['status'](_0x391236)[_0x3730('0x17')](_0x45b264);}};}function respondWithFilteredResult(_0x5c7013,_0x1548c1){return function(_0x586e1b){if(_0x586e1b){var _0x2969e5=typeof _0x1548c1[_0x3730('0x18')]===_0x3730('0x19')&&typeof _0x1548c1[_0x3730('0x1a')]===_0x3730('0x19');var _0x26d3d4=_0x586e1b[_0x3730('0x1b')];var _0x173200=_0x2969e5?0x0:_0x1548c1[_0x3730('0x18')];var _0x295a02=_0x2969e5?_0x586e1b[_0x3730('0x1b')]:_0x1548c1['offset']+_0x1548c1[_0x3730('0x1a')];var _0x31b8d0;if(_0x295a02>=_0x26d3d4){_0x295a02=_0x26d3d4;_0x31b8d0=0xc8;}else{_0x31b8d0=0xce;}_0x5c7013[_0x3730('0x15')](_0x31b8d0);return _0x5c7013[_0x3730('0x1c')](_0x3730('0x1d'),_0x173200+'-'+_0x295a02+'/'+_0x26d3d4)[_0x3730('0x17')](_0x586e1b);}return null;};}function patchUpdates(_0x86bb56){return function(_0x50fb05){try{jsonpatch[_0x3730('0x1e')](_0x50fb05,_0x86bb56,!![]);}catch(_0x1bdbe9){return BPromise[_0x3730('0x1f')](_0x1bdbe9);}return _0x50fb05[_0x3730('0x20')]();};}function saveUpdates(_0x24927b,_0x5ba211){return function(_0x51006d){if(_0x51006d){return _0x51006d['update'](_0x24927b)['then'](function(_0x4b4ffd){return _0x4b4ffd;});}return null;};}function removeEntity(_0x270be5,_0x3f3582){return function(_0x2ac4f2){if(_0x2ac4f2){return _0x2ac4f2[_0x3730('0x21')]()[_0x3730('0x22')](function(){_0x270be5['status'](0xcc)[_0x3730('0x16')]();});}};}function handleEntityNotFound(_0x1e9ce7,_0x5c9cb7){return function(_0xedbd8){if(!_0xedbd8){_0x1e9ce7[_0x3730('0x14')](0x194);}return _0xedbd8;};}function handleError(_0x5a8d4b,_0x134e99){_0x134e99=_0x134e99||0x1f4;return function(_0x25dc6f){logger[_0x3730('0x23')](_0x25dc6f[_0x3730('0x24')]);if(_0x25dc6f[_0x3730('0x25')]){delete _0x25dc6f[_0x3730('0x25')];}_0x5a8d4b['status'](_0x134e99)[_0x3730('0x26')](_0x25dc6f);};}exports['index']=function(_0x56d8fe,_0x1fb8b9){var _0x27fb58={},_0x59f42b={},_0x13a3da={'count':0x0,'rows':[]};var _0x1ba318=_['map'](db['SquareReport'][_0x3730('0x27')],function(_0x425edc){return{'name':_0x425edc['fieldName'],'type':_0x425edc[_0x3730('0x28')][_0x3730('0x29')]};});_0x59f42b[_0x3730('0x2a')]=_[_0x3730('0x2b')](_0x1ba318,'name');_0x59f42b[_0x3730('0x2c')]=_[_0x3730('0x2d')](_0x56d8fe['query']);_0x59f42b[_0x3730('0x2e')]=_[_0x3730('0x2f')](_0x59f42b[_0x3730('0x2a')],_0x59f42b[_0x3730('0x2c')]);_0x27fb58[_0x3730('0x30')]=_[_0x3730('0x2f')](_0x59f42b[_0x3730('0x2a')],qs[_0x3730('0x31')](_0x56d8fe[_0x3730('0x2c')][_0x3730('0x31')]));_0x27fb58[_0x3730('0x30')]=_0x27fb58['attributes']['length']?_0x27fb58[_0x3730('0x30')]:_0x59f42b[_0x3730('0x2a')];if(!_0x56d8fe['query'][_0x3730('0x32')]('nolimit')){_0x27fb58[_0x3730('0x1a')]=qs[_0x3730('0x1a')](_0x56d8fe[_0x3730('0x2c')][_0x3730('0x1a')]);_0x27fb58[_0x3730('0x18')]=qs['offset'](_0x56d8fe[_0x3730('0x2c')]['offset']);}_0x27fb58['order']=qs[_0x3730('0x33')](_0x56d8fe[_0x3730('0x2c')][_0x3730('0x33')]);_0x27fb58['where']=qs[_0x3730('0x2e')](_['pick'](_0x56d8fe[_0x3730('0x2c')],_0x59f42b[_0x3730('0x2e')]),_0x1ba318);if(_0x56d8fe[_0x3730('0x2c')][_0x3730('0x34')]){_0x27fb58[_0x3730('0x35')]=_[_0x3730('0x36')](_0x27fb58[_0x3730('0x35')],{'$or':_[_0x3730('0x2b')](_0x1ba318,function(_0x2e104a){if(_0x2e104a[_0x3730('0x28')]!==_0x3730('0x37')){var _0x5c2bce={};_0x5c2bce[_0x2e104a['name']]={'$like':'%'+_0x56d8fe[_0x3730('0x2c')]['filter']+'%'};return _0x5c2bce;}})});}_0x27fb58=_[_0x3730('0x36')]({},_0x27fb58,_0x56d8fe[_0x3730('0x38')]);var _0x217664={'where':_0x27fb58[_0x3730('0x35')]};return db['SquareReport'][_0x3730('0x1b')](_0x217664)[_0x3730('0x22')](function(_0x515197){_0x13a3da['count']=_0x515197;if(_0x56d8fe[_0x3730('0x2c')]['includeAll']){_0x27fb58[_0x3730('0x39')]=[{'all':!![]}];}return db[_0x3730('0x3a')][_0x3730('0x3b')](_0x27fb58);})[_0x3730('0x22')](function(_0x4e55b4){_0x13a3da[_0x3730('0x3c')]=_0x4e55b4;return _0x13a3da;})[_0x3730('0x22')](respondWithFilteredResult(_0x1fb8b9,_0x27fb58))[_0x3730('0x3d')](handleError(_0x1fb8b9,null));};exports['show']=function(_0x24c2b8,_0x5a4970){var _0x4570f3={'raw':!![],'where':{'id':_0x24c2b8['params']['id']}},_0x665e03={};_0x665e03[_0x3730('0x2a')]=_[_0x3730('0x2d')](db[_0x3730('0x3a')]['rawAttributes']);_0x665e03[_0x3730('0x2c')]=_[_0x3730('0x2d')](_0x24c2b8[_0x3730('0x2c')]);_0x665e03[_0x3730('0x2e')]=_['intersection'](_0x665e03[_0x3730('0x2a')],_0x665e03[_0x3730('0x2c')]);_0x4570f3['attributes']=_[_0x3730('0x2f')](_0x665e03[_0x3730('0x2a')],qs[_0x3730('0x31')](_0x24c2b8[_0x3730('0x2c')][_0x3730('0x31')]));_0x4570f3[_0x3730('0x30')]=_0x4570f3[_0x3730('0x30')][_0x3730('0x3e')]?_0x4570f3[_0x3730('0x30')]:_0x665e03[_0x3730('0x2a')];if(_0x24c2b8[_0x3730('0x2c')][_0x3730('0x3f')]){_0x4570f3[_0x3730('0x39')]=[{'all':!![]}];}_0x4570f3=_['merge']({},_0x4570f3,_0x24c2b8[_0x3730('0x38')]);return db['SquareReport'][_0x3730('0x40')](_0x4570f3)['then'](handleEntityNotFound(_0x5a4970,null))[_0x3730('0x22')](respondWithResult(_0x5a4970,null))[_0x3730('0x3d')](handleError(_0x5a4970,null));};exports['create']=function(_0x378d4f,_0x5dc7ea){return db[_0x3730('0x3a')]['create'](_0x378d4f['body'],{})[_0x3730('0x22')](respondWithResult(_0x5dc7ea,0xc9))[_0x3730('0x3d')](handleError(_0x5dc7ea,null));};exports[_0x3730('0x41')]=function(_0x2ec0f3,_0x118da8){if(_0x2ec0f3[_0x3730('0x42')]['id']){delete _0x2ec0f3['body']['id'];}return db['SquareReport'][_0x3730('0x40')]({'where':{'id':_0x2ec0f3[_0x3730('0x43')]['id']}})['then'](handleEntityNotFound(_0x118da8,null))[_0x3730('0x22')](saveUpdates(_0x2ec0f3[_0x3730('0x42')],null))[_0x3730('0x22')](respondWithResult(_0x118da8,null))[_0x3730('0x3d')](handleError(_0x118da8,null));};exports['destroy']=function(_0x1a054b,_0x35d932){return db['SquareReport'][_0x3730('0x40')]({'where':{'id':_0x1a054b[_0x3730('0x43')]['id']}})[_0x3730('0x22')](handleEntityNotFound(_0x35d932,null))[_0x3730('0x22')](removeEntity(_0x35d932,null))[_0x3730('0x3d')](handleError(_0x35d932,null));};exports[_0x3730('0x44')]=function(_0x2120fb,_0x52094b){return db[_0x3730('0x3a')][_0x3730('0x44')]()['then'](respondWithResult(_0x52094b,null))[_0x3730('0x3d')](handleError(_0x52094b,null));};