9690114b07d093dca272f54fecbcb51551fcb9e6
[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 _0x797c=['Content-Range','then','end','error','stack','name','send','index','map','rawAttributes','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','filters','pick','filter','merge','type','VIRTUAL','options','WhatsappApplication','includeAll','include','rows','catch','show','params','filtears','find','create','body','eml-format','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','count','offset','set'];(function(_0x3680b6,_0x3882ed){var _0x419ba9=function(_0x1396f5){while(--_0x1396f5){_0x3680b6['push'](_0x3680b6['shift']());}};_0x419ba9(++_0x3882ed);}(_0x797c,0x14e));var _0xc797=function(_0x457b64,_0x49a219){_0x457b64=_0x457b64-0x0;var _0x437111=_0x797c[_0x457b64];return _0x437111;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xc797('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xc797('0x1'));var jsonpatch=require(_0xc797('0x2'));var rp=require('request-promise');var moment=require(_0xc797('0x3'));var BPromise=require(_0xc797('0x4'));var Mustache=require(_0xc797('0x5'));var util=require(_0xc797('0x6'));var path=require(_0xc797('0x7'));var sox=require(_0xc797('0x8'));var csv=require(_0xc797('0x9'));var ejs=require(_0xc797('0xa'));var fs=require('fs');var _=require(_0xc797('0xb'));var squel=require('squel');var crypto=require(_0xc797('0xc'));var jsforce=require(_0xc797('0xd'));var deskjs=require(_0xc797('0xe'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xc797('0xf'));var Redis=require(_0xc797('0x10'));var authService=require(_0xc797('0x11'));var qs=require(_0xc797('0x12'));var as=require(_0xc797('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xc797('0x14'))(_0xc797('0x15'));var utils=require('../../config/utils');var config=require(_0xc797('0x16'));var licenseUtil=require(_0xc797('0x17'));var db=require(_0xc797('0x18'))['db'];function respondWithStatusCode(_0x5079a7,_0x2bb27e){_0x2bb27e=_0x2bb27e||0xcc;return function(_0x456f27){if(_0x456f27){return _0x5079a7[_0xc797('0x19')](_0x2bb27e);}return _0x5079a7[_0xc797('0x1a')](_0x2bb27e)['end']();};}function respondWithResult(_0x41179d,_0x21cfbf){_0x21cfbf=_0x21cfbf||0xc8;return function(_0x4534f9){if(_0x4534f9){return _0x41179d[_0xc797('0x1a')](_0x21cfbf)[_0xc797('0x1b')](_0x4534f9);}};}function respondWithFilteredResult(_0x18dc78,_0x19406e){return function(_0x14c315){if(_0x14c315){var _0x4a729a=_0x14c315[_0xc797('0x1c')],_0x29130d=_0x19406e[_0xc797('0x1d')],_0x5e2417=_0x19406e['offset']+_0x19406e['limit'],_0x1211b3;if(_0x5e2417>=_0x4a729a){_0x5e2417=_0x4a729a;_0x1211b3=0xc8;}else{_0x1211b3=0xce;}_0x18dc78['status'](_0x1211b3);return _0x18dc78[_0xc797('0x1e')](_0xc797('0x1f'),_0x29130d+'-'+_0x5e2417+'/'+_0x4a729a)[_0xc797('0x1b')](_0x14c315);}return null;};}function patchUpdates(_0x432142){return function(_0xa3592f){try{jsonpatch['apply'](_0xa3592f,_0x432142,!![]);}catch(_0x49c298){return BPromise['reject'](_0x49c298);}return _0xa3592f['save']();};}function saveUpdates(_0x4e88ec,_0x5f38fe){return function(_0x2eb240){if(_0x2eb240){return _0x2eb240['update'](_0x4e88ec)[_0xc797('0x20')](function(_0x460594){return _0x460594;});}return null;};}function removeEntity(_0x4fa1d5,_0x3583c5){return function(_0x167c9a){if(_0x167c9a){return _0x167c9a['destroy']()['then'](function(){_0x4fa1d5[_0xc797('0x1a')](0xcc)[_0xc797('0x21')]();});}};}function handleEntityNotFound(_0x12ee05,_0x3123b5){return function(_0x3fee6f){if(!_0x3fee6f){_0x12ee05[_0xc797('0x19')](0x194);}return _0x3fee6f;};}function handleError(_0x1b60eb,_0x20da5e){_0x20da5e=_0x20da5e||0x1f4;return function(_0x4f473f){logger[_0xc797('0x22')](_0x4f473f[_0xc797('0x23')]);if(_0x4f473f[_0xc797('0x24')]){delete _0x4f473f['name'];}_0x1b60eb[_0xc797('0x1a')](_0x20da5e)[_0xc797('0x25')](_0x4f473f);};}exports[_0xc797('0x26')]=function(_0x12997a,_0x44556e){var _0x18723f={},_0x9ef54={},_0xb97cb={'count':0x0,'rows':[]};var _0x18f97a=_[_0xc797('0x27')](db['WhatsappApplication'][_0xc797('0x28')],function(_0x2599c5){return{'name':_0x2599c5['fieldName'],'type':_0x2599c5['type'][_0xc797('0x29')]};});_0x9ef54[_0xc797('0x2a')]=_[_0xc797('0x27')](_0x18f97a,_0xc797('0x24'));_0x9ef54[_0xc797('0x2b')]=_[_0xc797('0x2c')](_0x12997a['query']);_0x9ef54['filters']=_[_0xc797('0x2d')](_0x9ef54['model'],_0x9ef54[_0xc797('0x2b')]);_0x18723f[_0xc797('0x2e')]=_[_0xc797('0x2d')](_0x9ef54[_0xc797('0x2a')],qs[_0xc797('0x2f')](_0x12997a[_0xc797('0x2b')][_0xc797('0x2f')]));_0x18723f['attributes']=_0x18723f[_0xc797('0x2e')][_0xc797('0x30')]?_0x18723f[_0xc797('0x2e')]:_0x9ef54['model'];if(!_0x12997a[_0xc797('0x2b')][_0xc797('0x31')](_0xc797('0x32'))){_0x18723f[_0xc797('0x33')]=qs[_0xc797('0x33')](_0x12997a[_0xc797('0x2b')]['limit']);_0x18723f[_0xc797('0x1d')]=qs[_0xc797('0x1d')](_0x12997a[_0xc797('0x2b')]['offset']);}_0x18723f[_0xc797('0x34')]=qs[_0xc797('0x35')](_0x12997a['query']['sort']);_0x18723f[_0xc797('0x36')]=qs[_0xc797('0x37')](_[_0xc797('0x38')](_0x12997a[_0xc797('0x2b')],_0x9ef54[_0xc797('0x37')]),_0x18f97a);if(_0x12997a[_0xc797('0x2b')][_0xc797('0x39')]){_0x18723f[_0xc797('0x36')]=_[_0xc797('0x3a')](_0x18723f['where'],{'$or':_['map'](_0x18f97a,function(_0x212a76){if(_0x212a76[_0xc797('0x3b')]!==_0xc797('0x3c')){var _0x54f456={};_0x54f456[_0x212a76[_0xc797('0x24')]]={'$like':'%'+_0x12997a['query'][_0xc797('0x39')]+'%'};return _0x54f456;}})});}_0x18723f=_[_0xc797('0x3a')]({},_0x18723f,_0x12997a[_0xc797('0x3d')]);var _0x3ee0a1={'where':_0x18723f[_0xc797('0x36')]};return db[_0xc797('0x3e')][_0xc797('0x1c')](_0x3ee0a1)[_0xc797('0x20')](function(_0x46b5db){_0xb97cb[_0xc797('0x1c')]=_0x46b5db;if(_0x12997a[_0xc797('0x2b')][_0xc797('0x3f')]){_0x18723f[_0xc797('0x40')]=[{'all':!![]}];}return db['WhatsappApplication']['findAll'](_0x18723f);})[_0xc797('0x20')](function(_0x283ebb){_0xb97cb[_0xc797('0x41')]=_0x283ebb;return _0xb97cb;})[_0xc797('0x20')](respondWithFilteredResult(_0x44556e,_0x18723f))[_0xc797('0x42')](handleError(_0x44556e,null));};exports[_0xc797('0x43')]=function(_0x3c7665,_0x237b48){var _0x32aa71={'raw':!![],'where':{'id':_0x3c7665[_0xc797('0x44')]['id']}},_0x389920={};_0x389920[_0xc797('0x2a')]=_[_0xc797('0x2c')](db[_0xc797('0x3e')][_0xc797('0x28')]);_0x389920[_0xc797('0x2b')]=_[_0xc797('0x2c')](_0x3c7665['query']);_0x389920[_0xc797('0x45')]=_['intersection'](_0x389920[_0xc797('0x2a')],_0x389920[_0xc797('0x2b')]);_0x32aa71['attributes']=_[_0xc797('0x2d')](_0x389920['model'],qs[_0xc797('0x2f')](_0x3c7665[_0xc797('0x2b')][_0xc797('0x2f')]));_0x32aa71['attributes']=_0x32aa71[_0xc797('0x2e')][_0xc797('0x30')]?_0x32aa71[_0xc797('0x2e')]:_0x389920[_0xc797('0x2a')];if(_0x3c7665[_0xc797('0x2b')][_0xc797('0x3f')]){_0x32aa71[_0xc797('0x40')]=[{'all':!![]}];}_0x32aa71=_[_0xc797('0x3a')]({},_0x32aa71,_0x3c7665[_0xc797('0x3d')]);return db[_0xc797('0x3e')][_0xc797('0x46')](_0x32aa71)[_0xc797('0x20')](handleEntityNotFound(_0x237b48,null))[_0xc797('0x20')](respondWithResult(_0x237b48,null))['catch'](handleError(_0x237b48,null));};exports[_0xc797('0x47')]=function(_0x169ae8,_0x2459ef){return db[_0xc797('0x3e')][_0xc797('0x47')](_0x169ae8[_0xc797('0x48')],{})[_0xc797('0x20')](respondWithResult(_0x2459ef,0xc9))[_0xc797('0x42')](handleError(_0x2459ef,null));};exports['update']=function(_0xe711e3,_0x511c82){if(_0xe711e3['body']['id']){delete _0xe711e3['body']['id'];}return db[_0xc797('0x3e')][_0xc797('0x46')]({'where':{'id':_0xe711e3[_0xc797('0x44')]['id']}})[_0xc797('0x20')](handleEntityNotFound(_0x511c82,null))[_0xc797('0x20')](saveUpdates(_0xe711e3[_0xc797('0x48')],null))[_0xc797('0x20')](respondWithResult(_0x511c82,null))[_0xc797('0x42')](handleError(_0x511c82,null));};exports['destroy']=function(_0x304960,_0x5cb823){return db[_0xc797('0x3e')][_0xc797('0x46')]({'where':{'id':_0x304960[_0xc797('0x44')]['id']}})[_0xc797('0x20')](handleEntityNotFound(_0x5cb823,null))[_0xc797('0x20')](removeEntity(_0x5cb823,null))[_0xc797('0x42')](handleError(_0x5cb823,null));};