Built motion from commit f25620e4.|2.6.30
[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 _0xb600=['includeAll','include','findAll','rows','catch','show','create','update','body','find','params','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','ejs','fs-extra','squel','desk.js','to-csv','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','sendStatus','json','undefined','limit','count','offset','status','set','apply','reject','then','destroy','end','error','stack','name','send','index','SquareReport','rawAttributes','type','key','model','map','query','keys','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','merge','VIRTUAL','options'];(function(_0x31ac1e,_0x1fadac){var _0x279cae=function(_0x34d637){while(--_0x34d637){_0x31ac1e['push'](_0x31ac1e['shift']());}};_0x279cae(++_0x1fadac);}(_0xb600,0x1ce));var _0x0b60=function(_0x23c550,_0x7e41c4){_0x23c550=_0x23c550-0x0;var _0x5635b1=_0xb600[_0x23c550];return _0x5635b1;};'use strict';var emlformat=require(_0x0b60('0x0'));var rimraf=require(_0x0b60('0x1'));var zipdir=require(_0x0b60('0x2'));var jsonpatch=require(_0x0b60('0x3'));var rp=require(_0x0b60('0x4'));var moment=require(_0x0b60('0x5'));var BPromise=require(_0x0b60('0x6'));var Mustache=require(_0x0b60('0x7'));var util=require('util');var path=require(_0x0b60('0x8'));var sox=require(_0x0b60('0x9'));var csv=require('to-csv');var ejs=require(_0x0b60('0xa'));var fs=require('fs');var fs_extra=require(_0x0b60('0xb'));var _=require('lodash');var squel=require(_0x0b60('0xc'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x0b60('0xd'));var toCsv=require(_0x0b60('0xe'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x0b60('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x0b60('0x10'));var as=require(_0x0b60('0x11'));var hardwareService=require(_0x0b60('0x12'));var logger=require(_0x0b60('0x13'))(_0x0b60('0x14'));var utils=require('../../config/utils');var config=require(_0x0b60('0x15'));var licenseUtil=require('../../config/license/util');var db=require(_0x0b60('0x16'))['db'];function respondWithStatusCode(_0x5d87fe,_0x1f3dd4){_0x1f3dd4=_0x1f3dd4||0xcc;return function(_0x1f120e){if(_0x1f120e){return _0x5d87fe[_0x0b60('0x17')](_0x1f3dd4);}return _0x5d87fe['status'](_0x1f3dd4)['end']();};}function respondWithResult(_0x1ddfae,_0x2a785f){_0x2a785f=_0x2a785f||0xc8;return function(_0x595451){if(_0x595451){return _0x1ddfae['status'](_0x2a785f)[_0x0b60('0x18')](_0x595451);}};}function respondWithFilteredResult(_0x4d2cec,_0x50d217){return function(_0x3c90d7){if(_0x3c90d7){var _0x2393e4=typeof _0x50d217['offset']===_0x0b60('0x19')&&typeof _0x50d217[_0x0b60('0x1a')]===_0x0b60('0x19');var _0x74e8ad=_0x3c90d7[_0x0b60('0x1b')];var _0x1f7dae=_0x2393e4?0x0:_0x50d217[_0x0b60('0x1c')];var _0x861bbf=_0x2393e4?_0x3c90d7['count']:_0x50d217[_0x0b60('0x1c')]+_0x50d217[_0x0b60('0x1a')];var _0x3d5524;if(_0x861bbf>=_0x74e8ad){_0x861bbf=_0x74e8ad;_0x3d5524=0xc8;}else{_0x3d5524=0xce;}_0x4d2cec[_0x0b60('0x1d')](_0x3d5524);return _0x4d2cec[_0x0b60('0x1e')]('Content-Range',_0x1f7dae+'-'+_0x861bbf+'/'+_0x74e8ad)[_0x0b60('0x18')](_0x3c90d7);}return null;};}function patchUpdates(_0x139c1f){return function(_0xe16567){try{jsonpatch[_0x0b60('0x1f')](_0xe16567,_0x139c1f,!![]);}catch(_0x3db8c9){return BPromise[_0x0b60('0x20')](_0x3db8c9);}return _0xe16567['save']();};}function saveUpdates(_0x30b89a,_0x2f0fbc){return function(_0x145984){if(_0x145984){return _0x145984['update'](_0x30b89a)[_0x0b60('0x21')](function(_0x48663c){return _0x48663c;});}return null;};}function removeEntity(_0x23ec37,_0x15a773){return function(_0x2d56ee){if(_0x2d56ee){return _0x2d56ee[_0x0b60('0x22')]()['then'](function(){_0x23ec37['status'](0xcc)[_0x0b60('0x23')]();});}};}function handleEntityNotFound(_0x555c51,_0x2d4542){return function(_0x433b87){if(!_0x433b87){_0x555c51[_0x0b60('0x17')](0x194);}return _0x433b87;};}function handleError(_0x39c417,_0x3dfff1){_0x3dfff1=_0x3dfff1||0x1f4;return function(_0x5447f6){logger[_0x0b60('0x24')](_0x5447f6[_0x0b60('0x25')]);if(_0x5447f6['name']){delete _0x5447f6[_0x0b60('0x26')];}_0x39c417[_0x0b60('0x1d')](_0x3dfff1)[_0x0b60('0x27')](_0x5447f6);};}exports[_0x0b60('0x28')]=function(_0x3acb2b,_0x636ec4){var _0x1447b6={},_0x5ed987={},_0x1c9c21={'count':0x0,'rows':[]};var _0x2d52f5=_['map'](db[_0x0b60('0x29')][_0x0b60('0x2a')],function(_0x4f68b6){return{'name':_0x4f68b6['fieldName'],'type':_0x4f68b6[_0x0b60('0x2b')][_0x0b60('0x2c')]};});_0x5ed987[_0x0b60('0x2d')]=_[_0x0b60('0x2e')](_0x2d52f5,_0x0b60('0x26'));_0x5ed987[_0x0b60('0x2f')]=_[_0x0b60('0x30')](_0x3acb2b['query']);_0x5ed987['filters']=_['intersection'](_0x5ed987['model'],_0x5ed987[_0x0b60('0x2f')]);_0x1447b6[_0x0b60('0x31')]=_[_0x0b60('0x32')](_0x5ed987[_0x0b60('0x2d')],qs['fields'](_0x3acb2b[_0x0b60('0x2f')][_0x0b60('0x33')]));_0x1447b6['attributes']=_0x1447b6[_0x0b60('0x31')][_0x0b60('0x34')]?_0x1447b6[_0x0b60('0x31')]:_0x5ed987[_0x0b60('0x2d')];if(!_0x3acb2b['query'][_0x0b60('0x35')](_0x0b60('0x36'))){_0x1447b6[_0x0b60('0x1a')]=qs['limit'](_0x3acb2b['query']['limit']);_0x1447b6[_0x0b60('0x1c')]=qs[_0x0b60('0x1c')](_0x3acb2b[_0x0b60('0x2f')][_0x0b60('0x1c')]);}_0x1447b6[_0x0b60('0x37')]=qs[_0x0b60('0x38')](_0x3acb2b[_0x0b60('0x2f')][_0x0b60('0x38')]);_0x1447b6[_0x0b60('0x39')]=qs[_0x0b60('0x3a')](_[_0x0b60('0x3b')](_0x3acb2b[_0x0b60('0x2f')],_0x5ed987[_0x0b60('0x3a')]),_0x2d52f5);if(_0x3acb2b[_0x0b60('0x2f')]['filter']){_0x1447b6[_0x0b60('0x39')]=_[_0x0b60('0x3c')](_0x1447b6[_0x0b60('0x39')],{'$or':_['map'](_0x2d52f5,function(_0x495ec6){if(_0x495ec6[_0x0b60('0x2b')]!==_0x0b60('0x3d')){var _0x329595={};_0x329595[_0x495ec6[_0x0b60('0x26')]]={'$like':'%'+_0x3acb2b[_0x0b60('0x2f')]['filter']+'%'};return _0x329595;}})});}_0x1447b6=_[_0x0b60('0x3c')]({},_0x1447b6,_0x3acb2b[_0x0b60('0x3e')]);var _0x2637d0={'where':_0x1447b6['where']};return db['SquareReport']['count'](_0x2637d0)[_0x0b60('0x21')](function(_0x44e3a6){_0x1c9c21['count']=_0x44e3a6;if(_0x3acb2b[_0x0b60('0x2f')][_0x0b60('0x3f')]){_0x1447b6[_0x0b60('0x40')]=[{'all':!![]}];}return db['SquareReport'][_0x0b60('0x41')](_0x1447b6);})['then'](function(_0x2c9291){_0x1c9c21[_0x0b60('0x42')]=_0x2c9291;return _0x1c9c21;})[_0x0b60('0x21')](respondWithFilteredResult(_0x636ec4,_0x1447b6))[_0x0b60('0x43')](handleError(_0x636ec4,null));};exports[_0x0b60('0x44')]=function(_0x510dae,_0x3424a8){var _0x3a06c5={'raw':!![],'where':{'id':_0x510dae['params']['id']}},_0x14c541={};_0x14c541[_0x0b60('0x2d')]=_[_0x0b60('0x30')](db['SquareReport'][_0x0b60('0x2a')]);_0x14c541[_0x0b60('0x2f')]=_[_0x0b60('0x30')](_0x510dae[_0x0b60('0x2f')]);_0x14c541[_0x0b60('0x3a')]=_[_0x0b60('0x32')](_0x14c541[_0x0b60('0x2d')],_0x14c541[_0x0b60('0x2f')]);_0x3a06c5[_0x0b60('0x31')]=_['intersection'](_0x14c541[_0x0b60('0x2d')],qs[_0x0b60('0x33')](_0x510dae[_0x0b60('0x2f')][_0x0b60('0x33')]));_0x3a06c5[_0x0b60('0x31')]=_0x3a06c5[_0x0b60('0x31')][_0x0b60('0x34')]?_0x3a06c5[_0x0b60('0x31')]:_0x14c541[_0x0b60('0x2d')];if(_0x510dae[_0x0b60('0x2f')][_0x0b60('0x3f')]){_0x3a06c5[_0x0b60('0x40')]=[{'all':!![]}];}_0x3a06c5=_[_0x0b60('0x3c')]({},_0x3a06c5,_0x510dae[_0x0b60('0x3e')]);return db[_0x0b60('0x29')]['find'](_0x3a06c5)['then'](handleEntityNotFound(_0x3424a8,null))['then'](respondWithResult(_0x3424a8,null))['catch'](handleError(_0x3424a8,null));};exports[_0x0b60('0x45')]=function(_0x549101,_0x4a1a01){return db[_0x0b60('0x29')]['create'](_0x549101['body'],{})[_0x0b60('0x21')](respondWithResult(_0x4a1a01,0xc9))[_0x0b60('0x43')](handleError(_0x4a1a01,null));};exports[_0x0b60('0x46')]=function(_0x43e2f1,_0x485b27){if(_0x43e2f1[_0x0b60('0x47')]['id']){delete _0x43e2f1[_0x0b60('0x47')]['id'];}return db[_0x0b60('0x29')][_0x0b60('0x48')]({'where':{'id':_0x43e2f1['params']['id']}})['then'](handleEntityNotFound(_0x485b27,null))[_0x0b60('0x21')](saveUpdates(_0x43e2f1[_0x0b60('0x47')],null))[_0x0b60('0x21')](respondWithResult(_0x485b27,null))[_0x0b60('0x43')](handleError(_0x485b27,null));};exports[_0x0b60('0x22')]=function(_0x485218,_0x583c39){return db[_0x0b60('0x29')][_0x0b60('0x48')]({'where':{'id':_0x485218[_0x0b60('0x49')]['id']}})[_0x0b60('0x21')](handleEntityNotFound(_0x583c39,null))['then'](removeEntity(_0x583c39,null))[_0x0b60('0x43')](handleError(_0x583c39,null));};exports['describe']=function(_0x4dc54d,_0x5d028d){return db['SquareReport'][_0x0b60('0x4a')]()['then'](respondWithResult(_0x5d028d,null))[_0x0b60('0x43')](handleError(_0x5d028d,null));};