4db870a1acaccfb5dfbbd5be25087e999adbc989
[motion2.git] / server / api / squareReportDetail / squareReportDetail.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 _0x65c8=['type','VIRTUAL','options','SquareDetailsReport','includeAll','include','rows','show','find','create','body','catch','params','describe','eml-format','rimraf','zip-dir','fast-json-patch','mustache','util','path','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','end','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','error','name','send','map','fieldName','key','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filter','merge'];(function(_0x386cd0,_0xd35ee3){var _0x41135f=function(_0x2afef6){while(--_0x2afef6){_0x386cd0['push'](_0x386cd0['shift']());}};_0x41135f(++_0xd35ee3);}(_0x65c8,0xef));var _0x865c=function(_0x4a6d48,_0x5f4687){_0x4a6d48=_0x4a6d48-0x0;var _0x537824=_0x65c8[_0x4a6d48];return _0x537824;};'use strict';var emlformat=require(_0x865c('0x0'));var rimraf=require(_0x865c('0x1'));var zipdir=require(_0x865c('0x2'));var jsonpatch=require(_0x865c('0x3'));var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x865c('0x4'));var util=require(_0x865c('0x5'));var path=require(_0x865c('0x6'));var sox=require(_0x865c('0x7'));var csv=require(_0x865c('0x8'));var ejs=require(_0x865c('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x865c('0xa'));var squel=require(_0x865c('0xb'));var crypto=require('crypto');var jsforce=require(_0x865c('0xc'));var deskjs=require(_0x865c('0xd'));var toCsv=require(_0x865c('0x8'));var querystring=require(_0x865c('0xe'));var Papa=require(_0x865c('0xf'));var Redis=require(_0x865c('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x865c('0x11'));var as=require(_0x865c('0x12'));var hardwareService=require(_0x865c('0x13'));var logger=require(_0x865c('0x14'))('api');var utils=require(_0x865c('0x15'));var config=require(_0x865c('0x16'));var licenseUtil=require(_0x865c('0x17'));var db=require(_0x865c('0x18'))['db'];function respondWithStatusCode(_0x3dc709,_0x175eb7){_0x175eb7=_0x175eb7||0xcc;return function(_0x5a1645){if(_0x5a1645){return _0x3dc709['sendStatus'](_0x175eb7);}return _0x3dc709['status'](_0x175eb7)[_0x865c('0x19')]();};}function respondWithResult(_0x5b81af,_0x5599a5){_0x5599a5=_0x5599a5||0xc8;return function(_0x187946){if(_0x187946){return _0x5b81af[_0x865c('0x1a')](_0x5599a5)[_0x865c('0x1b')](_0x187946);}};}function respondWithFilteredResult(_0x122182,_0x1d52d1){return function(_0x3cfd90){if(_0x3cfd90){var _0x589c98=typeof _0x1d52d1[_0x865c('0x1c')]===_0x865c('0x1d')&&typeof _0x1d52d1[_0x865c('0x1e')]===_0x865c('0x1d');var _0xcf1e50=_0x3cfd90['count'];var _0xa88a77=_0x589c98?0x0:_0x1d52d1['offset'];var _0x46bbf2=_0x589c98?_0x3cfd90[_0x865c('0x1f')]:_0x1d52d1[_0x865c('0x1c')]+_0x1d52d1[_0x865c('0x1e')];var _0x449f5f;if(_0x46bbf2>=_0xcf1e50){_0x46bbf2=_0xcf1e50;_0x449f5f=0xc8;}else{_0x449f5f=0xce;}_0x122182['status'](_0x449f5f);return _0x122182[_0x865c('0x20')](_0x865c('0x21'),_0xa88a77+'-'+_0x46bbf2+'/'+_0xcf1e50)[_0x865c('0x1b')](_0x3cfd90);}return null;};}function patchUpdates(_0x232094){return function(_0x2cd706){try{jsonpatch[_0x865c('0x22')](_0x2cd706,_0x232094,!![]);}catch(_0x1bd569){return BPromise[_0x865c('0x23')](_0x1bd569);}return _0x2cd706[_0x865c('0x24')]();};}function saveUpdates(_0x7eea05,_0x3bed8f){return function(_0x134ec0){if(_0x134ec0){return _0x134ec0[_0x865c('0x25')](_0x7eea05)[_0x865c('0x26')](function(_0x247f3b){return _0x247f3b;});}return null;};}function removeEntity(_0x38520d,_0x42d171){return function(_0x1711d8){if(_0x1711d8){return _0x1711d8[_0x865c('0x27')]()['then'](function(){_0x38520d[_0x865c('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1e6e64,_0x47e809){return function(_0xe1809b){if(!_0xe1809b){_0x1e6e64['sendStatus'](0x194);}return _0xe1809b;};}function handleError(_0x4cea25,_0x5727b0){_0x5727b0=_0x5727b0||0x1f4;return function(_0xa573ca){logger[_0x865c('0x28')](_0xa573ca['stack']);if(_0xa573ca[_0x865c('0x29')]){delete _0xa573ca[_0x865c('0x29')];}_0x4cea25[_0x865c('0x1a')](_0x5727b0)[_0x865c('0x2a')](_0xa573ca);};}exports['index']=function(_0x5af577,_0x55c763){var _0x5baa36={},_0x19e61a={},_0x274029={'count':0x0,'rows':[]};var _0x5add24=_[_0x865c('0x2b')](db['SquareDetailsReport']['rawAttributes'],function(_0x2ef49b){return{'name':_0x2ef49b[_0x865c('0x2c')],'type':_0x2ef49b['type'][_0x865c('0x2d')]};});_0x19e61a[_0x865c('0x2e')]=_[_0x865c('0x2b')](_0x5add24,_0x865c('0x29'));_0x19e61a[_0x865c('0x2f')]=_[_0x865c('0x30')](_0x5af577[_0x865c('0x2f')]);_0x19e61a[_0x865c('0x31')]=_[_0x865c('0x32')](_0x19e61a[_0x865c('0x2e')],_0x19e61a['query']);_0x5baa36['attributes']=_[_0x865c('0x32')](_0x19e61a[_0x865c('0x2e')],qs[_0x865c('0x33')](_0x5af577[_0x865c('0x2f')][_0x865c('0x33')]));_0x5baa36[_0x865c('0x34')]=_0x5baa36[_0x865c('0x34')][_0x865c('0x35')]?_0x5baa36[_0x865c('0x34')]:_0x19e61a[_0x865c('0x2e')];if(!_0x5af577[_0x865c('0x2f')][_0x865c('0x36')](_0x865c('0x37'))){_0x5baa36[_0x865c('0x1e')]=qs[_0x865c('0x1e')](_0x5af577[_0x865c('0x2f')][_0x865c('0x1e')]);_0x5baa36[_0x865c('0x1c')]=qs[_0x865c('0x1c')](_0x5af577[_0x865c('0x2f')][_0x865c('0x1c')]);}_0x5baa36[_0x865c('0x38')]=qs[_0x865c('0x39')](_0x5af577[_0x865c('0x2f')][_0x865c('0x39')]);_0x5baa36[_0x865c('0x3a')]=qs[_0x865c('0x31')](_['pick'](_0x5af577[_0x865c('0x2f')],_0x19e61a[_0x865c('0x31')]),_0x5add24);if(_0x5af577[_0x865c('0x2f')][_0x865c('0x3b')]){_0x5baa36[_0x865c('0x3a')]=_[_0x865c('0x3c')](_0x5baa36['where'],{'$or':_[_0x865c('0x2b')](_0x5add24,function(_0x5b26b9){if(_0x5b26b9[_0x865c('0x3d')]!==_0x865c('0x3e')){var _0xedfcd={};_0xedfcd[_0x5b26b9[_0x865c('0x29')]]={'$like':'%'+_0x5af577['query']['filter']+'%'};return _0xedfcd;}})});}_0x5baa36=_[_0x865c('0x3c')]({},_0x5baa36,_0x5af577[_0x865c('0x3f')]);var _0x258300={'where':_0x5baa36[_0x865c('0x3a')]};return db[_0x865c('0x40')][_0x865c('0x1f')](_0x258300)[_0x865c('0x26')](function(_0x1d1588){_0x274029['count']=_0x1d1588;if(_0x5af577['query'][_0x865c('0x41')]){_0x5baa36[_0x865c('0x42')]=[{'all':!![]}];}return db[_0x865c('0x40')]['findAll'](_0x5baa36);})[_0x865c('0x26')](function(_0x7bc700){_0x274029[_0x865c('0x43')]=_0x7bc700;return _0x274029;})[_0x865c('0x26')](respondWithFilteredResult(_0x55c763,_0x5baa36))['catch'](handleError(_0x55c763,null));};exports[_0x865c('0x44')]=function(_0x2f69aa,_0x2c5b69){var _0x4c85fc={'raw':!![],'where':{'id':_0x2f69aa['params']['id']}},_0x53750b={};_0x53750b[_0x865c('0x2e')]=_[_0x865c('0x30')](db[_0x865c('0x40')]['rawAttributes']);_0x53750b['query']=_[_0x865c('0x30')](_0x2f69aa[_0x865c('0x2f')]);_0x53750b['filters']=_[_0x865c('0x32')](_0x53750b[_0x865c('0x2e')],_0x53750b['query']);_0x4c85fc[_0x865c('0x34')]=_[_0x865c('0x32')](_0x53750b['model'],qs[_0x865c('0x33')](_0x2f69aa['query'][_0x865c('0x33')]));_0x4c85fc[_0x865c('0x34')]=_0x4c85fc[_0x865c('0x34')]['length']?_0x4c85fc[_0x865c('0x34')]:_0x53750b['model'];if(_0x2f69aa[_0x865c('0x2f')]['includeAll']){_0x4c85fc[_0x865c('0x42')]=[{'all':!![]}];}_0x4c85fc=_[_0x865c('0x3c')]({},_0x4c85fc,_0x2f69aa[_0x865c('0x3f')]);return db['SquareDetailsReport'][_0x865c('0x45')](_0x4c85fc)[_0x865c('0x26')](handleEntityNotFound(_0x2c5b69,null))[_0x865c('0x26')](respondWithResult(_0x2c5b69,null))['catch'](handleError(_0x2c5b69,null));};exports[_0x865c('0x46')]=function(_0x392e77,_0x59a321){return db[_0x865c('0x40')]['create'](_0x392e77[_0x865c('0x47')],{})[_0x865c('0x26')](respondWithResult(_0x59a321,0xc9))[_0x865c('0x48')](handleError(_0x59a321,null));};exports[_0x865c('0x25')]=function(_0x301799,_0x3a34da){if(_0x301799[_0x865c('0x47')]['id']){delete _0x301799[_0x865c('0x47')]['id'];}return db[_0x865c('0x40')]['find']({'where':{'id':_0x301799[_0x865c('0x49')]['id']}})['then'](handleEntityNotFound(_0x3a34da,null))[_0x865c('0x26')](saveUpdates(_0x301799['body'],null))[_0x865c('0x26')](respondWithResult(_0x3a34da,null))['catch'](handleError(_0x3a34da,null));};exports[_0x865c('0x27')]=function(_0x3b04a2,_0x564b8f){return db[_0x865c('0x40')][_0x865c('0x45')]({'where':{'id':_0x3b04a2[_0x865c('0x49')]['id']}})['then'](handleEntityNotFound(_0x564b8f,null))[_0x865c('0x26')](removeEntity(_0x564b8f,null))[_0x865c('0x48')](handleError(_0x564b8f,null));};exports[_0x865c('0x4a')]=function(_0x1a9ca8,_0x574b49){return db['SquareDetailsReport']['describe']()[_0x865c('0x26')](respondWithResult(_0x574b49,null))[_0x865c('0x48')](handleError(_0x574b49,null));};