94a79cb0cb192365b25a7296972aef0f713c9277
[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 _0xb153=['jsforce','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../mysqldb','sendStatus','status','end','offset','limit','Content-Range','json','reject','save','update','destroy','then','error','stack','name','send','index','map','rawAttributes','key','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','order','sort','where','pick','filter','merge','type','VIRTUAL','count','includeAll','findAll','rows','catch','show','params','options','WhatsappTransferReport','find','create','body','describe','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','mustache','util','path','to-csv','ejs','crypto'];(function(_0x17d177,_0x255a28){var _0x42a394=function(_0x4b1bba){while(--_0x4b1bba){_0x17d177['push'](_0x17d177['shift']());}};_0x42a394(++_0x255a28);}(_0xb153,0x110));var _0x3b15=function(_0x24355d,_0x4bba3f){_0x24355d=_0x24355d-0x0;var _0x557858=_0xb153[_0x24355d];return _0x557858;};'use strict';var pdf=require(_0x3b15('0x0'));var emlformat=require(_0x3b15('0x1'));var rimraf=require(_0x3b15('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x3b15('0x3'));var rp=require(_0x3b15('0x4'));var moment=require(_0x3b15('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x3b15('0x6'));var util=require(_0x3b15('0x7'));var path=require(_0x3b15('0x8'));var sox=require('sox');var csv=require(_0x3b15('0x9'));var ejs=require(_0x3b15('0xa'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0x3b15('0xb'));var jsforce=require(_0x3b15('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x3b15('0x9'));var querystring=require('querystring');var Papa=require(_0x3b15('0xd'));var Redis=require(_0x3b15('0xe'));var authService=require(_0x3b15('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0x3b15('0x10'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x3b15('0x11'))(_0x3b15('0x12'));var utils=require('../../config/utils');var config=require(_0x3b15('0x13'));var db=require(_0x3b15('0x14'))['db'];function respondWithStatusCode(_0x14ac9c,_0x54f3ee){_0x54f3ee=_0x54f3ee||0xcc;return function(_0x151379){if(_0x151379){return _0x14ac9c[_0x3b15('0x15')](_0x54f3ee);}return _0x14ac9c[_0x3b15('0x16')](_0x54f3ee)[_0x3b15('0x17')]();};}function respondWithResult(_0x34e698,_0x4f1f4f){_0x4f1f4f=_0x4f1f4f||0xc8;return function(_0x52d287){if(_0x52d287){return _0x34e698['status'](_0x4f1f4f)['json'](_0x52d287);}};}function respondWithFilteredResult(_0x58c790,_0x1514d7){return function(_0x5d66a7){if(_0x5d66a7){var _0x23b83d=_0x5d66a7['count'],_0x262829=_0x1514d7[_0x3b15('0x18')],_0x43e97b=_0x1514d7[_0x3b15('0x18')]+_0x1514d7[_0x3b15('0x19')],_0x9ad880;if(_0x43e97b>=_0x23b83d){_0x43e97b=_0x23b83d;_0x9ad880=0xc8;}else{_0x9ad880=0xce;}_0x58c790[_0x3b15('0x16')](_0x9ad880);return _0x58c790['set'](_0x3b15('0x1a'),_0x262829+'-'+_0x43e97b+'/'+_0x23b83d)[_0x3b15('0x1b')](_0x5d66a7);}return null;};}function patchUpdates(_0x4113b9){return function(_0x2498b5){try{jsonpatch['apply'](_0x2498b5,_0x4113b9,!![]);}catch(_0x2c3294){return BPromise[_0x3b15('0x1c')](_0x2c3294);}return _0x2498b5[_0x3b15('0x1d')]();};}function saveUpdates(_0x2cef1c,_0xb23c00){return function(_0x11883c){if(_0x11883c){return _0x11883c[_0x3b15('0x1e')](_0x2cef1c)['then'](function(_0x4d7d98){return _0x4d7d98;});}return null;};}function removeEntity(_0x45abba,_0x20fe22){return function(_0x449a7b){if(_0x449a7b){return _0x449a7b[_0x3b15('0x1f')]()[_0x3b15('0x20')](function(){_0x45abba[_0x3b15('0x16')](0xcc)[_0x3b15('0x17')]();});}};}function handleEntityNotFound(_0x2af225,_0x409680){return function(_0xf413c8){if(!_0xf413c8){_0x2af225['sendStatus'](0x194);}return _0xf413c8;};}function handleError(_0xe33ddd,_0x1ffd75){_0x1ffd75=_0x1ffd75||0x1f4;return function(_0xea79a){logger[_0x3b15('0x21')](_0xea79a[_0x3b15('0x22')]);if(_0xea79a['name']){delete _0xea79a[_0x3b15('0x23')];}_0xe33ddd[_0x3b15('0x16')](_0x1ffd75)[_0x3b15('0x24')](_0xea79a);};}exports[_0x3b15('0x25')]=function(_0x507ec8,_0x533bc3){var _0x7ce4dd={},_0x5596ea={},_0x2b30e8={'count':0x0,'rows':[]};var _0x25c8de=_[_0x3b15('0x26')](db['WhatsappTransferReport'][_0x3b15('0x27')],function(_0x3c7018){return{'name':_0x3c7018['fieldName'],'type':_0x3c7018['type'][_0x3b15('0x28')]};});_0x5596ea[_0x3b15('0x29')]=_[_0x3b15('0x26')](_0x25c8de,_0x3b15('0x23'));_0x5596ea[_0x3b15('0x2a')]=_[_0x3b15('0x2b')](_0x507ec8[_0x3b15('0x2a')]);_0x5596ea[_0x3b15('0x2c')]=_[_0x3b15('0x2d')](_0x5596ea[_0x3b15('0x29')],_0x5596ea[_0x3b15('0x2a')]);_0x7ce4dd['attributes']=_['intersection'](_0x5596ea[_0x3b15('0x29')],qs[_0x3b15('0x2e')](_0x507ec8['query'][_0x3b15('0x2e')]));_0x7ce4dd[_0x3b15('0x2f')]=_0x7ce4dd[_0x3b15('0x2f')][_0x3b15('0x30')]?_0x7ce4dd[_0x3b15('0x2f')]:_0x5596ea[_0x3b15('0x29')];if(!_0x507ec8[_0x3b15('0x2a')][_0x3b15('0x31')]('nolimit')){_0x7ce4dd[_0x3b15('0x19')]=qs['limit'](_0x507ec8[_0x3b15('0x2a')][_0x3b15('0x19')]);_0x7ce4dd[_0x3b15('0x18')]=qs['offset'](_0x507ec8['query'][_0x3b15('0x18')]);}_0x7ce4dd[_0x3b15('0x32')]=qs['sort'](_0x507ec8[_0x3b15('0x2a')][_0x3b15('0x33')]);_0x7ce4dd[_0x3b15('0x34')]=qs[_0x3b15('0x2c')](_[_0x3b15('0x35')](_0x507ec8[_0x3b15('0x2a')],_0x5596ea[_0x3b15('0x2c')]),_0x25c8de);if(_0x507ec8['query'][_0x3b15('0x36')]){_0x7ce4dd[_0x3b15('0x34')]=_[_0x3b15('0x37')](_0x7ce4dd[_0x3b15('0x34')],{'$or':_[_0x3b15('0x26')](_0x25c8de,function(_0x29a4d4){if(_0x29a4d4[_0x3b15('0x38')]!==_0x3b15('0x39')){var _0x2b5303={};_0x2b5303[_0x29a4d4['name']]={'$like':'%'+_0x507ec8[_0x3b15('0x2a')]['filter']+'%'};return _0x2b5303;}})});}_0x7ce4dd=_[_0x3b15('0x37')]({},_0x7ce4dd,_0x507ec8['options']);var _0x2d425e={'where':_0x7ce4dd['where']};return db['WhatsappTransferReport'][_0x3b15('0x3a')](_0x2d425e)['then'](function(_0x3621cc){_0x2b30e8[_0x3b15('0x3a')]=_0x3621cc;if(_0x507ec8[_0x3b15('0x2a')][_0x3b15('0x3b')]){_0x7ce4dd['include']=[{'all':!![]}];}return db['WhatsappTransferReport'][_0x3b15('0x3c')](_0x7ce4dd);})['then'](function(_0x16c368){_0x2b30e8[_0x3b15('0x3d')]=_0x16c368;return _0x2b30e8;})[_0x3b15('0x20')](respondWithFilteredResult(_0x533bc3,_0x7ce4dd))[_0x3b15('0x3e')](handleError(_0x533bc3,null));};exports[_0x3b15('0x3f')]=function(_0x5ce562,_0x235aac){var _0x33ba94={'raw':!![],'where':{'id':_0x5ce562[_0x3b15('0x40')]['id']}},_0x571998={};_0x571998[_0x3b15('0x29')]=_['keys'](db['WhatsappTransferReport'][_0x3b15('0x27')]);_0x571998['query']=_[_0x3b15('0x2b')](_0x5ce562[_0x3b15('0x2a')]);_0x571998[_0x3b15('0x2c')]=_[_0x3b15('0x2d')](_0x571998[_0x3b15('0x29')],_0x571998[_0x3b15('0x2a')]);_0x33ba94[_0x3b15('0x2f')]=_[_0x3b15('0x2d')](_0x571998[_0x3b15('0x29')],qs[_0x3b15('0x2e')](_0x5ce562['query']['fields']));_0x33ba94[_0x3b15('0x2f')]=_0x33ba94[_0x3b15('0x2f')]['length']?_0x33ba94['attributes']:_0x571998['model'];if(_0x5ce562[_0x3b15('0x2a')]['includeAll']){_0x33ba94['include']=[{'all':!![]}];}_0x33ba94=_[_0x3b15('0x37')]({},_0x33ba94,_0x5ce562[_0x3b15('0x41')]);return db[_0x3b15('0x42')][_0x3b15('0x43')](_0x33ba94)['then'](handleEntityNotFound(_0x235aac,null))[_0x3b15('0x20')](respondWithResult(_0x235aac,null))['catch'](handleError(_0x235aac,null));};exports['create']=function(_0x5af815,_0x16fb58){return db['WhatsappTransferReport'][_0x3b15('0x44')](_0x5af815[_0x3b15('0x45')],{})[_0x3b15('0x20')](respondWithResult(_0x16fb58,0xc9))[_0x3b15('0x3e')](handleError(_0x16fb58,null));};exports[_0x3b15('0x1e')]=function(_0xccde03,_0x515653){if(_0xccde03['body']['id']){delete _0xccde03[_0x3b15('0x45')]['id'];}return db['WhatsappTransferReport'][_0x3b15('0x43')]({'where':{'id':_0xccde03[_0x3b15('0x40')]['id']}})[_0x3b15('0x20')](handleEntityNotFound(_0x515653,null))[_0x3b15('0x20')](saveUpdates(_0xccde03[_0x3b15('0x45')],null))[_0x3b15('0x20')](respondWithResult(_0x515653,null))[_0x3b15('0x3e')](handleError(_0x515653,null));};exports[_0x3b15('0x1f')]=function(_0x34db3b,_0x179c3c){return db['WhatsappTransferReport'][_0x3b15('0x43')]({'where':{'id':_0x34db3b[_0x3b15('0x40')]['id']}})[_0x3b15('0x20')](handleEntityNotFound(_0x179c3c,null))[_0x3b15('0x20')](removeEntity(_0x179c3c,null))[_0x3b15('0x3e')](handleError(_0x179c3c,null));};exports[_0x3b15('0x46')]=function(_0x28f369,_0x3ec0c7){return db['WhatsappTransferReport'][_0x3b15('0x46')]()[_0x3b15('0x20')](respondWithResult(_0x3ec0c7,null))['catch'](handleError(_0x3ec0c7,null));};