70705f06c14e23608e2bbf819b1237961d88986d
[motion2.git] / server / api / whatsappTransferReport / whatsappTransferReport.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 _0x172c=['include','WhatsappTransferReport','findAll','show','params','fields','length','includeAll','find','catch','create','body','describe','eml-format','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','lodash','crypto','jsforce','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','status','end','json','offset','undefined','count','apply','save','update','then','destroy','sendStatus','name','send','index','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','hasOwnProperty','limit','sort','where','filter','VIRTUAL','merge','options'];(function(_0x2f3848,_0x48564d){var _0x102668=function(_0x5e32ab){while(--_0x5e32ab){_0x2f3848['push'](_0x2f3848['shift']());}};_0x102668(++_0x48564d);}(_0x172c,0x95));var _0xc172=function(_0x4a9fb1,_0x273043){_0x4a9fb1=_0x4a9fb1-0x0;var _0x348672=_0x172c[_0x4a9fb1];return _0x348672;};'use strict';var emlformat=require(_0xc172('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xc172('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xc172('0x2'));var moment=require(_0xc172('0x3'));var BPromise=require(_0xc172('0x4'));var Mustache=require(_0xc172('0x5'));var util=require(_0xc172('0x6'));var path=require(_0xc172('0x7'));var sox=require(_0xc172('0x8'));var csv=require(_0xc172('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xc172('0xa'));var squel=require('squel');var crypto=require(_0xc172('0xb'));var jsforce=require(_0xc172('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xc172('0xd'));var authService=require(_0xc172('0xe'));var qs=require('../../components/parsers/qs');var as=require(_0xc172('0xf'));var hardwareService=require(_0xc172('0x10'));var logger=require(_0xc172('0x11'))(_0xc172('0x12'));var utils=require(_0xc172('0x13'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xc172('0x14'))['db'];function respondWithStatusCode(_0x3583a2,_0x59b86a){_0x59b86a=_0x59b86a||0xcc;return function(_0x4f84e0){if(_0x4f84e0){return _0x3583a2['sendStatus'](_0x59b86a);}return _0x3583a2[_0xc172('0x15')](_0x59b86a)[_0xc172('0x16')]();};}function respondWithResult(_0x5297e0,_0x3eaf25){_0x3eaf25=_0x3eaf25||0xc8;return function(_0x3817b6){if(_0x3817b6){return _0x5297e0[_0xc172('0x15')](_0x3eaf25)[_0xc172('0x17')](_0x3817b6);}};}function respondWithFilteredResult(_0x4bb51a,_0x4c0d0f){return function(_0x528246){if(_0x528246){var _0x270503=typeof _0x4c0d0f[_0xc172('0x18')]==='undefined'&&typeof _0x4c0d0f['limit']===_0xc172('0x19');var _0x3b22ff=_0x528246[_0xc172('0x1a')];var _0xc01a3d=_0x270503?0x0:_0x4c0d0f[_0xc172('0x18')];var _0xf4fcf2=_0x270503?_0x528246[_0xc172('0x1a')]:_0x4c0d0f[_0xc172('0x18')]+_0x4c0d0f['limit'];var _0x4eb38f;if(_0xf4fcf2>=_0x3b22ff){_0xf4fcf2=_0x3b22ff;_0x4eb38f=0xc8;}else{_0x4eb38f=0xce;}_0x4bb51a['status'](_0x4eb38f);return _0x4bb51a['set']('Content-Range',_0xc01a3d+'-'+_0xf4fcf2+'/'+_0x3b22ff)[_0xc172('0x17')](_0x528246);}return null;};}function patchUpdates(_0x1c01da){return function(_0x47a0cd){try{jsonpatch[_0xc172('0x1b')](_0x47a0cd,_0x1c01da,!![]);}catch(_0x507198){return BPromise['reject'](_0x507198);}return _0x47a0cd[_0xc172('0x1c')]();};}function saveUpdates(_0x36ce13,_0x457491){return function(_0x4ec487){if(_0x4ec487){return _0x4ec487[_0xc172('0x1d')](_0x36ce13)[_0xc172('0x1e')](function(_0x3c8bd1){return _0x3c8bd1;});}return null;};}function removeEntity(_0x3a37d1,_0xdf6004){return function(_0x1124b4){if(_0x1124b4){return _0x1124b4[_0xc172('0x1f')]()[_0xc172('0x1e')](function(){_0x3a37d1['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x162cab,_0x3b9387){return function(_0xeff832){if(!_0xeff832){_0x162cab[_0xc172('0x20')](0x194);}return _0xeff832;};}function handleError(_0x1591b9,_0x3b6b5f){_0x3b6b5f=_0x3b6b5f||0x1f4;return function(_0x1a5ca7){logger['error'](_0x1a5ca7['stack']);if(_0x1a5ca7[_0xc172('0x21')]){delete _0x1a5ca7[_0xc172('0x21')];}_0x1591b9[_0xc172('0x15')](_0x3b6b5f)[_0xc172('0x22')](_0x1a5ca7);};}exports[_0xc172('0x23')]=function(_0x3de59b,_0x39f012){var _0x507c74={},_0xdac399={},_0x8d3113={'count':0x0,'rows':[]};var _0x3229d3=_[_0xc172('0x24')](db['WhatsappTransferReport'][_0xc172('0x25')],function(_0x406344){return{'name':_0x406344[_0xc172('0x26')],'type':_0x406344[_0xc172('0x27')][_0xc172('0x28')]};});_0xdac399[_0xc172('0x29')]=_[_0xc172('0x24')](_0x3229d3,_0xc172('0x21'));_0xdac399[_0xc172('0x2a')]=_[_0xc172('0x2b')](_0x3de59b[_0xc172('0x2a')]);_0xdac399[_0xc172('0x2c')]=_['intersection'](_0xdac399[_0xc172('0x29')],_0xdac399[_0xc172('0x2a')]);_0x507c74['attributes']=_[_0xc172('0x2d')](_0xdac399[_0xc172('0x29')],qs['fields'](_0x3de59b[_0xc172('0x2a')]['fields']));_0x507c74[_0xc172('0x2e')]=_0x507c74[_0xc172('0x2e')]['length']?_0x507c74[_0xc172('0x2e')]:_0xdac399[_0xc172('0x29')];if(!_0x3de59b[_0xc172('0x2a')][_0xc172('0x2f')]('nolimit')){_0x507c74[_0xc172('0x30')]=qs[_0xc172('0x30')](_0x3de59b[_0xc172('0x2a')][_0xc172('0x30')]);_0x507c74['offset']=qs[_0xc172('0x18')](_0x3de59b[_0xc172('0x2a')]['offset']);}_0x507c74['order']=qs[_0xc172('0x31')](_0x3de59b['query'][_0xc172('0x31')]);_0x507c74[_0xc172('0x32')]=qs[_0xc172('0x2c')](_['pick'](_0x3de59b[_0xc172('0x2a')],_0xdac399['filters']),_0x3229d3);if(_0x3de59b[_0xc172('0x2a')][_0xc172('0x33')]){_0x507c74[_0xc172('0x32')]=_['merge'](_0x507c74[_0xc172('0x32')],{'$or':_[_0xc172('0x24')](_0x3229d3,function(_0x2c189b){if(_0x2c189b[_0xc172('0x27')]!==_0xc172('0x34')){var _0x4f975a={};_0x4f975a[_0x2c189b[_0xc172('0x21')]]={'$like':'%'+_0x3de59b['query'][_0xc172('0x33')]+'%'};return _0x4f975a;}})});}_0x507c74=_[_0xc172('0x35')]({},_0x507c74,_0x3de59b[_0xc172('0x36')]);var _0x51eca5={'where':_0x507c74[_0xc172('0x32')]};return db['WhatsappTransferReport'][_0xc172('0x1a')](_0x51eca5)[_0xc172('0x1e')](function(_0x9bd3a3){_0x8d3113[_0xc172('0x1a')]=_0x9bd3a3;if(_0x3de59b[_0xc172('0x2a')]['includeAll']){_0x507c74[_0xc172('0x37')]=[{'all':!![]}];}return db[_0xc172('0x38')][_0xc172('0x39')](_0x507c74);})['then'](function(_0x4abaae){_0x8d3113['rows']=_0x4abaae;return _0x8d3113;})[_0xc172('0x1e')](respondWithFilteredResult(_0x39f012,_0x507c74))['catch'](handleError(_0x39f012,null));};exports[_0xc172('0x3a')]=function(_0x2f92d9,_0x7b8567){var _0x306ee6={'raw':!![],'where':{'id':_0x2f92d9[_0xc172('0x3b')]['id']}},_0x7acc32={};_0x7acc32[_0xc172('0x29')]=_[_0xc172('0x2b')](db[_0xc172('0x38')]['rawAttributes']);_0x7acc32[_0xc172('0x2a')]=_[_0xc172('0x2b')](_0x2f92d9[_0xc172('0x2a')]);_0x7acc32['filters']=_[_0xc172('0x2d')](_0x7acc32['model'],_0x7acc32[_0xc172('0x2a')]);_0x306ee6['attributes']=_['intersection'](_0x7acc32['model'],qs['fields'](_0x2f92d9[_0xc172('0x2a')][_0xc172('0x3c')]));_0x306ee6[_0xc172('0x2e')]=_0x306ee6[_0xc172('0x2e')][_0xc172('0x3d')]?_0x306ee6[_0xc172('0x2e')]:_0x7acc32[_0xc172('0x29')];if(_0x2f92d9[_0xc172('0x2a')][_0xc172('0x3e')]){_0x306ee6[_0xc172('0x37')]=[{'all':!![]}];}_0x306ee6=_[_0xc172('0x35')]({},_0x306ee6,_0x2f92d9[_0xc172('0x36')]);return db['WhatsappTransferReport'][_0xc172('0x3f')](_0x306ee6)[_0xc172('0x1e')](handleEntityNotFound(_0x7b8567,null))[_0xc172('0x1e')](respondWithResult(_0x7b8567,null))[_0xc172('0x40')](handleError(_0x7b8567,null));};exports[_0xc172('0x41')]=function(_0x33d61f,_0x4d2bb3){return db[_0xc172('0x38')][_0xc172('0x41')](_0x33d61f[_0xc172('0x42')],{})[_0xc172('0x1e')](respondWithResult(_0x4d2bb3,0xc9))[_0xc172('0x40')](handleError(_0x4d2bb3,null));};exports[_0xc172('0x1d')]=function(_0x5c7920,_0x5f1e5e){if(_0x5c7920['body']['id']){delete _0x5c7920[_0xc172('0x42')]['id'];}return db[_0xc172('0x38')][_0xc172('0x3f')]({'where':{'id':_0x5c7920['params']['id']}})[_0xc172('0x1e')](handleEntityNotFound(_0x5f1e5e,null))[_0xc172('0x1e')](saveUpdates(_0x5c7920[_0xc172('0x42')],null))[_0xc172('0x1e')](respondWithResult(_0x5f1e5e,null))[_0xc172('0x40')](handleError(_0x5f1e5e,null));};exports['destroy']=function(_0x232dcc,_0x45ef36){return db[_0xc172('0x38')][_0xc172('0x3f')]({'where':{'id':_0x232dcc[_0xc172('0x3b')]['id']}})[_0xc172('0x1e')](handleEntityNotFound(_0x45ef36,null))[_0xc172('0x1e')](removeEntity(_0x45ef36,null))['catch'](handleError(_0x45ef36,null));};exports[_0xc172('0x43')]=function(_0x1511e7,_0xbaca22){return db[_0xc172('0x38')][_0xc172('0x43')]()[_0xc172('0x1e')](respondWithResult(_0xbaca22,null))[_0xc172('0x40')](handleError(_0xbaca22,null));};