3fd46e31fbb74017089ae62e17d27a9fef5a5bc5
[motion2.git] / server / api / squareReport / squareReport.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 _0xd663=['send','index','map','rawAttributes','fieldName','type','key','model','query','keys','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','SquareReport','includeAll','include','findAll','rows','catch','filters','options','create','update','body','find','params','describe','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','lodash','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','sendStatus','end','status','json','count','offset','limit','set','Content-Range','apply','reject','save','then','destroy','error','stack','name'];(function(_0x321bb2,_0x202794){var _0x9c12ed=function(_0x263dd3){while(--_0x263dd3){_0x321bb2['push'](_0x321bb2['shift']());}};_0x9c12ed(++_0x202794);}(_0xd663,0x1ed));var _0x3d66=function(_0x5c9702,_0x5e35e7){_0x5c9702=_0x5c9702-0x0;var _0x474f61=_0xd663[_0x5c9702];return _0x474f61;};'use strict';var pdf=require(_0x3d66('0x0'));var emlformat=require(_0x3d66('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x3d66('0x2'));var jsonpatch=require(_0x3d66('0x3'));var rp=require(_0x3d66('0x4'));var moment=require(_0x3d66('0x5'));var BPromise=require(_0x3d66('0x6'));var Mustache=require('mustache');var util=require(_0x3d66('0x7'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0x3d66('0x8'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x3d66('0x9'));var deskjs=require(_0x3d66('0xa'));var toCsv=require(_0x3d66('0xb'));var querystring=require(_0x3d66('0xc'));var Papa=require(_0x3d66('0xd'));var Redis=require(_0x3d66('0xe'));var authService=require(_0x3d66('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0x3d66('0x10'));var hardwareService=require(_0x3d66('0x11'));var logger=require(_0x3d66('0x12'))('api');var utils=require(_0x3d66('0x13'));var config=require(_0x3d66('0x14'));var licenseUtil=require(_0x3d66('0x15'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x207712,_0x223de6){_0x223de6=_0x223de6||0xcc;return function(_0x288693){if(_0x288693){return _0x207712[_0x3d66('0x16')](_0x223de6);}return _0x207712['status'](_0x223de6)[_0x3d66('0x17')]();};}function respondWithResult(_0x5a940c,_0x15bba0){_0x15bba0=_0x15bba0||0xc8;return function(_0x290f29){if(_0x290f29){return _0x5a940c[_0x3d66('0x18')](_0x15bba0)[_0x3d66('0x19')](_0x290f29);}};}function respondWithFilteredResult(_0x30260d,_0x153b88){return function(_0x5628ae){if(_0x5628ae){var _0x5eba7e=_0x5628ae[_0x3d66('0x1a')],_0xe5bf8f=_0x153b88[_0x3d66('0x1b')],_0x4651b8=_0x153b88[_0x3d66('0x1b')]+_0x153b88[_0x3d66('0x1c')],_0x4bd10f;if(_0x4651b8>=_0x5eba7e){_0x4651b8=_0x5eba7e;_0x4bd10f=0xc8;}else{_0x4bd10f=0xce;}_0x30260d[_0x3d66('0x18')](_0x4bd10f);return _0x30260d[_0x3d66('0x1d')](_0x3d66('0x1e'),_0xe5bf8f+'-'+_0x4651b8+'/'+_0x5eba7e)[_0x3d66('0x19')](_0x5628ae);}return null;};}function patchUpdates(_0x1accfb){return function(_0x3902f1){try{jsonpatch[_0x3d66('0x1f')](_0x3902f1,_0x1accfb,!![]);}catch(_0x353c5f){return BPromise[_0x3d66('0x20')](_0x353c5f);}return _0x3902f1[_0x3d66('0x21')]();};}function saveUpdates(_0x21cfd7,_0x4c61ee){return function(_0xac3d17){if(_0xac3d17){return _0xac3d17['update'](_0x21cfd7)[_0x3d66('0x22')](function(_0x26b404){return _0x26b404;});}return null;};}function removeEntity(_0x4486f5,_0x37ed73){return function(_0x11be7f){if(_0x11be7f){return _0x11be7f[_0x3d66('0x23')]()[_0x3d66('0x22')](function(){_0x4486f5[_0x3d66('0x18')](0xcc)[_0x3d66('0x17')]();});}};}function handleEntityNotFound(_0x4e2c42,_0x151364){return function(_0x1a970c){if(!_0x1a970c){_0x4e2c42[_0x3d66('0x16')](0x194);}return _0x1a970c;};}function handleError(_0x1cbf89,_0x47c6f1){_0x47c6f1=_0x47c6f1||0x1f4;return function(_0x59fe0a){logger[_0x3d66('0x24')](_0x59fe0a[_0x3d66('0x25')]);if(_0x59fe0a[_0x3d66('0x26')]){delete _0x59fe0a['name'];}_0x1cbf89[_0x3d66('0x18')](_0x47c6f1)[_0x3d66('0x27')](_0x59fe0a);};}exports[_0x3d66('0x28')]=function(_0x7350d8,_0x3ff9c5){var _0x77dc85={},_0x45ee47={},_0x4565a6={'count':0x0,'rows':[]};var _0x325de1=_[_0x3d66('0x29')](db['SquareReport'][_0x3d66('0x2a')],function(_0x1dff3b){return{'name':_0x1dff3b[_0x3d66('0x2b')],'type':_0x1dff3b[_0x3d66('0x2c')][_0x3d66('0x2d')]};});_0x45ee47[_0x3d66('0x2e')]=_[_0x3d66('0x29')](_0x325de1,_0x3d66('0x26'));_0x45ee47[_0x3d66('0x2f')]=_[_0x3d66('0x30')](_0x7350d8[_0x3d66('0x2f')]);_0x45ee47['filters']=_['intersection'](_0x45ee47[_0x3d66('0x2e')],_0x45ee47[_0x3d66('0x2f')]);_0x77dc85[_0x3d66('0x31')]=_[_0x3d66('0x32')](_0x45ee47[_0x3d66('0x2e')],qs[_0x3d66('0x33')](_0x7350d8[_0x3d66('0x2f')][_0x3d66('0x33')]));_0x77dc85[_0x3d66('0x31')]=_0x77dc85[_0x3d66('0x31')][_0x3d66('0x34')]?_0x77dc85[_0x3d66('0x31')]:_0x45ee47[_0x3d66('0x2e')];if(!_0x7350d8[_0x3d66('0x2f')][_0x3d66('0x35')](_0x3d66('0x36'))){_0x77dc85[_0x3d66('0x1c')]=qs[_0x3d66('0x1c')](_0x7350d8[_0x3d66('0x2f')][_0x3d66('0x1c')]);_0x77dc85[_0x3d66('0x1b')]=qs[_0x3d66('0x1b')](_0x7350d8[_0x3d66('0x2f')]['offset']);}_0x77dc85[_0x3d66('0x37')]=qs[_0x3d66('0x38')](_0x7350d8[_0x3d66('0x2f')]['sort']);_0x77dc85[_0x3d66('0x39')]=qs['filters'](_[_0x3d66('0x3a')](_0x7350d8[_0x3d66('0x2f')],_0x45ee47['filters']),_0x325de1);if(_0x7350d8[_0x3d66('0x2f')][_0x3d66('0x3b')]){_0x77dc85['where']=_[_0x3d66('0x3c')](_0x77dc85[_0x3d66('0x39')],{'$or':_['map'](_0x325de1,function(_0x1827b0){if(_0x1827b0[_0x3d66('0x2c')]!==_0x3d66('0x3d')){var _0x2ea871={};_0x2ea871[_0x1827b0['name']]={'$like':'%'+_0x7350d8[_0x3d66('0x2f')]['filter']+'%'};return _0x2ea871;}})});}_0x77dc85=_[_0x3d66('0x3c')]({},_0x77dc85,_0x7350d8['options']);var _0xc77eb5={'where':_0x77dc85[_0x3d66('0x39')]};return db[_0x3d66('0x3e')]['count'](_0xc77eb5)[_0x3d66('0x22')](function(_0xc07e61){_0x4565a6[_0x3d66('0x1a')]=_0xc07e61;if(_0x7350d8[_0x3d66('0x2f')][_0x3d66('0x3f')]){_0x77dc85[_0x3d66('0x40')]=[{'all':!![]}];}return db[_0x3d66('0x3e')][_0x3d66('0x41')](_0x77dc85);})[_0x3d66('0x22')](function(_0xa1a5f2){_0x4565a6[_0x3d66('0x42')]=_0xa1a5f2;return _0x4565a6;})[_0x3d66('0x22')](respondWithFilteredResult(_0x3ff9c5,_0x77dc85))[_0x3d66('0x43')](handleError(_0x3ff9c5,null));};exports['show']=function(_0x3f9010,_0x4482a3){var _0x31234c={'raw':!![],'where':{'id':_0x3f9010['params']['id']}},_0x4c980e={};_0x4c980e[_0x3d66('0x2e')]=_[_0x3d66('0x30')](db[_0x3d66('0x3e')][_0x3d66('0x2a')]);_0x4c980e[_0x3d66('0x2f')]=_[_0x3d66('0x30')](_0x3f9010[_0x3d66('0x2f')]);_0x4c980e[_0x3d66('0x44')]=_['intersection'](_0x4c980e[_0x3d66('0x2e')],_0x4c980e[_0x3d66('0x2f')]);_0x31234c[_0x3d66('0x31')]=_['intersection'](_0x4c980e['model'],qs[_0x3d66('0x33')](_0x3f9010[_0x3d66('0x2f')][_0x3d66('0x33')]));_0x31234c[_0x3d66('0x31')]=_0x31234c[_0x3d66('0x31')][_0x3d66('0x34')]?_0x31234c[_0x3d66('0x31')]:_0x4c980e[_0x3d66('0x2e')];if(_0x3f9010['query'][_0x3d66('0x3f')]){_0x31234c['include']=[{'all':!![]}];}_0x31234c=_[_0x3d66('0x3c')]({},_0x31234c,_0x3f9010[_0x3d66('0x45')]);return db[_0x3d66('0x3e')]['find'](_0x31234c)[_0x3d66('0x22')](handleEntityNotFound(_0x4482a3,null))[_0x3d66('0x22')](respondWithResult(_0x4482a3,null))[_0x3d66('0x43')](handleError(_0x4482a3,null));};exports[_0x3d66('0x46')]=function(_0x4c8c2d,_0x5cb410){return db[_0x3d66('0x3e')]['create'](_0x4c8c2d['body'],{})[_0x3d66('0x22')](respondWithResult(_0x5cb410,0xc9))[_0x3d66('0x43')](handleError(_0x5cb410,null));};exports[_0x3d66('0x47')]=function(_0xa576e2,_0x1636f6){if(_0xa576e2[_0x3d66('0x48')]['id']){delete _0xa576e2[_0x3d66('0x48')]['id'];}return db['SquareReport'][_0x3d66('0x49')]({'where':{'id':_0xa576e2[_0x3d66('0x4a')]['id']}})[_0x3d66('0x22')](handleEntityNotFound(_0x1636f6,null))[_0x3d66('0x22')](saveUpdates(_0xa576e2[_0x3d66('0x48')],null))['then'](respondWithResult(_0x1636f6,null))[_0x3d66('0x43')](handleError(_0x1636f6,null));};exports[_0x3d66('0x23')]=function(_0xa67d58,_0x433c32){return db[_0x3d66('0x3e')][_0x3d66('0x49')]({'where':{'id':_0xa67d58[_0x3d66('0x4a')]['id']}})['then'](handleEntityNotFound(_0x433c32,null))['then'](removeEntity(_0x433c32,null))['catch'](handleError(_0x433c32,null));};exports[_0x3d66('0x4b')]=function(_0x161d0a,_0x5bb0c5){return db[_0x3d66('0x3e')][_0x3d66('0x4b')]()[_0x3d66('0x22')](respondWithResult(_0x5bb0c5,null))[_0x3d66('0x43')](handleError(_0x5bb0c5,null));};