Built motion from commit 497d3d92.|2.5.43
[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 _0x5c94=['../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','json','offset','undefined','limit','count','set','Content-Range','reject','save','then','destroy','error','name','status','send','index','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','pick','filter','where','includeAll','include','SquareReport','findAll','catch','show','params','merge','options','find','create','update','body','describe','eml-format','rimraf','zip-dir','request-promise','bluebird','util','path','sox','to-csv','ejs','fs-extra','lodash','jsforce','desk.js','papaparse','ioredis'];(function(_0x571a5d,_0x536b6a){var _0x1f0aa5=function(_0x36f492){while(--_0x36f492){_0x571a5d['push'](_0x571a5d['shift']());}};_0x1f0aa5(++_0x536b6a);}(_0x5c94,0x1ac));var _0x45c9=function(_0x72f01f,_0x2964c2){_0x72f01f=_0x72f01f-0x0;var _0x35476d=_0x5c94[_0x72f01f];return _0x35476d;};'use strict';var emlformat=require(_0x45c9('0x0'));var rimraf=require(_0x45c9('0x1'));var zipdir=require(_0x45c9('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x45c9('0x3'));var moment=require('moment');var BPromise=require(_0x45c9('0x4'));var Mustache=require('mustache');var util=require(_0x45c9('0x5'));var path=require(_0x45c9('0x6'));var sox=require(_0x45c9('0x7'));var csv=require(_0x45c9('0x8'));var ejs=require(_0x45c9('0x9'));var fs=require('fs');var fs_extra=require(_0x45c9('0xa'));var _=require(_0x45c9('0xb'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x45c9('0xc'));var deskjs=require(_0x45c9('0xd'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x45c9('0xe'));var Redis=require(_0x45c9('0xf'));var authService=require(_0x45c9('0x10'));var qs=require(_0x45c9('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x45c9('0x12'));var logger=require(_0x45c9('0x13'))(_0x45c9('0x14'));var utils=require(_0x45c9('0x15'));var config=require(_0x45c9('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0x45c9('0x17'))['db'];function respondWithStatusCode(_0x15b281,_0x4eaf44){_0x4eaf44=_0x4eaf44||0xcc;return function(_0xd087d4){if(_0xd087d4){return _0x15b281[_0x45c9('0x18')](_0x4eaf44);}return _0x15b281['status'](_0x4eaf44)['end']();};}function respondWithResult(_0x1873bf,_0x36e94c){_0x36e94c=_0x36e94c||0xc8;return function(_0x3256a2){if(_0x3256a2){return _0x1873bf['status'](_0x36e94c)[_0x45c9('0x19')](_0x3256a2);}};}function respondWithFilteredResult(_0x1971ce,_0x27b7f1){return function(_0x44a81d){if(_0x44a81d){var _0x86ea5f=typeof _0x27b7f1[_0x45c9('0x1a')]===_0x45c9('0x1b')&&typeof _0x27b7f1[_0x45c9('0x1c')]===_0x45c9('0x1b');var _0x45ef10=_0x44a81d[_0x45c9('0x1d')];var _0x30d9e6=_0x86ea5f?0x0:_0x27b7f1[_0x45c9('0x1a')];var _0x529eed=_0x86ea5f?_0x44a81d['count']:_0x27b7f1[_0x45c9('0x1a')]+_0x27b7f1[_0x45c9('0x1c')];var _0xa8500b;if(_0x529eed>=_0x45ef10){_0x529eed=_0x45ef10;_0xa8500b=0xc8;}else{_0xa8500b=0xce;}_0x1971ce['status'](_0xa8500b);return _0x1971ce[_0x45c9('0x1e')](_0x45c9('0x1f'),_0x30d9e6+'-'+_0x529eed+'/'+_0x45ef10)[_0x45c9('0x19')](_0x44a81d);}return null;};}function patchUpdates(_0x1ad794){return function(_0xe9d41d){try{jsonpatch['apply'](_0xe9d41d,_0x1ad794,!![]);}catch(_0x12d823){return BPromise[_0x45c9('0x20')](_0x12d823);}return _0xe9d41d[_0x45c9('0x21')]();};}function saveUpdates(_0x5a3b50,_0x29f59b){return function(_0x400e72){if(_0x400e72){return _0x400e72['update'](_0x5a3b50)[_0x45c9('0x22')](function(_0x48f37d){return _0x48f37d;});}return null;};}function removeEntity(_0x5238ed,_0x117a99){return function(_0x1f995a){if(_0x1f995a){return _0x1f995a[_0x45c9('0x23')]()[_0x45c9('0x22')](function(){_0x5238ed['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x2e089d,_0x501d39){return function(_0x382826){if(!_0x382826){_0x2e089d['sendStatus'](0x194);}return _0x382826;};}function handleError(_0x1b198b,_0x33c5e1){_0x33c5e1=_0x33c5e1||0x1f4;return function(_0x59bafd){logger[_0x45c9('0x24')](_0x59bafd['stack']);if(_0x59bafd[_0x45c9('0x25')]){delete _0x59bafd[_0x45c9('0x25')];}_0x1b198b[_0x45c9('0x26')](_0x33c5e1)[_0x45c9('0x27')](_0x59bafd);};}exports[_0x45c9('0x28')]=function(_0x133b0c,_0x1e48be){var _0x12bb6c={},_0x314d83={},_0x4e8f0d={'count':0x0,'rows':[]};var _0x236849=_[_0x45c9('0x29')](db['SquareReport'][_0x45c9('0x2a')],function(_0x3ff782){return{'name':_0x3ff782[_0x45c9('0x2b')],'type':_0x3ff782[_0x45c9('0x2c')][_0x45c9('0x2d')]};});_0x314d83[_0x45c9('0x2e')]=_[_0x45c9('0x29')](_0x236849,_0x45c9('0x25'));_0x314d83[_0x45c9('0x2f')]=_[_0x45c9('0x30')](_0x133b0c['query']);_0x314d83[_0x45c9('0x31')]=_[_0x45c9('0x32')](_0x314d83[_0x45c9('0x2e')],_0x314d83[_0x45c9('0x2f')]);_0x12bb6c[_0x45c9('0x33')]=_[_0x45c9('0x32')](_0x314d83['model'],qs['fields'](_0x133b0c[_0x45c9('0x2f')][_0x45c9('0x34')]));_0x12bb6c[_0x45c9('0x33')]=_0x12bb6c[_0x45c9('0x33')][_0x45c9('0x35')]?_0x12bb6c[_0x45c9('0x33')]:_0x314d83[_0x45c9('0x2e')];if(!_0x133b0c['query'][_0x45c9('0x36')]('nolimit')){_0x12bb6c['limit']=qs[_0x45c9('0x1c')](_0x133b0c[_0x45c9('0x2f')][_0x45c9('0x1c')]);_0x12bb6c['offset']=qs[_0x45c9('0x1a')](_0x133b0c[_0x45c9('0x2f')][_0x45c9('0x1a')]);}_0x12bb6c[_0x45c9('0x37')]=qs[_0x45c9('0x38')](_0x133b0c[_0x45c9('0x2f')][_0x45c9('0x38')]);_0x12bb6c['where']=qs[_0x45c9('0x31')](_[_0x45c9('0x39')](_0x133b0c[_0x45c9('0x2f')],_0x314d83['filters']),_0x236849);if(_0x133b0c[_0x45c9('0x2f')][_0x45c9('0x3a')]){_0x12bb6c['where']=_['merge'](_0x12bb6c[_0x45c9('0x3b')],{'$or':_[_0x45c9('0x29')](_0x236849,function(_0x4482cb){if(_0x4482cb['type']!=='VIRTUAL'){var _0x2a1136={};_0x2a1136[_0x4482cb[_0x45c9('0x25')]]={'$like':'%'+_0x133b0c[_0x45c9('0x2f')]['filter']+'%'};return _0x2a1136;}})});}_0x12bb6c=_['merge']({},_0x12bb6c,_0x133b0c['options']);var _0x17650e={'where':_0x12bb6c['where']};return db['SquareReport']['count'](_0x17650e)[_0x45c9('0x22')](function(_0x5c52ae){_0x4e8f0d['count']=_0x5c52ae;if(_0x133b0c[_0x45c9('0x2f')][_0x45c9('0x3c')]){_0x12bb6c[_0x45c9('0x3d')]=[{'all':!![]}];}return db[_0x45c9('0x3e')][_0x45c9('0x3f')](_0x12bb6c);})[_0x45c9('0x22')](function(_0x384027){_0x4e8f0d['rows']=_0x384027;return _0x4e8f0d;})[_0x45c9('0x22')](respondWithFilteredResult(_0x1e48be,_0x12bb6c))[_0x45c9('0x40')](handleError(_0x1e48be,null));};exports[_0x45c9('0x41')]=function(_0x3c7c8a,_0xad4320){var _0x3c7145={'raw':!![],'where':{'id':_0x3c7c8a[_0x45c9('0x42')]['id']}},_0x86f7d5={};_0x86f7d5['model']=_[_0x45c9('0x30')](db[_0x45c9('0x3e')][_0x45c9('0x2a')]);_0x86f7d5[_0x45c9('0x2f')]=_[_0x45c9('0x30')](_0x3c7c8a[_0x45c9('0x2f')]);_0x86f7d5[_0x45c9('0x31')]=_[_0x45c9('0x32')](_0x86f7d5[_0x45c9('0x2e')],_0x86f7d5[_0x45c9('0x2f')]);_0x3c7145['attributes']=_[_0x45c9('0x32')](_0x86f7d5[_0x45c9('0x2e')],qs[_0x45c9('0x34')](_0x3c7c8a[_0x45c9('0x2f')]['fields']));_0x3c7145[_0x45c9('0x33')]=_0x3c7145[_0x45c9('0x33')][_0x45c9('0x35')]?_0x3c7145[_0x45c9('0x33')]:_0x86f7d5['model'];if(_0x3c7c8a['query'][_0x45c9('0x3c')]){_0x3c7145[_0x45c9('0x3d')]=[{'all':!![]}];}_0x3c7145=_[_0x45c9('0x43')]({},_0x3c7145,_0x3c7c8a[_0x45c9('0x44')]);return db[_0x45c9('0x3e')][_0x45c9('0x45')](_0x3c7145)[_0x45c9('0x22')](handleEntityNotFound(_0xad4320,null))[_0x45c9('0x22')](respondWithResult(_0xad4320,null))[_0x45c9('0x40')](handleError(_0xad4320,null));};exports[_0x45c9('0x46')]=function(_0x3a8cbe,_0x3d7c32){return db['SquareReport'][_0x45c9('0x46')](_0x3a8cbe['body'],{})[_0x45c9('0x22')](respondWithResult(_0x3d7c32,0xc9))[_0x45c9('0x40')](handleError(_0x3d7c32,null));};exports[_0x45c9('0x47')]=function(_0x387880,_0x44e019){if(_0x387880['body']['id']){delete _0x387880[_0x45c9('0x48')]['id'];}return db['SquareReport']['find']({'where':{'id':_0x387880[_0x45c9('0x42')]['id']}})[_0x45c9('0x22')](handleEntityNotFound(_0x44e019,null))[_0x45c9('0x22')](saveUpdates(_0x387880['body'],null))[_0x45c9('0x22')](respondWithResult(_0x44e019,null))['catch'](handleError(_0x44e019,null));};exports['destroy']=function(_0x1281f4,_0x5eca83){return db[_0x45c9('0x3e')][_0x45c9('0x45')]({'where':{'id':_0x1281f4[_0x45c9('0x42')]['id']}})['then'](handleEntityNotFound(_0x5eca83,null))[_0x45c9('0x22')](removeEntity(_0x5eca83,null))[_0x45c9('0x40')](handleError(_0x5eca83,null));};exports[_0x45c9('0x49')]=function(_0x17513c,_0x4646ba){return db['SquareReport'][_0x45c9('0x49')]()[_0x45c9('0x22')](respondWithResult(_0x4646ba,null))[_0x45c9('0x40')](handleError(_0x4646ba,null));};