82660c32cbc064a1341f33b580100f47a7b45223
[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 _0x02a8=['papaparse','ioredis','../../components/auth/service','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','count','offset','set','Content-Range','apply','reject','save','update','then','destroy','stack','name','send','index','SquareReport','model','query','keys','filters','intersection','attributes','nolimit','limit','sort','pick','merge','map','type','key','VIRTUAL','filter','where','includeAll','findAll','rows','show','params','rawAttributes','fields','length','include','find','catch','create','body','describe','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','mustache','util','sox','ejs','squel','crypto','jsforce','desk.js','querystring'];(function(_0x500419,_0x549162){var _0x241c1a=function(_0x3bea1a){while(--_0x3bea1a){_0x500419['push'](_0x500419['shift']());}};_0x241c1a(++_0x549162);}(_0x02a8,0x1a1));var _0x802a=function(_0xce3c8,_0x4176af){_0xce3c8=_0xce3c8-0x0;var _0x1fe4d4=_0x02a8[_0xce3c8];return _0x1fe4d4;};'use strict';var pdf=require(_0x802a('0x0'));var emlformat=require(_0x802a('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x802a('0x2'));var jsonpatch=require(_0x802a('0x3'));var rp=require(_0x802a('0x4'));var moment=require(_0x802a('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x802a('0x6'));var util=require(_0x802a('0x7'));var path=require('path');var sox=require(_0x802a('0x8'));var csv=require('to-csv');var ejs=require(_0x802a('0x9'));var fs=require('fs');var _=require('lodash');var squel=require(_0x802a('0xa'));var crypto=require(_0x802a('0xb'));var jsforce=require(_0x802a('0xc'));var deskjs=require(_0x802a('0xd'));var toCsv=require('to-csv');var querystring=require(_0x802a('0xe'));var Papa=require(_0x802a('0xf'));var Redis=require(_0x802a('0x10'));var authService=require(_0x802a('0x11'));var qs=require('../../components/parsers/qs');var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x802a('0x12'));var utils=require(_0x802a('0x13'));var config=require(_0x802a('0x14'));var db=require(_0x802a('0x15'))['db'];function respondWithStatusCode(_0xc3aade,_0xc0e880){_0xc0e880=_0xc0e880||0xcc;return function(_0x4abdb8){if(_0x4abdb8){return _0xc3aade[_0x802a('0x16')](_0xc0e880);}return _0xc3aade[_0x802a('0x17')](_0xc0e880)[_0x802a('0x18')]();};}function respondWithResult(_0x13880c,_0x484874){_0x484874=_0x484874||0xc8;return function(_0x441e5a){if(_0x441e5a){return _0x13880c[_0x802a('0x17')](_0x484874)[_0x802a('0x19')](_0x441e5a);}};}function respondWithFilteredResult(_0x11666c,_0x253c0c){return function(_0x3e3042){if(_0x3e3042){var _0xb52001=_0x3e3042[_0x802a('0x1a')],_0x52ab23=_0x253c0c[_0x802a('0x1b')],_0x45c04b=_0x253c0c[_0x802a('0x1b')]+_0x253c0c['limit'],_0x1c82f0;if(_0x45c04b>=_0xb52001){_0x45c04b=_0xb52001;_0x1c82f0=0xc8;}else{_0x1c82f0=0xce;}_0x11666c['status'](_0x1c82f0);return _0x11666c[_0x802a('0x1c')](_0x802a('0x1d'),_0x52ab23+'-'+_0x45c04b+'/'+_0xb52001)[_0x802a('0x19')](_0x3e3042);}return null;};}function patchUpdates(_0x9d569a){return function(_0x26f30b){try{jsonpatch[_0x802a('0x1e')](_0x26f30b,_0x9d569a,!![]);}catch(_0x44820e){return BPromise[_0x802a('0x1f')](_0x44820e);}return _0x26f30b[_0x802a('0x20')]();};}function saveUpdates(_0x54bbe8,_0x58c1c9){return function(_0x2467d5){if(_0x2467d5){return _0x2467d5[_0x802a('0x21')](_0x54bbe8)[_0x802a('0x22')](function(_0x2c613c){return _0x2c613c;});}return null;};}function removeEntity(_0x3a97e1,_0x36b871){return function(_0x38a331){if(_0x38a331){return _0x38a331[_0x802a('0x23')]()[_0x802a('0x22')](function(){_0x3a97e1[_0x802a('0x17')](0xcc)[_0x802a('0x18')]();});}};}function handleEntityNotFound(_0x3500ec,_0x15e81b){return function(_0x5e2fe0){if(!_0x5e2fe0){_0x3500ec[_0x802a('0x16')](0x194);}return _0x5e2fe0;};}function handleError(_0x1958ab,_0x58339e){_0x58339e=_0x58339e||0x1f4;return function(_0x3f0cf2){logger['error'](_0x3f0cf2[_0x802a('0x24')]);if(_0x3f0cf2[_0x802a('0x25')]){delete _0x3f0cf2[_0x802a('0x25')];}_0x1958ab[_0x802a('0x17')](_0x58339e)[_0x802a('0x26')](_0x3f0cf2);};}exports[_0x802a('0x27')]=function(_0x4a2717,_0x7160f9){var _0x2a3cef={},_0x377bc4={},_0x4b21bb={'count':0x0,'rows':[]};var _0x334181=db[_0x802a('0x28')]['rawAttributes'];_0x377bc4[_0x802a('0x29')]=_['keys'](_0x334181);_0x377bc4[_0x802a('0x2a')]=_[_0x802a('0x2b')](_0x4a2717[_0x802a('0x2a')]);_0x377bc4[_0x802a('0x2c')]=_[_0x802a('0x2d')](_0x377bc4[_0x802a('0x29')],_0x377bc4[_0x802a('0x2a')]);_0x2a3cef[_0x802a('0x2e')]=_[_0x802a('0x2d')](_0x377bc4['model'],qs['fields'](_0x4a2717[_0x802a('0x2a')]['fields']));_0x2a3cef['attributes']=_0x2a3cef[_0x802a('0x2e')]['length']?_0x2a3cef['attributes']:_0x377bc4['model'];if(!_0x4a2717[_0x802a('0x2a')]['hasOwnProperty'](_0x802a('0x2f'))){_0x2a3cef[_0x802a('0x30')]=qs[_0x802a('0x30')](_0x4a2717[_0x802a('0x2a')][_0x802a('0x30')]);_0x2a3cef[_0x802a('0x1b')]=qs[_0x802a('0x1b')](_0x4a2717['query'][_0x802a('0x1b')]);}_0x2a3cef['order']=qs[_0x802a('0x31')](_0x4a2717[_0x802a('0x2a')][_0x802a('0x31')]);_0x2a3cef['where']=qs['filters'](_[_0x802a('0x32')](_0x4a2717[_0x802a('0x2a')],_0x377bc4[_0x802a('0x2c')]));if(_0x4a2717[_0x802a('0x2a')]['filter']){_0x2a3cef['where']=_[_0x802a('0x33')](_0x2a3cef['where'],{'$or':_[_0x802a('0x34')](_0x334181,function(_0x31d8ae){if(_0x31d8ae[_0x802a('0x35')][_0x802a('0x36')]!==_0x802a('0x37')){var _0x164336={};_0x164336[_0x31d8ae['field']]={'$like':'%'+_0x4a2717[_0x802a('0x2a')][_0x802a('0x38')]+'%'};return _0x164336;}})});}_0x2a3cef=_[_0x802a('0x33')]({},_0x2a3cef,_0x4a2717['options']);var _0x336e60={'where':_0x2a3cef[_0x802a('0x39')]};return db['SquareReport'][_0x802a('0x1a')](_0x336e60)[_0x802a('0x22')](function(_0x2b73f1){_0x4b21bb[_0x802a('0x1a')]=_0x2b73f1;if(_0x4a2717[_0x802a('0x2a')][_0x802a('0x3a')]){_0x2a3cef['include']=[{'all':!![]}];}return db[_0x802a('0x28')][_0x802a('0x3b')](_0x2a3cef);})[_0x802a('0x22')](function(_0x1bd421){_0x4b21bb[_0x802a('0x3c')]=_0x1bd421;return _0x4b21bb;})[_0x802a('0x22')](respondWithFilteredResult(_0x7160f9,_0x2a3cef))['catch'](handleError(_0x7160f9,null));};exports[_0x802a('0x3d')]=function(_0x15d515,_0x2e4cf3){var _0x3c9dac={'raw':!![],'where':{'id':_0x15d515[_0x802a('0x3e')]['id']}},_0xc69248={};_0xc69248[_0x802a('0x29')]=_[_0x802a('0x2b')](db[_0x802a('0x28')][_0x802a('0x3f')]);_0xc69248['query']=_[_0x802a('0x2b')](_0x15d515[_0x802a('0x2a')]);_0xc69248[_0x802a('0x2c')]=_[_0x802a('0x2d')](_0xc69248[_0x802a('0x29')],_0xc69248[_0x802a('0x2a')]);_0x3c9dac[_0x802a('0x2e')]=_[_0x802a('0x2d')](_0xc69248[_0x802a('0x29')],qs[_0x802a('0x40')](_0x15d515[_0x802a('0x2a')]['fields']));_0x3c9dac[_0x802a('0x2e')]=_0x3c9dac[_0x802a('0x2e')][_0x802a('0x41')]?_0x3c9dac['attributes']:_0xc69248[_0x802a('0x29')];if(_0x15d515[_0x802a('0x2a')][_0x802a('0x3a')]){_0x3c9dac[_0x802a('0x42')]=[{'all':!![]}];}_0x3c9dac=_['merge']({},_0x3c9dac,_0x15d515['options']);return db['SquareReport'][_0x802a('0x43')](_0x3c9dac)[_0x802a('0x22')](handleEntityNotFound(_0x2e4cf3,null))[_0x802a('0x22')](respondWithResult(_0x2e4cf3,null))[_0x802a('0x44')](handleError(_0x2e4cf3,null));};exports[_0x802a('0x45')]=function(_0x37d374,_0x4a9922){return db['SquareReport'][_0x802a('0x45')](_0x37d374[_0x802a('0x46')],{})[_0x802a('0x22')](respondWithResult(_0x4a9922,0xc9))['catch'](handleError(_0x4a9922,null));};exports[_0x802a('0x21')]=function(_0x1f1b77,_0x441cc9){if(_0x1f1b77[_0x802a('0x46')]['id']){delete _0x1f1b77[_0x802a('0x46')]['id'];}return db[_0x802a('0x28')][_0x802a('0x43')]({'where':{'id':_0x1f1b77[_0x802a('0x3e')]['id']}})[_0x802a('0x22')](handleEntityNotFound(_0x441cc9,null))[_0x802a('0x22')](saveUpdates(_0x1f1b77[_0x802a('0x46')],null))[_0x802a('0x22')](respondWithResult(_0x441cc9,null))[_0x802a('0x44')](handleError(_0x441cc9,null));};exports[_0x802a('0x23')]=function(_0x637f9e,_0x43cc6d){return db[_0x802a('0x28')]['find']({'where':{'id':_0x637f9e[_0x802a('0x3e')]['id']}})[_0x802a('0x22')](handleEntityNotFound(_0x43cc6d,null))['then'](removeEntity(_0x43cc6d,null))[_0x802a('0x44')](handleError(_0x43cc6d,null));};exports[_0x802a('0x47')]=function(_0x502986,_0x18356f){return db[_0x802a('0x28')][_0x802a('0x47')]()[_0x802a('0x22')](respondWithResult(_0x18356f,null))[_0x802a('0x44')](handleError(_0x18356f,null));};