fcb3e22aad91364b12ec2e367a185adb7e45333d
[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 _0xa801=['where','map','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','keys','create','body','find','describe','rimraf','fast-json-patch','request-promise','moment','util','path','sox','ejs','fs-extra','lodash','crypto','jsforce','desk.js','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','end','json','offset','undefined','count','limit','set','Content-Range','reject','update','then','destroy','status','error','stack','name','send','WhatsappTransferReport','rawAttributes','fieldName','type','model','query','filters','intersection','attributes','fields','nolimit','order','sort','pick','filter','merge'];(function(_0x4565bf,_0x5ad9d6){var _0x5610ba=function(_0x170988){while(--_0x170988){_0x4565bf['push'](_0x4565bf['shift']());}};_0x5610ba(++_0x5ad9d6);}(_0xa801,0x138));var _0x1a80=function(_0x3b28f8,_0x25bcc9){_0x3b28f8=_0x3b28f8-0x0;var _0x3a7764=_0xa801[_0x3b28f8];return _0x3a7764;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x1a80('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x1a80('0x1'));var rp=require(_0x1a80('0x2'));var moment=require(_0x1a80('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x1a80('0x4'));var path=require(_0x1a80('0x5'));var sox=require(_0x1a80('0x6'));var csv=require('to-csv');var ejs=require(_0x1a80('0x7'));var fs=require('fs');var fs_extra=require(_0x1a80('0x8'));var _=require(_0x1a80('0x9'));var squel=require('squel');var crypto=require(_0x1a80('0xa'));var jsforce=require(_0x1a80('0xb'));var deskjs=require(_0x1a80('0xc'));var toCsv=require(_0x1a80('0xd'));var querystring=require(_0x1a80('0xe'));var Papa=require(_0x1a80('0xf'));var Redis=require('ioredis');var authService=require(_0x1a80('0x10'));var qs=require(_0x1a80('0x11'));var as=require(_0x1a80('0x12'));var hardwareService=require(_0x1a80('0x13'));var logger=require(_0x1a80('0x14'))('api');var utils=require(_0x1a80('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0x1a80('0x16'));var db=require(_0x1a80('0x17'))['db'];function respondWithStatusCode(_0x16a5cd,_0x2d9a15){_0x2d9a15=_0x2d9a15||0xcc;return function(_0x26b20c){if(_0x26b20c){return _0x16a5cd[_0x1a80('0x18')](_0x2d9a15);}return _0x16a5cd['status'](_0x2d9a15)[_0x1a80('0x19')]();};}function respondWithResult(_0x5702ab,_0x4fa45b){_0x4fa45b=_0x4fa45b||0xc8;return function(_0x20a674){if(_0x20a674){return _0x5702ab['status'](_0x4fa45b)[_0x1a80('0x1a')](_0x20a674);}};}function respondWithFilteredResult(_0x4a217b,_0xf75c3d){return function(_0x3dc54b){if(_0x3dc54b){var _0x44f707=typeof _0xf75c3d[_0x1a80('0x1b')]===_0x1a80('0x1c')&&typeof _0xf75c3d['limit']===_0x1a80('0x1c');var _0x1a79ab=_0x3dc54b[_0x1a80('0x1d')];var _0x2f984a=_0x44f707?0x0:_0xf75c3d[_0x1a80('0x1b')];var _0x2cdea0=_0x44f707?_0x3dc54b[_0x1a80('0x1d')]:_0xf75c3d['offset']+_0xf75c3d[_0x1a80('0x1e')];var _0xf9ee0c;if(_0x2cdea0>=_0x1a79ab){_0x2cdea0=_0x1a79ab;_0xf9ee0c=0xc8;}else{_0xf9ee0c=0xce;}_0x4a217b['status'](_0xf9ee0c);return _0x4a217b[_0x1a80('0x1f')](_0x1a80('0x20'),_0x2f984a+'-'+_0x2cdea0+'/'+_0x1a79ab)[_0x1a80('0x1a')](_0x3dc54b);}return null;};}function patchUpdates(_0x276e79){return function(_0x346a3a){try{jsonpatch['apply'](_0x346a3a,_0x276e79,!![]);}catch(_0x4c3375){return BPromise[_0x1a80('0x21')](_0x4c3375);}return _0x346a3a['save']();};}function saveUpdates(_0x5b5246,_0x289bc5){return function(_0x2aaaf3){if(_0x2aaaf3){return _0x2aaaf3[_0x1a80('0x22')](_0x5b5246)[_0x1a80('0x23')](function(_0x377904){return _0x377904;});}return null;};}function removeEntity(_0xbab83c,_0x5f5c58){return function(_0x1a2371){if(_0x1a2371){return _0x1a2371[_0x1a80('0x24')]()[_0x1a80('0x23')](function(){_0xbab83c[_0x1a80('0x25')](0xcc)['end']();});}};}function handleEntityNotFound(_0xc79b8c,_0x28140a){return function(_0x52da01){if(!_0x52da01){_0xc79b8c['sendStatus'](0x194);}return _0x52da01;};}function handleError(_0xbe95da,_0x161ce3){_0x161ce3=_0x161ce3||0x1f4;return function(_0xa79e6b){logger[_0x1a80('0x26')](_0xa79e6b[_0x1a80('0x27')]);if(_0xa79e6b[_0x1a80('0x28')]){delete _0xa79e6b['name'];}_0xbe95da[_0x1a80('0x25')](_0x161ce3)[_0x1a80('0x29')](_0xa79e6b);};}exports['index']=function(_0xe4bad,_0x40a7b8){var _0x8e9568={},_0x5ee05b={},_0x3ad372={'count':0x0,'rows':[]};var _0x13eddd=_['map'](db[_0x1a80('0x2a')][_0x1a80('0x2b')],function(_0xf74d04){return{'name':_0xf74d04[_0x1a80('0x2c')],'type':_0xf74d04[_0x1a80('0x2d')]['key']};});_0x5ee05b[_0x1a80('0x2e')]=_['map'](_0x13eddd,_0x1a80('0x28'));_0x5ee05b[_0x1a80('0x2f')]=_['keys'](_0xe4bad[_0x1a80('0x2f')]);_0x5ee05b[_0x1a80('0x30')]=_[_0x1a80('0x31')](_0x5ee05b[_0x1a80('0x2e')],_0x5ee05b['query']);_0x8e9568[_0x1a80('0x32')]=_[_0x1a80('0x31')](_0x5ee05b['model'],qs[_0x1a80('0x33')](_0xe4bad['query']['fields']));_0x8e9568[_0x1a80('0x32')]=_0x8e9568[_0x1a80('0x32')]['length']?_0x8e9568[_0x1a80('0x32')]:_0x5ee05b[_0x1a80('0x2e')];if(!_0xe4bad[_0x1a80('0x2f')]['hasOwnProperty'](_0x1a80('0x34'))){_0x8e9568[_0x1a80('0x1e')]=qs['limit'](_0xe4bad[_0x1a80('0x2f')][_0x1a80('0x1e')]);_0x8e9568['offset']=qs[_0x1a80('0x1b')](_0xe4bad[_0x1a80('0x2f')][_0x1a80('0x1b')]);}_0x8e9568[_0x1a80('0x35')]=qs[_0x1a80('0x36')](_0xe4bad[_0x1a80('0x2f')]['sort']);_0x8e9568['where']=qs[_0x1a80('0x30')](_[_0x1a80('0x37')](_0xe4bad[_0x1a80('0x2f')],_0x5ee05b[_0x1a80('0x30')]),_0x13eddd);if(_0xe4bad[_0x1a80('0x2f')][_0x1a80('0x38')]){_0x8e9568['where']=_[_0x1a80('0x39')](_0x8e9568[_0x1a80('0x3a')],{'$or':_[_0x1a80('0x3b')](_0x13eddd,function(_0xa00ae6){if(_0xa00ae6[_0x1a80('0x2d')]!==_0x1a80('0x3c')){var _0x420563={};_0x420563[_0xa00ae6[_0x1a80('0x28')]]={'$like':'%'+_0xe4bad[_0x1a80('0x2f')][_0x1a80('0x38')]+'%'};return _0x420563;}})});}_0x8e9568=_[_0x1a80('0x39')]({},_0x8e9568,_0xe4bad[_0x1a80('0x3d')]);var _0x2e13b3={'where':_0x8e9568[_0x1a80('0x3a')]};return db[_0x1a80('0x2a')][_0x1a80('0x1d')](_0x2e13b3)[_0x1a80('0x23')](function(_0x2e3eaa){_0x3ad372[_0x1a80('0x1d')]=_0x2e3eaa;if(_0xe4bad['query'][_0x1a80('0x3e')]){_0x8e9568[_0x1a80('0x3f')]=[{'all':!![]}];}return db[_0x1a80('0x2a')][_0x1a80('0x40')](_0x8e9568);})[_0x1a80('0x23')](function(_0x497557){_0x3ad372[_0x1a80('0x41')]=_0x497557;return _0x3ad372;})['then'](respondWithFilteredResult(_0x40a7b8,_0x8e9568))[_0x1a80('0x42')](handleError(_0x40a7b8,null));};exports[_0x1a80('0x43')]=function(_0x1c05e6,_0x1be4eb){var _0x98084f={'raw':!![],'where':{'id':_0x1c05e6[_0x1a80('0x44')]['id']}},_0x33f0b4={};_0x33f0b4[_0x1a80('0x2e')]=_[_0x1a80('0x45')](db['WhatsappTransferReport']['rawAttributes']);_0x33f0b4[_0x1a80('0x2f')]=_['keys'](_0x1c05e6[_0x1a80('0x2f')]);_0x33f0b4['filters']=_['intersection'](_0x33f0b4[_0x1a80('0x2e')],_0x33f0b4['query']);_0x98084f[_0x1a80('0x32')]=_[_0x1a80('0x31')](_0x33f0b4['model'],qs[_0x1a80('0x33')](_0x1c05e6[_0x1a80('0x2f')][_0x1a80('0x33')]));_0x98084f[_0x1a80('0x32')]=_0x98084f[_0x1a80('0x32')]['length']?_0x98084f['attributes']:_0x33f0b4[_0x1a80('0x2e')];if(_0x1c05e6[_0x1a80('0x2f')][_0x1a80('0x3e')]){_0x98084f[_0x1a80('0x3f')]=[{'all':!![]}];}_0x98084f=_[_0x1a80('0x39')]({},_0x98084f,_0x1c05e6['options']);return db['WhatsappTransferReport']['find'](_0x98084f)[_0x1a80('0x23')](handleEntityNotFound(_0x1be4eb,null))['then'](respondWithResult(_0x1be4eb,null))[_0x1a80('0x42')](handleError(_0x1be4eb,null));};exports[_0x1a80('0x46')]=function(_0x26b7a7,_0x697280){return db['WhatsappTransferReport'][_0x1a80('0x46')](_0x26b7a7[_0x1a80('0x47')],{})['then'](respondWithResult(_0x697280,0xc9))[_0x1a80('0x42')](handleError(_0x697280,null));};exports[_0x1a80('0x22')]=function(_0x4df716,_0x37ca91){if(_0x4df716[_0x1a80('0x47')]['id']){delete _0x4df716[_0x1a80('0x47')]['id'];}return db[_0x1a80('0x2a')][_0x1a80('0x48')]({'where':{'id':_0x4df716[_0x1a80('0x44')]['id']}})[_0x1a80('0x23')](handleEntityNotFound(_0x37ca91,null))[_0x1a80('0x23')](saveUpdates(_0x4df716[_0x1a80('0x47')],null))[_0x1a80('0x23')](respondWithResult(_0x37ca91,null))[_0x1a80('0x42')](handleError(_0x37ca91,null));};exports['destroy']=function(_0x5f3bf2,_0x349bae){return db['WhatsappTransferReport'][_0x1a80('0x48')]({'where':{'id':_0x5f3bf2[_0x1a80('0x44')]['id']}})[_0x1a80('0x23')](handleEntityNotFound(_0x349bae,null))['then'](removeEntity(_0x349bae,null))[_0x1a80('0x42')](handleError(_0x349bae,null));};exports['describe']=function(_0x13b324,_0x239e0c){return db['WhatsappTransferReport'][_0x1a80('0x49')]()['then'](respondWithResult(_0x239e0c,null))[_0x1a80('0x42')](handleError(_0x239e0c,null));};