Built motion from commit eddce310.|2.6.12
[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 _0x3df3=['api','../../config/utils','../../config/environment','sendStatus','status','json','undefined','limit','count','set','apply','save','update','then','destroy','end','stack','name','index','map','SquareReport','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','offset','order','sort','pick','filter','where','merge','type','includeAll','include','show','params','rawAttributes','find','catch','body','describe','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','fs-extra','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/logger'];(function(_0x321bb2,_0x202794){var _0x9c12ed=function(_0x263dd3){while(--_0x263dd3){_0x321bb2['push'](_0x321bb2['shift']());}};_0x9c12ed(++_0x202794);}(_0x3df3,0xbe));var _0x33df=function(_0xe30e17,_0xce02be){_0xe30e17=_0xe30e17-0x0;var _0x2342c9=_0x3df3[_0xe30e17];return _0x2342c9;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x33df('0x0'));var zipdir=require(_0x33df('0x1'));var jsonpatch=require(_0x33df('0x2'));var rp=require(_0x33df('0x3'));var moment=require(_0x33df('0x4'));var BPromise=require(_0x33df('0x5'));var Mustache=require(_0x33df('0x6'));var util=require(_0x33df('0x7'));var path=require(_0x33df('0x8'));var sox=require('sox');var csv=require(_0x33df('0x9'));var ejs=require(_0x33df('0xa'));var fs=require('fs');var fs_extra=require(_0x33df('0xb'));var _=require('lodash');var squel=require('squel');var crypto=require(_0x33df('0xc'));var jsforce=require(_0x33df('0xd'));var deskjs=require(_0x33df('0xe'));var toCsv=require('to-csv');var querystring=require(_0x33df('0xf'));var Papa=require(_0x33df('0x10'));var Redis=require('ioredis');var authService=require(_0x33df('0x11'));var qs=require(_0x33df('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x33df('0x13'))(_0x33df('0x14'));var utils=require(_0x33df('0x15'));var config=require(_0x33df('0x16'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x5ddc71,_0xaece08){_0xaece08=_0xaece08||0xcc;return function(_0x22e814){if(_0x22e814){return _0x5ddc71[_0x33df('0x17')](_0xaece08);}return _0x5ddc71[_0x33df('0x18')](_0xaece08)['end']();};}function respondWithResult(_0x1ccf52,_0x49a0b5){_0x49a0b5=_0x49a0b5||0xc8;return function(_0x142950){if(_0x142950){return _0x1ccf52[_0x33df('0x18')](_0x49a0b5)[_0x33df('0x19')](_0x142950);}};}function respondWithFilteredResult(_0x57019e,_0x59e314){return function(_0x2ef2f3){if(_0x2ef2f3){var _0x31d5cf=typeof _0x59e314['offset']===_0x33df('0x1a')&&typeof _0x59e314[_0x33df('0x1b')]===_0x33df('0x1a');var _0xabea87=_0x2ef2f3[_0x33df('0x1c')];var _0x13f9d3=_0x31d5cf?0x0:_0x59e314['offset'];var _0x51c7f0=_0x31d5cf?_0x2ef2f3[_0x33df('0x1c')]:_0x59e314['offset']+_0x59e314['limit'];var _0x2ec657;if(_0x51c7f0>=_0xabea87){_0x51c7f0=_0xabea87;_0x2ec657=0xc8;}else{_0x2ec657=0xce;}_0x57019e[_0x33df('0x18')](_0x2ec657);return _0x57019e[_0x33df('0x1d')]('Content-Range',_0x13f9d3+'-'+_0x51c7f0+'/'+_0xabea87)['json'](_0x2ef2f3);}return null;};}function patchUpdates(_0x52a32e){return function(_0x505369){try{jsonpatch[_0x33df('0x1e')](_0x505369,_0x52a32e,!![]);}catch(_0x2f7e6e){return BPromise['reject'](_0x2f7e6e);}return _0x505369[_0x33df('0x1f')]();};}function saveUpdates(_0x480860,_0x57e186){return function(_0x44dab4){if(_0x44dab4){return _0x44dab4[_0x33df('0x20')](_0x480860)[_0x33df('0x21')](function(_0x13ae94){return _0x13ae94;});}return null;};}function removeEntity(_0x1d960f,_0x55a681){return function(_0x4f9711){if(_0x4f9711){return _0x4f9711[_0x33df('0x22')]()[_0x33df('0x21')](function(){_0x1d960f[_0x33df('0x18')](0xcc)[_0x33df('0x23')]();});}};}function handleEntityNotFound(_0x285603,_0x5df498){return function(_0x4f393d){if(!_0x4f393d){_0x285603['sendStatus'](0x194);}return _0x4f393d;};}function handleError(_0x1e33c7,_0xf57718){_0xf57718=_0xf57718||0x1f4;return function(_0x50ed77){logger['error'](_0x50ed77[_0x33df('0x24')]);if(_0x50ed77['name']){delete _0x50ed77[_0x33df('0x25')];}_0x1e33c7[_0x33df('0x18')](_0xf57718)['send'](_0x50ed77);};}exports[_0x33df('0x26')]=function(_0x5c2896,_0x5f33e4){var _0x16c48e={},_0x4f297b={},_0xea8fc={'count':0x0,'rows':[]};var _0x5c1972=_[_0x33df('0x27')](db[_0x33df('0x28')]['rawAttributes'],function(_0x3967ae){return{'name':_0x3967ae[_0x33df('0x29')],'type':_0x3967ae['type'][_0x33df('0x2a')]};});_0x4f297b[_0x33df('0x2b')]=_[_0x33df('0x27')](_0x5c1972,_0x33df('0x25'));_0x4f297b[_0x33df('0x2c')]=_[_0x33df('0x2d')](_0x5c2896['query']);_0x4f297b[_0x33df('0x2e')]=_[_0x33df('0x2f')](_0x4f297b[_0x33df('0x2b')],_0x4f297b[_0x33df('0x2c')]);_0x16c48e[_0x33df('0x30')]=_['intersection'](_0x4f297b[_0x33df('0x2b')],qs['fields'](_0x5c2896[_0x33df('0x2c')][_0x33df('0x31')]));_0x16c48e['attributes']=_0x16c48e[_0x33df('0x30')][_0x33df('0x32')]?_0x16c48e[_0x33df('0x30')]:_0x4f297b[_0x33df('0x2b')];if(!_0x5c2896['query'][_0x33df('0x33')](_0x33df('0x34'))){_0x16c48e['limit']=qs[_0x33df('0x1b')](_0x5c2896[_0x33df('0x2c')][_0x33df('0x1b')]);_0x16c48e['offset']=qs['offset'](_0x5c2896[_0x33df('0x2c')][_0x33df('0x35')]);}_0x16c48e[_0x33df('0x36')]=qs[_0x33df('0x37')](_0x5c2896['query'][_0x33df('0x37')]);_0x16c48e['where']=qs[_0x33df('0x2e')](_[_0x33df('0x38')](_0x5c2896[_0x33df('0x2c')],_0x4f297b[_0x33df('0x2e')]),_0x5c1972);if(_0x5c2896['query'][_0x33df('0x39')]){_0x16c48e[_0x33df('0x3a')]=_[_0x33df('0x3b')](_0x16c48e[_0x33df('0x3a')],{'$or':_[_0x33df('0x27')](_0x5c1972,function(_0x194b17){if(_0x194b17[_0x33df('0x3c')]!=='VIRTUAL'){var _0x2281a5={};_0x2281a5[_0x194b17[_0x33df('0x25')]]={'$like':'%'+_0x5c2896['query']['filter']+'%'};return _0x2281a5;}})});}_0x16c48e=_[_0x33df('0x3b')]({},_0x16c48e,_0x5c2896['options']);var _0x2fc2b5={'where':_0x16c48e['where']};return db[_0x33df('0x28')][_0x33df('0x1c')](_0x2fc2b5)[_0x33df('0x21')](function(_0x5a62a9){_0xea8fc[_0x33df('0x1c')]=_0x5a62a9;if(_0x5c2896[_0x33df('0x2c')][_0x33df('0x3d')]){_0x16c48e[_0x33df('0x3e')]=[{'all':!![]}];}return db[_0x33df('0x28')]['findAll'](_0x16c48e);})[_0x33df('0x21')](function(_0x1c1c04){_0xea8fc['rows']=_0x1c1c04;return _0xea8fc;})['then'](respondWithFilteredResult(_0x5f33e4,_0x16c48e))['catch'](handleError(_0x5f33e4,null));};exports[_0x33df('0x3f')]=function(_0xfd1dfa,_0x355be9){var _0x86fd0c={'raw':!![],'where':{'id':_0xfd1dfa[_0x33df('0x40')]['id']}},_0x334880={};_0x334880[_0x33df('0x2b')]=_[_0x33df('0x2d')](db['SquareReport'][_0x33df('0x41')]);_0x334880[_0x33df('0x2c')]=_[_0x33df('0x2d')](_0xfd1dfa[_0x33df('0x2c')]);_0x334880['filters']=_[_0x33df('0x2f')](_0x334880[_0x33df('0x2b')],_0x334880['query']);_0x86fd0c[_0x33df('0x30')]=_['intersection'](_0x334880['model'],qs[_0x33df('0x31')](_0xfd1dfa[_0x33df('0x2c')]['fields']));_0x86fd0c[_0x33df('0x30')]=_0x86fd0c[_0x33df('0x30')][_0x33df('0x32')]?_0x86fd0c[_0x33df('0x30')]:_0x334880['model'];if(_0xfd1dfa['query']['includeAll']){_0x86fd0c['include']=[{'all':!![]}];}_0x86fd0c=_[_0x33df('0x3b')]({},_0x86fd0c,_0xfd1dfa['options']);return db[_0x33df('0x28')][_0x33df('0x42')](_0x86fd0c)['then'](handleEntityNotFound(_0x355be9,null))[_0x33df('0x21')](respondWithResult(_0x355be9,null))[_0x33df('0x43')](handleError(_0x355be9,null));};exports['create']=function(_0x3b7952,_0x2374e4){return db['SquareReport']['create'](_0x3b7952[_0x33df('0x44')],{})[_0x33df('0x21')](respondWithResult(_0x2374e4,0xc9))[_0x33df('0x43')](handleError(_0x2374e4,null));};exports[_0x33df('0x20')]=function(_0x4ba16f,_0x49b15b){if(_0x4ba16f['body']['id']){delete _0x4ba16f[_0x33df('0x44')]['id'];}return db[_0x33df('0x28')][_0x33df('0x42')]({'where':{'id':_0x4ba16f[_0x33df('0x40')]['id']}})[_0x33df('0x21')](handleEntityNotFound(_0x49b15b,null))[_0x33df('0x21')](saveUpdates(_0x4ba16f[_0x33df('0x44')],null))[_0x33df('0x21')](respondWithResult(_0x49b15b,null))[_0x33df('0x43')](handleError(_0x49b15b,null));};exports[_0x33df('0x22')]=function(_0x4bbdf0,_0x201d08){return db[_0x33df('0x28')]['find']({'where':{'id':_0x4bbdf0['params']['id']}})[_0x33df('0x21')](handleEntityNotFound(_0x201d08,null))[_0x33df('0x21')](removeEntity(_0x201d08,null))[_0x33df('0x43')](handleError(_0x201d08,null));};exports[_0x33df('0x45')]=function(_0x453751,_0x190364){return db[_0x33df('0x28')]['describe']()[_0x33df('0x21')](respondWithResult(_0x190364,null))['catch'](handleError(_0x190364,null));};