Built motion from commit e6806ed6.|2.6.0
[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 _0x176a=['crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/license/util','../../mysqldb','status','end','json','offset','limit','undefined','count','set','apply','reject','save','then','sendStatus','error','stack','name','send','index','map','WhatsappTransferReport','rawAttributes','fieldName','model','filters','query','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','type','VIRTUAL','options','include','findAll','catch','params','keys','includeAll','find','create','body','update','destroy','describe','eml-format','request-promise','moment','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel'];(function(_0xa464c9,_0x7c86d8){var _0x3d73c4=function(_0x5c2056){while(--_0x5c2056){_0xa464c9['push'](_0xa464c9['shift']());}};_0x3d73c4(++_0x7c86d8);}(_0x176a,0x8a));var _0xa176=function(_0x15cd41,_0x1dc846){_0x15cd41=_0x15cd41-0x0;var _0x38c383=_0x176a[_0x15cd41];return _0x38c383;};'use strict';var emlformat=require(_0xa176('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0xa176('0x1'));var moment=require(_0xa176('0x2'));var BPromise=require('bluebird');var Mustache=require(_0xa176('0x3'));var util=require(_0xa176('0x4'));var path=require(_0xa176('0x5'));var sox=require(_0xa176('0x6'));var csv=require(_0xa176('0x7'));var ejs=require(_0xa176('0x8'));var fs=require('fs');var fs_extra=require(_0xa176('0x9'));var _=require(_0xa176('0xa'));var squel=require(_0xa176('0xb'));var crypto=require(_0xa176('0xc'));var jsforce=require(_0xa176('0xd'));var deskjs=require(_0xa176('0xe'));var toCsv=require(_0xa176('0x7'));var querystring=require(_0xa176('0xf'));var Papa=require('papaparse');var Redis=require(_0xa176('0x10'));var authService=require(_0xa176('0x11'));var qs=require(_0xa176('0x12'));var as=require(_0xa176('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xa176('0x14'))(_0xa176('0x15'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xa176('0x16'));var db=require(_0xa176('0x17'))['db'];function respondWithStatusCode(_0x175a44,_0x187aab){_0x187aab=_0x187aab||0xcc;return function(_0x5977e6){if(_0x5977e6){return _0x175a44['sendStatus'](_0x187aab);}return _0x175a44[_0xa176('0x18')](_0x187aab)[_0xa176('0x19')]();};}function respondWithResult(_0x2f7ce1,_0x36c0d7){_0x36c0d7=_0x36c0d7||0xc8;return function(_0x56d48e){if(_0x56d48e){return _0x2f7ce1['status'](_0x36c0d7)[_0xa176('0x1a')](_0x56d48e);}};}function respondWithFilteredResult(_0x134c72,_0x283914){return function(_0xfbc957){if(_0xfbc957){var _0x47d40c=typeof _0x283914[_0xa176('0x1b')]==='undefined'&&typeof _0x283914[_0xa176('0x1c')]===_0xa176('0x1d');var _0x39a536=_0xfbc957[_0xa176('0x1e')];var _0x1a55c8=_0x47d40c?0x0:_0x283914['offset'];var _0x359934=_0x47d40c?_0xfbc957['count']:_0x283914['offset']+_0x283914['limit'];var _0x17abdc;if(_0x359934>=_0x39a536){_0x359934=_0x39a536;_0x17abdc=0xc8;}else{_0x17abdc=0xce;}_0x134c72[_0xa176('0x18')](_0x17abdc);return _0x134c72[_0xa176('0x1f')]('Content-Range',_0x1a55c8+'-'+_0x359934+'/'+_0x39a536)[_0xa176('0x1a')](_0xfbc957);}return null;};}function patchUpdates(_0x115783){return function(_0x3da532){try{jsonpatch[_0xa176('0x20')](_0x3da532,_0x115783,!![]);}catch(_0x5db5aa){return BPromise[_0xa176('0x21')](_0x5db5aa);}return _0x3da532[_0xa176('0x22')]();};}function saveUpdates(_0x4292ec,_0x448e90){return function(_0x153aab){if(_0x153aab){return _0x153aab['update'](_0x4292ec)['then'](function(_0x6f1748){return _0x6f1748;});}return null;};}function removeEntity(_0x4955ef,_0x27ecae){return function(_0x29c328){if(_0x29c328){return _0x29c328['destroy']()[_0xa176('0x23')](function(){_0x4955ef[_0xa176('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0x57ee1a,_0x1e3069){return function(_0x4426b4){if(!_0x4426b4){_0x57ee1a[_0xa176('0x24')](0x194);}return _0x4426b4;};}function handleError(_0x55af75,_0x429a53){_0x429a53=_0x429a53||0x1f4;return function(_0xd23a52){logger[_0xa176('0x25')](_0xd23a52[_0xa176('0x26')]);if(_0xd23a52['name']){delete _0xd23a52[_0xa176('0x27')];}_0x55af75[_0xa176('0x18')](_0x429a53)[_0xa176('0x28')](_0xd23a52);};}exports[_0xa176('0x29')]=function(_0x57c55a,_0x5ccbb8){var _0x3ba1c5={},_0x433fe4={},_0x4988c0={'count':0x0,'rows':[]};var _0x3d03cf=_[_0xa176('0x2a')](db[_0xa176('0x2b')][_0xa176('0x2c')],function(_0x5c8c0e){return{'name':_0x5c8c0e[_0xa176('0x2d')],'type':_0x5c8c0e['type']['key']};});_0x433fe4[_0xa176('0x2e')]=_[_0xa176('0x2a')](_0x3d03cf,_0xa176('0x27'));_0x433fe4['query']=_['keys'](_0x57c55a['query']);_0x433fe4[_0xa176('0x2f')]=_['intersection'](_0x433fe4[_0xa176('0x2e')],_0x433fe4[_0xa176('0x30')]);_0x3ba1c5['attributes']=_['intersection'](_0x433fe4[_0xa176('0x2e')],qs['fields'](_0x57c55a[_0xa176('0x30')][_0xa176('0x31')]));_0x3ba1c5['attributes']=_0x3ba1c5[_0xa176('0x32')][_0xa176('0x33')]?_0x3ba1c5['attributes']:_0x433fe4['model'];if(!_0x57c55a['query'][_0xa176('0x34')](_0xa176('0x35'))){_0x3ba1c5[_0xa176('0x1c')]=qs[_0xa176('0x1c')](_0x57c55a[_0xa176('0x30')][_0xa176('0x1c')]);_0x3ba1c5[_0xa176('0x1b')]=qs[_0xa176('0x1b')](_0x57c55a[_0xa176('0x30')]['offset']);}_0x3ba1c5[_0xa176('0x36')]=qs['sort'](_0x57c55a['query'][_0xa176('0x37')]);_0x3ba1c5[_0xa176('0x38')]=qs['filters'](_[_0xa176('0x39')](_0x57c55a[_0xa176('0x30')],_0x433fe4[_0xa176('0x2f')]),_0x3d03cf);if(_0x57c55a[_0xa176('0x30')][_0xa176('0x3a')]){_0x3ba1c5[_0xa176('0x38')]=_[_0xa176('0x3b')](_0x3ba1c5[_0xa176('0x38')],{'$or':_[_0xa176('0x2a')](_0x3d03cf,function(_0x204e8c){if(_0x204e8c[_0xa176('0x3c')]!==_0xa176('0x3d')){var _0x2c3a85={};_0x2c3a85[_0x204e8c[_0xa176('0x27')]]={'$like':'%'+_0x57c55a[_0xa176('0x30')][_0xa176('0x3a')]+'%'};return _0x2c3a85;}})});}_0x3ba1c5=_[_0xa176('0x3b')]({},_0x3ba1c5,_0x57c55a[_0xa176('0x3e')]);var _0x4942e1={'where':_0x3ba1c5['where']};return db[_0xa176('0x2b')]['count'](_0x4942e1)['then'](function(_0x365e8e){_0x4988c0[_0xa176('0x1e')]=_0x365e8e;if(_0x57c55a[_0xa176('0x30')]['includeAll']){_0x3ba1c5[_0xa176('0x3f')]=[{'all':!![]}];}return db[_0xa176('0x2b')][_0xa176('0x40')](_0x3ba1c5);})['then'](function(_0x4db307){_0x4988c0['rows']=_0x4db307;return _0x4988c0;})['then'](respondWithFilteredResult(_0x5ccbb8,_0x3ba1c5))[_0xa176('0x41')](handleError(_0x5ccbb8,null));};exports['show']=function(_0x37392f,_0x3fbbe6){var _0xa6334e={'raw':!![],'where':{'id':_0x37392f[_0xa176('0x42')]['id']}},_0x323a28={};_0x323a28[_0xa176('0x2e')]=_[_0xa176('0x43')](db[_0xa176('0x2b')][_0xa176('0x2c')]);_0x323a28[_0xa176('0x30')]=_[_0xa176('0x43')](_0x37392f[_0xa176('0x30')]);_0x323a28[_0xa176('0x2f')]=_['intersection'](_0x323a28[_0xa176('0x2e')],_0x323a28[_0xa176('0x30')]);_0xa6334e[_0xa176('0x32')]=_['intersection'](_0x323a28['model'],qs[_0xa176('0x31')](_0x37392f['query'][_0xa176('0x31')]));_0xa6334e[_0xa176('0x32')]=_0xa6334e[_0xa176('0x32')]['length']?_0xa6334e['attributes']:_0x323a28['model'];if(_0x37392f[_0xa176('0x30')][_0xa176('0x44')]){_0xa6334e[_0xa176('0x3f')]=[{'all':!![]}];}_0xa6334e=_[_0xa176('0x3b')]({},_0xa6334e,_0x37392f[_0xa176('0x3e')]);return db['WhatsappTransferReport'][_0xa176('0x45')](_0xa6334e)[_0xa176('0x23')](handleEntityNotFound(_0x3fbbe6,null))[_0xa176('0x23')](respondWithResult(_0x3fbbe6,null))[_0xa176('0x41')](handleError(_0x3fbbe6,null));};exports[_0xa176('0x46')]=function(_0x1a8f87,_0x1b1326){return db[_0xa176('0x2b')]['create'](_0x1a8f87[_0xa176('0x47')],{})['then'](respondWithResult(_0x1b1326,0xc9))['catch'](handleError(_0x1b1326,null));};exports[_0xa176('0x48')]=function(_0x5376d1,_0x110ea1){if(_0x5376d1[_0xa176('0x47')]['id']){delete _0x5376d1['body']['id'];}return db['WhatsappTransferReport'][_0xa176('0x45')]({'where':{'id':_0x5376d1['params']['id']}})['then'](handleEntityNotFound(_0x110ea1,null))[_0xa176('0x23')](saveUpdates(_0x5376d1[_0xa176('0x47')],null))[_0xa176('0x23')](respondWithResult(_0x110ea1,null))[_0xa176('0x41')](handleError(_0x110ea1,null));};exports[_0xa176('0x49')]=function(_0x4497de,_0x4ff8ef){return db[_0xa176('0x2b')][_0xa176('0x45')]({'where':{'id':_0x4497de[_0xa176('0x42')]['id']}})['then'](handleEntityNotFound(_0x4ff8ef,null))[_0xa176('0x23')](removeEntity(_0x4ff8ef,null))[_0xa176('0x41')](handleError(_0x4ff8ef,null));};exports[_0xa176('0x4a')]=function(_0x5aa3ed,_0xcbcb7f){return db[_0xa176('0x2b')][_0xa176('0x4a')]()['then'](respondWithResult(_0xcbcb7f,null))[_0xa176('0x41')](handleError(_0xcbcb7f,null));};