Built motion from commit 25580385.|2.6.2
[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 _0xb529=['../../config/utils','sendStatus','status','offset','undefined','limit','count','set','Content-Range','json','reject','save','update','then','destroy','error','name','send','index','map','SquareReport','rawAttributes','fieldName','type','key','model','query','keys','filters','attributes','intersection','fields','length','order','sort','pick','filter','where','merge','VIRTUAL','options','includeAll','catch','show','find','create','body','params','describe','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','path','to-csv','ejs','fs-extra','squel','crypto','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','api'];(function(_0x203486,_0x464679){var _0x963e33=function(_0x38cf95){while(--_0x38cf95){_0x203486['push'](_0x203486['shift']());}};_0x963e33(++_0x464679);}(_0xb529,0x75));var _0x9b52=function(_0x1b5688,_0x336b37){_0x1b5688=_0x1b5688-0x0;var _0x43c86e=_0xb529[_0x1b5688];return _0x43c86e;};'use strict';var emlformat=require(_0x9b52('0x0'));var rimraf=require(_0x9b52('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x9b52('0x2'));var rp=require(_0x9b52('0x3'));var moment=require(_0x9b52('0x4'));var BPromise=require(_0x9b52('0x5'));var Mustache=require(_0x9b52('0x6'));var util=require('util');var path=require(_0x9b52('0x7'));var sox=require('sox');var csv=require(_0x9b52('0x8'));var ejs=require(_0x9b52('0x9'));var fs=require('fs');var fs_extra=require(_0x9b52('0xa'));var _=require('lodash');var squel=require(_0x9b52('0xb'));var crypto=require(_0x9b52('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x9b52('0xd'));var toCsv=require('to-csv');var querystring=require(_0x9b52('0xe'));var Papa=require(_0x9b52('0xf'));var Redis=require('ioredis');var authService=require(_0x9b52('0x10'));var qs=require(_0x9b52('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x9b52('0x12'));var utils=require(_0x9b52('0x13'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x3cfa33,_0x459db2){_0x459db2=_0x459db2||0xcc;return function(_0x3038ea){if(_0x3038ea){return _0x3cfa33[_0x9b52('0x14')](_0x459db2);}return _0x3cfa33[_0x9b52('0x15')](_0x459db2)['end']();};}function respondWithResult(_0x4010cb,_0x47bba6){_0x47bba6=_0x47bba6||0xc8;return function(_0x3806bb){if(_0x3806bb){return _0x4010cb[_0x9b52('0x15')](_0x47bba6)['json'](_0x3806bb);}};}function respondWithFilteredResult(_0x5e672e,_0x16b86f){return function(_0x4d4964){if(_0x4d4964){var _0x36cac3=typeof _0x16b86f[_0x9b52('0x16')]===_0x9b52('0x17')&&typeof _0x16b86f[_0x9b52('0x18')]===_0x9b52('0x17');var _0x4695a9=_0x4d4964[_0x9b52('0x19')];var _0x11a941=_0x36cac3?0x0:_0x16b86f[_0x9b52('0x16')];var _0x28982b=_0x36cac3?_0x4d4964[_0x9b52('0x19')]:_0x16b86f['offset']+_0x16b86f[_0x9b52('0x18')];var _0x357e1d;if(_0x28982b>=_0x4695a9){_0x28982b=_0x4695a9;_0x357e1d=0xc8;}else{_0x357e1d=0xce;}_0x5e672e[_0x9b52('0x15')](_0x357e1d);return _0x5e672e[_0x9b52('0x1a')](_0x9b52('0x1b'),_0x11a941+'-'+_0x28982b+'/'+_0x4695a9)[_0x9b52('0x1c')](_0x4d4964);}return null;};}function patchUpdates(_0x2b1f5b){return function(_0x4517e7){try{jsonpatch['apply'](_0x4517e7,_0x2b1f5b,!![]);}catch(_0x4c27ac){return BPromise[_0x9b52('0x1d')](_0x4c27ac);}return _0x4517e7[_0x9b52('0x1e')]();};}function saveUpdates(_0xc47b19,_0x2382fb){return function(_0x2c025f){if(_0x2c025f){return _0x2c025f[_0x9b52('0x1f')](_0xc47b19)[_0x9b52('0x20')](function(_0x234f5d){return _0x234f5d;});}return null;};}function removeEntity(_0x5cfef4,_0x1c0544){return function(_0x1288e4){if(_0x1288e4){return _0x1288e4[_0x9b52('0x21')]()[_0x9b52('0x20')](function(){_0x5cfef4[_0x9b52('0x15')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4640fa,_0x16be24){return function(_0xe01f35){if(!_0xe01f35){_0x4640fa[_0x9b52('0x14')](0x194);}return _0xe01f35;};}function handleError(_0x3703c5,_0x1f67fe){_0x1f67fe=_0x1f67fe||0x1f4;return function(_0x564378){logger[_0x9b52('0x22')](_0x564378['stack']);if(_0x564378[_0x9b52('0x23')]){delete _0x564378[_0x9b52('0x23')];}_0x3703c5[_0x9b52('0x15')](_0x1f67fe)[_0x9b52('0x24')](_0x564378);};}exports[_0x9b52('0x25')]=function(_0x24f317,_0x85cf9f){var _0x1a8fe5={},_0x254488={},_0x2da99b={'count':0x0,'rows':[]};var _0x5f9db1=_[_0x9b52('0x26')](db[_0x9b52('0x27')][_0x9b52('0x28')],function(_0x4b4b46){return{'name':_0x4b4b46[_0x9b52('0x29')],'type':_0x4b4b46[_0x9b52('0x2a')][_0x9b52('0x2b')]};});_0x254488[_0x9b52('0x2c')]=_['map'](_0x5f9db1,_0x9b52('0x23'));_0x254488[_0x9b52('0x2d')]=_[_0x9b52('0x2e')](_0x24f317[_0x9b52('0x2d')]);_0x254488[_0x9b52('0x2f')]=_['intersection'](_0x254488[_0x9b52('0x2c')],_0x254488['query']);_0x1a8fe5[_0x9b52('0x30')]=_[_0x9b52('0x31')](_0x254488['model'],qs['fields'](_0x24f317[_0x9b52('0x2d')][_0x9b52('0x32')]));_0x1a8fe5[_0x9b52('0x30')]=_0x1a8fe5[_0x9b52('0x30')][_0x9b52('0x33')]?_0x1a8fe5[_0x9b52('0x30')]:_0x254488[_0x9b52('0x2c')];if(!_0x24f317[_0x9b52('0x2d')]['hasOwnProperty']('nolimit')){_0x1a8fe5['limit']=qs['limit'](_0x24f317[_0x9b52('0x2d')][_0x9b52('0x18')]);_0x1a8fe5[_0x9b52('0x16')]=qs['offset'](_0x24f317[_0x9b52('0x2d')][_0x9b52('0x16')]);}_0x1a8fe5[_0x9b52('0x34')]=qs[_0x9b52('0x35')](_0x24f317[_0x9b52('0x2d')][_0x9b52('0x35')]);_0x1a8fe5['where']=qs['filters'](_[_0x9b52('0x36')](_0x24f317[_0x9b52('0x2d')],_0x254488[_0x9b52('0x2f')]),_0x5f9db1);if(_0x24f317[_0x9b52('0x2d')][_0x9b52('0x37')]){_0x1a8fe5[_0x9b52('0x38')]=_[_0x9b52('0x39')](_0x1a8fe5[_0x9b52('0x38')],{'$or':_[_0x9b52('0x26')](_0x5f9db1,function(_0x1d5a7b){if(_0x1d5a7b[_0x9b52('0x2a')]!==_0x9b52('0x3a')){var _0x403e17={};_0x403e17[_0x1d5a7b[_0x9b52('0x23')]]={'$like':'%'+_0x24f317['query'][_0x9b52('0x37')]+'%'};return _0x403e17;}})});}_0x1a8fe5=_[_0x9b52('0x39')]({},_0x1a8fe5,_0x24f317[_0x9b52('0x3b')]);var _0x57d046={'where':_0x1a8fe5[_0x9b52('0x38')]};return db[_0x9b52('0x27')][_0x9b52('0x19')](_0x57d046)['then'](function(_0x317a5c){_0x2da99b['count']=_0x317a5c;if(_0x24f317[_0x9b52('0x2d')][_0x9b52('0x3c')]){_0x1a8fe5['include']=[{'all':!![]}];}return db['SquareReport']['findAll'](_0x1a8fe5);})[_0x9b52('0x20')](function(_0xc20d1d){_0x2da99b['rows']=_0xc20d1d;return _0x2da99b;})[_0x9b52('0x20')](respondWithFilteredResult(_0x85cf9f,_0x1a8fe5))[_0x9b52('0x3d')](handleError(_0x85cf9f,null));};exports[_0x9b52('0x3e')]=function(_0x3cc748,_0x941da6){var _0xc884b7={'raw':!![],'where':{'id':_0x3cc748['params']['id']}},_0x540c11={};_0x540c11[_0x9b52('0x2c')]=_[_0x9b52('0x2e')](db[_0x9b52('0x27')][_0x9b52('0x28')]);_0x540c11[_0x9b52('0x2d')]=_['keys'](_0x3cc748[_0x9b52('0x2d')]);_0x540c11[_0x9b52('0x2f')]=_[_0x9b52('0x31')](_0x540c11[_0x9b52('0x2c')],_0x540c11[_0x9b52('0x2d')]);_0xc884b7[_0x9b52('0x30')]=_[_0x9b52('0x31')](_0x540c11[_0x9b52('0x2c')],qs[_0x9b52('0x32')](_0x3cc748[_0x9b52('0x2d')][_0x9b52('0x32')]));_0xc884b7['attributes']=_0xc884b7[_0x9b52('0x30')][_0x9b52('0x33')]?_0xc884b7['attributes']:_0x540c11[_0x9b52('0x2c')];if(_0x3cc748[_0x9b52('0x2d')]['includeAll']){_0xc884b7['include']=[{'all':!![]}];}_0xc884b7=_[_0x9b52('0x39')]({},_0xc884b7,_0x3cc748['options']);return db['SquareReport'][_0x9b52('0x3f')](_0xc884b7)[_0x9b52('0x20')](handleEntityNotFound(_0x941da6,null))[_0x9b52('0x20')](respondWithResult(_0x941da6,null))[_0x9b52('0x3d')](handleError(_0x941da6,null));};exports[_0x9b52('0x40')]=function(_0x3800e4,_0x1abb04){return db[_0x9b52('0x27')]['create'](_0x3800e4[_0x9b52('0x41')],{})['then'](respondWithResult(_0x1abb04,0xc9))[_0x9b52('0x3d')](handleError(_0x1abb04,null));};exports[_0x9b52('0x1f')]=function(_0x4cb019,_0x2fa68a){if(_0x4cb019[_0x9b52('0x41')]['id']){delete _0x4cb019['body']['id'];}return db[_0x9b52('0x27')][_0x9b52('0x3f')]({'where':{'id':_0x4cb019['params']['id']}})['then'](handleEntityNotFound(_0x2fa68a,null))['then'](saveUpdates(_0x4cb019[_0x9b52('0x41')],null))[_0x9b52('0x20')](respondWithResult(_0x2fa68a,null))[_0x9b52('0x3d')](handleError(_0x2fa68a,null));};exports['destroy']=function(_0x1283d9,_0x48158d){return db[_0x9b52('0x27')][_0x9b52('0x3f')]({'where':{'id':_0x1283d9[_0x9b52('0x42')]['id']}})[_0x9b52('0x20')](handleEntityNotFound(_0x48158d,null))[_0x9b52('0x20')](removeEntity(_0x48158d,null))[_0x9b52('0x3d')](handleError(_0x48158d,null));};exports['describe']=function(_0x5b3816,_0x728c09){return db[_0x9b52('0x27')][_0x9b52('0x43')]()[_0x9b52('0x20')](respondWithResult(_0x728c09,null))['catch'](handleError(_0x728c09,null));};