Built motion from commit c738b9ac.|2.6.25
[motion2.git] / server / api / squareReportDetail / squareReportDetail.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 _0xc062=['../../config/environment','../../config/license/util','../../mysqldb','end','status','offset','undefined','limit','count','set','Content-Range','json','apply','reject','save','update','destroy','then','sendStatus','error','name','send','index','map','SquareDetailsReport','rawAttributes','fieldName','type','key','query','keys','attributes','intersection','model','length','hasOwnProperty','nolimit','sort','where','filters','pick','merge','VIRTUAL','options','includeAll','include','findAll','rows','show','params','fields','catch','create','body','find','describe','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api'];(function(_0x452f52,_0x11bbef){var _0x587340=function(_0x4f690a){while(--_0x4f690a){_0x452f52['push'](_0x452f52['shift']());}};_0x587340(++_0x11bbef);}(_0xc062,0xde));var _0x2c06=function(_0x2fae75,_0x5768f3){_0x2fae75=_0x2fae75-0x0;var _0x104fec=_0xc062[_0x2fae75];return _0x104fec;};'use strict';var emlformat=require(_0x2c06('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x2c06('0x1'));var jsonpatch=require(_0x2c06('0x2'));var rp=require(_0x2c06('0x3'));var moment=require(_0x2c06('0x4'));var BPromise=require(_0x2c06('0x5'));var Mustache=require(_0x2c06('0x6'));var util=require(_0x2c06('0x7'));var path=require(_0x2c06('0x8'));var sox=require(_0x2c06('0x9'));var csv=require(_0x2c06('0xa'));var ejs=require(_0x2c06('0xb'));var fs=require('fs');var fs_extra=require(_0x2c06('0xc'));var _=require(_0x2c06('0xd'));var squel=require(_0x2c06('0xe'));var crypto=require(_0x2c06('0xf'));var jsforce=require(_0x2c06('0x10'));var deskjs=require(_0x2c06('0x11'));var toCsv=require(_0x2c06('0xa'));var querystring=require(_0x2c06('0x12'));var Papa=require(_0x2c06('0x13'));var Redis=require(_0x2c06('0x14'));var authService=require(_0x2c06('0x15'));var qs=require(_0x2c06('0x16'));var as=require(_0x2c06('0x17'));var hardwareService=require(_0x2c06('0x18'));var logger=require(_0x2c06('0x19'))(_0x2c06('0x1a'));var utils=require('../../config/utils');var config=require(_0x2c06('0x1b'));var licenseUtil=require(_0x2c06('0x1c'));var db=require(_0x2c06('0x1d'))['db'];function respondWithStatusCode(_0x36ec1d,_0x454b73){_0x454b73=_0x454b73||0xcc;return function(_0x4bf42a){if(_0x4bf42a){return _0x36ec1d['sendStatus'](_0x454b73);}return _0x36ec1d['status'](_0x454b73)[_0x2c06('0x1e')]();};}function respondWithResult(_0x1e6e0a,_0x49eb37){_0x49eb37=_0x49eb37||0xc8;return function(_0x5c78b0){if(_0x5c78b0){return _0x1e6e0a[_0x2c06('0x1f')](_0x49eb37)['json'](_0x5c78b0);}};}function respondWithFilteredResult(_0x20fd2b,_0x4d4b15){return function(_0xea3a02){if(_0xea3a02){var _0x145876=typeof _0x4d4b15[_0x2c06('0x20')]===_0x2c06('0x21')&&typeof _0x4d4b15[_0x2c06('0x22')]===_0x2c06('0x21');var _0xb2eebd=_0xea3a02[_0x2c06('0x23')];var _0x102e8f=_0x145876?0x0:_0x4d4b15[_0x2c06('0x20')];var _0x43e863=_0x145876?_0xea3a02[_0x2c06('0x23')]:_0x4d4b15['offset']+_0x4d4b15[_0x2c06('0x22')];var _0x2dcb7a;if(_0x43e863>=_0xb2eebd){_0x43e863=_0xb2eebd;_0x2dcb7a=0xc8;}else{_0x2dcb7a=0xce;}_0x20fd2b['status'](_0x2dcb7a);return _0x20fd2b[_0x2c06('0x24')](_0x2c06('0x25'),_0x102e8f+'-'+_0x43e863+'/'+_0xb2eebd)[_0x2c06('0x26')](_0xea3a02);}return null;};}function patchUpdates(_0x365f0d){return function(_0x2bfcc5){try{jsonpatch[_0x2c06('0x27')](_0x2bfcc5,_0x365f0d,!![]);}catch(_0x363510){return BPromise[_0x2c06('0x28')](_0x363510);}return _0x2bfcc5[_0x2c06('0x29')]();};}function saveUpdates(_0x2f8713,_0x298368){return function(_0x11ea3a){if(_0x11ea3a){return _0x11ea3a[_0x2c06('0x2a')](_0x2f8713)['then'](function(_0x3dfce4){return _0x3dfce4;});}return null;};}function removeEntity(_0x2b627c,_0x2dfd93){return function(_0x23de15){if(_0x23de15){return _0x23de15[_0x2c06('0x2b')]()[_0x2c06('0x2c')](function(){_0x2b627c[_0x2c06('0x1f')](0xcc)[_0x2c06('0x1e')]();});}};}function handleEntityNotFound(_0x2ec575,_0x4d9d20){return function(_0x387780){if(!_0x387780){_0x2ec575[_0x2c06('0x2d')](0x194);}return _0x387780;};}function handleError(_0x1e750a,_0x1bbc68){_0x1bbc68=_0x1bbc68||0x1f4;return function(_0xa31a2){logger[_0x2c06('0x2e')](_0xa31a2['stack']);if(_0xa31a2['name']){delete _0xa31a2[_0x2c06('0x2f')];}_0x1e750a[_0x2c06('0x1f')](_0x1bbc68)[_0x2c06('0x30')](_0xa31a2);};}exports[_0x2c06('0x31')]=function(_0x705b1c,_0x5b0e23){var _0x1e2f8c={},_0x24d1b3={},_0xa954ca={'count':0x0,'rows':[]};var _0x499513=_[_0x2c06('0x32')](db[_0x2c06('0x33')][_0x2c06('0x34')],function(_0x2fd661){return{'name':_0x2fd661[_0x2c06('0x35')],'type':_0x2fd661[_0x2c06('0x36')][_0x2c06('0x37')]};});_0x24d1b3['model']=_[_0x2c06('0x32')](_0x499513,'name');_0x24d1b3[_0x2c06('0x38')]=_[_0x2c06('0x39')](_0x705b1c[_0x2c06('0x38')]);_0x24d1b3['filters']=_['intersection'](_0x24d1b3['model'],_0x24d1b3[_0x2c06('0x38')]);_0x1e2f8c[_0x2c06('0x3a')]=_[_0x2c06('0x3b')](_0x24d1b3[_0x2c06('0x3c')],qs['fields'](_0x705b1c['query']['fields']));_0x1e2f8c[_0x2c06('0x3a')]=_0x1e2f8c[_0x2c06('0x3a')][_0x2c06('0x3d')]?_0x1e2f8c[_0x2c06('0x3a')]:_0x24d1b3[_0x2c06('0x3c')];if(!_0x705b1c[_0x2c06('0x38')][_0x2c06('0x3e')](_0x2c06('0x3f'))){_0x1e2f8c[_0x2c06('0x22')]=qs[_0x2c06('0x22')](_0x705b1c[_0x2c06('0x38')][_0x2c06('0x22')]);_0x1e2f8c[_0x2c06('0x20')]=qs[_0x2c06('0x20')](_0x705b1c[_0x2c06('0x38')]['offset']);}_0x1e2f8c['order']=qs[_0x2c06('0x40')](_0x705b1c[_0x2c06('0x38')][_0x2c06('0x40')]);_0x1e2f8c[_0x2c06('0x41')]=qs[_0x2c06('0x42')](_[_0x2c06('0x43')](_0x705b1c[_0x2c06('0x38')],_0x24d1b3['filters']),_0x499513);if(_0x705b1c[_0x2c06('0x38')]['filter']){_0x1e2f8c[_0x2c06('0x41')]=_[_0x2c06('0x44')](_0x1e2f8c[_0x2c06('0x41')],{'$or':_[_0x2c06('0x32')](_0x499513,function(_0x5b9d61){if(_0x5b9d61[_0x2c06('0x36')]!==_0x2c06('0x45')){var _0x224ae7={};_0x224ae7[_0x5b9d61[_0x2c06('0x2f')]]={'$like':'%'+_0x705b1c[_0x2c06('0x38')]['filter']+'%'};return _0x224ae7;}})});}_0x1e2f8c=_[_0x2c06('0x44')]({},_0x1e2f8c,_0x705b1c[_0x2c06('0x46')]);var _0x3fb0e5={'where':_0x1e2f8c[_0x2c06('0x41')]};return db[_0x2c06('0x33')][_0x2c06('0x23')](_0x3fb0e5)['then'](function(_0xfc0189){_0xa954ca[_0x2c06('0x23')]=_0xfc0189;if(_0x705b1c[_0x2c06('0x38')][_0x2c06('0x47')]){_0x1e2f8c[_0x2c06('0x48')]=[{'all':!![]}];}return db['SquareDetailsReport'][_0x2c06('0x49')](_0x1e2f8c);})[_0x2c06('0x2c')](function(_0x274a88){_0xa954ca[_0x2c06('0x4a')]=_0x274a88;return _0xa954ca;})[_0x2c06('0x2c')](respondWithFilteredResult(_0x5b0e23,_0x1e2f8c))['catch'](handleError(_0x5b0e23,null));};exports[_0x2c06('0x4b')]=function(_0x4e05a4,_0x3feca1){var _0x42f9bf={'raw':!![],'where':{'id':_0x4e05a4[_0x2c06('0x4c')]['id']}},_0x2d1f11={};_0x2d1f11['model']=_[_0x2c06('0x39')](db['SquareDetailsReport']['rawAttributes']);_0x2d1f11['query']=_['keys'](_0x4e05a4[_0x2c06('0x38')]);_0x2d1f11[_0x2c06('0x42')]=_[_0x2c06('0x3b')](_0x2d1f11[_0x2c06('0x3c')],_0x2d1f11[_0x2c06('0x38')]);_0x42f9bf[_0x2c06('0x3a')]=_[_0x2c06('0x3b')](_0x2d1f11[_0x2c06('0x3c')],qs[_0x2c06('0x4d')](_0x4e05a4[_0x2c06('0x38')][_0x2c06('0x4d')]));_0x42f9bf[_0x2c06('0x3a')]=_0x42f9bf[_0x2c06('0x3a')][_0x2c06('0x3d')]?_0x42f9bf[_0x2c06('0x3a')]:_0x2d1f11[_0x2c06('0x3c')];if(_0x4e05a4[_0x2c06('0x38')]['includeAll']){_0x42f9bf[_0x2c06('0x48')]=[{'all':!![]}];}_0x42f9bf=_[_0x2c06('0x44')]({},_0x42f9bf,_0x4e05a4['options']);return db[_0x2c06('0x33')]['find'](_0x42f9bf)['then'](handleEntityNotFound(_0x3feca1,null))[_0x2c06('0x2c')](respondWithResult(_0x3feca1,null))[_0x2c06('0x4e')](handleError(_0x3feca1,null));};exports['create']=function(_0xc20810,_0x7c52e1){return db[_0x2c06('0x33')][_0x2c06('0x4f')](_0xc20810[_0x2c06('0x50')],{})['then'](respondWithResult(_0x7c52e1,0xc9))[_0x2c06('0x4e')](handleError(_0x7c52e1,null));};exports[_0x2c06('0x2a')]=function(_0x2ab1ea,_0x5c299c){if(_0x2ab1ea['body']['id']){delete _0x2ab1ea['body']['id'];}return db[_0x2c06('0x33')]['find']({'where':{'id':_0x2ab1ea[_0x2c06('0x4c')]['id']}})['then'](handleEntityNotFound(_0x5c299c,null))[_0x2c06('0x2c')](saveUpdates(_0x2ab1ea['body'],null))[_0x2c06('0x2c')](respondWithResult(_0x5c299c,null))[_0x2c06('0x4e')](handleError(_0x5c299c,null));};exports['destroy']=function(_0x219fe4,_0x33e92b){return db[_0x2c06('0x33')][_0x2c06('0x51')]({'where':{'id':_0x219fe4['params']['id']}})['then'](handleEntityNotFound(_0x33e92b,null))[_0x2c06('0x2c')](removeEntity(_0x33e92b,null))[_0x2c06('0x4e')](handleError(_0x33e92b,null));};exports[_0x2c06('0x52')]=function(_0x1eac62,_0x38a249){return db[_0x2c06('0x33')][_0x2c06('0x52')]()['then'](respondWithResult(_0x38a249,null))['catch'](handleError(_0x38a249,null));};