01e519a552e1fa5f6f361f67aa35d629f62f9142
[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 _0x4ae3=['findAll','rows','params','catch','body','find','describe','eml-format','rimraf','zip-dir','fast-json-patch','moment','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','querystring','ioredis','../../components/auth/service','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','SquareReport','rawAttributes','fieldName','type','key','model','map','query','keys','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','filters','pick','filter','VIRTUAL','merge','options','includeAll','include'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x4ae3,0x179));var _0x34ae=function(_0x282320,_0x379ad6){_0x282320=_0x282320-0x0;var _0x271d54=_0x4ae3[_0x282320];return _0x271d54;};'use strict';var emlformat=require(_0x34ae('0x0'));var rimraf=require(_0x34ae('0x1'));var zipdir=require(_0x34ae('0x2'));var jsonpatch=require(_0x34ae('0x3'));var rp=require('request-promise');var moment=require(_0x34ae('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x34ae('0x5'));var util=require('util');var path=require(_0x34ae('0x6'));var sox=require(_0x34ae('0x7'));var csv=require(_0x34ae('0x8'));var ejs=require(_0x34ae('0x9'));var fs=require('fs');var fs_extra=require(_0x34ae('0xa'));var _=require(_0x34ae('0xb'));var squel=require(_0x34ae('0xc'));var crypto=require('crypto');var jsforce=require(_0x34ae('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x34ae('0x8'));var querystring=require(_0x34ae('0xe'));var Papa=require('papaparse');var Redis=require(_0x34ae('0xf'));var authService=require(_0x34ae('0x10'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x34ae('0x11'))('api');var utils=require(_0x34ae('0x12'));var config=require(_0x34ae('0x13'));var licenseUtil=require(_0x34ae('0x14'));var db=require(_0x34ae('0x15'))['db'];function respondWithStatusCode(_0x1533aa,_0x122fcf){_0x122fcf=_0x122fcf||0xcc;return function(_0x168bbf){if(_0x168bbf){return _0x1533aa['sendStatus'](_0x122fcf);}return _0x1533aa[_0x34ae('0x16')](_0x122fcf)[_0x34ae('0x17')]();};}function respondWithResult(_0x194ef2,_0x51bff1){_0x51bff1=_0x51bff1||0xc8;return function(_0x53d3d6){if(_0x53d3d6){return _0x194ef2[_0x34ae('0x16')](_0x51bff1)[_0x34ae('0x18')](_0x53d3d6);}};}function respondWithFilteredResult(_0x231fed,_0xd370b1){return function(_0xde0b91){if(_0xde0b91){var _0x4bb676=typeof _0xd370b1[_0x34ae('0x19')]===_0x34ae('0x1a')&&typeof _0xd370b1[_0x34ae('0x1b')]===_0x34ae('0x1a');var _0x12e825=_0xde0b91[_0x34ae('0x1c')];var _0x119361=_0x4bb676?0x0:_0xd370b1[_0x34ae('0x19')];var _0xd115a9=_0x4bb676?_0xde0b91['count']:_0xd370b1[_0x34ae('0x19')]+_0xd370b1[_0x34ae('0x1b')];var _0x3accc3;if(_0xd115a9>=_0x12e825){_0xd115a9=_0x12e825;_0x3accc3=0xc8;}else{_0x3accc3=0xce;}_0x231fed['status'](_0x3accc3);return _0x231fed[_0x34ae('0x1d')](_0x34ae('0x1e'),_0x119361+'-'+_0xd115a9+'/'+_0x12e825)[_0x34ae('0x18')](_0xde0b91);}return null;};}function patchUpdates(_0x47f593){return function(_0x4777e9){try{jsonpatch[_0x34ae('0x1f')](_0x4777e9,_0x47f593,!![]);}catch(_0x113cc5){return BPromise[_0x34ae('0x20')](_0x113cc5);}return _0x4777e9[_0x34ae('0x21')]();};}function saveUpdates(_0x92a607,_0x1f6a7d){return function(_0x118e03){if(_0x118e03){return _0x118e03[_0x34ae('0x22')](_0x92a607)[_0x34ae('0x23')](function(_0x277360){return _0x277360;});}return null;};}function removeEntity(_0x1f0a14,_0x1a80a6){return function(_0x422723){if(_0x422723){return _0x422723[_0x34ae('0x24')]()[_0x34ae('0x23')](function(){_0x1f0a14[_0x34ae('0x16')](0xcc)[_0x34ae('0x17')]();});}};}function handleEntityNotFound(_0x3b1bbc,_0x3253cf){return function(_0x13b6fb){if(!_0x13b6fb){_0x3b1bbc['sendStatus'](0x194);}return _0x13b6fb;};}function handleError(_0x24b03e,_0x5653a9){_0x5653a9=_0x5653a9||0x1f4;return function(_0xa5161){logger[_0x34ae('0x25')](_0xa5161[_0x34ae('0x26')]);if(_0xa5161[_0x34ae('0x27')]){delete _0xa5161[_0x34ae('0x27')];}_0x24b03e['status'](_0x5653a9)[_0x34ae('0x28')](_0xa5161);};}exports[_0x34ae('0x29')]=function(_0x19a46d,_0x1e41d4){var _0x24a549={},_0x45c4a1={},_0x58dc85={'count':0x0,'rows':[]};var _0xb4a49c=_['map'](db[_0x34ae('0x2a')][_0x34ae('0x2b')],function(_0x57e8c7){return{'name':_0x57e8c7[_0x34ae('0x2c')],'type':_0x57e8c7[_0x34ae('0x2d')][_0x34ae('0x2e')]};});_0x45c4a1[_0x34ae('0x2f')]=_[_0x34ae('0x30')](_0xb4a49c,'name');_0x45c4a1[_0x34ae('0x31')]=_[_0x34ae('0x32')](_0x19a46d[_0x34ae('0x31')]);_0x45c4a1['filters']=_[_0x34ae('0x33')](_0x45c4a1[_0x34ae('0x2f')],_0x45c4a1['query']);_0x24a549[_0x34ae('0x34')]=_[_0x34ae('0x33')](_0x45c4a1['model'],qs[_0x34ae('0x35')](_0x19a46d[_0x34ae('0x31')][_0x34ae('0x35')]));_0x24a549[_0x34ae('0x34')]=_0x24a549[_0x34ae('0x34')][_0x34ae('0x36')]?_0x24a549['attributes']:_0x45c4a1[_0x34ae('0x2f')];if(!_0x19a46d[_0x34ae('0x31')][_0x34ae('0x37')]('nolimit')){_0x24a549[_0x34ae('0x1b')]=qs[_0x34ae('0x1b')](_0x19a46d[_0x34ae('0x31')]['limit']);_0x24a549['offset']=qs[_0x34ae('0x19')](_0x19a46d[_0x34ae('0x31')]['offset']);}_0x24a549[_0x34ae('0x38')]=qs[_0x34ae('0x39')](_0x19a46d[_0x34ae('0x31')][_0x34ae('0x39')]);_0x24a549[_0x34ae('0x3a')]=qs[_0x34ae('0x3b')](_[_0x34ae('0x3c')](_0x19a46d[_0x34ae('0x31')],_0x45c4a1[_0x34ae('0x3b')]),_0xb4a49c);if(_0x19a46d[_0x34ae('0x31')][_0x34ae('0x3d')]){_0x24a549[_0x34ae('0x3a')]=_['merge'](_0x24a549[_0x34ae('0x3a')],{'$or':_[_0x34ae('0x30')](_0xb4a49c,function(_0x1a255f){if(_0x1a255f[_0x34ae('0x2d')]!==_0x34ae('0x3e')){var _0x11eb36={};_0x11eb36[_0x1a255f[_0x34ae('0x27')]]={'$like':'%'+_0x19a46d[_0x34ae('0x31')][_0x34ae('0x3d')]+'%'};return _0x11eb36;}})});}_0x24a549=_[_0x34ae('0x3f')]({},_0x24a549,_0x19a46d[_0x34ae('0x40')]);var _0xf7a1ec={'where':_0x24a549['where']};return db[_0x34ae('0x2a')][_0x34ae('0x1c')](_0xf7a1ec)[_0x34ae('0x23')](function(_0x1743c7){_0x58dc85[_0x34ae('0x1c')]=_0x1743c7;if(_0x19a46d[_0x34ae('0x31')][_0x34ae('0x41')]){_0x24a549[_0x34ae('0x42')]=[{'all':!![]}];}return db[_0x34ae('0x2a')][_0x34ae('0x43')](_0x24a549);})['then'](function(_0x44d769){_0x58dc85[_0x34ae('0x44')]=_0x44d769;return _0x58dc85;})[_0x34ae('0x23')](respondWithFilteredResult(_0x1e41d4,_0x24a549))['catch'](handleError(_0x1e41d4,null));};exports['show']=function(_0x5374e9,_0xe240d2){var _0x1a397f={'raw':!![],'where':{'id':_0x5374e9[_0x34ae('0x45')]['id']}},_0x3774dc={};_0x3774dc[_0x34ae('0x2f')]=_[_0x34ae('0x32')](db[_0x34ae('0x2a')][_0x34ae('0x2b')]);_0x3774dc[_0x34ae('0x31')]=_[_0x34ae('0x32')](_0x5374e9['query']);_0x3774dc[_0x34ae('0x3b')]=_[_0x34ae('0x33')](_0x3774dc[_0x34ae('0x2f')],_0x3774dc[_0x34ae('0x31')]);_0x1a397f[_0x34ae('0x34')]=_[_0x34ae('0x33')](_0x3774dc[_0x34ae('0x2f')],qs[_0x34ae('0x35')](_0x5374e9['query'][_0x34ae('0x35')]));_0x1a397f['attributes']=_0x1a397f['attributes'][_0x34ae('0x36')]?_0x1a397f[_0x34ae('0x34')]:_0x3774dc[_0x34ae('0x2f')];if(_0x5374e9[_0x34ae('0x31')][_0x34ae('0x41')]){_0x1a397f[_0x34ae('0x42')]=[{'all':!![]}];}_0x1a397f=_[_0x34ae('0x3f')]({},_0x1a397f,_0x5374e9['options']);return db[_0x34ae('0x2a')]['find'](_0x1a397f)[_0x34ae('0x23')](handleEntityNotFound(_0xe240d2,null))[_0x34ae('0x23')](respondWithResult(_0xe240d2,null))[_0x34ae('0x46')](handleError(_0xe240d2,null));};exports['create']=function(_0x19db28,_0x517d8a){return db[_0x34ae('0x2a')]['create'](_0x19db28[_0x34ae('0x47')],{})['then'](respondWithResult(_0x517d8a,0xc9))[_0x34ae('0x46')](handleError(_0x517d8a,null));};exports[_0x34ae('0x22')]=function(_0xec00df,_0x591483){if(_0xec00df[_0x34ae('0x47')]['id']){delete _0xec00df[_0x34ae('0x47')]['id'];}return db[_0x34ae('0x2a')][_0x34ae('0x48')]({'where':{'id':_0xec00df['params']['id']}})[_0x34ae('0x23')](handleEntityNotFound(_0x591483,null))[_0x34ae('0x23')](saveUpdates(_0xec00df[_0x34ae('0x47')],null))[_0x34ae('0x23')](respondWithResult(_0x591483,null))[_0x34ae('0x46')](handleError(_0x591483,null));};exports['destroy']=function(_0x42d988,_0x3a384b){return db[_0x34ae('0x2a')][_0x34ae('0x48')]({'where':{'id':_0x42d988[_0x34ae('0x45')]['id']}})[_0x34ae('0x23')](handleEntityNotFound(_0x3a384b,null))['then'](removeEntity(_0x3a384b,null))['catch'](handleError(_0x3a384b,null));};exports['describe']=function(_0x4d4916,_0x73e214){return db[_0x34ae('0x2a')][_0x34ae('0x49')]()[_0x34ae('0x23')](respondWithResult(_0x73e214,null))['catch'](handleError(_0x73e214,null));};