2437e017c8251de3fc0b51d42bd46f54245d7cd3
[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 _0x6bed=['json','offset','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','end','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','query','keys','filters','model','attributes','intersection','fields','hasOwnProperty','sort','where','pick','filter','merge','options','SquareDetailsReport','includeAll','include','findAll','rows','catch','show','params','length','find','create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','sox','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status'];(function(_0x149cf0,_0x3746f2){var _0x2ee2c8=function(_0x4b6c23){while(--_0x4b6c23){_0x149cf0['push'](_0x149cf0['shift']());}};_0x2ee2c8(++_0x3746f2);}(_0x6bed,0x7e));var _0xd6be=function(_0x4cface,_0x20bc8c){_0x4cface=_0x4cface-0x0;var _0x4fb846=_0x6bed[_0x4cface];return _0x4fb846;};'use strict';var emlformat=require(_0xd6be('0x0'));var rimraf=require(_0xd6be('0x1'));var zipdir=require(_0xd6be('0x2'));var jsonpatch=require(_0xd6be('0x3'));var rp=require(_0xd6be('0x4'));var moment=require('moment');var BPromise=require(_0xd6be('0x5'));var Mustache=require(_0xd6be('0x6'));var util=require(_0xd6be('0x7'));var path=require('path');var sox=require(_0xd6be('0x8'));var csv=require('to-csv');var ejs=require(_0xd6be('0x9'));var fs=require('fs');var fs_extra=require(_0xd6be('0xa'));var _=require(_0xd6be('0xb'));var squel=require(_0xd6be('0xc'));var crypto=require(_0xd6be('0xd'));var jsforce=require(_0xd6be('0xe'));var deskjs=require(_0xd6be('0xf'));var toCsv=require(_0xd6be('0x10'));var querystring=require('querystring');var Papa=require(_0xd6be('0x11'));var Redis=require(_0xd6be('0x12'));var authService=require(_0xd6be('0x13'));var qs=require(_0xd6be('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xd6be('0x15'));var logger=require('../../config/logger')(_0xd6be('0x16'));var utils=require(_0xd6be('0x17'));var config=require(_0xd6be('0x18'));var licenseUtil=require(_0xd6be('0x19'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x32c432,_0x5e9778){_0x5e9778=_0x5e9778||0xcc;return function(_0x43b9f6){if(_0x43b9f6){return _0x32c432[_0xd6be('0x1a')](_0x5e9778);}return _0x32c432[_0xd6be('0x1b')](_0x5e9778)['end']();};}function respondWithResult(_0x394a4d,_0x452d4b){_0x452d4b=_0x452d4b||0xc8;return function(_0x3dcd58){if(_0x3dcd58){return _0x394a4d[_0xd6be('0x1b')](_0x452d4b)[_0xd6be('0x1c')](_0x3dcd58);}};}function respondWithFilteredResult(_0x109ae8,_0x4dbbf2){return function(_0x3432b7){if(_0x3432b7){var _0x3e6c28=typeof _0x4dbbf2[_0xd6be('0x1d')]==='undefined'&&typeof _0x4dbbf2[_0xd6be('0x1e')]==='undefined';var _0x261f45=_0x3432b7['count'];var _0x16c2e8=_0x3e6c28?0x0:_0x4dbbf2[_0xd6be('0x1d')];var _0x4c6245=_0x3e6c28?_0x3432b7[_0xd6be('0x1f')]:_0x4dbbf2[_0xd6be('0x1d')]+_0x4dbbf2[_0xd6be('0x1e')];var _0x49501f;if(_0x4c6245>=_0x261f45){_0x4c6245=_0x261f45;_0x49501f=0xc8;}else{_0x49501f=0xce;}_0x109ae8[_0xd6be('0x1b')](_0x49501f);return _0x109ae8[_0xd6be('0x20')](_0xd6be('0x21'),_0x16c2e8+'-'+_0x4c6245+'/'+_0x261f45)[_0xd6be('0x1c')](_0x3432b7);}return null;};}function patchUpdates(_0x33fbe8){return function(_0x314a0f){try{jsonpatch[_0xd6be('0x22')](_0x314a0f,_0x33fbe8,!![]);}catch(_0x31c332){return BPromise[_0xd6be('0x23')](_0x31c332);}return _0x314a0f[_0xd6be('0x24')]();};}function saveUpdates(_0x1b308c,_0x37cb51){return function(_0xbfbd1e){if(_0xbfbd1e){return _0xbfbd1e[_0xd6be('0x25')](_0x1b308c)[_0xd6be('0x26')](function(_0x4b4852){return _0x4b4852;});}return null;};}function removeEntity(_0x3cb9bb,_0x1866d6){return function(_0x1cc7d1){if(_0x1cc7d1){return _0x1cc7d1[_0xd6be('0x27')]()[_0xd6be('0x26')](function(){_0x3cb9bb[_0xd6be('0x1b')](0xcc)[_0xd6be('0x28')]();});}};}function handleEntityNotFound(_0x1743b1,_0x377f4b){return function(_0x40e4d2){if(!_0x40e4d2){_0x1743b1[_0xd6be('0x1a')](0x194);}return _0x40e4d2;};}function handleError(_0x40d5ee,_0x5114b5){_0x5114b5=_0x5114b5||0x1f4;return function(_0x49b19b){logger[_0xd6be('0x29')](_0x49b19b[_0xd6be('0x2a')]);if(_0x49b19b['name']){delete _0x49b19b[_0xd6be('0x2b')];}_0x40d5ee[_0xd6be('0x1b')](_0x5114b5)[_0xd6be('0x2c')](_0x49b19b);};}exports[_0xd6be('0x2d')]=function(_0x412c3f,_0x4453ec){var _0x4dc47d={},_0x1c1810={},_0x274809={'count':0x0,'rows':[]};var _0x5e67f6=_[_0xd6be('0x2e')](db['SquareDetailsReport'][_0xd6be('0x2f')],function(_0x32794f){return{'name':_0x32794f[_0xd6be('0x30')],'type':_0x32794f[_0xd6be('0x31')][_0xd6be('0x32')]};});_0x1c1810['model']=_[_0xd6be('0x2e')](_0x5e67f6,_0xd6be('0x2b'));_0x1c1810[_0xd6be('0x33')]=_[_0xd6be('0x34')](_0x412c3f[_0xd6be('0x33')]);_0x1c1810[_0xd6be('0x35')]=_['intersection'](_0x1c1810[_0xd6be('0x36')],_0x1c1810[_0xd6be('0x33')]);_0x4dc47d[_0xd6be('0x37')]=_[_0xd6be('0x38')](_0x1c1810[_0xd6be('0x36')],qs[_0xd6be('0x39')](_0x412c3f[_0xd6be('0x33')]['fields']));_0x4dc47d['attributes']=_0x4dc47d[_0xd6be('0x37')]['length']?_0x4dc47d[_0xd6be('0x37')]:_0x1c1810[_0xd6be('0x36')];if(!_0x412c3f[_0xd6be('0x33')][_0xd6be('0x3a')]('nolimit')){_0x4dc47d[_0xd6be('0x1e')]=qs[_0xd6be('0x1e')](_0x412c3f[_0xd6be('0x33')][_0xd6be('0x1e')]);_0x4dc47d[_0xd6be('0x1d')]=qs[_0xd6be('0x1d')](_0x412c3f['query']['offset']);}_0x4dc47d['order']=qs['sort'](_0x412c3f[_0xd6be('0x33')][_0xd6be('0x3b')]);_0x4dc47d[_0xd6be('0x3c')]=qs[_0xd6be('0x35')](_[_0xd6be('0x3d')](_0x412c3f[_0xd6be('0x33')],_0x1c1810[_0xd6be('0x35')]),_0x5e67f6);if(_0x412c3f['query'][_0xd6be('0x3e')]){_0x4dc47d[_0xd6be('0x3c')]=_[_0xd6be('0x3f')](_0x4dc47d[_0xd6be('0x3c')],{'$or':_[_0xd6be('0x2e')](_0x5e67f6,function(_0x48bd59){if(_0x48bd59[_0xd6be('0x31')]!=='VIRTUAL'){var _0x18ee4e={};_0x18ee4e[_0x48bd59[_0xd6be('0x2b')]]={'$like':'%'+_0x412c3f[_0xd6be('0x33')][_0xd6be('0x3e')]+'%'};return _0x18ee4e;}})});}_0x4dc47d=_[_0xd6be('0x3f')]({},_0x4dc47d,_0x412c3f[_0xd6be('0x40')]);var _0x4cde11={'where':_0x4dc47d[_0xd6be('0x3c')]};return db[_0xd6be('0x41')]['count'](_0x4cde11)['then'](function(_0x3a7001){_0x274809[_0xd6be('0x1f')]=_0x3a7001;if(_0x412c3f[_0xd6be('0x33')][_0xd6be('0x42')]){_0x4dc47d[_0xd6be('0x43')]=[{'all':!![]}];}return db['SquareDetailsReport'][_0xd6be('0x44')](_0x4dc47d);})[_0xd6be('0x26')](function(_0x264b88){_0x274809[_0xd6be('0x45')]=_0x264b88;return _0x274809;})[_0xd6be('0x26')](respondWithFilteredResult(_0x4453ec,_0x4dc47d))[_0xd6be('0x46')](handleError(_0x4453ec,null));};exports[_0xd6be('0x47')]=function(_0x2d5b10,_0x2967bb){var _0x14f773={'raw':!![],'where':{'id':_0x2d5b10[_0xd6be('0x48')]['id']}},_0x51bb7f={};_0x51bb7f[_0xd6be('0x36')]=_[_0xd6be('0x34')](db[_0xd6be('0x41')][_0xd6be('0x2f')]);_0x51bb7f[_0xd6be('0x33')]=_['keys'](_0x2d5b10[_0xd6be('0x33')]);_0x51bb7f[_0xd6be('0x35')]=_[_0xd6be('0x38')](_0x51bb7f[_0xd6be('0x36')],_0x51bb7f[_0xd6be('0x33')]);_0x14f773[_0xd6be('0x37')]=_[_0xd6be('0x38')](_0x51bb7f[_0xd6be('0x36')],qs['fields'](_0x2d5b10[_0xd6be('0x33')][_0xd6be('0x39')]));_0x14f773[_0xd6be('0x37')]=_0x14f773['attributes'][_0xd6be('0x49')]?_0x14f773[_0xd6be('0x37')]:_0x51bb7f[_0xd6be('0x36')];if(_0x2d5b10[_0xd6be('0x33')]['includeAll']){_0x14f773[_0xd6be('0x43')]=[{'all':!![]}];}_0x14f773=_['merge']({},_0x14f773,_0x2d5b10[_0xd6be('0x40')]);return db[_0xd6be('0x41')][_0xd6be('0x4a')](_0x14f773)[_0xd6be('0x26')](handleEntityNotFound(_0x2967bb,null))[_0xd6be('0x26')](respondWithResult(_0x2967bb,null))[_0xd6be('0x46')](handleError(_0x2967bb,null));};exports[_0xd6be('0x4b')]=function(_0x11185f,_0x43f394){return db['SquareDetailsReport'][_0xd6be('0x4b')](_0x11185f[_0xd6be('0x4c')],{})['then'](respondWithResult(_0x43f394,0xc9))[_0xd6be('0x46')](handleError(_0x43f394,null));};exports['update']=function(_0x6839c8,_0x1c1e56){if(_0x6839c8[_0xd6be('0x4c')]['id']){delete _0x6839c8[_0xd6be('0x4c')]['id'];}return db['SquareDetailsReport'][_0xd6be('0x4a')]({'where':{'id':_0x6839c8['params']['id']}})['then'](handleEntityNotFound(_0x1c1e56,null))[_0xd6be('0x26')](saveUpdates(_0x6839c8[_0xd6be('0x4c')],null))[_0xd6be('0x26')](respondWithResult(_0x1c1e56,null))['catch'](handleError(_0x1c1e56,null));};exports['destroy']=function(_0x95fc43,_0x9d6d9a){return db[_0xd6be('0x41')][_0xd6be('0x4a')]({'where':{'id':_0x95fc43['params']['id']}})[_0xd6be('0x26')](handleEntityNotFound(_0x9d6d9a,null))['then'](removeEntity(_0x9d6d9a,null))[_0xd6be('0x46')](handleError(_0x9d6d9a,null));};exports['describe']=function(_0xa7fadd,_0x1e7a26){return db[_0xd6be('0x41')]['describe']()[_0xd6be('0x26')](respondWithResult(_0x1e7a26,null))['catch'](handleError(_0x1e7a26,null));};