59e71740a5a8caad2d6093927e3dce8fb7db2d26
[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 _0x9e83=['name','send','index','SquareReport','rawAttributes','key','model','map','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','filters','pick','filter','where','type','VIRTUAL','merge','options','includeAll','include','rows','catch','params','find','create','body','update','destroy','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','path','sox','ejs','fs-extra','lodash','squel','crypto','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset','undefined','count','limit','set','Content-Range','apply','reject','save','then','error','stack'];(function(_0x56a940,_0xc46d34){var _0x1df10d=function(_0x5db786){while(--_0x5db786){_0x56a940['push'](_0x56a940['shift']());}};_0x1df10d(++_0xc46d34);}(_0x9e83,0x6f));var _0x39e8=function(_0x473a44,_0x51bed6){_0x473a44=_0x473a44-0x0;var _0x3ee4ea=_0x9e83[_0x473a44];return _0x3ee4ea;};'use strict';var emlformat=require(_0x39e8('0x0'));var rimraf=require(_0x39e8('0x1'));var zipdir=require(_0x39e8('0x2'));var jsonpatch=require(_0x39e8('0x3'));var rp=require(_0x39e8('0x4'));var moment=require(_0x39e8('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x39e8('0x6'));var util=require('util');var path=require(_0x39e8('0x7'));var sox=require(_0x39e8('0x8'));var csv=require('to-csv');var ejs=require(_0x39e8('0x9'));var fs=require('fs');var fs_extra=require(_0x39e8('0xa'));var _=require(_0x39e8('0xb'));var squel=require(_0x39e8('0xc'));var crypto=require(_0x39e8('0xd'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x39e8('0xe'));var Papa=require('papaparse');var Redis=require(_0x39e8('0xf'));var authService=require(_0x39e8('0x10'));var qs=require(_0x39e8('0x11'));var as=require(_0x39e8('0x12'));var hardwareService=require(_0x39e8('0x13'));var logger=require('../../config/logger')('api');var utils=require(_0x39e8('0x14'));var config=require(_0x39e8('0x15'));var licenseUtil=require(_0x39e8('0x16'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x1989d0,_0x302116){_0x302116=_0x302116||0xcc;return function(_0x333981){if(_0x333981){return _0x1989d0[_0x39e8('0x17')](_0x302116);}return _0x1989d0[_0x39e8('0x18')](_0x302116)[_0x39e8('0x19')]();};}function respondWithResult(_0x2a927c,_0x2ca1a3){_0x2ca1a3=_0x2ca1a3||0xc8;return function(_0x156908){if(_0x156908){return _0x2a927c['status'](_0x2ca1a3)[_0x39e8('0x1a')](_0x156908);}};}function respondWithFilteredResult(_0x499f0c,_0x9f5a24){return function(_0x293246){if(_0x293246){var _0x4f913d=typeof _0x9f5a24[_0x39e8('0x1b')]===_0x39e8('0x1c')&&typeof _0x9f5a24['limit']===_0x39e8('0x1c');var _0x8a9b3f=_0x293246[_0x39e8('0x1d')];var _0x3bc80e=_0x4f913d?0x0:_0x9f5a24[_0x39e8('0x1b')];var _0x2251ea=_0x4f913d?_0x293246['count']:_0x9f5a24[_0x39e8('0x1b')]+_0x9f5a24[_0x39e8('0x1e')];var _0x41c00f;if(_0x2251ea>=_0x8a9b3f){_0x2251ea=_0x8a9b3f;_0x41c00f=0xc8;}else{_0x41c00f=0xce;}_0x499f0c['status'](_0x41c00f);return _0x499f0c[_0x39e8('0x1f')](_0x39e8('0x20'),_0x3bc80e+'-'+_0x2251ea+'/'+_0x8a9b3f)[_0x39e8('0x1a')](_0x293246);}return null;};}function patchUpdates(_0x1d7c74){return function(_0x14c535){try{jsonpatch[_0x39e8('0x21')](_0x14c535,_0x1d7c74,!![]);}catch(_0xbb45c8){return BPromise[_0x39e8('0x22')](_0xbb45c8);}return _0x14c535[_0x39e8('0x23')]();};}function saveUpdates(_0x515798,_0x2c0de1){return function(_0x32421b){if(_0x32421b){return _0x32421b['update'](_0x515798)[_0x39e8('0x24')](function(_0x22b511){return _0x22b511;});}return null;};}function removeEntity(_0x3c053a,_0x56e914){return function(_0x221c52){if(_0x221c52){return _0x221c52['destroy']()[_0x39e8('0x24')](function(){_0x3c053a['status'](0xcc)[_0x39e8('0x19')]();});}};}function handleEntityNotFound(_0x3d5113,_0x2fea61){return function(_0x5ad5a5){if(!_0x5ad5a5){_0x3d5113[_0x39e8('0x17')](0x194);}return _0x5ad5a5;};}function handleError(_0x2086e7,_0x3721c9){_0x3721c9=_0x3721c9||0x1f4;return function(_0x378001){logger[_0x39e8('0x25')](_0x378001[_0x39e8('0x26')]);if(_0x378001['name']){delete _0x378001[_0x39e8('0x27')];}_0x2086e7[_0x39e8('0x18')](_0x3721c9)[_0x39e8('0x28')](_0x378001);};}exports[_0x39e8('0x29')]=function(_0x5eb22d,_0x460361){var _0x39864d={},_0x4666ea={},_0x5452bd={'count':0x0,'rows':[]};var _0x555dfc=_['map'](db[_0x39e8('0x2a')][_0x39e8('0x2b')],function(_0x351dcb){return{'name':_0x351dcb['fieldName'],'type':_0x351dcb['type'][_0x39e8('0x2c')]};});_0x4666ea[_0x39e8('0x2d')]=_[_0x39e8('0x2e')](_0x555dfc,_0x39e8('0x27'));_0x4666ea[_0x39e8('0x2f')]=_['keys'](_0x5eb22d[_0x39e8('0x2f')]);_0x4666ea['filters']=_[_0x39e8('0x30')](_0x4666ea[_0x39e8('0x2d')],_0x4666ea[_0x39e8('0x2f')]);_0x39864d[_0x39e8('0x31')]=_['intersection'](_0x4666ea[_0x39e8('0x2d')],qs[_0x39e8('0x32')](_0x5eb22d['query'][_0x39e8('0x32')]));_0x39864d['attributes']=_0x39864d[_0x39e8('0x31')][_0x39e8('0x33')]?_0x39864d[_0x39e8('0x31')]:_0x4666ea[_0x39e8('0x2d')];if(!_0x5eb22d[_0x39e8('0x2f')][_0x39e8('0x34')](_0x39e8('0x35'))){_0x39864d[_0x39e8('0x1e')]=qs[_0x39e8('0x1e')](_0x5eb22d[_0x39e8('0x2f')][_0x39e8('0x1e')]);_0x39864d[_0x39e8('0x1b')]=qs[_0x39e8('0x1b')](_0x5eb22d[_0x39e8('0x2f')]['offset']);}_0x39864d[_0x39e8('0x36')]=qs['sort'](_0x5eb22d[_0x39e8('0x2f')][_0x39e8('0x37')]);_0x39864d['where']=qs[_0x39e8('0x38')](_[_0x39e8('0x39')](_0x5eb22d[_0x39e8('0x2f')],_0x4666ea[_0x39e8('0x38')]),_0x555dfc);if(_0x5eb22d[_0x39e8('0x2f')][_0x39e8('0x3a')]){_0x39864d[_0x39e8('0x3b')]=_['merge'](_0x39864d[_0x39e8('0x3b')],{'$or':_[_0x39e8('0x2e')](_0x555dfc,function(_0x2287a9){if(_0x2287a9[_0x39e8('0x3c')]!==_0x39e8('0x3d')){var _0x92773b={};_0x92773b[_0x2287a9[_0x39e8('0x27')]]={'$like':'%'+_0x5eb22d[_0x39e8('0x2f')][_0x39e8('0x3a')]+'%'};return _0x92773b;}})});}_0x39864d=_[_0x39e8('0x3e')]({},_0x39864d,_0x5eb22d[_0x39e8('0x3f')]);var _0x2accc9={'where':_0x39864d[_0x39e8('0x3b')]};return db[_0x39e8('0x2a')][_0x39e8('0x1d')](_0x2accc9)[_0x39e8('0x24')](function(_0x33fce0){_0x5452bd['count']=_0x33fce0;if(_0x5eb22d[_0x39e8('0x2f')][_0x39e8('0x40')]){_0x39864d[_0x39e8('0x41')]=[{'all':!![]}];}return db[_0x39e8('0x2a')]['findAll'](_0x39864d);})[_0x39e8('0x24')](function(_0x20b563){_0x5452bd[_0x39e8('0x42')]=_0x20b563;return _0x5452bd;})[_0x39e8('0x24')](respondWithFilteredResult(_0x460361,_0x39864d))[_0x39e8('0x43')](handleError(_0x460361,null));};exports['show']=function(_0x38df1c,_0x2be95a){var _0x2996d1={'raw':!![],'where':{'id':_0x38df1c[_0x39e8('0x44')]['id']}},_0x2251cd={};_0x2251cd[_0x39e8('0x2d')]=_['keys'](db[_0x39e8('0x2a')]['rawAttributes']);_0x2251cd[_0x39e8('0x2f')]=_['keys'](_0x38df1c[_0x39e8('0x2f')]);_0x2251cd[_0x39e8('0x38')]=_[_0x39e8('0x30')](_0x2251cd[_0x39e8('0x2d')],_0x2251cd[_0x39e8('0x2f')]);_0x2996d1['attributes']=_[_0x39e8('0x30')](_0x2251cd[_0x39e8('0x2d')],qs[_0x39e8('0x32')](_0x38df1c[_0x39e8('0x2f')][_0x39e8('0x32')]));_0x2996d1[_0x39e8('0x31')]=_0x2996d1['attributes'][_0x39e8('0x33')]?_0x2996d1[_0x39e8('0x31')]:_0x2251cd['model'];if(_0x38df1c[_0x39e8('0x2f')][_0x39e8('0x40')]){_0x2996d1['include']=[{'all':!![]}];}_0x2996d1=_[_0x39e8('0x3e')]({},_0x2996d1,_0x38df1c[_0x39e8('0x3f')]);return db[_0x39e8('0x2a')][_0x39e8('0x45')](_0x2996d1)[_0x39e8('0x24')](handleEntityNotFound(_0x2be95a,null))[_0x39e8('0x24')](respondWithResult(_0x2be95a,null))[_0x39e8('0x43')](handleError(_0x2be95a,null));};exports['create']=function(_0xec2237,_0x33c7a4){return db['SquareReport'][_0x39e8('0x46')](_0xec2237[_0x39e8('0x47')],{})['then'](respondWithResult(_0x33c7a4,0xc9))[_0x39e8('0x43')](handleError(_0x33c7a4,null));};exports[_0x39e8('0x48')]=function(_0x35bded,_0x35b23a){if(_0x35bded['body']['id']){delete _0x35bded[_0x39e8('0x47')]['id'];}return db['SquareReport']['find']({'where':{'id':_0x35bded[_0x39e8('0x44')]['id']}})[_0x39e8('0x24')](handleEntityNotFound(_0x35b23a,null))['then'](saveUpdates(_0x35bded[_0x39e8('0x47')],null))[_0x39e8('0x24')](respondWithResult(_0x35b23a,null))[_0x39e8('0x43')](handleError(_0x35b23a,null));};exports[_0x39e8('0x49')]=function(_0x545c75,_0x57c719){return db['SquareReport'][_0x39e8('0x45')]({'where':{'id':_0x545c75[_0x39e8('0x44')]['id']}})[_0x39e8('0x24')](handleEntityNotFound(_0x57c719,null))[_0x39e8('0x24')](removeEntity(_0x57c719,null))[_0x39e8('0x43')](handleError(_0x57c719,null));};exports[_0x39e8('0x4a')]=function(_0xa3caef,_0x3ffe25){return db[_0x39e8('0x2a')][_0x39e8('0x4a')]()[_0x39e8('0x24')](respondWithResult(_0x3ffe25,null))[_0x39e8('0x43')](handleError(_0x3ffe25,null));};