b2b357cb795bd90d1603354d53f057078894552c
[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 _0xe4d4=['set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','map','fieldName','type','model','keys','query','intersection','attributes','length','order','sort','filters','pick','filter','where','merge','VIRTUAL','options','include','SquareDetailsReport','rows','catch','show','params','rawAttributes','fields','includeAll','find','create','body','describe','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','util','path','sox','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset','undefined','limit','count'];(function(_0x392d61,_0x5e29cd){var _0x3f5c1f=function(_0x30739e){while(--_0x30739e){_0x392d61['push'](_0x392d61['shift']());}};_0x3f5c1f(++_0x5e29cd);}(_0xe4d4,0x1f4));var _0x4e4d=function(_0x5f6908,_0x350a5c){_0x5f6908=_0x5f6908-0x0;var _0x523eb7=_0xe4d4[_0x5f6908];return _0x523eb7;};'use strict';var emlformat=require(_0x4e4d('0x0'));var rimraf=require(_0x4e4d('0x1'));var zipdir=require(_0x4e4d('0x2'));var jsonpatch=require(_0x4e4d('0x3'));var rp=require('request-promise');var moment=require(_0x4e4d('0x4'));var BPromise=require(_0x4e4d('0x5'));var Mustache=require('mustache');var util=require(_0x4e4d('0x6'));var path=require(_0x4e4d('0x7'));var sox=require(_0x4e4d('0x8'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x4e4d('0x9'));var _=require(_0x4e4d('0xa'));var squel=require(_0x4e4d('0xb'));var crypto=require('crypto');var jsforce=require(_0x4e4d('0xc'));var deskjs=require(_0x4e4d('0xd'));var toCsv=require('to-csv');var querystring=require(_0x4e4d('0xe'));var Papa=require(_0x4e4d('0xf'));var Redis=require(_0x4e4d('0x10'));var authService=require(_0x4e4d('0x11'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x4e4d('0x12'));var logger=require(_0x4e4d('0x13'))(_0x4e4d('0x14'));var utils=require(_0x4e4d('0x15'));var config=require(_0x4e4d('0x16'));var licenseUtil=require(_0x4e4d('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x36df98,_0x2169bf){_0x2169bf=_0x2169bf||0xcc;return function(_0x4a0f35){if(_0x4a0f35){return _0x36df98[_0x4e4d('0x18')](_0x2169bf);}return _0x36df98[_0x4e4d('0x19')](_0x2169bf)[_0x4e4d('0x1a')]();};}function respondWithResult(_0x526508,_0x423fbd){_0x423fbd=_0x423fbd||0xc8;return function(_0x49f291){if(_0x49f291){return _0x526508[_0x4e4d('0x19')](_0x423fbd)[_0x4e4d('0x1b')](_0x49f291);}};}function respondWithFilteredResult(_0x5bcc9d,_0x5d9789){return function(_0x4df422){if(_0x4df422){var _0x450f7d=typeof _0x5d9789[_0x4e4d('0x1c')]===_0x4e4d('0x1d')&&typeof _0x5d9789[_0x4e4d('0x1e')]===_0x4e4d('0x1d');var _0x1a5a6e=_0x4df422['count'];var _0x51ebf8=_0x450f7d?0x0:_0x5d9789[_0x4e4d('0x1c')];var _0x2f6fdf=_0x450f7d?_0x4df422[_0x4e4d('0x1f')]:_0x5d9789[_0x4e4d('0x1c')]+_0x5d9789[_0x4e4d('0x1e')];var _0x2e1e04;if(_0x2f6fdf>=_0x1a5a6e){_0x2f6fdf=_0x1a5a6e;_0x2e1e04=0xc8;}else{_0x2e1e04=0xce;}_0x5bcc9d[_0x4e4d('0x19')](_0x2e1e04);return _0x5bcc9d[_0x4e4d('0x20')](_0x4e4d('0x21'),_0x51ebf8+'-'+_0x2f6fdf+'/'+_0x1a5a6e)[_0x4e4d('0x1b')](_0x4df422);}return null;};}function patchUpdates(_0x463e50){return function(_0x374c1a){try{jsonpatch[_0x4e4d('0x22')](_0x374c1a,_0x463e50,!![]);}catch(_0x3ed116){return BPromise[_0x4e4d('0x23')](_0x3ed116);}return _0x374c1a[_0x4e4d('0x24')]();};}function saveUpdates(_0x1a3c3a,_0x445d13){return function(_0x1b7501){if(_0x1b7501){return _0x1b7501[_0x4e4d('0x25')](_0x1a3c3a)[_0x4e4d('0x26')](function(_0x478e41){return _0x478e41;});}return null;};}function removeEntity(_0x1c1daa,_0x30a140){return function(_0x10e8b7){if(_0x10e8b7){return _0x10e8b7[_0x4e4d('0x27')]()[_0x4e4d('0x26')](function(){_0x1c1daa[_0x4e4d('0x19')](0xcc)[_0x4e4d('0x1a')]();});}};}function handleEntityNotFound(_0xecad42,_0x5a95da){return function(_0x2dab0d){if(!_0x2dab0d){_0xecad42['sendStatus'](0x194);}return _0x2dab0d;};}function handleError(_0x2a9cee,_0x3b1cf4){_0x3b1cf4=_0x3b1cf4||0x1f4;return function(_0x301dea){logger[_0x4e4d('0x28')](_0x301dea[_0x4e4d('0x29')]);if(_0x301dea['name']){delete _0x301dea[_0x4e4d('0x2a')];}_0x2a9cee[_0x4e4d('0x19')](_0x3b1cf4)[_0x4e4d('0x2b')](_0x301dea);};}exports[_0x4e4d('0x2c')]=function(_0x11bc1b,_0x19a5df){var _0x3eb0fb={},_0x5e0456={},_0x5e989d={'count':0x0,'rows':[]};var _0x26a304=_[_0x4e4d('0x2d')](db['SquareDetailsReport']['rawAttributes'],function(_0x3e6a5b){return{'name':_0x3e6a5b[_0x4e4d('0x2e')],'type':_0x3e6a5b[_0x4e4d('0x2f')]['key']};});_0x5e0456[_0x4e4d('0x30')]=_[_0x4e4d('0x2d')](_0x26a304,_0x4e4d('0x2a'));_0x5e0456['query']=_[_0x4e4d('0x31')](_0x11bc1b[_0x4e4d('0x32')]);_0x5e0456['filters']=_[_0x4e4d('0x33')](_0x5e0456[_0x4e4d('0x30')],_0x5e0456[_0x4e4d('0x32')]);_0x3eb0fb[_0x4e4d('0x34')]=_[_0x4e4d('0x33')](_0x5e0456[_0x4e4d('0x30')],qs['fields'](_0x11bc1b[_0x4e4d('0x32')]['fields']));_0x3eb0fb[_0x4e4d('0x34')]=_0x3eb0fb[_0x4e4d('0x34')][_0x4e4d('0x35')]?_0x3eb0fb[_0x4e4d('0x34')]:_0x5e0456[_0x4e4d('0x30')];if(!_0x11bc1b[_0x4e4d('0x32')]['hasOwnProperty']('nolimit')){_0x3eb0fb[_0x4e4d('0x1e')]=qs[_0x4e4d('0x1e')](_0x11bc1b[_0x4e4d('0x32')][_0x4e4d('0x1e')]);_0x3eb0fb[_0x4e4d('0x1c')]=qs['offset'](_0x11bc1b[_0x4e4d('0x32')][_0x4e4d('0x1c')]);}_0x3eb0fb[_0x4e4d('0x36')]=qs['sort'](_0x11bc1b[_0x4e4d('0x32')][_0x4e4d('0x37')]);_0x3eb0fb['where']=qs[_0x4e4d('0x38')](_[_0x4e4d('0x39')](_0x11bc1b[_0x4e4d('0x32')],_0x5e0456[_0x4e4d('0x38')]),_0x26a304);if(_0x11bc1b['query'][_0x4e4d('0x3a')]){_0x3eb0fb[_0x4e4d('0x3b')]=_[_0x4e4d('0x3c')](_0x3eb0fb[_0x4e4d('0x3b')],{'$or':_[_0x4e4d('0x2d')](_0x26a304,function(_0xdb22e4){if(_0xdb22e4[_0x4e4d('0x2f')]!==_0x4e4d('0x3d')){var _0x3d0696={};_0x3d0696[_0xdb22e4['name']]={'$like':'%'+_0x11bc1b[_0x4e4d('0x32')]['filter']+'%'};return _0x3d0696;}})});}_0x3eb0fb=_[_0x4e4d('0x3c')]({},_0x3eb0fb,_0x11bc1b[_0x4e4d('0x3e')]);var _0x329276={'where':_0x3eb0fb['where']};return db['SquareDetailsReport'][_0x4e4d('0x1f')](_0x329276)['then'](function(_0x5755ae){_0x5e989d[_0x4e4d('0x1f')]=_0x5755ae;if(_0x11bc1b['query']['includeAll']){_0x3eb0fb[_0x4e4d('0x3f')]=[{'all':!![]}];}return db[_0x4e4d('0x40')]['findAll'](_0x3eb0fb);})[_0x4e4d('0x26')](function(_0x466e21){_0x5e989d[_0x4e4d('0x41')]=_0x466e21;return _0x5e989d;})[_0x4e4d('0x26')](respondWithFilteredResult(_0x19a5df,_0x3eb0fb))[_0x4e4d('0x42')](handleError(_0x19a5df,null));};exports[_0x4e4d('0x43')]=function(_0x11ae49,_0x59195b){var _0x512d85={'raw':!![],'where':{'id':_0x11ae49[_0x4e4d('0x44')]['id']}},_0x114d21={};_0x114d21[_0x4e4d('0x30')]=_['keys'](db[_0x4e4d('0x40')][_0x4e4d('0x45')]);_0x114d21['query']=_[_0x4e4d('0x31')](_0x11ae49[_0x4e4d('0x32')]);_0x114d21['filters']=_[_0x4e4d('0x33')](_0x114d21[_0x4e4d('0x30')],_0x114d21[_0x4e4d('0x32')]);_0x512d85[_0x4e4d('0x34')]=_['intersection'](_0x114d21[_0x4e4d('0x30')],qs[_0x4e4d('0x46')](_0x11ae49[_0x4e4d('0x32')][_0x4e4d('0x46')]));_0x512d85['attributes']=_0x512d85[_0x4e4d('0x34')][_0x4e4d('0x35')]?_0x512d85[_0x4e4d('0x34')]:_0x114d21[_0x4e4d('0x30')];if(_0x11ae49[_0x4e4d('0x32')][_0x4e4d('0x47')]){_0x512d85[_0x4e4d('0x3f')]=[{'all':!![]}];}_0x512d85=_['merge']({},_0x512d85,_0x11ae49[_0x4e4d('0x3e')]);return db[_0x4e4d('0x40')][_0x4e4d('0x48')](_0x512d85)['then'](handleEntityNotFound(_0x59195b,null))[_0x4e4d('0x26')](respondWithResult(_0x59195b,null))[_0x4e4d('0x42')](handleError(_0x59195b,null));};exports[_0x4e4d('0x49')]=function(_0x3e522a,_0x581cb1){return db[_0x4e4d('0x40')]['create'](_0x3e522a['body'],{})[_0x4e4d('0x26')](respondWithResult(_0x581cb1,0xc9))[_0x4e4d('0x42')](handleError(_0x581cb1,null));};exports[_0x4e4d('0x25')]=function(_0x30a2cc,_0x1153b6){if(_0x30a2cc[_0x4e4d('0x4a')]['id']){delete _0x30a2cc[_0x4e4d('0x4a')]['id'];}return db['SquareDetailsReport'][_0x4e4d('0x48')]({'where':{'id':_0x30a2cc[_0x4e4d('0x44')]['id']}})[_0x4e4d('0x26')](handleEntityNotFound(_0x1153b6,null))[_0x4e4d('0x26')](saveUpdates(_0x30a2cc[_0x4e4d('0x4a')],null))['then'](respondWithResult(_0x1153b6,null))['catch'](handleError(_0x1153b6,null));};exports[_0x4e4d('0x27')]=function(_0x379289,_0x125951){return db['SquareDetailsReport']['find']({'where':{'id':_0x379289[_0x4e4d('0x44')]['id']}})[_0x4e4d('0x26')](handleEntityNotFound(_0x125951,null))[_0x4e4d('0x26')](removeEntity(_0x125951,null))['catch'](handleError(_0x125951,null));};exports['describe']=function(_0x5f3515,_0x2c39a0){return db[_0x4e4d('0x40')][_0x4e4d('0x4b')]()[_0x4e4d('0x26')](respondWithResult(_0x2c39a0,null))[_0x4e4d('0x42')](handleError(_0x2c39a0,null));};