1f342a12476a18c9887570cecae9b8c9548f5d00
[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 _0xb34d=['fieldName','key','model','map','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','pick','where','merge','type','filter','options','includeAll','findAll','rows','catch','show','params','length','include','find','create','body','describe','eml-format','zip-dir','request-promise','moment','bluebird','mustache','util','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','save','update','then','destroy','error','name','send','index','SquareDetailsReport','rawAttributes'];(function(_0x64a51,_0x1c61b7){var _0x1eba45=function(_0x230cf8){while(--_0x230cf8){_0x64a51['push'](_0x64a51['shift']());}};_0x1eba45(++_0x1c61b7);}(_0xb34d,0x14f));var _0xdb34=function(_0x58c1d4,_0x50b6cf){_0x58c1d4=_0x58c1d4-0x0;var _0x537b7c=_0xb34d[_0x58c1d4];return _0x537b7c;};'use strict';var emlformat=require(_0xdb34('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xdb34('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xdb34('0x2'));var moment=require(_0xdb34('0x3'));var BPromise=require(_0xdb34('0x4'));var Mustache=require(_0xdb34('0x5'));var util=require(_0xdb34('0x6'));var path=require('path');var sox=require('sox');var csv=require(_0xdb34('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xdb34('0x8'));var squel=require(_0xdb34('0x9'));var crypto=require(_0xdb34('0xa'));var jsforce=require(_0xdb34('0xb'));var deskjs=require(_0xdb34('0xc'));var toCsv=require(_0xdb34('0x7'));var querystring=require(_0xdb34('0xd'));var Papa=require(_0xdb34('0xe'));var Redis=require(_0xdb34('0xf'));var authService=require('../../components/auth/service');var qs=require(_0xdb34('0x10'));var as=require(_0xdb34('0x11'));var hardwareService=require(_0xdb34('0x12'));var logger=require(_0xdb34('0x13'))(_0xdb34('0x14'));var utils=require(_0xdb34('0x15'));var config=require(_0xdb34('0x16'));var licenseUtil=require(_0xdb34('0x17'));var db=require(_0xdb34('0x18'))['db'];function respondWithStatusCode(_0x529c62,_0xd88cee){_0xd88cee=_0xd88cee||0xcc;return function(_0x27a8af){if(_0x27a8af){return _0x529c62['sendStatus'](_0xd88cee);}return _0x529c62[_0xdb34('0x19')](_0xd88cee)[_0xdb34('0x1a')]();};}function respondWithResult(_0x960b6,_0x17c95f){_0x17c95f=_0x17c95f||0xc8;return function(_0x2d3607){if(_0x2d3607){return _0x960b6[_0xdb34('0x19')](_0x17c95f)[_0xdb34('0x1b')](_0x2d3607);}};}function respondWithFilteredResult(_0x55b9a6,_0x11ec1b){return function(_0x45b398){if(_0x45b398){var _0x3761a6=typeof _0x11ec1b[_0xdb34('0x1c')]===_0xdb34('0x1d')&&typeof _0x11ec1b[_0xdb34('0x1e')]===_0xdb34('0x1d');var _0x2423a9=_0x45b398[_0xdb34('0x1f')];var _0x3774b7=_0x3761a6?0x0:_0x11ec1b[_0xdb34('0x1c')];var _0x143c5b=_0x3761a6?_0x45b398['count']:_0x11ec1b[_0xdb34('0x1c')]+_0x11ec1b[_0xdb34('0x1e')];var _0x3cd9f6;if(_0x143c5b>=_0x2423a9){_0x143c5b=_0x2423a9;_0x3cd9f6=0xc8;}else{_0x3cd9f6=0xce;}_0x55b9a6[_0xdb34('0x19')](_0x3cd9f6);return _0x55b9a6[_0xdb34('0x20')](_0xdb34('0x21'),_0x3774b7+'-'+_0x143c5b+'/'+_0x2423a9)[_0xdb34('0x1b')](_0x45b398);}return null;};}function patchUpdates(_0x5da372){return function(_0x7db880){try{jsonpatch[_0xdb34('0x22')](_0x7db880,_0x5da372,!![]);}catch(_0x5bfc6e){return BPromise['reject'](_0x5bfc6e);}return _0x7db880[_0xdb34('0x23')]();};}function saveUpdates(_0x1c301c,_0x1f26f3){return function(_0x48079c){if(_0x48079c){return _0x48079c[_0xdb34('0x24')](_0x1c301c)[_0xdb34('0x25')](function(_0x16761c){return _0x16761c;});}return null;};}function removeEntity(_0x322dfc,_0x5502e9){return function(_0xfda6b7){if(_0xfda6b7){return _0xfda6b7[_0xdb34('0x26')]()[_0xdb34('0x25')](function(){_0x322dfc[_0xdb34('0x19')](0xcc)[_0xdb34('0x1a')]();});}};}function handleEntityNotFound(_0x1a453e,_0x2ea3f3){return function(_0x51723d){if(!_0x51723d){_0x1a453e['sendStatus'](0x194);}return _0x51723d;};}function handleError(_0x1da754,_0x249fca){_0x249fca=_0x249fca||0x1f4;return function(_0x452068){logger[_0xdb34('0x27')](_0x452068['stack']);if(_0x452068[_0xdb34('0x28')]){delete _0x452068[_0xdb34('0x28')];}_0x1da754[_0xdb34('0x19')](_0x249fca)[_0xdb34('0x29')](_0x452068);};}exports[_0xdb34('0x2a')]=function(_0x4fee01,_0x8147d7){var _0x54338d={},_0xae7d45={},_0x1ecf6e={'count':0x0,'rows':[]};var _0x507dad=_['map'](db[_0xdb34('0x2b')][_0xdb34('0x2c')],function(_0x49e1ee){return{'name':_0x49e1ee[_0xdb34('0x2d')],'type':_0x49e1ee['type'][_0xdb34('0x2e')]};});_0xae7d45[_0xdb34('0x2f')]=_[_0xdb34('0x30')](_0x507dad,_0xdb34('0x28'));_0xae7d45[_0xdb34('0x31')]=_[_0xdb34('0x32')](_0x4fee01[_0xdb34('0x31')]);_0xae7d45[_0xdb34('0x33')]=_[_0xdb34('0x34')](_0xae7d45[_0xdb34('0x2f')],_0xae7d45['query']);_0x54338d[_0xdb34('0x35')]=_[_0xdb34('0x34')](_0xae7d45['model'],qs[_0xdb34('0x36')](_0x4fee01[_0xdb34('0x31')][_0xdb34('0x36')]));_0x54338d[_0xdb34('0x35')]=_0x54338d[_0xdb34('0x35')]['length']?_0x54338d[_0xdb34('0x35')]:_0xae7d45[_0xdb34('0x2f')];if(!_0x4fee01[_0xdb34('0x31')][_0xdb34('0x37')](_0xdb34('0x38'))){_0x54338d[_0xdb34('0x1e')]=qs['limit'](_0x4fee01[_0xdb34('0x31')][_0xdb34('0x1e')]);_0x54338d['offset']=qs[_0xdb34('0x1c')](_0x4fee01['query']['offset']);}_0x54338d[_0xdb34('0x39')]=qs['sort'](_0x4fee01[_0xdb34('0x31')]['sort']);_0x54338d['where']=qs[_0xdb34('0x33')](_[_0xdb34('0x3a')](_0x4fee01[_0xdb34('0x31')],_0xae7d45[_0xdb34('0x33')]),_0x507dad);if(_0x4fee01[_0xdb34('0x31')]['filter']){_0x54338d[_0xdb34('0x3b')]=_[_0xdb34('0x3c')](_0x54338d['where'],{'$or':_[_0xdb34('0x30')](_0x507dad,function(_0x33694c){if(_0x33694c[_0xdb34('0x3d')]!=='VIRTUAL'){var _0x341586={};_0x341586[_0x33694c[_0xdb34('0x28')]]={'$like':'%'+_0x4fee01[_0xdb34('0x31')][_0xdb34('0x3e')]+'%'};return _0x341586;}})});}_0x54338d=_[_0xdb34('0x3c')]({},_0x54338d,_0x4fee01[_0xdb34('0x3f')]);var _0x4c761d={'where':_0x54338d[_0xdb34('0x3b')]};return db[_0xdb34('0x2b')][_0xdb34('0x1f')](_0x4c761d)['then'](function(_0x4609e2){_0x1ecf6e[_0xdb34('0x1f')]=_0x4609e2;if(_0x4fee01[_0xdb34('0x31')][_0xdb34('0x40')]){_0x54338d['include']=[{'all':!![]}];}return db[_0xdb34('0x2b')][_0xdb34('0x41')](_0x54338d);})['then'](function(_0x5366f0){_0x1ecf6e[_0xdb34('0x42')]=_0x5366f0;return _0x1ecf6e;})[_0xdb34('0x25')](respondWithFilteredResult(_0x8147d7,_0x54338d))[_0xdb34('0x43')](handleError(_0x8147d7,null));};exports[_0xdb34('0x44')]=function(_0x22c011,_0x5cec81){var _0x451921={'raw':!![],'where':{'id':_0x22c011[_0xdb34('0x45')]['id']}},_0x2da868={};_0x2da868[_0xdb34('0x2f')]=_[_0xdb34('0x32')](db['SquareDetailsReport'][_0xdb34('0x2c')]);_0x2da868[_0xdb34('0x31')]=_[_0xdb34('0x32')](_0x22c011['query']);_0x2da868[_0xdb34('0x33')]=_[_0xdb34('0x34')](_0x2da868[_0xdb34('0x2f')],_0x2da868[_0xdb34('0x31')]);_0x451921[_0xdb34('0x35')]=_['intersection'](_0x2da868[_0xdb34('0x2f')],qs['fields'](_0x22c011[_0xdb34('0x31')][_0xdb34('0x36')]));_0x451921['attributes']=_0x451921[_0xdb34('0x35')][_0xdb34('0x46')]?_0x451921[_0xdb34('0x35')]:_0x2da868['model'];if(_0x22c011['query'][_0xdb34('0x40')]){_0x451921[_0xdb34('0x47')]=[{'all':!![]}];}_0x451921=_[_0xdb34('0x3c')]({},_0x451921,_0x22c011[_0xdb34('0x3f')]);return db[_0xdb34('0x2b')][_0xdb34('0x48')](_0x451921)[_0xdb34('0x25')](handleEntityNotFound(_0x5cec81,null))[_0xdb34('0x25')](respondWithResult(_0x5cec81,null))[_0xdb34('0x43')](handleError(_0x5cec81,null));};exports[_0xdb34('0x49')]=function(_0x576d64,_0x559607){return db['SquareDetailsReport']['create'](_0x576d64['body'],{})['then'](respondWithResult(_0x559607,0xc9))['catch'](handleError(_0x559607,null));};exports[_0xdb34('0x24')]=function(_0x406f77,_0x5ed5b9){if(_0x406f77[_0xdb34('0x4a')]['id']){delete _0x406f77[_0xdb34('0x4a')]['id'];}return db[_0xdb34('0x2b')]['find']({'where':{'id':_0x406f77['params']['id']}})[_0xdb34('0x25')](handleEntityNotFound(_0x5ed5b9,null))[_0xdb34('0x25')](saveUpdates(_0x406f77['body'],null))[_0xdb34('0x25')](respondWithResult(_0x5ed5b9,null))['catch'](handleError(_0x5ed5b9,null));};exports[_0xdb34('0x26')]=function(_0x3bf56d,_0x575291){return db[_0xdb34('0x2b')][_0xdb34('0x48')]({'where':{'id':_0x3bf56d[_0xdb34('0x45')]['id']}})[_0xdb34('0x25')](handleEntityNotFound(_0x575291,null))[_0xdb34('0x25')](removeEntity(_0x575291,null))[_0xdb34('0x43')](handleError(_0x575291,null));};exports[_0xdb34('0x4b')]=function(_0x3cd493,_0x3bd44a){return db['SquareDetailsReport']['describe']()['then'](respondWithResult(_0x3bd44a,null))['catch'](handleError(_0x3bd44a,null));};