c915c08f428f228da165bc4fcf148b32acd1cc96
[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 _0x260e=['fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','undefined','limit','count','offset','reject','save','then','error','stack','name','fieldName','type','key','model','map','query','keys','filters','intersection','attributes','fields','order','sort','filter','where','merge','VIRTUAL','WhatsappTransferReport','includeAll','include','rows','show','params','rawAttributes','length','options','find','catch','create','body','update','describe','eml-format','rimraf','zip-dir'];(function(_0x5b644e,_0x2e5e07){var _0x49c6bf=function(_0x3032d9){while(--_0x3032d9){_0x5b644e['push'](_0x5b644e['shift']());}};_0x49c6bf(++_0x2e5e07);}(_0x260e,0x1b9));var _0xe260=function(_0xe65f44,_0x422503){_0xe65f44=_0xe65f44-0x0;var _0x2c8707=_0x260e[_0xe65f44];return _0x2c8707;};'use strict';var emlformat=require(_0xe260('0x0'));var rimraf=require(_0xe260('0x1'));var zipdir=require(_0xe260('0x2'));var jsonpatch=require(_0xe260('0x3'));var rp=require(_0xe260('0x4'));var moment=require(_0xe260('0x5'));var BPromise=require(_0xe260('0x6'));var Mustache=require('mustache');var util=require(_0xe260('0x7'));var path=require(_0xe260('0x8'));var sox=require(_0xe260('0x9'));var csv=require(_0xe260('0xa'));var ejs=require(_0xe260('0xb'));var fs=require('fs');var fs_extra=require(_0xe260('0xc'));var _=require(_0xe260('0xd'));var squel=require(_0xe260('0xe'));var crypto=require('crypto');var jsforce=require(_0xe260('0xf'));var deskjs=require(_0xe260('0x10'));var toCsv=require(_0xe260('0xa'));var querystring=require(_0xe260('0x11'));var Papa=require(_0xe260('0x12'));var Redis=require(_0xe260('0x13'));var authService=require('../../components/auth/service');var qs=require(_0xe260('0x14'));var as=require(_0xe260('0x15'));var hardwareService=require(_0xe260('0x16'));var logger=require(_0xe260('0x17'))(_0xe260('0x18'));var utils=require(_0xe260('0x19'));var config=require(_0xe260('0x1a'));var licenseUtil=require('../../config/license/util');var db=require(_0xe260('0x1b'))['db'];function respondWithStatusCode(_0x28cb31,_0x490000){_0x490000=_0x490000||0xcc;return function(_0x116c01){if(_0x116c01){return _0x28cb31[_0xe260('0x1c')](_0x490000);}return _0x28cb31[_0xe260('0x1d')](_0x490000)[_0xe260('0x1e')]();};}function respondWithResult(_0x55b9e0,_0x54b60c){_0x54b60c=_0x54b60c||0xc8;return function(_0x27510b){if(_0x27510b){return _0x55b9e0[_0xe260('0x1d')](_0x54b60c)[_0xe260('0x1f')](_0x27510b);}};}function respondWithFilteredResult(_0x593e6b,_0x2b0b87){return function(_0x2299b2){if(_0x2299b2){var _0xd045e0=typeof _0x2b0b87['offset']===_0xe260('0x20')&&typeof _0x2b0b87[_0xe260('0x21')]===_0xe260('0x20');var _0x5dc62e=_0x2299b2[_0xe260('0x22')];var _0xc3e54a=_0xd045e0?0x0:_0x2b0b87[_0xe260('0x23')];var _0x3fb865=_0xd045e0?_0x2299b2[_0xe260('0x22')]:_0x2b0b87[_0xe260('0x23')]+_0x2b0b87[_0xe260('0x21')];var _0x470697;if(_0x3fb865>=_0x5dc62e){_0x3fb865=_0x5dc62e;_0x470697=0xc8;}else{_0x470697=0xce;}_0x593e6b[_0xe260('0x1d')](_0x470697);return _0x593e6b['set']('Content-Range',_0xc3e54a+'-'+_0x3fb865+'/'+_0x5dc62e)[_0xe260('0x1f')](_0x2299b2);}return null;};}function patchUpdates(_0x57caf0){return function(_0x58436d){try{jsonpatch['apply'](_0x58436d,_0x57caf0,!![]);}catch(_0x3ce430){return BPromise[_0xe260('0x24')](_0x3ce430);}return _0x58436d[_0xe260('0x25')]();};}function saveUpdates(_0x3fe4e7,_0x83c75c){return function(_0x129ece){if(_0x129ece){return _0x129ece['update'](_0x3fe4e7)[_0xe260('0x26')](function(_0x6082da){return _0x6082da;});}return null;};}function removeEntity(_0x8e44bb,_0x507af0){return function(_0x9330ca){if(_0x9330ca){return _0x9330ca['destroy']()[_0xe260('0x26')](function(){_0x8e44bb[_0xe260('0x1d')](0xcc)[_0xe260('0x1e')]();});}};}function handleEntityNotFound(_0x293f50,_0x4586cf){return function(_0x14ee07){if(!_0x14ee07){_0x293f50[_0xe260('0x1c')](0x194);}return _0x14ee07;};}function handleError(_0x311cb6,_0x1a338e){_0x1a338e=_0x1a338e||0x1f4;return function(_0x1fa015){logger[_0xe260('0x27')](_0x1fa015[_0xe260('0x28')]);if(_0x1fa015[_0xe260('0x29')]){delete _0x1fa015[_0xe260('0x29')];}_0x311cb6[_0xe260('0x1d')](_0x1a338e)['send'](_0x1fa015);};}exports['index']=function(_0x3125e9,_0x261c46){var _0x5bee06={},_0x474e1c={},_0x4cab1a={'count':0x0,'rows':[]};var _0x5dfc7e=_['map'](db['WhatsappTransferReport']['rawAttributes'],function(_0x17c8d1){return{'name':_0x17c8d1[_0xe260('0x2a')],'type':_0x17c8d1[_0xe260('0x2b')][_0xe260('0x2c')]};});_0x474e1c[_0xe260('0x2d')]=_[_0xe260('0x2e')](_0x5dfc7e,'name');_0x474e1c[_0xe260('0x2f')]=_[_0xe260('0x30')](_0x3125e9[_0xe260('0x2f')]);_0x474e1c[_0xe260('0x31')]=_[_0xe260('0x32')](_0x474e1c['model'],_0x474e1c[_0xe260('0x2f')]);_0x5bee06[_0xe260('0x33')]=_[_0xe260('0x32')](_0x474e1c[_0xe260('0x2d')],qs[_0xe260('0x34')](_0x3125e9[_0xe260('0x2f')]['fields']));_0x5bee06['attributes']=_0x5bee06[_0xe260('0x33')]['length']?_0x5bee06[_0xe260('0x33')]:_0x474e1c[_0xe260('0x2d')];if(!_0x3125e9[_0xe260('0x2f')]['hasOwnProperty']('nolimit')){_0x5bee06['limit']=qs['limit'](_0x3125e9[_0xe260('0x2f')][_0xe260('0x21')]);_0x5bee06[_0xe260('0x23')]=qs[_0xe260('0x23')](_0x3125e9['query'][_0xe260('0x23')]);}_0x5bee06[_0xe260('0x35')]=qs[_0xe260('0x36')](_0x3125e9[_0xe260('0x2f')][_0xe260('0x36')]);_0x5bee06['where']=qs[_0xe260('0x31')](_['pick'](_0x3125e9[_0xe260('0x2f')],_0x474e1c[_0xe260('0x31')]),_0x5dfc7e);if(_0x3125e9[_0xe260('0x2f')][_0xe260('0x37')]){_0x5bee06[_0xe260('0x38')]=_[_0xe260('0x39')](_0x5bee06[_0xe260('0x38')],{'$or':_[_0xe260('0x2e')](_0x5dfc7e,function(_0x27f440){if(_0x27f440[_0xe260('0x2b')]!==_0xe260('0x3a')){var _0x31830d={};_0x31830d[_0x27f440[_0xe260('0x29')]]={'$like':'%'+_0x3125e9[_0xe260('0x2f')][_0xe260('0x37')]+'%'};return _0x31830d;}})});}_0x5bee06=_[_0xe260('0x39')]({},_0x5bee06,_0x3125e9['options']);var _0x243131={'where':_0x5bee06[_0xe260('0x38')]};return db[_0xe260('0x3b')][_0xe260('0x22')](_0x243131)[_0xe260('0x26')](function(_0x203e34){_0x4cab1a[_0xe260('0x22')]=_0x203e34;if(_0x3125e9[_0xe260('0x2f')][_0xe260('0x3c')]){_0x5bee06[_0xe260('0x3d')]=[{'all':!![]}];}return db[_0xe260('0x3b')]['findAll'](_0x5bee06);})[_0xe260('0x26')](function(_0x147254){_0x4cab1a[_0xe260('0x3e')]=_0x147254;return _0x4cab1a;})[_0xe260('0x26')](respondWithFilteredResult(_0x261c46,_0x5bee06))['catch'](handleError(_0x261c46,null));};exports[_0xe260('0x3f')]=function(_0x4feaf5,_0x3460c8){var _0x3653dd={'raw':!![],'where':{'id':_0x4feaf5[_0xe260('0x40')]['id']}},_0xa8d388={};_0xa8d388['model']=_[_0xe260('0x30')](db['WhatsappTransferReport'][_0xe260('0x41')]);_0xa8d388[_0xe260('0x2f')]=_[_0xe260('0x30')](_0x4feaf5[_0xe260('0x2f')]);_0xa8d388[_0xe260('0x31')]=_['intersection'](_0xa8d388[_0xe260('0x2d')],_0xa8d388[_0xe260('0x2f')]);_0x3653dd['attributes']=_['intersection'](_0xa8d388[_0xe260('0x2d')],qs[_0xe260('0x34')](_0x4feaf5[_0xe260('0x2f')][_0xe260('0x34')]));_0x3653dd[_0xe260('0x33')]=_0x3653dd[_0xe260('0x33')][_0xe260('0x42')]?_0x3653dd['attributes']:_0xa8d388[_0xe260('0x2d')];if(_0x4feaf5[_0xe260('0x2f')]['includeAll']){_0x3653dd[_0xe260('0x3d')]=[{'all':!![]}];}_0x3653dd=_[_0xe260('0x39')]({},_0x3653dd,_0x4feaf5[_0xe260('0x43')]);return db[_0xe260('0x3b')][_0xe260('0x44')](_0x3653dd)[_0xe260('0x26')](handleEntityNotFound(_0x3460c8,null))[_0xe260('0x26')](respondWithResult(_0x3460c8,null))[_0xe260('0x45')](handleError(_0x3460c8,null));};exports[_0xe260('0x46')]=function(_0x5069be,_0x110379){return db[_0xe260('0x3b')]['create'](_0x5069be[_0xe260('0x47')],{})['then'](respondWithResult(_0x110379,0xc9))[_0xe260('0x45')](handleError(_0x110379,null));};exports[_0xe260('0x48')]=function(_0x256e9f,_0x553e3a){if(_0x256e9f[_0xe260('0x47')]['id']){delete _0x256e9f[_0xe260('0x47')]['id'];}return db['WhatsappTransferReport'][_0xe260('0x44')]({'where':{'id':_0x256e9f['params']['id']}})[_0xe260('0x26')](handleEntityNotFound(_0x553e3a,null))[_0xe260('0x26')](saveUpdates(_0x256e9f[_0xe260('0x47')],null))[_0xe260('0x26')](respondWithResult(_0x553e3a,null))[_0xe260('0x45')](handleError(_0x553e3a,null));};exports['destroy']=function(_0x5d3dd6,_0x30bba0){return db[_0xe260('0x3b')][_0xe260('0x44')]({'where':{'id':_0x5d3dd6[_0xe260('0x40')]['id']}})[_0xe260('0x26')](handleEntityNotFound(_0x30bba0,null))['then'](removeEntity(_0x30bba0,null))['catch'](handleError(_0x30bba0,null));};exports[_0xe260('0x49')]=function(_0x3aa719,_0x4c7748){return db[_0xe260('0x3b')][_0xe260('0x49')]()[_0xe260('0x26')](respondWithResult(_0x4c7748,null))[_0xe260('0x45')](handleError(_0x4c7748,null));};