cb4f4c2b5764e86210a832017e00ffdddadbd646
[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 _0x129a=['save','then','destroy','error','stack','index','fieldName','type','key','model','map','name','keys','query','filters','attributes','fields','length','hasOwnProperty','nolimit','sort','pick','filter','where','VIRTUAL','options','includeAll','WhatsappTransferReport','findAll','rows','catch','show','rawAttributes','intersection','include','merge','find','create','body','update','params','describe','eml-format','rimraf','zip-dir','request-promise','moment','mustache','ejs','lodash','squel','jsforce','desk.js','to-csv','querystring','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','count','limit','set','Content-Range','apply','reject'];(function(_0xdab9a0,_0x31ab86){var _0x5c771a=function(_0x2f1b52){while(--_0x2f1b52){_0xdab9a0['push'](_0xdab9a0['shift']());}};_0x5c771a(++_0x31ab86);}(_0x129a,0x108));var _0xa129=function(_0xd56ddb,_0x5a7018){_0xd56ddb=_0xd56ddb-0x0;var _0x3c9fc6=_0x129a[_0xd56ddb];return _0x3c9fc6;};'use strict';var emlformat=require(_0xa129('0x0'));var rimraf=require(_0xa129('0x1'));var zipdir=require(_0xa129('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xa129('0x3'));var moment=require(_0xa129('0x4'));var BPromise=require('bluebird');var Mustache=require(_0xa129('0x5'));var util=require('util');var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xa129('0x6'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xa129('0x7'));var squel=require(_0xa129('0x8'));var crypto=require('crypto');var jsforce=require(_0xa129('0x9'));var deskjs=require(_0xa129('0xa'));var toCsv=require(_0xa129('0xb'));var querystring=require(_0xa129('0xc'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xa129('0xd'));var as=require(_0xa129('0xe'));var hardwareService=require(_0xa129('0xf'));var logger=require('../../config/logger')(_0xa129('0x10'));var utils=require(_0xa129('0x11'));var config=require('../../config/environment');var licenseUtil=require(_0xa129('0x12'));var db=require(_0xa129('0x13'))['db'];function respondWithStatusCode(_0x20ded5,_0x42722d){_0x42722d=_0x42722d||0xcc;return function(_0x2b1fdc){if(_0x2b1fdc){return _0x20ded5[_0xa129('0x14')](_0x42722d);}return _0x20ded5[_0xa129('0x15')](_0x42722d)[_0xa129('0x16')]();};}function respondWithResult(_0x121291,_0x30c0ff){_0x30c0ff=_0x30c0ff||0xc8;return function(_0x287bab){if(_0x287bab){return _0x121291['status'](_0x30c0ff)[_0xa129('0x17')](_0x287bab);}};}function respondWithFilteredResult(_0x341cc3,_0x385686){return function(_0x1c6545){if(_0x1c6545){var _0x425a5c=typeof _0x385686[_0xa129('0x18')]==='undefined'&&typeof _0x385686['limit']===_0xa129('0x19');var _0x1068e6=_0x1c6545[_0xa129('0x1a')];var _0x5540a8=_0x425a5c?0x0:_0x385686[_0xa129('0x18')];var _0x526c0d=_0x425a5c?_0x1c6545[_0xa129('0x1a')]:_0x385686[_0xa129('0x18')]+_0x385686[_0xa129('0x1b')];var _0x48ff98;if(_0x526c0d>=_0x1068e6){_0x526c0d=_0x1068e6;_0x48ff98=0xc8;}else{_0x48ff98=0xce;}_0x341cc3['status'](_0x48ff98);return _0x341cc3[_0xa129('0x1c')](_0xa129('0x1d'),_0x5540a8+'-'+_0x526c0d+'/'+_0x1068e6)[_0xa129('0x17')](_0x1c6545);}return null;};}function patchUpdates(_0x2a8369){return function(_0x123e12){try{jsonpatch[_0xa129('0x1e')](_0x123e12,_0x2a8369,!![]);}catch(_0x267a28){return BPromise[_0xa129('0x1f')](_0x267a28);}return _0x123e12[_0xa129('0x20')]();};}function saveUpdates(_0x26498b,_0x5711b1){return function(_0x50f296){if(_0x50f296){return _0x50f296['update'](_0x26498b)[_0xa129('0x21')](function(_0x1de1f1){return _0x1de1f1;});}return null;};}function removeEntity(_0x1564c5,_0x2bb4c2){return function(_0x13a443){if(_0x13a443){return _0x13a443[_0xa129('0x22')]()[_0xa129('0x21')](function(){_0x1564c5[_0xa129('0x15')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4ab30a,_0x19538c){return function(_0x2a7417){if(!_0x2a7417){_0x4ab30a[_0xa129('0x14')](0x194);}return _0x2a7417;};}function handleError(_0x13c73b,_0x780a77){_0x780a77=_0x780a77||0x1f4;return function(_0x1ebdf1){logger[_0xa129('0x23')](_0x1ebdf1[_0xa129('0x24')]);if(_0x1ebdf1['name']){delete _0x1ebdf1['name'];}_0x13c73b['status'](_0x780a77)['send'](_0x1ebdf1);};}exports[_0xa129('0x25')]=function(_0x46d517,_0x56090c){var _0x4b740f={},_0x424ea9={},_0x1fa9ca={'count':0x0,'rows':[]};var _0x57d9ba=_['map'](db['WhatsappTransferReport']['rawAttributes'],function(_0x37138e){return{'name':_0x37138e[_0xa129('0x26')],'type':_0x37138e[_0xa129('0x27')][_0xa129('0x28')]};});_0x424ea9[_0xa129('0x29')]=_[_0xa129('0x2a')](_0x57d9ba,_0xa129('0x2b'));_0x424ea9['query']=_[_0xa129('0x2c')](_0x46d517[_0xa129('0x2d')]);_0x424ea9[_0xa129('0x2e')]=_['intersection'](_0x424ea9[_0xa129('0x29')],_0x424ea9[_0xa129('0x2d')]);_0x4b740f[_0xa129('0x2f')]=_['intersection'](_0x424ea9[_0xa129('0x29')],qs[_0xa129('0x30')](_0x46d517[_0xa129('0x2d')][_0xa129('0x30')]));_0x4b740f[_0xa129('0x2f')]=_0x4b740f[_0xa129('0x2f')][_0xa129('0x31')]?_0x4b740f[_0xa129('0x2f')]:_0x424ea9['model'];if(!_0x46d517[_0xa129('0x2d')][_0xa129('0x32')](_0xa129('0x33'))){_0x4b740f['limit']=qs['limit'](_0x46d517[_0xa129('0x2d')][_0xa129('0x1b')]);_0x4b740f['offset']=qs[_0xa129('0x18')](_0x46d517[_0xa129('0x2d')]['offset']);}_0x4b740f['order']=qs['sort'](_0x46d517[_0xa129('0x2d')][_0xa129('0x34')]);_0x4b740f['where']=qs[_0xa129('0x2e')](_[_0xa129('0x35')](_0x46d517[_0xa129('0x2d')],_0x424ea9[_0xa129('0x2e')]),_0x57d9ba);if(_0x46d517['query'][_0xa129('0x36')]){_0x4b740f['where']=_['merge'](_0x4b740f[_0xa129('0x37')],{'$or':_[_0xa129('0x2a')](_0x57d9ba,function(_0x93b2a0){if(_0x93b2a0[_0xa129('0x27')]!==_0xa129('0x38')){var _0x288f61={};_0x288f61[_0x93b2a0['name']]={'$like':'%'+_0x46d517[_0xa129('0x2d')]['filter']+'%'};return _0x288f61;}})});}_0x4b740f=_['merge']({},_0x4b740f,_0x46d517[_0xa129('0x39')]);var _0x43b05c={'where':_0x4b740f['where']};return db['WhatsappTransferReport'][_0xa129('0x1a')](_0x43b05c)[_0xa129('0x21')](function(_0x89a2d6){_0x1fa9ca['count']=_0x89a2d6;if(_0x46d517[_0xa129('0x2d')][_0xa129('0x3a')]){_0x4b740f['include']=[{'all':!![]}];}return db[_0xa129('0x3b')][_0xa129('0x3c')](_0x4b740f);})['then'](function(_0x5032f6){_0x1fa9ca[_0xa129('0x3d')]=_0x5032f6;return _0x1fa9ca;})[_0xa129('0x21')](respondWithFilteredResult(_0x56090c,_0x4b740f))[_0xa129('0x3e')](handleError(_0x56090c,null));};exports[_0xa129('0x3f')]=function(_0x192df2,_0x347c09){var _0x3ac3d6={'raw':!![],'where':{'id':_0x192df2['params']['id']}},_0x2693eb={};_0x2693eb[_0xa129('0x29')]=_[_0xa129('0x2c')](db[_0xa129('0x3b')][_0xa129('0x40')]);_0x2693eb[_0xa129('0x2d')]=_[_0xa129('0x2c')](_0x192df2[_0xa129('0x2d')]);_0x2693eb[_0xa129('0x2e')]=_['intersection'](_0x2693eb[_0xa129('0x29')],_0x2693eb['query']);_0x3ac3d6[_0xa129('0x2f')]=_[_0xa129('0x41')](_0x2693eb[_0xa129('0x29')],qs[_0xa129('0x30')](_0x192df2['query'][_0xa129('0x30')]));_0x3ac3d6[_0xa129('0x2f')]=_0x3ac3d6[_0xa129('0x2f')][_0xa129('0x31')]?_0x3ac3d6[_0xa129('0x2f')]:_0x2693eb[_0xa129('0x29')];if(_0x192df2[_0xa129('0x2d')][_0xa129('0x3a')]){_0x3ac3d6[_0xa129('0x42')]=[{'all':!![]}];}_0x3ac3d6=_[_0xa129('0x43')]({},_0x3ac3d6,_0x192df2['options']);return db['WhatsappTransferReport'][_0xa129('0x44')](_0x3ac3d6)[_0xa129('0x21')](handleEntityNotFound(_0x347c09,null))[_0xa129('0x21')](respondWithResult(_0x347c09,null))[_0xa129('0x3e')](handleError(_0x347c09,null));};exports['create']=function(_0x113a98,_0x3a1cb5){return db[_0xa129('0x3b')][_0xa129('0x45')](_0x113a98[_0xa129('0x46')],{})[_0xa129('0x21')](respondWithResult(_0x3a1cb5,0xc9))['catch'](handleError(_0x3a1cb5,null));};exports[_0xa129('0x47')]=function(_0x2cf788,_0x184327){if(_0x2cf788[_0xa129('0x46')]['id']){delete _0x2cf788[_0xa129('0x46')]['id'];}return db[_0xa129('0x3b')][_0xa129('0x44')]({'where':{'id':_0x2cf788[_0xa129('0x48')]['id']}})[_0xa129('0x21')](handleEntityNotFound(_0x184327,null))[_0xa129('0x21')](saveUpdates(_0x2cf788[_0xa129('0x46')],null))[_0xa129('0x21')](respondWithResult(_0x184327,null))[_0xa129('0x3e')](handleError(_0x184327,null));};exports[_0xa129('0x22')]=function(_0x5c7b57,_0x243a8a){return db[_0xa129('0x3b')][_0xa129('0x44')]({'where':{'id':_0x5c7b57['params']['id']}})[_0xa129('0x21')](handleEntityNotFound(_0x243a8a,null))[_0xa129('0x21')](removeEntity(_0x243a8a,null))[_0xa129('0x3e')](handleError(_0x243a8a,null));};exports[_0xa129('0x49')]=function(_0x9ed05f,_0x3beb40){return db[_0xa129('0x3b')][_0xa129('0x49')]()[_0xa129('0x21')](respondWithResult(_0x3beb40,null))[_0xa129('0x3e')](handleError(_0x3beb40,null));};