09e52580186d1b9f5aa5a0dd5320f2671519fcb4
[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 _0x158a=['sox','ejs','fs-extra','lodash','squel','desk.js','querystring','../../components/auth/service','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','status','end','json','offset','undefined','count','limit','Content-Range','save','then','destroy','sendStatus','error','stack','name','send','index','map','SquareDetailsReport','rawAttributes','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','merge','type','filter','options','findAll','show','params','includeAll','include','find','catch','create','body','update','describe','eml-format','zip-dir','fast-json-patch','request-promise','bluebird','util','path'];(function(_0x2268bb,_0x126178){var _0x4e0bcc=function(_0x1aac10){while(--_0x1aac10){_0x2268bb['push'](_0x2268bb['shift']());}};_0x4e0bcc(++_0x126178);}(_0x158a,0x10d));var _0xa158=function(_0x4858e6,_0x3815bd){_0x4858e6=_0x4858e6-0x0;var _0x14429a=_0x158a[_0x4858e6];return _0x14429a;};'use strict';var emlformat=require(_0xa158('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xa158('0x1'));var jsonpatch=require(_0xa158('0x2'));var rp=require(_0xa158('0x3'));var moment=require('moment');var BPromise=require(_0xa158('0x4'));var Mustache=require('mustache');var util=require(_0xa158('0x5'));var path=require(_0xa158('0x6'));var sox=require(_0xa158('0x7'));var csv=require('to-csv');var ejs=require(_0xa158('0x8'));var fs=require('fs');var fs_extra=require(_0xa158('0x9'));var _=require(_0xa158('0xa'));var squel=require(_0xa158('0xb'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0xa158('0xc'));var toCsv=require('to-csv');var querystring=require(_0xa158('0xd'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xa158('0xe'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xa158('0xf'));var logger=require('../../config/logger')('api');var utils=require(_0xa158('0x10'));var config=require(_0xa158('0x11'));var licenseUtil=require(_0xa158('0x12'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x143d1e,_0x5af2cc){_0x5af2cc=_0x5af2cc||0xcc;return function(_0x3c0ee2){if(_0x3c0ee2){return _0x143d1e['sendStatus'](_0x5af2cc);}return _0x143d1e[_0xa158('0x13')](_0x5af2cc)[_0xa158('0x14')]();};}function respondWithResult(_0xed6736,_0x62224d){_0x62224d=_0x62224d||0xc8;return function(_0xd8f18e){if(_0xd8f18e){return _0xed6736[_0xa158('0x13')](_0x62224d)[_0xa158('0x15')](_0xd8f18e);}};}function respondWithFilteredResult(_0x15e74a,_0x1d9739){return function(_0x26e7d2){if(_0x26e7d2){var _0x3da9cd=typeof _0x1d9739[_0xa158('0x16')]==='undefined'&&typeof _0x1d9739['limit']===_0xa158('0x17');var _0x328975=_0x26e7d2['count'];var _0x5ad889=_0x3da9cd?0x0:_0x1d9739[_0xa158('0x16')];var _0x219d5d=_0x3da9cd?_0x26e7d2[_0xa158('0x18')]:_0x1d9739[_0xa158('0x16')]+_0x1d9739[_0xa158('0x19')];var _0x5a8df5;if(_0x219d5d>=_0x328975){_0x219d5d=_0x328975;_0x5a8df5=0xc8;}else{_0x5a8df5=0xce;}_0x15e74a[_0xa158('0x13')](_0x5a8df5);return _0x15e74a['set'](_0xa158('0x1a'),_0x5ad889+'-'+_0x219d5d+'/'+_0x328975)[_0xa158('0x15')](_0x26e7d2);}return null;};}function patchUpdates(_0x31ae60){return function(_0x18c073){try{jsonpatch['apply'](_0x18c073,_0x31ae60,!![]);}catch(_0x3b4235){return BPromise['reject'](_0x3b4235);}return _0x18c073[_0xa158('0x1b')]();};}function saveUpdates(_0x51676c,_0x3370b1){return function(_0xd92e2e){if(_0xd92e2e){return _0xd92e2e['update'](_0x51676c)[_0xa158('0x1c')](function(_0x47b911){return _0x47b911;});}return null;};}function removeEntity(_0x1198a1,_0x4aebc8){return function(_0x357fee){if(_0x357fee){return _0x357fee[_0xa158('0x1d')]()[_0xa158('0x1c')](function(){_0x1198a1['status'](0xcc)[_0xa158('0x14')]();});}};}function handleEntityNotFound(_0x7277aa,_0xc7c450){return function(_0xd430eb){if(!_0xd430eb){_0x7277aa[_0xa158('0x1e')](0x194);}return _0xd430eb;};}function handleError(_0x3bfb70,_0x231456){_0x231456=_0x231456||0x1f4;return function(_0x3286a7){logger[_0xa158('0x1f')](_0x3286a7[_0xa158('0x20')]);if(_0x3286a7[_0xa158('0x21')]){delete _0x3286a7['name'];}_0x3bfb70[_0xa158('0x13')](_0x231456)[_0xa158('0x22')](_0x3286a7);};}exports[_0xa158('0x23')]=function(_0x2c8c35,_0x5bf717){var _0x2565ec={},_0x3693df={},_0x28eb5b={'count':0x0,'rows':[]};var _0xe8851d=_[_0xa158('0x24')](db[_0xa158('0x25')][_0xa158('0x26')],function(_0x35fda2){return{'name':_0x35fda2[_0xa158('0x27')],'type':_0x35fda2['type'][_0xa158('0x28')]};});_0x3693df[_0xa158('0x29')]=_[_0xa158('0x24')](_0xe8851d,_0xa158('0x21'));_0x3693df[_0xa158('0x2a')]=_[_0xa158('0x2b')](_0x2c8c35[_0xa158('0x2a')]);_0x3693df[_0xa158('0x2c')]=_[_0xa158('0x2d')](_0x3693df[_0xa158('0x29')],_0x3693df['query']);_0x2565ec[_0xa158('0x2e')]=_[_0xa158('0x2d')](_0x3693df['model'],qs[_0xa158('0x2f')](_0x2c8c35['query'][_0xa158('0x2f')]));_0x2565ec['attributes']=_0x2565ec[_0xa158('0x2e')][_0xa158('0x30')]?_0x2565ec[_0xa158('0x2e')]:_0x3693df[_0xa158('0x29')];if(!_0x2c8c35[_0xa158('0x2a')][_0xa158('0x31')](_0xa158('0x32'))){_0x2565ec['limit']=qs[_0xa158('0x19')](_0x2c8c35['query']['limit']);_0x2565ec[_0xa158('0x16')]=qs['offset'](_0x2c8c35[_0xa158('0x2a')][_0xa158('0x16')]);}_0x2565ec['order']=qs[_0xa158('0x33')](_0x2c8c35[_0xa158('0x2a')][_0xa158('0x33')]);_0x2565ec[_0xa158('0x34')]=qs[_0xa158('0x2c')](_[_0xa158('0x35')](_0x2c8c35[_0xa158('0x2a')],_0x3693df[_0xa158('0x2c')]),_0xe8851d);if(_0x2c8c35[_0xa158('0x2a')]['filter']){_0x2565ec[_0xa158('0x34')]=_[_0xa158('0x36')](_0x2565ec[_0xa158('0x34')],{'$or':_[_0xa158('0x24')](_0xe8851d,function(_0x1112f2){if(_0x1112f2[_0xa158('0x37')]!=='VIRTUAL'){var _0xfdbbf2={};_0xfdbbf2[_0x1112f2[_0xa158('0x21')]]={'$like':'%'+_0x2c8c35['query'][_0xa158('0x38')]+'%'};return _0xfdbbf2;}})});}_0x2565ec=_[_0xa158('0x36')]({},_0x2565ec,_0x2c8c35[_0xa158('0x39')]);var _0x15d5e3={'where':_0x2565ec[_0xa158('0x34')]};return db['SquareDetailsReport'][_0xa158('0x18')](_0x15d5e3)[_0xa158('0x1c')](function(_0x5c3ffc){_0x28eb5b[_0xa158('0x18')]=_0x5c3ffc;if(_0x2c8c35[_0xa158('0x2a')]['includeAll']){_0x2565ec['include']=[{'all':!![]}];}return db[_0xa158('0x25')][_0xa158('0x3a')](_0x2565ec);})[_0xa158('0x1c')](function(_0x53fce5){_0x28eb5b['rows']=_0x53fce5;return _0x28eb5b;})[_0xa158('0x1c')](respondWithFilteredResult(_0x5bf717,_0x2565ec))['catch'](handleError(_0x5bf717,null));};exports[_0xa158('0x3b')]=function(_0x55962b,_0x4ae85b){var _0x36ce39={'raw':!![],'where':{'id':_0x55962b[_0xa158('0x3c')]['id']}},_0x26d4c1={};_0x26d4c1[_0xa158('0x29')]=_['keys'](db[_0xa158('0x25')][_0xa158('0x26')]);_0x26d4c1[_0xa158('0x2a')]=_['keys'](_0x55962b[_0xa158('0x2a')]);_0x26d4c1['filters']=_[_0xa158('0x2d')](_0x26d4c1[_0xa158('0x29')],_0x26d4c1[_0xa158('0x2a')]);_0x36ce39['attributes']=_[_0xa158('0x2d')](_0x26d4c1[_0xa158('0x29')],qs[_0xa158('0x2f')](_0x55962b[_0xa158('0x2a')]['fields']));_0x36ce39[_0xa158('0x2e')]=_0x36ce39['attributes'][_0xa158('0x30')]?_0x36ce39[_0xa158('0x2e')]:_0x26d4c1[_0xa158('0x29')];if(_0x55962b['query'][_0xa158('0x3d')]){_0x36ce39[_0xa158('0x3e')]=[{'all':!![]}];}_0x36ce39=_['merge']({},_0x36ce39,_0x55962b[_0xa158('0x39')]);return db[_0xa158('0x25')][_0xa158('0x3f')](_0x36ce39)['then'](handleEntityNotFound(_0x4ae85b,null))[_0xa158('0x1c')](respondWithResult(_0x4ae85b,null))[_0xa158('0x40')](handleError(_0x4ae85b,null));};exports[_0xa158('0x41')]=function(_0x40d233,_0x115975){return db[_0xa158('0x25')][_0xa158('0x41')](_0x40d233[_0xa158('0x42')],{})['then'](respondWithResult(_0x115975,0xc9))[_0xa158('0x40')](handleError(_0x115975,null));};exports[_0xa158('0x43')]=function(_0x1e4541,_0xe624ea){if(_0x1e4541[_0xa158('0x42')]['id']){delete _0x1e4541['body']['id'];}return db[_0xa158('0x25')][_0xa158('0x3f')]({'where':{'id':_0x1e4541['params']['id']}})[_0xa158('0x1c')](handleEntityNotFound(_0xe624ea,null))[_0xa158('0x1c')](saveUpdates(_0x1e4541['body'],null))[_0xa158('0x1c')](respondWithResult(_0xe624ea,null))[_0xa158('0x40')](handleError(_0xe624ea,null));};exports['destroy']=function(_0x3d2167,_0x4330dd){return db[_0xa158('0x25')]['find']({'where':{'id':_0x3d2167['params']['id']}})['then'](handleEntityNotFound(_0x4330dd,null))['then'](removeEntity(_0x4330dd,null))[_0xa158('0x40')](handleError(_0x4330dd,null));};exports[_0xa158('0x44')]=function(_0x585578,_0x13a9ac){return db[_0xa158('0x25')][_0xa158('0x44')]()[_0xa158('0x1c')](respondWithResult(_0x13a9ac,null))[_0xa158('0x40')](handleError(_0x13a9ac,null));};