a163ca4cdb4b8b871547e3a5db876d82fdae094e
[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 _0xbd3a=['stack','name','send','map','WhatsappTransferReport','fieldName','type','key','model','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','options','includeAll','include','findAll','catch','show','params','keys','rawAttributes','length','find','body','describe','eml-format','rimraf','zip-dir','fast-json-patch','moment','mustache','sox','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','sendStatus','status','json','limit','undefined','offset','count','set','Content-Range','apply','reject','then','destroy','end','error'];(function(_0x57bcc0,_0x281040){var _0x4e361f=function(_0x406ef5){while(--_0x406ef5){_0x57bcc0['push'](_0x57bcc0['shift']());}};_0x4e361f(++_0x281040);}(_0xbd3a,0xb9));var _0xabd3=function(_0x20b929,_0x35ab7e){_0x20b929=_0x20b929-0x0;var _0x5be566=_0xbd3a[_0x20b929];return _0x5be566;};'use strict';var emlformat=require(_0xabd3('0x0'));var rimraf=require(_0xabd3('0x1'));var zipdir=require(_0xabd3('0x2'));var jsonpatch=require(_0xabd3('0x3'));var rp=require('request-promise');var moment=require(_0xabd3('0x4'));var BPromise=require('bluebird');var Mustache=require(_0xabd3('0x5'));var util=require('util');var path=require('path');var sox=require(_0xabd3('0x6'));var csv=require('to-csv');var ejs=require(_0xabd3('0x7'));var fs=require('fs');var fs_extra=require(_0xabd3('0x8'));var _=require(_0xabd3('0x9'));var squel=require(_0xabd3('0xa'));var crypto=require(_0xabd3('0xb'));var jsforce=require(_0xabd3('0xc'));var deskjs=require(_0xabd3('0xd'));var toCsv=require(_0xabd3('0xe'));var querystring=require(_0xabd3('0xf'));var Papa=require(_0xabd3('0x10'));var Redis=require(_0xabd3('0x11'));var authService=require(_0xabd3('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0xabd3('0x13'));var hardwareService=require(_0xabd3('0x14'));var logger=require(_0xabd3('0x15'))(_0xabd3('0x16'));var utils=require(_0xabd3('0x17'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xabd3('0x18'))['db'];function respondWithStatusCode(_0x1b24d5,_0x3ec568){_0x3ec568=_0x3ec568||0xcc;return function(_0x40d5a6){if(_0x40d5a6){return _0x1b24d5[_0xabd3('0x19')](_0x3ec568);}return _0x1b24d5['status'](_0x3ec568)['end']();};}function respondWithResult(_0x434072,_0x47ee5a){_0x47ee5a=_0x47ee5a||0xc8;return function(_0x40c21f){if(_0x40c21f){return _0x434072[_0xabd3('0x1a')](_0x47ee5a)[_0xabd3('0x1b')](_0x40c21f);}};}function respondWithFilteredResult(_0x33a22f,_0x298c50){return function(_0x562edc){if(_0x562edc){var _0x166ec6=typeof _0x298c50['offset']==='undefined'&&typeof _0x298c50[_0xabd3('0x1c')]===_0xabd3('0x1d');var _0x57ee8b=_0x562edc['count'];var _0xaef546=_0x166ec6?0x0:_0x298c50[_0xabd3('0x1e')];var _0x2a7b34=_0x166ec6?_0x562edc[_0xabd3('0x1f')]:_0x298c50[_0xabd3('0x1e')]+_0x298c50[_0xabd3('0x1c')];var _0xec9979;if(_0x2a7b34>=_0x57ee8b){_0x2a7b34=_0x57ee8b;_0xec9979=0xc8;}else{_0xec9979=0xce;}_0x33a22f[_0xabd3('0x1a')](_0xec9979);return _0x33a22f[_0xabd3('0x20')](_0xabd3('0x21'),_0xaef546+'-'+_0x2a7b34+'/'+_0x57ee8b)[_0xabd3('0x1b')](_0x562edc);}return null;};}function patchUpdates(_0x48c869){return function(_0x3f0ddf){try{jsonpatch[_0xabd3('0x22')](_0x3f0ddf,_0x48c869,!![]);}catch(_0x28b3af){return BPromise[_0xabd3('0x23')](_0x28b3af);}return _0x3f0ddf['save']();};}function saveUpdates(_0x1c9882,_0x540c9a){return function(_0x6e020f){if(_0x6e020f){return _0x6e020f['update'](_0x1c9882)[_0xabd3('0x24')](function(_0x223faa){return _0x223faa;});}return null;};}function removeEntity(_0x1e95a2,_0x45e779){return function(_0x3cf80c){if(_0x3cf80c){return _0x3cf80c[_0xabd3('0x25')]()[_0xabd3('0x24')](function(){_0x1e95a2[_0xabd3('0x1a')](0xcc)[_0xabd3('0x26')]();});}};}function handleEntityNotFound(_0x25573f,_0x288372){return function(_0x14dcdc){if(!_0x14dcdc){_0x25573f[_0xabd3('0x19')](0x194);}return _0x14dcdc;};}function handleError(_0x1c4ec4,_0x24b478){_0x24b478=_0x24b478||0x1f4;return function(_0x814004){logger[_0xabd3('0x27')](_0x814004[_0xabd3('0x28')]);if(_0x814004[_0xabd3('0x29')]){delete _0x814004['name'];}_0x1c4ec4[_0xabd3('0x1a')](_0x24b478)[_0xabd3('0x2a')](_0x814004);};}exports['index']=function(_0x6115c3,_0x179711){var _0x11a92b={},_0x565002={},_0xcf8553={'count':0x0,'rows':[]};var _0x301953=_[_0xabd3('0x2b')](db[_0xabd3('0x2c')]['rawAttributes'],function(_0x158ea9){return{'name':_0x158ea9[_0xabd3('0x2d')],'type':_0x158ea9[_0xabd3('0x2e')][_0xabd3('0x2f')]};});_0x565002[_0xabd3('0x30')]=_[_0xabd3('0x2b')](_0x301953,'name');_0x565002[_0xabd3('0x31')]=_['keys'](_0x6115c3['query']);_0x565002[_0xabd3('0x32')]=_[_0xabd3('0x33')](_0x565002['model'],_0x565002[_0xabd3('0x31')]);_0x11a92b[_0xabd3('0x34')]=_['intersection'](_0x565002[_0xabd3('0x30')],qs[_0xabd3('0x35')](_0x6115c3[_0xabd3('0x31')]['fields']));_0x11a92b[_0xabd3('0x34')]=_0x11a92b[_0xabd3('0x34')]['length']?_0x11a92b['attributes']:_0x565002[_0xabd3('0x30')];if(!_0x6115c3[_0xabd3('0x31')][_0xabd3('0x36')](_0xabd3('0x37'))){_0x11a92b[_0xabd3('0x1c')]=qs['limit'](_0x6115c3['query'][_0xabd3('0x1c')]);_0x11a92b[_0xabd3('0x1e')]=qs[_0xabd3('0x1e')](_0x6115c3['query'][_0xabd3('0x1e')]);}_0x11a92b[_0xabd3('0x38')]=qs['sort'](_0x6115c3[_0xabd3('0x31')][_0xabd3('0x39')]);_0x11a92b['where']=qs[_0xabd3('0x32')](_[_0xabd3('0x3a')](_0x6115c3[_0xabd3('0x31')],_0x565002[_0xabd3('0x32')]),_0x301953);if(_0x6115c3[_0xabd3('0x31')][_0xabd3('0x3b')]){_0x11a92b[_0xabd3('0x3c')]=_[_0xabd3('0x3d')](_0x11a92b[_0xabd3('0x3c')],{'$or':_[_0xabd3('0x2b')](_0x301953,function(_0x2bc65c){if(_0x2bc65c[_0xabd3('0x2e')]!=='VIRTUAL'){var _0x2d9fd0={};_0x2d9fd0[_0x2bc65c[_0xabd3('0x29')]]={'$like':'%'+_0x6115c3[_0xabd3('0x31')][_0xabd3('0x3b')]+'%'};return _0x2d9fd0;}})});}_0x11a92b=_[_0xabd3('0x3d')]({},_0x11a92b,_0x6115c3[_0xabd3('0x3e')]);var _0x2e2896={'where':_0x11a92b[_0xabd3('0x3c')]};return db[_0xabd3('0x2c')]['count'](_0x2e2896)[_0xabd3('0x24')](function(_0x20688c){_0xcf8553[_0xabd3('0x1f')]=_0x20688c;if(_0x6115c3[_0xabd3('0x31')][_0xabd3('0x3f')]){_0x11a92b[_0xabd3('0x40')]=[{'all':!![]}];}return db[_0xabd3('0x2c')][_0xabd3('0x41')](_0x11a92b);})[_0xabd3('0x24')](function(_0x1ff2c6){_0xcf8553['rows']=_0x1ff2c6;return _0xcf8553;})['then'](respondWithFilteredResult(_0x179711,_0x11a92b))[_0xabd3('0x42')](handleError(_0x179711,null));};exports[_0xabd3('0x43')]=function(_0x49ab9b,_0x5b72d2){var _0x1e270a={'raw':!![],'where':{'id':_0x49ab9b[_0xabd3('0x44')]['id']}},_0x4655c2={};_0x4655c2[_0xabd3('0x30')]=_[_0xabd3('0x45')](db[_0xabd3('0x2c')][_0xabd3('0x46')]);_0x4655c2[_0xabd3('0x31')]=_[_0xabd3('0x45')](_0x49ab9b[_0xabd3('0x31')]);_0x4655c2[_0xabd3('0x32')]=_[_0xabd3('0x33')](_0x4655c2[_0xabd3('0x30')],_0x4655c2[_0xabd3('0x31')]);_0x1e270a[_0xabd3('0x34')]=_[_0xabd3('0x33')](_0x4655c2[_0xabd3('0x30')],qs[_0xabd3('0x35')](_0x49ab9b[_0xabd3('0x31')]['fields']));_0x1e270a[_0xabd3('0x34')]=_0x1e270a['attributes'][_0xabd3('0x47')]?_0x1e270a[_0xabd3('0x34')]:_0x4655c2[_0xabd3('0x30')];if(_0x49ab9b[_0xabd3('0x31')]['includeAll']){_0x1e270a[_0xabd3('0x40')]=[{'all':!![]}];}_0x1e270a=_[_0xabd3('0x3d')]({},_0x1e270a,_0x49ab9b[_0xabd3('0x3e')]);return db[_0xabd3('0x2c')][_0xabd3('0x48')](_0x1e270a)['then'](handleEntityNotFound(_0x5b72d2,null))['then'](respondWithResult(_0x5b72d2,null))['catch'](handleError(_0x5b72d2,null));};exports['create']=function(_0x17a194,_0x2ec004){return db[_0xabd3('0x2c')]['create'](_0x17a194[_0xabd3('0x49')],{})['then'](respondWithResult(_0x2ec004,0xc9))['catch'](handleError(_0x2ec004,null));};exports['update']=function(_0x2d06c0,_0x1572c4){if(_0x2d06c0[_0xabd3('0x49')]['id']){delete _0x2d06c0[_0xabd3('0x49')]['id'];}return db[_0xabd3('0x2c')][_0xabd3('0x48')]({'where':{'id':_0x2d06c0[_0xabd3('0x44')]['id']}})[_0xabd3('0x24')](handleEntityNotFound(_0x1572c4,null))[_0xabd3('0x24')](saveUpdates(_0x2d06c0['body'],null))['then'](respondWithResult(_0x1572c4,null))[_0xabd3('0x42')](handleError(_0x1572c4,null));};exports['destroy']=function(_0x3f3fe3,_0x1e7914){return db[_0xabd3('0x2c')][_0xabd3('0x48')]({'where':{'id':_0x3f3fe3[_0xabd3('0x44')]['id']}})[_0xabd3('0x24')](handleEntityNotFound(_0x1e7914,null))[_0xabd3('0x24')](removeEntity(_0x1e7914,null))[_0xabd3('0x42')](handleError(_0x1e7914,null));};exports[_0xabd3('0x4a')]=function(_0x52f694,_0x13aaff){return db[_0xabd3('0x2c')]['describe']()['then'](respondWithResult(_0x13aaff,null))[_0xabd3('0x42')](handleError(_0x13aaff,null));};