Built motion from commit 00bf23f6.|2.6.16
[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 _0x6f73=['limit','count','set','Content-Range','apply','reject','save','then','stack','name','send','map','SquareReport','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','length','hasOwnProperty','order','sort','where','filter','merge','includeAll','include','rows','catch','show','params','create','body','find','rimraf','zip-dir','fast-json-patch','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined'];(function(_0x5d80de,_0x2cf15d){var _0x1c7556=function(_0x5bd806){while(--_0x5bd806){_0x5d80de['push'](_0x5d80de['shift']());}};_0x1c7556(++_0x2cf15d);}(_0x6f73,0x1c6));var _0x36f7=function(_0x3a6aa9,_0x1e840a){_0x3a6aa9=_0x3a6aa9-0x0;var _0x532fb2=_0x6f73[_0x3a6aa9];return _0x532fb2;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x36f7('0x0'));var zipdir=require(_0x36f7('0x1'));var jsonpatch=require(_0x36f7('0x2'));var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x36f7('0x3'));var util=require('util');var path=require(_0x36f7('0x4'));var sox=require(_0x36f7('0x5'));var csv=require(_0x36f7('0x6'));var ejs=require(_0x36f7('0x7'));var fs=require('fs');var fs_extra=require(_0x36f7('0x8'));var _=require(_0x36f7('0x9'));var squel=require(_0x36f7('0xa'));var crypto=require(_0x36f7('0xb'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x36f7('0xc'));var Papa=require(_0x36f7('0xd'));var Redis=require(_0x36f7('0xe'));var authService=require(_0x36f7('0xf'));var qs=require(_0x36f7('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x36f7('0x11'))(_0x36f7('0x12'));var utils=require(_0x36f7('0x13'));var config=require(_0x36f7('0x14'));var licenseUtil=require(_0x36f7('0x15'));var db=require(_0x36f7('0x16'))['db'];function respondWithStatusCode(_0x5dd435,_0x5de134){_0x5de134=_0x5de134||0xcc;return function(_0x139ba1){if(_0x139ba1){return _0x5dd435[_0x36f7('0x17')](_0x5de134);}return _0x5dd435[_0x36f7('0x18')](_0x5de134)[_0x36f7('0x19')]();};}function respondWithResult(_0x58fdd3,_0x392568){_0x392568=_0x392568||0xc8;return function(_0x12496a){if(_0x12496a){return _0x58fdd3[_0x36f7('0x18')](_0x392568)[_0x36f7('0x1a')](_0x12496a);}};}function respondWithFilteredResult(_0x2a16cc,_0xd1e179){return function(_0x4ea6c1){if(_0x4ea6c1){var _0x2dbaf6=typeof _0xd1e179[_0x36f7('0x1b')]===_0x36f7('0x1c')&&typeof _0xd1e179[_0x36f7('0x1d')]===_0x36f7('0x1c');var _0x66367e=_0x4ea6c1['count'];var _0x39103a=_0x2dbaf6?0x0:_0xd1e179['offset'];var _0x311c7a=_0x2dbaf6?_0x4ea6c1[_0x36f7('0x1e')]:_0xd1e179['offset']+_0xd1e179[_0x36f7('0x1d')];var _0x5f1240;if(_0x311c7a>=_0x66367e){_0x311c7a=_0x66367e;_0x5f1240=0xc8;}else{_0x5f1240=0xce;}_0x2a16cc[_0x36f7('0x18')](_0x5f1240);return _0x2a16cc[_0x36f7('0x1f')](_0x36f7('0x20'),_0x39103a+'-'+_0x311c7a+'/'+_0x66367e)[_0x36f7('0x1a')](_0x4ea6c1);}return null;};}function patchUpdates(_0x17ba15){return function(_0x1f0260){try{jsonpatch[_0x36f7('0x21')](_0x1f0260,_0x17ba15,!![]);}catch(_0x283e1c){return BPromise[_0x36f7('0x22')](_0x283e1c);}return _0x1f0260[_0x36f7('0x23')]();};}function saveUpdates(_0x4e72f6,_0x363be4){return function(_0x3936ff){if(_0x3936ff){return _0x3936ff['update'](_0x4e72f6)['then'](function(_0x196c18){return _0x196c18;});}return null;};}function removeEntity(_0x193e1b,_0x4a8255){return function(_0x2ebae0){if(_0x2ebae0){return _0x2ebae0['destroy']()[_0x36f7('0x24')](function(){_0x193e1b['status'](0xcc)[_0x36f7('0x19')]();});}};}function handleEntityNotFound(_0x593d00,_0x4b4505){return function(_0x57b34d){if(!_0x57b34d){_0x593d00[_0x36f7('0x17')](0x194);}return _0x57b34d;};}function handleError(_0x3253a7,_0x1597e4){_0x1597e4=_0x1597e4||0x1f4;return function(_0x480b69){logger['error'](_0x480b69[_0x36f7('0x25')]);if(_0x480b69[_0x36f7('0x26')]){delete _0x480b69[_0x36f7('0x26')];}_0x3253a7[_0x36f7('0x18')](_0x1597e4)[_0x36f7('0x27')](_0x480b69);};}exports['index']=function(_0x532e28,_0x58c898){var _0x4999e5={},_0x43830a={},_0x5d9f12={'count':0x0,'rows':[]};var _0x2f69d2=_[_0x36f7('0x28')](db[_0x36f7('0x29')][_0x36f7('0x2a')],function(_0x20ce02){return{'name':_0x20ce02[_0x36f7('0x2b')],'type':_0x20ce02[_0x36f7('0x2c')][_0x36f7('0x2d')]};});_0x43830a['model']=_[_0x36f7('0x28')](_0x2f69d2,_0x36f7('0x26'));_0x43830a[_0x36f7('0x2e')]=_[_0x36f7('0x2f')](_0x532e28[_0x36f7('0x2e')]);_0x43830a[_0x36f7('0x30')]=_[_0x36f7('0x31')](_0x43830a[_0x36f7('0x32')],_0x43830a[_0x36f7('0x2e')]);_0x4999e5[_0x36f7('0x33')]=_[_0x36f7('0x31')](_0x43830a['model'],qs[_0x36f7('0x34')](_0x532e28['query'][_0x36f7('0x34')]));_0x4999e5[_0x36f7('0x33')]=_0x4999e5[_0x36f7('0x33')][_0x36f7('0x35')]?_0x4999e5[_0x36f7('0x33')]:_0x43830a[_0x36f7('0x32')];if(!_0x532e28[_0x36f7('0x2e')][_0x36f7('0x36')]('nolimit')){_0x4999e5['limit']=qs[_0x36f7('0x1d')](_0x532e28[_0x36f7('0x2e')][_0x36f7('0x1d')]);_0x4999e5[_0x36f7('0x1b')]=qs[_0x36f7('0x1b')](_0x532e28[_0x36f7('0x2e')]['offset']);}_0x4999e5[_0x36f7('0x37')]=qs[_0x36f7('0x38')](_0x532e28[_0x36f7('0x2e')]['sort']);_0x4999e5[_0x36f7('0x39')]=qs['filters'](_['pick'](_0x532e28[_0x36f7('0x2e')],_0x43830a[_0x36f7('0x30')]),_0x2f69d2);if(_0x532e28[_0x36f7('0x2e')][_0x36f7('0x3a')]){_0x4999e5[_0x36f7('0x39')]=_[_0x36f7('0x3b')](_0x4999e5['where'],{'$or':_['map'](_0x2f69d2,function(_0xec058e){if(_0xec058e[_0x36f7('0x2c')]!=='VIRTUAL'){var _0xa527dd={};_0xa527dd[_0xec058e['name']]={'$like':'%'+_0x532e28[_0x36f7('0x2e')]['filter']+'%'};return _0xa527dd;}})});}_0x4999e5=_[_0x36f7('0x3b')]({},_0x4999e5,_0x532e28['options']);var _0x2e1697={'where':_0x4999e5[_0x36f7('0x39')]};return db[_0x36f7('0x29')]['count'](_0x2e1697)['then'](function(_0x440707){_0x5d9f12[_0x36f7('0x1e')]=_0x440707;if(_0x532e28[_0x36f7('0x2e')][_0x36f7('0x3c')]){_0x4999e5[_0x36f7('0x3d')]=[{'all':!![]}];}return db[_0x36f7('0x29')]['findAll'](_0x4999e5);})[_0x36f7('0x24')](function(_0x2202f5){_0x5d9f12[_0x36f7('0x3e')]=_0x2202f5;return _0x5d9f12;})[_0x36f7('0x24')](respondWithFilteredResult(_0x58c898,_0x4999e5))[_0x36f7('0x3f')](handleError(_0x58c898,null));};exports[_0x36f7('0x40')]=function(_0x1a7a3d,_0x28e19b){var _0xd505fd={'raw':!![],'where':{'id':_0x1a7a3d[_0x36f7('0x41')]['id']}},_0x3b39b1={};_0x3b39b1[_0x36f7('0x32')]=_[_0x36f7('0x2f')](db[_0x36f7('0x29')][_0x36f7('0x2a')]);_0x3b39b1[_0x36f7('0x2e')]=_[_0x36f7('0x2f')](_0x1a7a3d['query']);_0x3b39b1[_0x36f7('0x30')]=_[_0x36f7('0x31')](_0x3b39b1[_0x36f7('0x32')],_0x3b39b1['query']);_0xd505fd[_0x36f7('0x33')]=_['intersection'](_0x3b39b1[_0x36f7('0x32')],qs['fields'](_0x1a7a3d[_0x36f7('0x2e')][_0x36f7('0x34')]));_0xd505fd['attributes']=_0xd505fd['attributes'][_0x36f7('0x35')]?_0xd505fd[_0x36f7('0x33')]:_0x3b39b1['model'];if(_0x1a7a3d['query']['includeAll']){_0xd505fd[_0x36f7('0x3d')]=[{'all':!![]}];}_0xd505fd=_[_0x36f7('0x3b')]({},_0xd505fd,_0x1a7a3d['options']);return db['SquareReport']['find'](_0xd505fd)[_0x36f7('0x24')](handleEntityNotFound(_0x28e19b,null))['then'](respondWithResult(_0x28e19b,null))['catch'](handleError(_0x28e19b,null));};exports[_0x36f7('0x42')]=function(_0x1058bb,_0x4574d4){return db['SquareReport'][_0x36f7('0x42')](_0x1058bb[_0x36f7('0x43')],{})[_0x36f7('0x24')](respondWithResult(_0x4574d4,0xc9))['catch'](handleError(_0x4574d4,null));};exports['update']=function(_0x54584f,_0x588184){if(_0x54584f[_0x36f7('0x43')]['id']){delete _0x54584f[_0x36f7('0x43')]['id'];}return db['SquareReport']['find']({'where':{'id':_0x54584f[_0x36f7('0x41')]['id']}})[_0x36f7('0x24')](handleEntityNotFound(_0x588184,null))[_0x36f7('0x24')](saveUpdates(_0x54584f[_0x36f7('0x43')],null))[_0x36f7('0x24')](respondWithResult(_0x588184,null))[_0x36f7('0x3f')](handleError(_0x588184,null));};exports['destroy']=function(_0x139c4d,_0x14afb3){return db[_0x36f7('0x29')][_0x36f7('0x44')]({'where':{'id':_0x139c4d[_0x36f7('0x41')]['id']}})[_0x36f7('0x24')](handleEntityNotFound(_0x14afb3,null))['then'](removeEntity(_0x14afb3,null))[_0x36f7('0x3f')](handleError(_0x14afb3,null));};exports['describe']=function(_0x28ce4f,_0x2b45c4){return db[_0x36f7('0x29')]['describe']()[_0x36f7('0x24')](respondWithResult(_0x2b45c4,null))['catch'](handleError(_0x2b45c4,null));};