Built motion from commit 1fa89557.|2.6.10
[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 _0x9746=['include','rows','catch','show','params','options','find','create','body','describe','eml-format','rimraf','request-promise','moment','bluebird','mustache','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','status','end','offset','undefined','limit','count','set','Content-Range','apply','save','update','then','destroy','stack','name','send','index','map','rawAttributes','fieldName','query','keys','filters','intersection','model','fields','attributes','length','nolimit','order','sort','pick','where','VIRTUAL','filter','merge','SquareReport','includeAll'];(function(_0x3e4618,_0x2949c1){var _0xe3dc39=function(_0x1d0c6a){while(--_0x1d0c6a){_0x3e4618['push'](_0x3e4618['shift']());}};_0xe3dc39(++_0x2949c1);}(_0x9746,0x9c));var _0x6974=function(_0x20c9b2,_0x55d7b1){_0x20c9b2=_0x20c9b2-0x0;var _0x2c6030=_0x9746[_0x20c9b2];return _0x2c6030;};'use strict';var emlformat=require(_0x6974('0x0'));var rimraf=require(_0x6974('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x6974('0x2'));var moment=require(_0x6974('0x3'));var BPromise=require(_0x6974('0x4'));var Mustache=require(_0x6974('0x5'));var util=require('util');var path=require(_0x6974('0x6'));var sox=require(_0x6974('0x7'));var csv=require(_0x6974('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x6974('0x9'));var _=require(_0x6974('0xa'));var squel=require(_0x6974('0xb'));var crypto=require(_0x6974('0xc'));var jsforce=require(_0x6974('0xd'));var deskjs=require(_0x6974('0xe'));var toCsv=require(_0x6974('0x8'));var querystring=require(_0x6974('0xf'));var Papa=require('papaparse');var Redis=require(_0x6974('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x6974('0x11'));var as=require(_0x6974('0x12'));var hardwareService=require(_0x6974('0x13'));var logger=require(_0x6974('0x14'))(_0x6974('0x15'));var utils=require(_0x6974('0x16'));var config=require(_0x6974('0x17'));var licenseUtil=require(_0x6974('0x18'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x5ee0bf,_0x5d3338){_0x5d3338=_0x5d3338||0xcc;return function(_0x4c3e2d){if(_0x4c3e2d){return _0x5ee0bf['sendStatus'](_0x5d3338);}return _0x5ee0bf[_0x6974('0x19')](_0x5d3338)[_0x6974('0x1a')]();};}function respondWithResult(_0xe57ba,_0x293310){_0x293310=_0x293310||0xc8;return function(_0x12ffca){if(_0x12ffca){return _0xe57ba[_0x6974('0x19')](_0x293310)['json'](_0x12ffca);}};}function respondWithFilteredResult(_0x28adbe,_0x328065){return function(_0x597902){if(_0x597902){var _0x165052=typeof _0x328065[_0x6974('0x1b')]===_0x6974('0x1c')&&typeof _0x328065[_0x6974('0x1d')]===_0x6974('0x1c');var _0x2230c9=_0x597902[_0x6974('0x1e')];var _0x583987=_0x165052?0x0:_0x328065['offset'];var _0x2672d8=_0x165052?_0x597902['count']:_0x328065[_0x6974('0x1b')]+_0x328065[_0x6974('0x1d')];var _0x479dd8;if(_0x2672d8>=_0x2230c9){_0x2672d8=_0x2230c9;_0x479dd8=0xc8;}else{_0x479dd8=0xce;}_0x28adbe[_0x6974('0x19')](_0x479dd8);return _0x28adbe[_0x6974('0x1f')](_0x6974('0x20'),_0x583987+'-'+_0x2672d8+'/'+_0x2230c9)['json'](_0x597902);}return null;};}function patchUpdates(_0x3b3e88){return function(_0x102b30){try{jsonpatch[_0x6974('0x21')](_0x102b30,_0x3b3e88,!![]);}catch(_0x35ddcf){return BPromise['reject'](_0x35ddcf);}return _0x102b30[_0x6974('0x22')]();};}function saveUpdates(_0x1f3448,_0x2f4f2b){return function(_0x3d7007){if(_0x3d7007){return _0x3d7007[_0x6974('0x23')](_0x1f3448)[_0x6974('0x24')](function(_0x1b6650){return _0x1b6650;});}return null;};}function removeEntity(_0x2bdedc,_0x30b0e6){return function(_0x11892d){if(_0x11892d){return _0x11892d[_0x6974('0x25')]()['then'](function(){_0x2bdedc['status'](0xcc)[_0x6974('0x1a')]();});}};}function handleEntityNotFound(_0x489fd1,_0x4c7307){return function(_0x3247c7){if(!_0x3247c7){_0x489fd1['sendStatus'](0x194);}return _0x3247c7;};}function handleError(_0x5ceff0,_0x104cbe){_0x104cbe=_0x104cbe||0x1f4;return function(_0x172a6e){logger['error'](_0x172a6e[_0x6974('0x26')]);if(_0x172a6e[_0x6974('0x27')]){delete _0x172a6e[_0x6974('0x27')];}_0x5ceff0['status'](_0x104cbe)[_0x6974('0x28')](_0x172a6e);};}exports[_0x6974('0x29')]=function(_0x8ea0b3,_0x26324a){var _0x5d519c={},_0x477950={},_0x392613={'count':0x0,'rows':[]};var _0x51c0e8=_[_0x6974('0x2a')](db['SquareReport'][_0x6974('0x2b')],function(_0x39cc10){return{'name':_0x39cc10[_0x6974('0x2c')],'type':_0x39cc10['type']['key']};});_0x477950['model']=_[_0x6974('0x2a')](_0x51c0e8,_0x6974('0x27'));_0x477950[_0x6974('0x2d')]=_[_0x6974('0x2e')](_0x8ea0b3['query']);_0x477950[_0x6974('0x2f')]=_[_0x6974('0x30')](_0x477950['model'],_0x477950[_0x6974('0x2d')]);_0x5d519c['attributes']=_[_0x6974('0x30')](_0x477950[_0x6974('0x31')],qs[_0x6974('0x32')](_0x8ea0b3[_0x6974('0x2d')]['fields']));_0x5d519c[_0x6974('0x33')]=_0x5d519c[_0x6974('0x33')][_0x6974('0x34')]?_0x5d519c['attributes']:_0x477950[_0x6974('0x31')];if(!_0x8ea0b3[_0x6974('0x2d')]['hasOwnProperty'](_0x6974('0x35'))){_0x5d519c[_0x6974('0x1d')]=qs['limit'](_0x8ea0b3['query'][_0x6974('0x1d')]);_0x5d519c[_0x6974('0x1b')]=qs[_0x6974('0x1b')](_0x8ea0b3[_0x6974('0x2d')][_0x6974('0x1b')]);}_0x5d519c[_0x6974('0x36')]=qs['sort'](_0x8ea0b3[_0x6974('0x2d')][_0x6974('0x37')]);_0x5d519c['where']=qs['filters'](_[_0x6974('0x38')](_0x8ea0b3[_0x6974('0x2d')],_0x477950[_0x6974('0x2f')]),_0x51c0e8);if(_0x8ea0b3[_0x6974('0x2d')]['filter']){_0x5d519c['where']=_['merge'](_0x5d519c[_0x6974('0x39')],{'$or':_['map'](_0x51c0e8,function(_0x759c06){if(_0x759c06['type']!==_0x6974('0x3a')){var _0x3f1960={};_0x3f1960[_0x759c06['name']]={'$like':'%'+_0x8ea0b3[_0x6974('0x2d')][_0x6974('0x3b')]+'%'};return _0x3f1960;}})});}_0x5d519c=_[_0x6974('0x3c')]({},_0x5d519c,_0x8ea0b3['options']);var _0x5e1bc0={'where':_0x5d519c[_0x6974('0x39')]};return db[_0x6974('0x3d')][_0x6974('0x1e')](_0x5e1bc0)[_0x6974('0x24')](function(_0x5d8831){_0x392613[_0x6974('0x1e')]=_0x5d8831;if(_0x8ea0b3[_0x6974('0x2d')][_0x6974('0x3e')]){_0x5d519c[_0x6974('0x3f')]=[{'all':!![]}];}return db[_0x6974('0x3d')]['findAll'](_0x5d519c);})['then'](function(_0x5cc952){_0x392613[_0x6974('0x40')]=_0x5cc952;return _0x392613;})[_0x6974('0x24')](respondWithFilteredResult(_0x26324a,_0x5d519c))[_0x6974('0x41')](handleError(_0x26324a,null));};exports[_0x6974('0x42')]=function(_0x57433b,_0x3b62a8){var _0x114cdd={'raw':!![],'where':{'id':_0x57433b[_0x6974('0x43')]['id']}},_0x335d4a={};_0x335d4a[_0x6974('0x31')]=_['keys'](db['SquareReport'][_0x6974('0x2b')]);_0x335d4a[_0x6974('0x2d')]=_[_0x6974('0x2e')](_0x57433b['query']);_0x335d4a[_0x6974('0x2f')]=_[_0x6974('0x30')](_0x335d4a[_0x6974('0x31')],_0x335d4a[_0x6974('0x2d')]);_0x114cdd[_0x6974('0x33')]=_['intersection'](_0x335d4a[_0x6974('0x31')],qs[_0x6974('0x32')](_0x57433b[_0x6974('0x2d')][_0x6974('0x32')]));_0x114cdd[_0x6974('0x33')]=_0x114cdd['attributes'][_0x6974('0x34')]?_0x114cdd['attributes']:_0x335d4a['model'];if(_0x57433b[_0x6974('0x2d')][_0x6974('0x3e')]){_0x114cdd[_0x6974('0x3f')]=[{'all':!![]}];}_0x114cdd=_[_0x6974('0x3c')]({},_0x114cdd,_0x57433b[_0x6974('0x44')]);return db[_0x6974('0x3d')][_0x6974('0x45')](_0x114cdd)[_0x6974('0x24')](handleEntityNotFound(_0x3b62a8,null))[_0x6974('0x24')](respondWithResult(_0x3b62a8,null))[_0x6974('0x41')](handleError(_0x3b62a8,null));};exports[_0x6974('0x46')]=function(_0x3d78f5,_0x302c43){return db['SquareReport'][_0x6974('0x46')](_0x3d78f5['body'],{})['then'](respondWithResult(_0x302c43,0xc9))[_0x6974('0x41')](handleError(_0x302c43,null));};exports[_0x6974('0x23')]=function(_0x37bd3f,_0x43118a){if(_0x37bd3f[_0x6974('0x47')]['id']){delete _0x37bd3f[_0x6974('0x47')]['id'];}return db[_0x6974('0x3d')]['find']({'where':{'id':_0x37bd3f[_0x6974('0x43')]['id']}})['then'](handleEntityNotFound(_0x43118a,null))[_0x6974('0x24')](saveUpdates(_0x37bd3f[_0x6974('0x47')],null))[_0x6974('0x24')](respondWithResult(_0x43118a,null))[_0x6974('0x41')](handleError(_0x43118a,null));};exports[_0x6974('0x25')]=function(_0x16acc5,_0x16bafc){return db[_0x6974('0x3d')][_0x6974('0x45')]({'where':{'id':_0x16acc5[_0x6974('0x43')]['id']}})[_0x6974('0x24')](handleEntityNotFound(_0x16bafc,null))['then'](removeEntity(_0x16bafc,null))[_0x6974('0x41')](handleError(_0x16bafc,null));};exports[_0x6974('0x48')]=function(_0x313388,_0x88813){return db[_0x6974('0x3d')][_0x6974('0x48')]()[_0x6974('0x24')](respondWithResult(_0x88813,null))[_0x6974('0x41')](handleError(_0x88813,null));};