Built motion from commit d1eab355.|2.6.28
[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 _0xf8b7=['undefined','limit','count','offset','apply','reject','save','update','then','destroy','error','name','send','index','map','SquareReport','rawAttributes','fieldName','model','query','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','merge','type','filter','options','includeAll','include','findAll','rows','show','params','keys','find','create','body','catch','describe','eml-format','zip-dir','request-promise','moment','mustache','util','path','sox','ejs','squel','crypto','desk.js','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/license/util','../../mysqldb','sendStatus','status','end','json'];(function(_0x406b6f,_0x5b5e77){var _0xf9e2d6=function(_0x3bbb0a){while(--_0x3bbb0a){_0x406b6f['push'](_0x406b6f['shift']());}};_0xf9e2d6(++_0x5b5e77);}(_0xf8b7,0xbc));var _0x7f8b=function(_0x4dc0c8,_0x48d51f){_0x4dc0c8=_0x4dc0c8-0x0;var _0x26bf81=_0xf8b7[_0x4dc0c8];return _0x26bf81;};'use strict';var emlformat=require(_0x7f8b('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x7f8b('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x7f8b('0x2'));var moment=require(_0x7f8b('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x7f8b('0x4'));var util=require(_0x7f8b('0x5'));var path=require(_0x7f8b('0x6'));var sox=require(_0x7f8b('0x7'));var csv=require('to-csv');var ejs=require(_0x7f8b('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x7f8b('0x9'));var crypto=require(_0x7f8b('0xa'));var jsforce=require('jsforce');var deskjs=require(_0x7f8b('0xb'));var toCsv=require(_0x7f8b('0xc'));var querystring=require(_0x7f8b('0xd'));var Papa=require('papaparse');var Redis=require(_0x7f8b('0xe'));var authService=require(_0x7f8b('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0x7f8b('0x10'));var hardwareService=require(_0x7f8b('0x11'));var logger=require(_0x7f8b('0x12'))('api');var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x7f8b('0x13'));var db=require(_0x7f8b('0x14'))['db'];function respondWithStatusCode(_0x1a0ebb,_0x155ad4){_0x155ad4=_0x155ad4||0xcc;return function(_0x2d1119){if(_0x2d1119){return _0x1a0ebb[_0x7f8b('0x15')](_0x155ad4);}return _0x1a0ebb[_0x7f8b('0x16')](_0x155ad4)[_0x7f8b('0x17')]();};}function respondWithResult(_0x5bc6fb,_0x2542e5){_0x2542e5=_0x2542e5||0xc8;return function(_0x3fe9e5){if(_0x3fe9e5){return _0x5bc6fb[_0x7f8b('0x16')](_0x2542e5)[_0x7f8b('0x18')](_0x3fe9e5);}};}function respondWithFilteredResult(_0x1c020f,_0x561660){return function(_0x5d8481){if(_0x5d8481){var _0x54331b=typeof _0x561660['offset']===_0x7f8b('0x19')&&typeof _0x561660[_0x7f8b('0x1a')]===_0x7f8b('0x19');var _0x18a5f6=_0x5d8481[_0x7f8b('0x1b')];var _0x317ea1=_0x54331b?0x0:_0x561660[_0x7f8b('0x1c')];var _0x316307=_0x54331b?_0x5d8481[_0x7f8b('0x1b')]:_0x561660[_0x7f8b('0x1c')]+_0x561660['limit'];var _0xc1a2bb;if(_0x316307>=_0x18a5f6){_0x316307=_0x18a5f6;_0xc1a2bb=0xc8;}else{_0xc1a2bb=0xce;}_0x1c020f[_0x7f8b('0x16')](_0xc1a2bb);return _0x1c020f['set']('Content-Range',_0x317ea1+'-'+_0x316307+'/'+_0x18a5f6)[_0x7f8b('0x18')](_0x5d8481);}return null;};}function patchUpdates(_0xf2d3e9){return function(_0x196ba8){try{jsonpatch[_0x7f8b('0x1d')](_0x196ba8,_0xf2d3e9,!![]);}catch(_0x313e75){return BPromise[_0x7f8b('0x1e')](_0x313e75);}return _0x196ba8[_0x7f8b('0x1f')]();};}function saveUpdates(_0xa4e0b8,_0x2fcde0){return function(_0x47c7da){if(_0x47c7da){return _0x47c7da[_0x7f8b('0x20')](_0xa4e0b8)[_0x7f8b('0x21')](function(_0x44e049){return _0x44e049;});}return null;};}function removeEntity(_0x32d065,_0x368439){return function(_0x4442ac){if(_0x4442ac){return _0x4442ac[_0x7f8b('0x22')]()[_0x7f8b('0x21')](function(){_0x32d065[_0x7f8b('0x16')](0xcc)[_0x7f8b('0x17')]();});}};}function handleEntityNotFound(_0x475d76,_0x120345){return function(_0xb7adfb){if(!_0xb7adfb){_0x475d76['sendStatus'](0x194);}return _0xb7adfb;};}function handleError(_0x42a8b4,_0x1f988f){_0x1f988f=_0x1f988f||0x1f4;return function(_0x532176){logger[_0x7f8b('0x23')](_0x532176['stack']);if(_0x532176[_0x7f8b('0x24')]){delete _0x532176[_0x7f8b('0x24')];}_0x42a8b4[_0x7f8b('0x16')](_0x1f988f)[_0x7f8b('0x25')](_0x532176);};}exports[_0x7f8b('0x26')]=function(_0x3b7c0a,_0x15b329){var _0x365c58={},_0x2edf6e={},_0x490893={'count':0x0,'rows':[]};var _0x56aa59=_[_0x7f8b('0x27')](db[_0x7f8b('0x28')][_0x7f8b('0x29')],function(_0x2c16f3){return{'name':_0x2c16f3[_0x7f8b('0x2a')],'type':_0x2c16f3['type']['key']};});_0x2edf6e[_0x7f8b('0x2b')]=_['map'](_0x56aa59,_0x7f8b('0x24'));_0x2edf6e[_0x7f8b('0x2c')]=_['keys'](_0x3b7c0a[_0x7f8b('0x2c')]);_0x2edf6e['filters']=_['intersection'](_0x2edf6e[_0x7f8b('0x2b')],_0x2edf6e[_0x7f8b('0x2c')]);_0x365c58[_0x7f8b('0x2d')]=_[_0x7f8b('0x2e')](_0x2edf6e['model'],qs[_0x7f8b('0x2f')](_0x3b7c0a[_0x7f8b('0x2c')][_0x7f8b('0x2f')]));_0x365c58['attributes']=_0x365c58['attributes'][_0x7f8b('0x30')]?_0x365c58[_0x7f8b('0x2d')]:_0x2edf6e[_0x7f8b('0x2b')];if(!_0x3b7c0a[_0x7f8b('0x2c')][_0x7f8b('0x31')](_0x7f8b('0x32'))){_0x365c58[_0x7f8b('0x1a')]=qs[_0x7f8b('0x1a')](_0x3b7c0a['query'][_0x7f8b('0x1a')]);_0x365c58['offset']=qs['offset'](_0x3b7c0a[_0x7f8b('0x2c')][_0x7f8b('0x1c')]);}_0x365c58[_0x7f8b('0x33')]=qs['sort'](_0x3b7c0a[_0x7f8b('0x2c')][_0x7f8b('0x34')]);_0x365c58[_0x7f8b('0x35')]=qs[_0x7f8b('0x36')](_['pick'](_0x3b7c0a[_0x7f8b('0x2c')],_0x2edf6e[_0x7f8b('0x36')]),_0x56aa59);if(_0x3b7c0a[_0x7f8b('0x2c')]['filter']){_0x365c58['where']=_[_0x7f8b('0x37')](_0x365c58[_0x7f8b('0x35')],{'$or':_['map'](_0x56aa59,function(_0x27f274){if(_0x27f274[_0x7f8b('0x38')]!=='VIRTUAL'){var _0x206ec2={};_0x206ec2[_0x27f274[_0x7f8b('0x24')]]={'$like':'%'+_0x3b7c0a[_0x7f8b('0x2c')][_0x7f8b('0x39')]+'%'};return _0x206ec2;}})});}_0x365c58=_['merge']({},_0x365c58,_0x3b7c0a[_0x7f8b('0x3a')]);var _0x13126f={'where':_0x365c58['where']};return db[_0x7f8b('0x28')][_0x7f8b('0x1b')](_0x13126f)[_0x7f8b('0x21')](function(_0x5d4143){_0x490893[_0x7f8b('0x1b')]=_0x5d4143;if(_0x3b7c0a[_0x7f8b('0x2c')][_0x7f8b('0x3b')]){_0x365c58[_0x7f8b('0x3c')]=[{'all':!![]}];}return db[_0x7f8b('0x28')][_0x7f8b('0x3d')](_0x365c58);})['then'](function(_0x1593f2){_0x490893[_0x7f8b('0x3e')]=_0x1593f2;return _0x490893;})['then'](respondWithFilteredResult(_0x15b329,_0x365c58))['catch'](handleError(_0x15b329,null));};exports[_0x7f8b('0x3f')]=function(_0x441a88,_0x4d0fa1){var _0x5555c2={'raw':!![],'where':{'id':_0x441a88[_0x7f8b('0x40')]['id']}},_0x1ab6d0={};_0x1ab6d0[_0x7f8b('0x2b')]=_[_0x7f8b('0x41')](db[_0x7f8b('0x28')][_0x7f8b('0x29')]);_0x1ab6d0['query']=_[_0x7f8b('0x41')](_0x441a88[_0x7f8b('0x2c')]);_0x1ab6d0['filters']=_[_0x7f8b('0x2e')](_0x1ab6d0[_0x7f8b('0x2b')],_0x1ab6d0['query']);_0x5555c2['attributes']=_[_0x7f8b('0x2e')](_0x1ab6d0[_0x7f8b('0x2b')],qs[_0x7f8b('0x2f')](_0x441a88[_0x7f8b('0x2c')][_0x7f8b('0x2f')]));_0x5555c2[_0x7f8b('0x2d')]=_0x5555c2[_0x7f8b('0x2d')]['length']?_0x5555c2[_0x7f8b('0x2d')]:_0x1ab6d0[_0x7f8b('0x2b')];if(_0x441a88['query'][_0x7f8b('0x3b')]){_0x5555c2['include']=[{'all':!![]}];}_0x5555c2=_[_0x7f8b('0x37')]({},_0x5555c2,_0x441a88[_0x7f8b('0x3a')]);return db[_0x7f8b('0x28')][_0x7f8b('0x42')](_0x5555c2)[_0x7f8b('0x21')](handleEntityNotFound(_0x4d0fa1,null))[_0x7f8b('0x21')](respondWithResult(_0x4d0fa1,null))['catch'](handleError(_0x4d0fa1,null));};exports['create']=function(_0x29058d,_0x32b383){return db[_0x7f8b('0x28')][_0x7f8b('0x43')](_0x29058d['body'],{})[_0x7f8b('0x21')](respondWithResult(_0x32b383,0xc9))['catch'](handleError(_0x32b383,null));};exports[_0x7f8b('0x20')]=function(_0x11887c,_0x2ab9fc){if(_0x11887c[_0x7f8b('0x44')]['id']){delete _0x11887c[_0x7f8b('0x44')]['id'];}return db[_0x7f8b('0x28')][_0x7f8b('0x42')]({'where':{'id':_0x11887c[_0x7f8b('0x40')]['id']}})['then'](handleEntityNotFound(_0x2ab9fc,null))[_0x7f8b('0x21')](saveUpdates(_0x11887c[_0x7f8b('0x44')],null))[_0x7f8b('0x21')](respondWithResult(_0x2ab9fc,null))[_0x7f8b('0x45')](handleError(_0x2ab9fc,null));};exports[_0x7f8b('0x22')]=function(_0x46e706,_0x27e8e8){return db['SquareReport'][_0x7f8b('0x42')]({'where':{'id':_0x46e706[_0x7f8b('0x40')]['id']}})['then'](handleEntityNotFound(_0x27e8e8,null))[_0x7f8b('0x21')](removeEntity(_0x27e8e8,null))[_0x7f8b('0x45')](handleError(_0x27e8e8,null));};exports[_0x7f8b('0x46')]=function(_0x1dd96d,_0x2555d4){return db[_0x7f8b('0x28')]['describe']()[_0x7f8b('0x21')](respondWithResult(_0x2555d4,null))[_0x7f8b('0x45')](handleError(_0x2555d4,null));};