Built motion from commit cb845558.|2.6.34
[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 _0x2ee0=['moment','bluebird','mustache','util','path','sox','ejs','fs-extra','squel','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/license/util','../../mysqldb','status','end','undefined','limit','count','offset','Content-Range','reject','save','then','destroy','sendStatus','error','stack','name','send','index','map','rawAttributes','fieldName','model','query','keys','filters','intersection','attributes','fields','length','nolimit','sort','where','pick','filter','merge','type','VIRTUAL','SquareReport','includeAll','include','findAll','rows','params','options','catch','create','body','update','find','describe','rimraf','zip-dir','fast-json-patch'];(function(_0x42bafd,_0x3f0fe3){var _0x2ed705=function(_0x4311ea){while(--_0x4311ea){_0x42bafd['push'](_0x42bafd['shift']());}};_0x2ed705(++_0x3f0fe3);}(_0x2ee0,0x125));var _0x02ee=function(_0x502953,_0x28de83){_0x502953=_0x502953-0x0;var _0x2fa32d=_0x2ee0[_0x502953];return _0x2fa32d;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x02ee('0x0'));var zipdir=require(_0x02ee('0x1'));var jsonpatch=require(_0x02ee('0x2'));var rp=require('request-promise');var moment=require(_0x02ee('0x3'));var BPromise=require(_0x02ee('0x4'));var Mustache=require(_0x02ee('0x5'));var util=require(_0x02ee('0x6'));var path=require(_0x02ee('0x7'));var sox=require(_0x02ee('0x8'));var csv=require('to-csv');var ejs=require(_0x02ee('0x9'));var fs=require('fs');var fs_extra=require(_0x02ee('0xa'));var _=require('lodash');var squel=require(_0x02ee('0xb'));var crypto=require('crypto');var jsforce=require(_0x02ee('0xc'));var deskjs=require(_0x02ee('0xd'));var toCsv=require(_0x02ee('0xe'));var querystring=require(_0x02ee('0xf'));var Papa=require(_0x02ee('0x10'));var Redis=require(_0x02ee('0x11'));var authService=require(_0x02ee('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0x02ee('0x13'));var hardwareService=require(_0x02ee('0x14'));var logger=require('../../config/logger')(_0x02ee('0x15'));var utils=require(_0x02ee('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0x02ee('0x17'));var db=require(_0x02ee('0x18'))['db'];function respondWithStatusCode(_0x2d4406,_0xd1db){_0xd1db=_0xd1db||0xcc;return function(_0xd3e11e){if(_0xd3e11e){return _0x2d4406['sendStatus'](_0xd1db);}return _0x2d4406[_0x02ee('0x19')](_0xd1db)[_0x02ee('0x1a')]();};}function respondWithResult(_0x5e2e37,_0x46f2e5){_0x46f2e5=_0x46f2e5||0xc8;return function(_0x5d696b){if(_0x5d696b){return _0x5e2e37['status'](_0x46f2e5)['json'](_0x5d696b);}};}function respondWithFilteredResult(_0x86224a,_0x43d073){return function(_0x5958c4){if(_0x5958c4){var _0x3fc418=typeof _0x43d073['offset']===_0x02ee('0x1b')&&typeof _0x43d073[_0x02ee('0x1c')]==='undefined';var _0x37af0f=_0x5958c4[_0x02ee('0x1d')];var _0xc6bc5d=_0x3fc418?0x0:_0x43d073[_0x02ee('0x1e')];var _0x3670cd=_0x3fc418?_0x5958c4[_0x02ee('0x1d')]:_0x43d073[_0x02ee('0x1e')]+_0x43d073[_0x02ee('0x1c')];var _0xf06f23;if(_0x3670cd>=_0x37af0f){_0x3670cd=_0x37af0f;_0xf06f23=0xc8;}else{_0xf06f23=0xce;}_0x86224a[_0x02ee('0x19')](_0xf06f23);return _0x86224a['set'](_0x02ee('0x1f'),_0xc6bc5d+'-'+_0x3670cd+'/'+_0x37af0f)['json'](_0x5958c4);}return null;};}function patchUpdates(_0x5205f1){return function(_0x2afd94){try{jsonpatch['apply'](_0x2afd94,_0x5205f1,!![]);}catch(_0x482ed7){return BPromise[_0x02ee('0x20')](_0x482ed7);}return _0x2afd94[_0x02ee('0x21')]();};}function saveUpdates(_0x260ed2,_0x3d88e7){return function(_0x4bb595){if(_0x4bb595){return _0x4bb595['update'](_0x260ed2)[_0x02ee('0x22')](function(_0x57ae44){return _0x57ae44;});}return null;};}function removeEntity(_0x2a713b,_0x28f3c6){return function(_0x564eb6){if(_0x564eb6){return _0x564eb6[_0x02ee('0x23')]()[_0x02ee('0x22')](function(){_0x2a713b[_0x02ee('0x19')](0xcc)[_0x02ee('0x1a')]();});}};}function handleEntityNotFound(_0x10bc41,_0x1cd919){return function(_0x5882db){if(!_0x5882db){_0x10bc41[_0x02ee('0x24')](0x194);}return _0x5882db;};}function handleError(_0x194f83,_0x59b9b6){_0x59b9b6=_0x59b9b6||0x1f4;return function(_0x59759b){logger[_0x02ee('0x25')](_0x59759b[_0x02ee('0x26')]);if(_0x59759b[_0x02ee('0x27')]){delete _0x59759b[_0x02ee('0x27')];}_0x194f83['status'](_0x59b9b6)[_0x02ee('0x28')](_0x59759b);};}exports[_0x02ee('0x29')]=function(_0x109f49,_0x443c4c){var _0x18940a={},_0x9dd631={},_0x3b4e20={'count':0x0,'rows':[]};var _0xc6ea71=_[_0x02ee('0x2a')](db['SquareReport'][_0x02ee('0x2b')],function(_0x1b80c2){return{'name':_0x1b80c2[_0x02ee('0x2c')],'type':_0x1b80c2['type']['key']};});_0x9dd631[_0x02ee('0x2d')]=_[_0x02ee('0x2a')](_0xc6ea71,_0x02ee('0x27'));_0x9dd631[_0x02ee('0x2e')]=_[_0x02ee('0x2f')](_0x109f49[_0x02ee('0x2e')]);_0x9dd631[_0x02ee('0x30')]=_[_0x02ee('0x31')](_0x9dd631[_0x02ee('0x2d')],_0x9dd631[_0x02ee('0x2e')]);_0x18940a[_0x02ee('0x32')]=_[_0x02ee('0x31')](_0x9dd631['model'],qs[_0x02ee('0x33')](_0x109f49[_0x02ee('0x2e')]['fields']));_0x18940a[_0x02ee('0x32')]=_0x18940a[_0x02ee('0x32')][_0x02ee('0x34')]?_0x18940a['attributes']:_0x9dd631[_0x02ee('0x2d')];if(!_0x109f49[_0x02ee('0x2e')]['hasOwnProperty'](_0x02ee('0x35'))){_0x18940a[_0x02ee('0x1c')]=qs['limit'](_0x109f49[_0x02ee('0x2e')][_0x02ee('0x1c')]);_0x18940a[_0x02ee('0x1e')]=qs['offset'](_0x109f49['query']['offset']);}_0x18940a['order']=qs['sort'](_0x109f49[_0x02ee('0x2e')][_0x02ee('0x36')]);_0x18940a[_0x02ee('0x37')]=qs[_0x02ee('0x30')](_[_0x02ee('0x38')](_0x109f49[_0x02ee('0x2e')],_0x9dd631[_0x02ee('0x30')]),_0xc6ea71);if(_0x109f49['query'][_0x02ee('0x39')]){_0x18940a[_0x02ee('0x37')]=_[_0x02ee('0x3a')](_0x18940a[_0x02ee('0x37')],{'$or':_['map'](_0xc6ea71,function(_0x2050f5){if(_0x2050f5[_0x02ee('0x3b')]!==_0x02ee('0x3c')){var _0x5a8811={};_0x5a8811[_0x2050f5['name']]={'$like':'%'+_0x109f49['query'][_0x02ee('0x39')]+'%'};return _0x5a8811;}})});}_0x18940a=_[_0x02ee('0x3a')]({},_0x18940a,_0x109f49['options']);var _0x159436={'where':_0x18940a[_0x02ee('0x37')]};return db[_0x02ee('0x3d')][_0x02ee('0x1d')](_0x159436)['then'](function(_0x109431){_0x3b4e20[_0x02ee('0x1d')]=_0x109431;if(_0x109f49[_0x02ee('0x2e')][_0x02ee('0x3e')]){_0x18940a[_0x02ee('0x3f')]=[{'all':!![]}];}return db['SquareReport'][_0x02ee('0x40')](_0x18940a);})[_0x02ee('0x22')](function(_0x340fa5){_0x3b4e20[_0x02ee('0x41')]=_0x340fa5;return _0x3b4e20;})[_0x02ee('0x22')](respondWithFilteredResult(_0x443c4c,_0x18940a))['catch'](handleError(_0x443c4c,null));};exports['show']=function(_0x1ec63b,_0x3197e5){var _0x1ec17b={'raw':!![],'where':{'id':_0x1ec63b[_0x02ee('0x42')]['id']}},_0x5547c2={};_0x5547c2[_0x02ee('0x2d')]=_[_0x02ee('0x2f')](db[_0x02ee('0x3d')][_0x02ee('0x2b')]);_0x5547c2[_0x02ee('0x2e')]=_[_0x02ee('0x2f')](_0x1ec63b[_0x02ee('0x2e')]);_0x5547c2[_0x02ee('0x30')]=_[_0x02ee('0x31')](_0x5547c2['model'],_0x5547c2['query']);_0x1ec17b['attributes']=_['intersection'](_0x5547c2['model'],qs[_0x02ee('0x33')](_0x1ec63b[_0x02ee('0x2e')]['fields']));_0x1ec17b[_0x02ee('0x32')]=_0x1ec17b[_0x02ee('0x32')][_0x02ee('0x34')]?_0x1ec17b['attributes']:_0x5547c2['model'];if(_0x1ec63b['query']['includeAll']){_0x1ec17b[_0x02ee('0x3f')]=[{'all':!![]}];}_0x1ec17b=_['merge']({},_0x1ec17b,_0x1ec63b[_0x02ee('0x43')]);return db[_0x02ee('0x3d')]['find'](_0x1ec17b)['then'](handleEntityNotFound(_0x3197e5,null))[_0x02ee('0x22')](respondWithResult(_0x3197e5,null))[_0x02ee('0x44')](handleError(_0x3197e5,null));};exports[_0x02ee('0x45')]=function(_0x49dc0b,_0x2af2d9){return db[_0x02ee('0x3d')][_0x02ee('0x45')](_0x49dc0b[_0x02ee('0x46')],{})[_0x02ee('0x22')](respondWithResult(_0x2af2d9,0xc9))[_0x02ee('0x44')](handleError(_0x2af2d9,null));};exports[_0x02ee('0x47')]=function(_0x23892a,_0x3a8706){if(_0x23892a[_0x02ee('0x46')]['id']){delete _0x23892a[_0x02ee('0x46')]['id'];}return db[_0x02ee('0x3d')][_0x02ee('0x48')]({'where':{'id':_0x23892a[_0x02ee('0x42')]['id']}})['then'](handleEntityNotFound(_0x3a8706,null))[_0x02ee('0x22')](saveUpdates(_0x23892a[_0x02ee('0x46')],null))['then'](respondWithResult(_0x3a8706,null))[_0x02ee('0x44')](handleError(_0x3a8706,null));};exports[_0x02ee('0x23')]=function(_0x36847d,_0x3099ff){return db[_0x02ee('0x3d')][_0x02ee('0x48')]({'where':{'id':_0x36847d[_0x02ee('0x42')]['id']}})[_0x02ee('0x22')](handleEntityNotFound(_0x3099ff,null))[_0x02ee('0x22')](removeEntity(_0x3099ff,null))[_0x02ee('0x44')](handleError(_0x3099ff,null));};exports[_0x02ee('0x49')]=function(_0x203e41,_0x357e82){return db[_0x02ee('0x3d')][_0x02ee('0x49')]()['then'](respondWithResult(_0x357e82,null))[_0x02ee('0x44')](handleError(_0x357e82,null));};