Built motion from commit b5996064.|2.6.21
[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 _0xb993=['query','keys','filters','attributes','intersection','fields','hasOwnProperty','nolimit','order','where','pick','filter','merge','VIRTUAL','options','includeAll','findAll','rows','catch','show','params','length','find','create','body','destroy','describe','eml-format','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','squel','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','undefined','limit','count','offset','set','Content-Range','apply','update','then','error','stack','name','index','SquareReport','rawAttributes','type','key','model','map'];(function(_0x3ae285,_0x27a64f){var _0x38de01=function(_0xdd2ac8){while(--_0xdd2ac8){_0x3ae285['push'](_0x3ae285['shift']());}};_0x38de01(++_0x27a64f);}(_0xb993,0x14b));var _0x3b99=function(_0x449336,_0x5e226d){_0x449336=_0x449336-0x0;var _0x460e9f=_0xb993[_0x449336];return _0x460e9f;};'use strict';var emlformat=require(_0x3b99('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x3b99('0x1'));var rp=require(_0x3b99('0x2'));var moment=require(_0x3b99('0x3'));var BPromise=require(_0x3b99('0x4'));var Mustache=require(_0x3b99('0x5'));var util=require(_0x3b99('0x6'));var path=require(_0x3b99('0x7'));var sox=require(_0x3b99('0x8'));var csv=require(_0x3b99('0x9'));var ejs=require(_0x3b99('0xa'));var fs=require('fs');var fs_extra=require(_0x3b99('0xb'));var _=require('lodash');var squel=require(_0x3b99('0xc'));var crypto=require(_0x3b99('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x3b99('0xe'));var toCsv=require(_0x3b99('0x9'));var querystring=require('querystring');var Papa=require(_0x3b99('0xf'));var Redis=require(_0x3b99('0x10'));var authService=require(_0x3b99('0x11'));var qs=require(_0x3b99('0x12'));var as=require(_0x3b99('0x13'));var hardwareService=require(_0x3b99('0x14'));var logger=require(_0x3b99('0x15'))(_0x3b99('0x16'));var utils=require(_0x3b99('0x17'));var config=require(_0x3b99('0x18'));var licenseUtil=require(_0x3b99('0x19'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x34e880,_0x5ce9fa){_0x5ce9fa=_0x5ce9fa||0xcc;return function(_0x27624b){if(_0x27624b){return _0x34e880[_0x3b99('0x1a')](_0x5ce9fa);}return _0x34e880[_0x3b99('0x1b')](_0x5ce9fa)[_0x3b99('0x1c')]();};}function respondWithResult(_0x3e51f2,_0x4944a9){_0x4944a9=_0x4944a9||0xc8;return function(_0x39790){if(_0x39790){return _0x3e51f2[_0x3b99('0x1b')](_0x4944a9)[_0x3b99('0x1d')](_0x39790);}};}function respondWithFilteredResult(_0x4c843a,_0xd99c6c){return function(_0x2357f4){if(_0x2357f4){var _0x5a85c8=typeof _0xd99c6c['offset']===_0x3b99('0x1e')&&typeof _0xd99c6c[_0x3b99('0x1f')]==='undefined';var _0x33bc94=_0x2357f4[_0x3b99('0x20')];var _0x3358c2=_0x5a85c8?0x0:_0xd99c6c[_0x3b99('0x21')];var _0xf99ec1=_0x5a85c8?_0x2357f4[_0x3b99('0x20')]:_0xd99c6c[_0x3b99('0x21')]+_0xd99c6c[_0x3b99('0x1f')];var _0x253daf;if(_0xf99ec1>=_0x33bc94){_0xf99ec1=_0x33bc94;_0x253daf=0xc8;}else{_0x253daf=0xce;}_0x4c843a[_0x3b99('0x1b')](_0x253daf);return _0x4c843a[_0x3b99('0x22')](_0x3b99('0x23'),_0x3358c2+'-'+_0xf99ec1+'/'+_0x33bc94)[_0x3b99('0x1d')](_0x2357f4);}return null;};}function patchUpdates(_0x3bfca5){return function(_0x379254){try{jsonpatch[_0x3b99('0x24')](_0x379254,_0x3bfca5,!![]);}catch(_0x3849d7){return BPromise['reject'](_0x3849d7);}return _0x379254['save']();};}function saveUpdates(_0x49a126,_0x174c84){return function(_0x106857){if(_0x106857){return _0x106857[_0x3b99('0x25')](_0x49a126)['then'](function(_0x379263){return _0x379263;});}return null;};}function removeEntity(_0x24361f,_0x5278c9){return function(_0x50e92f){if(_0x50e92f){return _0x50e92f['destroy']()[_0x3b99('0x26')](function(){_0x24361f['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x2c1751,_0x4a20af){return function(_0x483d2b){if(!_0x483d2b){_0x2c1751[_0x3b99('0x1a')](0x194);}return _0x483d2b;};}function handleError(_0x1300f2,_0x9bea3d){_0x9bea3d=_0x9bea3d||0x1f4;return function(_0x395e03){logger[_0x3b99('0x27')](_0x395e03[_0x3b99('0x28')]);if(_0x395e03['name']){delete _0x395e03[_0x3b99('0x29')];}_0x1300f2[_0x3b99('0x1b')](_0x9bea3d)['send'](_0x395e03);};}exports[_0x3b99('0x2a')]=function(_0x31fd38,_0x4b6c6e){var _0xf120b5={},_0x499118={},_0x4a8d51={'count':0x0,'rows':[]};var _0x2cbdd3=_['map'](db[_0x3b99('0x2b')][_0x3b99('0x2c')],function(_0x18fbf1){return{'name':_0x18fbf1['fieldName'],'type':_0x18fbf1[_0x3b99('0x2d')][_0x3b99('0x2e')]};});_0x499118[_0x3b99('0x2f')]=_[_0x3b99('0x30')](_0x2cbdd3,'name');_0x499118[_0x3b99('0x31')]=_[_0x3b99('0x32')](_0x31fd38[_0x3b99('0x31')]);_0x499118[_0x3b99('0x33')]=_['intersection'](_0x499118[_0x3b99('0x2f')],_0x499118[_0x3b99('0x31')]);_0xf120b5[_0x3b99('0x34')]=_[_0x3b99('0x35')](_0x499118[_0x3b99('0x2f')],qs[_0x3b99('0x36')](_0x31fd38[_0x3b99('0x31')]['fields']));_0xf120b5['attributes']=_0xf120b5[_0x3b99('0x34')]['length']?_0xf120b5[_0x3b99('0x34')]:_0x499118['model'];if(!_0x31fd38[_0x3b99('0x31')][_0x3b99('0x37')](_0x3b99('0x38'))){_0xf120b5[_0x3b99('0x1f')]=qs[_0x3b99('0x1f')](_0x31fd38[_0x3b99('0x31')][_0x3b99('0x1f')]);_0xf120b5[_0x3b99('0x21')]=qs[_0x3b99('0x21')](_0x31fd38[_0x3b99('0x31')][_0x3b99('0x21')]);}_0xf120b5[_0x3b99('0x39')]=qs['sort'](_0x31fd38[_0x3b99('0x31')]['sort']);_0xf120b5[_0x3b99('0x3a')]=qs[_0x3b99('0x33')](_[_0x3b99('0x3b')](_0x31fd38['query'],_0x499118[_0x3b99('0x33')]),_0x2cbdd3);if(_0x31fd38[_0x3b99('0x31')][_0x3b99('0x3c')]){_0xf120b5[_0x3b99('0x3a')]=_[_0x3b99('0x3d')](_0xf120b5[_0x3b99('0x3a')],{'$or':_[_0x3b99('0x30')](_0x2cbdd3,function(_0x515a14){if(_0x515a14['type']!==_0x3b99('0x3e')){var _0x7ba9d4={};_0x7ba9d4[_0x515a14['name']]={'$like':'%'+_0x31fd38[_0x3b99('0x31')][_0x3b99('0x3c')]+'%'};return _0x7ba9d4;}})});}_0xf120b5=_[_0x3b99('0x3d')]({},_0xf120b5,_0x31fd38[_0x3b99('0x3f')]);var _0x429407={'where':_0xf120b5[_0x3b99('0x3a')]};return db['SquareReport']['count'](_0x429407)[_0x3b99('0x26')](function(_0x51652f){_0x4a8d51['count']=_0x51652f;if(_0x31fd38[_0x3b99('0x31')][_0x3b99('0x40')]){_0xf120b5['include']=[{'all':!![]}];}return db['SquareReport'][_0x3b99('0x41')](_0xf120b5);})[_0x3b99('0x26')](function(_0x34b8f5){_0x4a8d51[_0x3b99('0x42')]=_0x34b8f5;return _0x4a8d51;})['then'](respondWithFilteredResult(_0x4b6c6e,_0xf120b5))[_0x3b99('0x43')](handleError(_0x4b6c6e,null));};exports[_0x3b99('0x44')]=function(_0x54b9c8,_0x2aca8f){var _0x3df12e={'raw':!![],'where':{'id':_0x54b9c8[_0x3b99('0x45')]['id']}},_0xe7eac7={};_0xe7eac7['model']=_[_0x3b99('0x32')](db[_0x3b99('0x2b')]['rawAttributes']);_0xe7eac7['query']=_[_0x3b99('0x32')](_0x54b9c8[_0x3b99('0x31')]);_0xe7eac7['filters']=_[_0x3b99('0x35')](_0xe7eac7[_0x3b99('0x2f')],_0xe7eac7[_0x3b99('0x31')]);_0x3df12e[_0x3b99('0x34')]=_[_0x3b99('0x35')](_0xe7eac7['model'],qs[_0x3b99('0x36')](_0x54b9c8[_0x3b99('0x31')]['fields']));_0x3df12e[_0x3b99('0x34')]=_0x3df12e[_0x3b99('0x34')][_0x3b99('0x46')]?_0x3df12e['attributes']:_0xe7eac7[_0x3b99('0x2f')];if(_0x54b9c8[_0x3b99('0x31')][_0x3b99('0x40')]){_0x3df12e['include']=[{'all':!![]}];}_0x3df12e=_['merge']({},_0x3df12e,_0x54b9c8[_0x3b99('0x3f')]);return db[_0x3b99('0x2b')][_0x3b99('0x47')](_0x3df12e)[_0x3b99('0x26')](handleEntityNotFound(_0x2aca8f,null))[_0x3b99('0x26')](respondWithResult(_0x2aca8f,null))[_0x3b99('0x43')](handleError(_0x2aca8f,null));};exports['create']=function(_0x2617fd,_0x44a31f){return db[_0x3b99('0x2b')][_0x3b99('0x48')](_0x2617fd[_0x3b99('0x49')],{})[_0x3b99('0x26')](respondWithResult(_0x44a31f,0xc9))[_0x3b99('0x43')](handleError(_0x44a31f,null));};exports[_0x3b99('0x25')]=function(_0x2418ee,_0x11de16){if(_0x2418ee[_0x3b99('0x49')]['id']){delete _0x2418ee[_0x3b99('0x49')]['id'];}return db[_0x3b99('0x2b')][_0x3b99('0x47')]({'where':{'id':_0x2418ee[_0x3b99('0x45')]['id']}})[_0x3b99('0x26')](handleEntityNotFound(_0x11de16,null))[_0x3b99('0x26')](saveUpdates(_0x2418ee['body'],null))[_0x3b99('0x26')](respondWithResult(_0x11de16,null))[_0x3b99('0x43')](handleError(_0x11de16,null));};exports[_0x3b99('0x4a')]=function(_0x4e82f6,_0x54693b){return db[_0x3b99('0x2b')]['find']({'where':{'id':_0x4e82f6['params']['id']}})['then'](handleEntityNotFound(_0x54693b,null))['then'](removeEntity(_0x54693b,null))['catch'](handleError(_0x54693b,null));};exports[_0x3b99('0x4b')]=function(_0x4c5600,_0x2e579a){return db[_0x3b99('0x2b')][_0x3b99('0x4b')]()['then'](respondWithResult(_0x2e579a,null))[_0x3b99('0x43')](handleError(_0x2e579a,null));};