f367041a8bee4752b1775eeac4f964099ad44a30
[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 _0xc2ec=['zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../mysqldb','sendStatus','end','status','json','count','offset','set','apply','reject','save','then','destroy','stack','name','send','index','map','SquareDetailsReport','rawAttributes','type','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','limit','order','sort','where','filters','pick','filter','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','find','create','body','describe','eml-format'];(function(_0x133833,_0x1efbd9){var _0x492d42=function(_0x10a45a){while(--_0x10a45a){_0x133833['push'](_0x133833['shift']());}};_0x492d42(++_0x1efbd9);}(_0xc2ec,0xd1));var _0xcc2e=function(_0x54d8d7,_0x446e6f){_0x54d8d7=_0x54d8d7-0x0;var _0x150af6=_0xc2ec[_0x54d8d7];return _0x150af6;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xcc2e('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xcc2e('0x1'));var jsonpatch=require(_0xcc2e('0x2'));var rp=require(_0xcc2e('0x3'));var moment=require(_0xcc2e('0x4'));var BPromise=require(_0xcc2e('0x5'));var Mustache=require(_0xcc2e('0x6'));var util=require(_0xcc2e('0x7'));var path=require('path');var sox=require(_0xcc2e('0x8'));var csv=require(_0xcc2e('0x9'));var ejs=require(_0xcc2e('0xa'));var fs=require('fs');var _=require(_0xcc2e('0xb'));var squel=require(_0xcc2e('0xc'));var crypto=require(_0xcc2e('0xd'));var jsforce=require(_0xcc2e('0xe'));var deskjs=require('desk.js');var toCsv=require(_0xcc2e('0x9'));var querystring=require('querystring');var Papa=require(_0xcc2e('0xf'));var Redis=require(_0xcc2e('0x10'));var authService=require(_0xcc2e('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0xcc2e('0x12'));var hardwareService=require(_0xcc2e('0x13'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require('../../config/environment');var db=require(_0xcc2e('0x14'))['db'];function respondWithStatusCode(_0x467bb9,_0x4f0202){_0x4f0202=_0x4f0202||0xcc;return function(_0x29ad7e){if(_0x29ad7e){return _0x467bb9[_0xcc2e('0x15')](_0x4f0202);}return _0x467bb9['status'](_0x4f0202)[_0xcc2e('0x16')]();};}function respondWithResult(_0x1874fa,_0xa83406){_0xa83406=_0xa83406||0xc8;return function(_0x216c85){if(_0x216c85){return _0x1874fa[_0xcc2e('0x17')](_0xa83406)[_0xcc2e('0x18')](_0x216c85);}};}function respondWithFilteredResult(_0x27aed2,_0x17702a){return function(_0x217835){if(_0x217835){var _0x25a30c=_0x217835[_0xcc2e('0x19')],_0x364d3d=_0x17702a[_0xcc2e('0x1a')],_0x546cf6=_0x17702a[_0xcc2e('0x1a')]+_0x17702a['limit'],_0x5c4669;if(_0x546cf6>=_0x25a30c){_0x546cf6=_0x25a30c;_0x5c4669=0xc8;}else{_0x5c4669=0xce;}_0x27aed2[_0xcc2e('0x17')](_0x5c4669);return _0x27aed2[_0xcc2e('0x1b')]('Content-Range',_0x364d3d+'-'+_0x546cf6+'/'+_0x25a30c)[_0xcc2e('0x18')](_0x217835);}return null;};}function patchUpdates(_0x2f9b4b){return function(_0x4fe015){try{jsonpatch[_0xcc2e('0x1c')](_0x4fe015,_0x2f9b4b,!![]);}catch(_0x5f3892){return BPromise[_0xcc2e('0x1d')](_0x5f3892);}return _0x4fe015[_0xcc2e('0x1e')]();};}function saveUpdates(_0x50c07f,_0x1cb345){return function(_0x42ca2c){if(_0x42ca2c){return _0x42ca2c['update'](_0x50c07f)[_0xcc2e('0x1f')](function(_0x2d97ff){return _0x2d97ff;});}return null;};}function removeEntity(_0x1b4747,_0x3c33f8){return function(_0x52c57a){if(_0x52c57a){return _0x52c57a[_0xcc2e('0x20')]()[_0xcc2e('0x1f')](function(){_0x1b4747[_0xcc2e('0x17')](0xcc)[_0xcc2e('0x16')]();});}};}function handleEntityNotFound(_0x3af858,_0x280401){return function(_0x5cd007){if(!_0x5cd007){_0x3af858[_0xcc2e('0x15')](0x194);}return _0x5cd007;};}function handleError(_0xc80a35,_0x225b20){_0x225b20=_0x225b20||0x1f4;return function(_0x37f909){logger['error'](_0x37f909[_0xcc2e('0x21')]);if(_0x37f909[_0xcc2e('0x22')]){delete _0x37f909[_0xcc2e('0x22')];}_0xc80a35[_0xcc2e('0x17')](_0x225b20)[_0xcc2e('0x23')](_0x37f909);};}exports[_0xcc2e('0x24')]=function(_0x33bdf3,_0x9af4bb){var _0x130f57={},_0x49eb7d={},_0x17d352={'count':0x0,'rows':[]};var _0x17ef8d=_[_0xcc2e('0x25')](db[_0xcc2e('0x26')][_0xcc2e('0x27')],function(_0x596516){return{'name':_0x596516['fieldName'],'type':_0x596516[_0xcc2e('0x28')][_0xcc2e('0x29')]};});_0x49eb7d[_0xcc2e('0x2a')]=_[_0xcc2e('0x25')](_0x17ef8d,'name');_0x49eb7d[_0xcc2e('0x2b')]=_[_0xcc2e('0x2c')](_0x33bdf3[_0xcc2e('0x2b')]);_0x49eb7d['filters']=_[_0xcc2e('0x2d')](_0x49eb7d['model'],_0x49eb7d[_0xcc2e('0x2b')]);_0x130f57[_0xcc2e('0x2e')]=_[_0xcc2e('0x2d')](_0x49eb7d['model'],qs[_0xcc2e('0x2f')](_0x33bdf3['query']['fields']));_0x130f57[_0xcc2e('0x2e')]=_0x130f57[_0xcc2e('0x2e')][_0xcc2e('0x30')]?_0x130f57[_0xcc2e('0x2e')]:_0x49eb7d[_0xcc2e('0x2a')];if(!_0x33bdf3[_0xcc2e('0x2b')][_0xcc2e('0x31')]('nolimit')){_0x130f57[_0xcc2e('0x32')]=qs[_0xcc2e('0x32')](_0x33bdf3[_0xcc2e('0x2b')]['limit']);_0x130f57['offset']=qs[_0xcc2e('0x1a')](_0x33bdf3['query'][_0xcc2e('0x1a')]);}_0x130f57[_0xcc2e('0x33')]=qs[_0xcc2e('0x34')](_0x33bdf3[_0xcc2e('0x2b')][_0xcc2e('0x34')]);_0x130f57[_0xcc2e('0x35')]=qs[_0xcc2e('0x36')](_[_0xcc2e('0x37')](_0x33bdf3['query'],_0x49eb7d[_0xcc2e('0x36')]),_0x17ef8d);if(_0x33bdf3[_0xcc2e('0x2b')][_0xcc2e('0x38')]){_0x130f57[_0xcc2e('0x35')]=_['merge'](_0x130f57[_0xcc2e('0x35')],{'$or':_['map'](_0x17ef8d,function(_0x27ca54){if(_0x27ca54[_0xcc2e('0x28')]!==_0xcc2e('0x39')){var _0x38cb01={};_0x38cb01[_0x27ca54[_0xcc2e('0x22')]]={'$like':'%'+_0x33bdf3[_0xcc2e('0x2b')][_0xcc2e('0x38')]+'%'};return _0x38cb01;}})});}_0x130f57=_['merge']({},_0x130f57,_0x33bdf3[_0xcc2e('0x3a')]);var _0x44d1d7={'where':_0x130f57[_0xcc2e('0x35')]};return db['SquareDetailsReport']['count'](_0x44d1d7)['then'](function(_0x202982){_0x17d352[_0xcc2e('0x19')]=_0x202982;if(_0x33bdf3[_0xcc2e('0x2b')][_0xcc2e('0x3b')]){_0x130f57[_0xcc2e('0x3c')]=[{'all':!![]}];}return db[_0xcc2e('0x26')][_0xcc2e('0x3d')](_0x130f57);})[_0xcc2e('0x1f')](function(_0x136d3e){_0x17d352[_0xcc2e('0x3e')]=_0x136d3e;return _0x17d352;})[_0xcc2e('0x1f')](respondWithFilteredResult(_0x9af4bb,_0x130f57))[_0xcc2e('0x3f')](handleError(_0x9af4bb,null));};exports[_0xcc2e('0x40')]=function(_0x1e1bb6,_0x23bc42){var _0x4740cf={'raw':!![],'where':{'id':_0x1e1bb6[_0xcc2e('0x41')]['id']}},_0x1fbafd={};_0x1fbafd[_0xcc2e('0x2a')]=_['keys'](db['SquareDetailsReport'][_0xcc2e('0x27')]);_0x1fbafd[_0xcc2e('0x2b')]=_[_0xcc2e('0x2c')](_0x1e1bb6['query']);_0x1fbafd[_0xcc2e('0x36')]=_[_0xcc2e('0x2d')](_0x1fbafd[_0xcc2e('0x2a')],_0x1fbafd[_0xcc2e('0x2b')]);_0x4740cf[_0xcc2e('0x2e')]=_['intersection'](_0x1fbafd[_0xcc2e('0x2a')],qs[_0xcc2e('0x2f')](_0x1e1bb6[_0xcc2e('0x2b')][_0xcc2e('0x2f')]));_0x4740cf[_0xcc2e('0x2e')]=_0x4740cf[_0xcc2e('0x2e')][_0xcc2e('0x30')]?_0x4740cf['attributes']:_0x1fbafd[_0xcc2e('0x2a')];if(_0x1e1bb6[_0xcc2e('0x2b')][_0xcc2e('0x3b')]){_0x4740cf[_0xcc2e('0x3c')]=[{'all':!![]}];}_0x4740cf=_['merge']({},_0x4740cf,_0x1e1bb6[_0xcc2e('0x3a')]);return db[_0xcc2e('0x26')][_0xcc2e('0x42')](_0x4740cf)['then'](handleEntityNotFound(_0x23bc42,null))[_0xcc2e('0x1f')](respondWithResult(_0x23bc42,null))[_0xcc2e('0x3f')](handleError(_0x23bc42,null));};exports[_0xcc2e('0x43')]=function(_0x2845d5,_0xbafcf5){return db['SquareDetailsReport'][_0xcc2e('0x43')](_0x2845d5['body'],{})['then'](respondWithResult(_0xbafcf5,0xc9))[_0xcc2e('0x3f')](handleError(_0xbafcf5,null));};exports['update']=function(_0x347ffa,_0x5ed2e8){if(_0x347ffa[_0xcc2e('0x44')]['id']){delete _0x347ffa['body']['id'];}return db[_0xcc2e('0x26')][_0xcc2e('0x42')]({'where':{'id':_0x347ffa['params']['id']}})[_0xcc2e('0x1f')](handleEntityNotFound(_0x5ed2e8,null))[_0xcc2e('0x1f')](saveUpdates(_0x347ffa[_0xcc2e('0x44')],null))[_0xcc2e('0x1f')](respondWithResult(_0x5ed2e8,null))[_0xcc2e('0x3f')](handleError(_0x5ed2e8,null));};exports[_0xcc2e('0x20')]=function(_0x20cecf,_0x5edbbe){return db[_0xcc2e('0x26')][_0xcc2e('0x42')]({'where':{'id':_0x20cecf[_0xcc2e('0x41')]['id']}})[_0xcc2e('0x1f')](handleEntityNotFound(_0x5edbbe,null))[_0xcc2e('0x1f')](removeEntity(_0x5edbbe,null))[_0xcc2e('0x3f')](handleError(_0x5edbbe,null));};exports[_0xcc2e('0x45')]=function(_0x550318,_0x58e61b){return db[_0xcc2e('0x26')][_0xcc2e('0x45')]()['then'](respondWithResult(_0x58e61b,null))[_0xcc2e('0x3f')](handleError(_0x58e61b,null));};