Built motion from commit da617fac.|2.6.6
[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 _0xb684=['catch','params','rawAttributes','length','includeAll','find','create','update','body','destroy','describe','rimraf','zip-dir','moment','mustache','util','sox','ejs','fs-extra','squel','jsforce','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','status','end','json','offset','undefined','count','limit','set','Content-Range','then','sendStatus','error','stack','name','send','map','SquareReport','type','key','model','query','keys','filters','intersection','fields','attributes','hasOwnProperty','nolimit','sort','pick','filter','where','VIRTUAL','merge','options','include','findAll','rows'];(function(_0x49fcfb,_0x504dec){var _0x964926=function(_0x327977){while(--_0x327977){_0x49fcfb['push'](_0x49fcfb['shift']());}};_0x964926(++_0x504dec);}(_0xb684,0x1a3));var _0x4b68=function(_0x5a19db,_0x81342){_0x5a19db=_0x5a19db-0x0;var _0x5fd1c0=_0xb684[_0x5a19db];return _0x5fd1c0;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x4b68('0x0'));var zipdir=require(_0x4b68('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x4b68('0x2'));var BPromise=require('bluebird');var Mustache=require(_0x4b68('0x3'));var util=require(_0x4b68('0x4'));var path=require('path');var sox=require(_0x4b68('0x5'));var csv=require('to-csv');var ejs=require(_0x4b68('0x6'));var fs=require('fs');var fs_extra=require(_0x4b68('0x7'));var _=require('lodash');var squel=require(_0x4b68('0x8'));var crypto=require('crypto');var jsforce=require(_0x4b68('0x9'));var deskjs=require('desk.js');var toCsv=require(_0x4b68('0xa'));var querystring=require(_0x4b68('0xb'));var Papa=require('papaparse');var Redis=require(_0x4b68('0xc'));var authService=require(_0x4b68('0xd'));var qs=require(_0x4b68('0xe'));var as=require(_0x4b68('0xf'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x4b68('0x10'))('api');var utils=require(_0x4b68('0x11'));var config=require(_0x4b68('0x12'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x273e38,_0xb6a3f7){_0xb6a3f7=_0xb6a3f7||0xcc;return function(_0x202416){if(_0x202416){return _0x273e38['sendStatus'](_0xb6a3f7);}return _0x273e38[_0x4b68('0x13')](_0xb6a3f7)[_0x4b68('0x14')]();};}function respondWithResult(_0x4f7983,_0x5f550b){_0x5f550b=_0x5f550b||0xc8;return function(_0x4b9033){if(_0x4b9033){return _0x4f7983['status'](_0x5f550b)[_0x4b68('0x15')](_0x4b9033);}};}function respondWithFilteredResult(_0x219fba,_0x3a7337){return function(_0x851aca){if(_0x851aca){var _0x4ee1fb=typeof _0x3a7337[_0x4b68('0x16')]===_0x4b68('0x17')&&typeof _0x3a7337['limit']==='undefined';var _0x24073c=_0x851aca[_0x4b68('0x18')];var _0x7b4db1=_0x4ee1fb?0x0:_0x3a7337[_0x4b68('0x16')];var _0x42a850=_0x4ee1fb?_0x851aca[_0x4b68('0x18')]:_0x3a7337[_0x4b68('0x16')]+_0x3a7337[_0x4b68('0x19')];var _0xabd04f;if(_0x42a850>=_0x24073c){_0x42a850=_0x24073c;_0xabd04f=0xc8;}else{_0xabd04f=0xce;}_0x219fba[_0x4b68('0x13')](_0xabd04f);return _0x219fba[_0x4b68('0x1a')](_0x4b68('0x1b'),_0x7b4db1+'-'+_0x42a850+'/'+_0x24073c)[_0x4b68('0x15')](_0x851aca);}return null;};}function patchUpdates(_0xa93c76){return function(_0x34ff1a){try{jsonpatch['apply'](_0x34ff1a,_0xa93c76,!![]);}catch(_0x4d1776){return BPromise['reject'](_0x4d1776);}return _0x34ff1a['save']();};}function saveUpdates(_0x3ed103,_0x318f59){return function(_0x34d31f){if(_0x34d31f){return _0x34d31f['update'](_0x3ed103)[_0x4b68('0x1c')](function(_0x5d2347){return _0x5d2347;});}return null;};}function removeEntity(_0x15e60a,_0x3671a4){return function(_0x4b8dff){if(_0x4b8dff){return _0x4b8dff['destroy']()[_0x4b68('0x1c')](function(){_0x15e60a[_0x4b68('0x13')](0xcc)[_0x4b68('0x14')]();});}};}function handleEntityNotFound(_0x3ac9ad,_0x47f457){return function(_0x25a45d){if(!_0x25a45d){_0x3ac9ad[_0x4b68('0x1d')](0x194);}return _0x25a45d;};}function handleError(_0x50c57f,_0x9feac5){_0x9feac5=_0x9feac5||0x1f4;return function(_0x400170){logger[_0x4b68('0x1e')](_0x400170[_0x4b68('0x1f')]);if(_0x400170[_0x4b68('0x20')]){delete _0x400170[_0x4b68('0x20')];}_0x50c57f[_0x4b68('0x13')](_0x9feac5)[_0x4b68('0x21')](_0x400170);};}exports['index']=function(_0x742827,_0x4788b7){var _0x951556={},_0x548f28={},_0xbd5c36={'count':0x0,'rows':[]};var _0x5bb10d=_[_0x4b68('0x22')](db[_0x4b68('0x23')]['rawAttributes'],function(_0x2e15c7){return{'name':_0x2e15c7['fieldName'],'type':_0x2e15c7[_0x4b68('0x24')][_0x4b68('0x25')]};});_0x548f28[_0x4b68('0x26')]=_[_0x4b68('0x22')](_0x5bb10d,_0x4b68('0x20'));_0x548f28[_0x4b68('0x27')]=_[_0x4b68('0x28')](_0x742827[_0x4b68('0x27')]);_0x548f28[_0x4b68('0x29')]=_['intersection'](_0x548f28['model'],_0x548f28['query']);_0x951556['attributes']=_[_0x4b68('0x2a')](_0x548f28[_0x4b68('0x26')],qs[_0x4b68('0x2b')](_0x742827[_0x4b68('0x27')][_0x4b68('0x2b')]));_0x951556[_0x4b68('0x2c')]=_0x951556[_0x4b68('0x2c')]['length']?_0x951556['attributes']:_0x548f28[_0x4b68('0x26')];if(!_0x742827['query'][_0x4b68('0x2d')](_0x4b68('0x2e'))){_0x951556['limit']=qs[_0x4b68('0x19')](_0x742827[_0x4b68('0x27')][_0x4b68('0x19')]);_0x951556['offset']=qs[_0x4b68('0x16')](_0x742827[_0x4b68('0x27')]['offset']);}_0x951556['order']=qs[_0x4b68('0x2f')](_0x742827[_0x4b68('0x27')]['sort']);_0x951556['where']=qs[_0x4b68('0x29')](_[_0x4b68('0x30')](_0x742827['query'],_0x548f28[_0x4b68('0x29')]),_0x5bb10d);if(_0x742827[_0x4b68('0x27')][_0x4b68('0x31')]){_0x951556[_0x4b68('0x32')]=_['merge'](_0x951556[_0x4b68('0x32')],{'$or':_['map'](_0x5bb10d,function(_0x2abe6b){if(_0x2abe6b['type']!==_0x4b68('0x33')){var _0x2fd10b={};_0x2fd10b[_0x2abe6b[_0x4b68('0x20')]]={'$like':'%'+_0x742827[_0x4b68('0x27')][_0x4b68('0x31')]+'%'};return _0x2fd10b;}})});}_0x951556=_[_0x4b68('0x34')]({},_0x951556,_0x742827[_0x4b68('0x35')]);var _0x1edea7={'where':_0x951556[_0x4b68('0x32')]};return db[_0x4b68('0x23')][_0x4b68('0x18')](_0x1edea7)['then'](function(_0xdf8538){_0xbd5c36[_0x4b68('0x18')]=_0xdf8538;if(_0x742827['query']['includeAll']){_0x951556[_0x4b68('0x36')]=[{'all':!![]}];}return db[_0x4b68('0x23')][_0x4b68('0x37')](_0x951556);})[_0x4b68('0x1c')](function(_0x5060d7){_0xbd5c36[_0x4b68('0x38')]=_0x5060d7;return _0xbd5c36;})[_0x4b68('0x1c')](respondWithFilteredResult(_0x4788b7,_0x951556))[_0x4b68('0x39')](handleError(_0x4788b7,null));};exports['show']=function(_0x3a8f3e,_0x14e8a6){var _0x7569={'raw':!![],'where':{'id':_0x3a8f3e[_0x4b68('0x3a')]['id']}},_0x567b1f={};_0x567b1f[_0x4b68('0x26')]=_[_0x4b68('0x28')](db[_0x4b68('0x23')][_0x4b68('0x3b')]);_0x567b1f[_0x4b68('0x27')]=_['keys'](_0x3a8f3e[_0x4b68('0x27')]);_0x567b1f[_0x4b68('0x29')]=_[_0x4b68('0x2a')](_0x567b1f['model'],_0x567b1f[_0x4b68('0x27')]);_0x7569['attributes']=_[_0x4b68('0x2a')](_0x567b1f['model'],qs[_0x4b68('0x2b')](_0x3a8f3e[_0x4b68('0x27')][_0x4b68('0x2b')]));_0x7569[_0x4b68('0x2c')]=_0x7569[_0x4b68('0x2c')][_0x4b68('0x3c')]?_0x7569[_0x4b68('0x2c')]:_0x567b1f[_0x4b68('0x26')];if(_0x3a8f3e[_0x4b68('0x27')][_0x4b68('0x3d')]){_0x7569['include']=[{'all':!![]}];}_0x7569=_[_0x4b68('0x34')]({},_0x7569,_0x3a8f3e[_0x4b68('0x35')]);return db['SquareReport'][_0x4b68('0x3e')](_0x7569)[_0x4b68('0x1c')](handleEntityNotFound(_0x14e8a6,null))[_0x4b68('0x1c')](respondWithResult(_0x14e8a6,null))[_0x4b68('0x39')](handleError(_0x14e8a6,null));};exports['create']=function(_0x4943e1,_0x29b648){return db['SquareReport'][_0x4b68('0x3f')](_0x4943e1['body'],{})[_0x4b68('0x1c')](respondWithResult(_0x29b648,0xc9))[_0x4b68('0x39')](handleError(_0x29b648,null));};exports[_0x4b68('0x40')]=function(_0x3782dc,_0x31c387){if(_0x3782dc[_0x4b68('0x41')]['id']){delete _0x3782dc[_0x4b68('0x41')]['id'];}return db[_0x4b68('0x23')][_0x4b68('0x3e')]({'where':{'id':_0x3782dc[_0x4b68('0x3a')]['id']}})[_0x4b68('0x1c')](handleEntityNotFound(_0x31c387,null))[_0x4b68('0x1c')](saveUpdates(_0x3782dc['body'],null))[_0x4b68('0x1c')](respondWithResult(_0x31c387,null))[_0x4b68('0x39')](handleError(_0x31c387,null));};exports[_0x4b68('0x42')]=function(_0x439d8f,_0x29797f){return db[_0x4b68('0x23')][_0x4b68('0x3e')]({'where':{'id':_0x439d8f['params']['id']}})[_0x4b68('0x1c')](handleEntityNotFound(_0x29797f,null))[_0x4b68('0x1c')](removeEntity(_0x29797f,null))[_0x4b68('0x39')](handleError(_0x29797f,null));};exports['describe']=function(_0x62658,_0x55615e){return db[_0x4b68('0x23')][_0x4b68('0x43')]()[_0x4b68('0x1c')](respondWithResult(_0x55615e,null))['catch'](handleError(_0x55615e,null));};