c84f2488cbf1d40609b2ea6888f12c949b2de0ba
[motion2.git] / server / api / whatsappApplication / whatsappApplication.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 _0xaa8d=['end','status','count','offset','Content-Range','json','apply','reject','update','then','stack','name','send','map','WhatsappApplication','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','pick','filter','where','merge','type','VIRTUAL','includeAll','rows','catch','show','rawAttributes','include','find','create','body','params','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/license/util','sendStatus'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0xaa8d,0x76));var _0xdaa8=function(_0x1154a5,_0x1b7098){_0x1154a5=_0x1154a5-0x0;var _0x59db30=_0xaa8d[_0x1154a5];return _0x59db30;};'use strict';var pdf=require(_0xdaa8('0x0'));var emlformat=require(_0xdaa8('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xdaa8('0x2'));var jsonpatch=require(_0xdaa8('0x3'));var rp=require(_0xdaa8('0x4'));var moment=require(_0xdaa8('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xdaa8('0x6'));var util=require(_0xdaa8('0x7'));var path=require(_0xdaa8('0x8'));var sox=require(_0xdaa8('0x9'));var csv=require(_0xdaa8('0xa'));var ejs=require(_0xdaa8('0xb'));var fs=require('fs');var _=require(_0xdaa8('0xc'));var squel=require(_0xdaa8('0xd'));var crypto=require(_0xdaa8('0xe'));var jsforce=require(_0xdaa8('0xf'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xdaa8('0x10'));var Redis=require(_0xdaa8('0x11'));var authService=require(_0xdaa8('0x12'));var qs=require(_0xdaa8('0x13'));var as=require(_0xdaa8('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xdaa8('0x15'))(_0xdaa8('0x16'));var utils=require(_0xdaa8('0x17'));var config=require('../../config/environment');var licenseUtil=require(_0xdaa8('0x18'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x67e1d2,_0x260780){_0x260780=_0x260780||0xcc;return function(_0x3016f9){if(_0x3016f9){return _0x67e1d2[_0xdaa8('0x19')](_0x260780);}return _0x67e1d2['status'](_0x260780)[_0xdaa8('0x1a')]();};}function respondWithResult(_0x1b42eb,_0x174a4d){_0x174a4d=_0x174a4d||0xc8;return function(_0x529181){if(_0x529181){return _0x1b42eb[_0xdaa8('0x1b')](_0x174a4d)['json'](_0x529181);}};}function respondWithFilteredResult(_0x49da3f,_0x426507){return function(_0x3a63ec){if(_0x3a63ec){var _0x4bd098=_0x3a63ec[_0xdaa8('0x1c')],_0x2d8d9a=_0x426507['offset'],_0x23182f=_0x426507[_0xdaa8('0x1d')]+_0x426507['limit'],_0x58b46f;if(_0x23182f>=_0x4bd098){_0x23182f=_0x4bd098;_0x58b46f=0xc8;}else{_0x58b46f=0xce;}_0x49da3f[_0xdaa8('0x1b')](_0x58b46f);return _0x49da3f['set'](_0xdaa8('0x1e'),_0x2d8d9a+'-'+_0x23182f+'/'+_0x4bd098)[_0xdaa8('0x1f')](_0x3a63ec);}return null;};}function patchUpdates(_0x5a8874){return function(_0x3f436f){try{jsonpatch[_0xdaa8('0x20')](_0x3f436f,_0x5a8874,!![]);}catch(_0x4e1313){return BPromise[_0xdaa8('0x21')](_0x4e1313);}return _0x3f436f['save']();};}function saveUpdates(_0x1be763,_0x1992bc){return function(_0x5f32de){if(_0x5f32de){return _0x5f32de[_0xdaa8('0x22')](_0x1be763)[_0xdaa8('0x23')](function(_0x2a4d47){return _0x2a4d47;});}return null;};}function removeEntity(_0x257059,_0xdc012d){return function(_0x12d5ba){if(_0x12d5ba){return _0x12d5ba['destroy']()[_0xdaa8('0x23')](function(){_0x257059['status'](0xcc)[_0xdaa8('0x1a')]();});}};}function handleEntityNotFound(_0x40a05b,_0x19bede){return function(_0x2bc70b){if(!_0x2bc70b){_0x40a05b[_0xdaa8('0x19')](0x194);}return _0x2bc70b;};}function handleError(_0x36a1ed,_0x3dbf2e){_0x3dbf2e=_0x3dbf2e||0x1f4;return function(_0x3f9a64){logger['error'](_0x3f9a64[_0xdaa8('0x24')]);if(_0x3f9a64[_0xdaa8('0x25')]){delete _0x3f9a64[_0xdaa8('0x25')];}_0x36a1ed[_0xdaa8('0x1b')](_0x3dbf2e)[_0xdaa8('0x26')](_0x3f9a64);};}exports['index']=function(_0x1afa3d,_0x1dc41a){var _0x5b4f60={},_0xe98162={},_0x3db72d={'count':0x0,'rows':[]};var _0x1d934d=_[_0xdaa8('0x27')](db[_0xdaa8('0x28')]['rawAttributes'],function(_0x47fb3a){return{'name':_0x47fb3a[_0xdaa8('0x29')],'type':_0x47fb3a['type'][_0xdaa8('0x2a')]};});_0xe98162[_0xdaa8('0x2b')]=_[_0xdaa8('0x27')](_0x1d934d,_0xdaa8('0x25'));_0xe98162[_0xdaa8('0x2c')]=_[_0xdaa8('0x2d')](_0x1afa3d[_0xdaa8('0x2c')]);_0xe98162[_0xdaa8('0x2e')]=_[_0xdaa8('0x2f')](_0xe98162[_0xdaa8('0x2b')],_0xe98162['query']);_0x5b4f60[_0xdaa8('0x30')]=_[_0xdaa8('0x2f')](_0xe98162['model'],qs[_0xdaa8('0x31')](_0x1afa3d[_0xdaa8('0x2c')]['fields']));_0x5b4f60['attributes']=_0x5b4f60[_0xdaa8('0x30')][_0xdaa8('0x32')]?_0x5b4f60['attributes']:_0xe98162[_0xdaa8('0x2b')];if(!_0x1afa3d[_0xdaa8('0x2c')][_0xdaa8('0x33')](_0xdaa8('0x34'))){_0x5b4f60[_0xdaa8('0x35')]=qs[_0xdaa8('0x35')](_0x1afa3d[_0xdaa8('0x2c')]['limit']);_0x5b4f60['offset']=qs[_0xdaa8('0x1d')](_0x1afa3d[_0xdaa8('0x2c')][_0xdaa8('0x1d')]);}_0x5b4f60[_0xdaa8('0x36')]=qs[_0xdaa8('0x37')](_0x1afa3d[_0xdaa8('0x2c')][_0xdaa8('0x37')]);_0x5b4f60['where']=qs[_0xdaa8('0x2e')](_[_0xdaa8('0x38')](_0x1afa3d['query'],_0xe98162[_0xdaa8('0x2e')]),_0x1d934d);if(_0x1afa3d[_0xdaa8('0x2c')][_0xdaa8('0x39')]){_0x5b4f60[_0xdaa8('0x3a')]=_[_0xdaa8('0x3b')](_0x5b4f60[_0xdaa8('0x3a')],{'$or':_[_0xdaa8('0x27')](_0x1d934d,function(_0x4fa90b){if(_0x4fa90b[_0xdaa8('0x3c')]!==_0xdaa8('0x3d')){var _0x4d1a90={};_0x4d1a90[_0x4fa90b[_0xdaa8('0x25')]]={'$like':'%'+_0x1afa3d[_0xdaa8('0x2c')][_0xdaa8('0x39')]+'%'};return _0x4d1a90;}})});}_0x5b4f60=_['merge']({},_0x5b4f60,_0x1afa3d['options']);var _0x2e77fc={'where':_0x5b4f60['where']};return db[_0xdaa8('0x28')][_0xdaa8('0x1c')](_0x2e77fc)[_0xdaa8('0x23')](function(_0x5ec94f){_0x3db72d[_0xdaa8('0x1c')]=_0x5ec94f;if(_0x1afa3d[_0xdaa8('0x2c')][_0xdaa8('0x3e')]){_0x5b4f60['include']=[{'all':!![]}];}return db['WhatsappApplication']['findAll'](_0x5b4f60);})[_0xdaa8('0x23')](function(_0x296a78){_0x3db72d[_0xdaa8('0x3f')]=_0x296a78;return _0x3db72d;})['then'](respondWithFilteredResult(_0x1dc41a,_0x5b4f60))[_0xdaa8('0x40')](handleError(_0x1dc41a,null));};exports[_0xdaa8('0x41')]=function(_0x380281,_0x1b5201){var _0x5a03c0={'raw':!![],'where':{'id':_0x380281['params']['id']}},_0x563bc4={};_0x563bc4[_0xdaa8('0x2b')]=_[_0xdaa8('0x2d')](db['WhatsappApplication'][_0xdaa8('0x42')]);_0x563bc4['query']=_[_0xdaa8('0x2d')](_0x380281[_0xdaa8('0x2c')]);_0x563bc4[_0xdaa8('0x2e')]=_[_0xdaa8('0x2f')](_0x563bc4[_0xdaa8('0x2b')],_0x563bc4[_0xdaa8('0x2c')]);_0x5a03c0[_0xdaa8('0x30')]=_[_0xdaa8('0x2f')](_0x563bc4[_0xdaa8('0x2b')],qs[_0xdaa8('0x31')](_0x380281[_0xdaa8('0x2c')][_0xdaa8('0x31')]));_0x5a03c0[_0xdaa8('0x30')]=_0x5a03c0[_0xdaa8('0x30')][_0xdaa8('0x32')]?_0x5a03c0[_0xdaa8('0x30')]:_0x563bc4['model'];if(_0x380281['query'][_0xdaa8('0x3e')]){_0x5a03c0[_0xdaa8('0x43')]=[{'all':!![]}];}_0x5a03c0=_[_0xdaa8('0x3b')]({},_0x5a03c0,_0x380281['options']);return db[_0xdaa8('0x28')][_0xdaa8('0x44')](_0x5a03c0)[_0xdaa8('0x23')](handleEntityNotFound(_0x1b5201,null))[_0xdaa8('0x23')](respondWithResult(_0x1b5201,null))['catch'](handleError(_0x1b5201,null));};exports[_0xdaa8('0x45')]=function(_0x2e4609,_0x236668){return db[_0xdaa8('0x28')][_0xdaa8('0x45')](_0x2e4609[_0xdaa8('0x46')],{})[_0xdaa8('0x23')](respondWithResult(_0x236668,0xc9))[_0xdaa8('0x40')](handleError(_0x236668,null));};exports['update']=function(_0xca590c,_0x11fc84){if(_0xca590c['body']['id']){delete _0xca590c[_0xdaa8('0x46')]['id'];}return db[_0xdaa8('0x28')][_0xdaa8('0x44')]({'where':{'id':_0xca590c[_0xdaa8('0x47')]['id']}})[_0xdaa8('0x23')](handleEntityNotFound(_0x11fc84,null))[_0xdaa8('0x23')](saveUpdates(_0xca590c[_0xdaa8('0x46')],null))['then'](respondWithResult(_0x11fc84,null))['catch'](handleError(_0x11fc84,null));};exports['destroy']=function(_0x399fea,_0x4a50c4){return db['WhatsappApplication'][_0xdaa8('0x44')]({'where':{'id':_0x399fea['params']['id']}})[_0xdaa8('0x23')](handleEntityNotFound(_0x4a50c4,null))[_0xdaa8('0x23')](removeEntity(_0x4a50c4,null))[_0xdaa8('0x40')](handleError(_0x4a50c4,null));};