48374037c6c132852f754055ced952c0853bc2cf
[motion2.git] / server / api / smsApplication / smsApplication.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 _0x4249=['../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','save','update','then','destroy','error','name','send','index','map','SmsApplication','rawAttributes','fieldName','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','filters','pick','filter','merge','type','VIRTUAL','options','include','findAll','rows','catch','show','params','includeAll','find','create','body','eml-format','zip-dir','fast-json-patch','request-promise','mustache','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch'];(function(_0x19e80e,_0x3631c9){var _0x4a8b68=function(_0x3fe92a){while(--_0x3fe92a){_0x19e80e['push'](_0x19e80e['shift']());}};_0x4a8b68(++_0x3631c9);}(_0x4249,0x87));var _0x9424=function(_0x1a5485,_0x3c2901){_0x1a5485=_0x1a5485-0x0;var _0xf78226=_0x4249[_0x1a5485];return _0xf78226;};'use strict';var emlformat=require(_0x9424('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x9424('0x1'));var jsonpatch=require(_0x9424('0x2'));var rp=require(_0x9424('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x9424('0x4'));var util=require('util');var path=require(_0x9424('0x5'));var sox=require(_0x9424('0x6'));var csv=require(_0x9424('0x7'));var ejs=require(_0x9424('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x9424('0x9'));var squel=require(_0x9424('0xa'));var crypto=require(_0x9424('0xb'));var jsforce=require(_0x9424('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x9424('0x7'));var querystring=require(_0x9424('0xd'));var Papa=require(_0x9424('0xe'));var Redis=require(_0x9424('0xf'));var authService=require(_0x9424('0x10'));var qs=require(_0x9424('0x11'));var as=require(_0x9424('0x12'));var hardwareService=require(_0x9424('0x13'));var logger=require(_0x9424('0x14'))('api');var utils=require(_0x9424('0x15'));var config=require(_0x9424('0x16'));var licenseUtil=require(_0x9424('0x17'));var db=require(_0x9424('0x18'))['db'];function respondWithStatusCode(_0x2557ce,_0x2ae986){_0x2ae986=_0x2ae986||0xcc;return function(_0x4f32d9){if(_0x4f32d9){return _0x2557ce[_0x9424('0x19')](_0x2ae986);}return _0x2557ce[_0x9424('0x1a')](_0x2ae986)[_0x9424('0x1b')]();};}function respondWithResult(_0x3dbbe6,_0x234164){_0x234164=_0x234164||0xc8;return function(_0x446ee8){if(_0x446ee8){return _0x3dbbe6['status'](_0x234164)[_0x9424('0x1c')](_0x446ee8);}};}function respondWithFilteredResult(_0x59cdc5,_0x319f44){return function(_0x531f99){if(_0x531f99){var _0x163d5f=typeof _0x319f44[_0x9424('0x1d')]===_0x9424('0x1e')&&typeof _0x319f44[_0x9424('0x1f')]==='undefined';var _0x53d241=_0x531f99['count'];var _0x9de3db=_0x163d5f?0x0:_0x319f44[_0x9424('0x1d')];var _0x41ecab=_0x163d5f?_0x531f99[_0x9424('0x20')]:_0x319f44[_0x9424('0x1d')]+_0x319f44['limit'];var _0x217212;if(_0x41ecab>=_0x53d241){_0x41ecab=_0x53d241;_0x217212=0xc8;}else{_0x217212=0xce;}_0x59cdc5[_0x9424('0x1a')](_0x217212);return _0x59cdc5[_0x9424('0x21')](_0x9424('0x22'),_0x9de3db+'-'+_0x41ecab+'/'+_0x53d241)[_0x9424('0x1c')](_0x531f99);}return null;};}function patchUpdates(_0x50b64b){return function(_0x27a328){try{jsonpatch[_0x9424('0x23')](_0x27a328,_0x50b64b,!![]);}catch(_0x2a720a){return BPromise['reject'](_0x2a720a);}return _0x27a328[_0x9424('0x24')]();};}function saveUpdates(_0x53c5ff,_0x5a8d98){return function(_0x41b27b){if(_0x41b27b){return _0x41b27b[_0x9424('0x25')](_0x53c5ff)[_0x9424('0x26')](function(_0x193aeb){return _0x193aeb;});}return null;};}function removeEntity(_0x39d28d,_0x31a03c){return function(_0x3f961b){if(_0x3f961b){return _0x3f961b[_0x9424('0x27')]()[_0x9424('0x26')](function(){_0x39d28d[_0x9424('0x1a')](0xcc)[_0x9424('0x1b')]();});}};}function handleEntityNotFound(_0x3c00f9,_0x5a50db){return function(_0xe64e1d){if(!_0xe64e1d){_0x3c00f9[_0x9424('0x19')](0x194);}return _0xe64e1d;};}function handleError(_0x1b5421,_0x4d857f){_0x4d857f=_0x4d857f||0x1f4;return function(_0x5c0531){logger[_0x9424('0x28')](_0x5c0531['stack']);if(_0x5c0531[_0x9424('0x29')]){delete _0x5c0531[_0x9424('0x29')];}_0x1b5421[_0x9424('0x1a')](_0x4d857f)[_0x9424('0x2a')](_0x5c0531);};}exports[_0x9424('0x2b')]=function(_0x304bcc,_0x41c23c){var _0x124325={},_0x57095d={},_0x48926d={'count':0x0,'rows':[]};var _0x181d33=_[_0x9424('0x2c')](db[_0x9424('0x2d')][_0x9424('0x2e')],function(_0x267c6b){return{'name':_0x267c6b[_0x9424('0x2f')],'type':_0x267c6b['type'][_0x9424('0x30')]};});_0x57095d[_0x9424('0x31')]=_[_0x9424('0x2c')](_0x181d33,_0x9424('0x29'));_0x57095d[_0x9424('0x32')]=_[_0x9424('0x33')](_0x304bcc[_0x9424('0x32')]);_0x57095d['filters']=_[_0x9424('0x34')](_0x57095d[_0x9424('0x31')],_0x57095d[_0x9424('0x32')]);_0x124325[_0x9424('0x35')]=_['intersection'](_0x57095d[_0x9424('0x31')],qs[_0x9424('0x36')](_0x304bcc['query'][_0x9424('0x36')]));_0x124325[_0x9424('0x35')]=_0x124325[_0x9424('0x35')][_0x9424('0x37')]?_0x124325[_0x9424('0x35')]:_0x57095d['model'];if(!_0x304bcc[_0x9424('0x32')][_0x9424('0x38')](_0x9424('0x39'))){_0x124325[_0x9424('0x1f')]=qs[_0x9424('0x1f')](_0x304bcc[_0x9424('0x32')][_0x9424('0x1f')]);_0x124325[_0x9424('0x1d')]=qs[_0x9424('0x1d')](_0x304bcc[_0x9424('0x32')][_0x9424('0x1d')]);}_0x124325['order']=qs[_0x9424('0x3a')](_0x304bcc['query'][_0x9424('0x3a')]);_0x124325[_0x9424('0x3b')]=qs[_0x9424('0x3c')](_[_0x9424('0x3d')](_0x304bcc[_0x9424('0x32')],_0x57095d[_0x9424('0x3c')]),_0x181d33);if(_0x304bcc[_0x9424('0x32')][_0x9424('0x3e')]){_0x124325['where']=_[_0x9424('0x3f')](_0x124325['where'],{'$or':_[_0x9424('0x2c')](_0x181d33,function(_0x154c50){if(_0x154c50[_0x9424('0x40')]!==_0x9424('0x41')){var _0x587fd5={};_0x587fd5[_0x154c50[_0x9424('0x29')]]={'$like':'%'+_0x304bcc[_0x9424('0x32')][_0x9424('0x3e')]+'%'};return _0x587fd5;}})});}_0x124325=_[_0x9424('0x3f')]({},_0x124325,_0x304bcc[_0x9424('0x42')]);var _0x5e63ba={'where':_0x124325[_0x9424('0x3b')]};return db[_0x9424('0x2d')][_0x9424('0x20')](_0x5e63ba)[_0x9424('0x26')](function(_0x5c70c7){_0x48926d[_0x9424('0x20')]=_0x5c70c7;if(_0x304bcc['query']['includeAll']){_0x124325[_0x9424('0x43')]=[{'all':!![]}];}return db[_0x9424('0x2d')][_0x9424('0x44')](_0x124325);})[_0x9424('0x26')](function(_0x2eedda){_0x48926d[_0x9424('0x45')]=_0x2eedda;return _0x48926d;})['then'](respondWithFilteredResult(_0x41c23c,_0x124325))[_0x9424('0x46')](handleError(_0x41c23c,null));};exports[_0x9424('0x47')]=function(_0x49ef60,_0x2246e8){var _0x5310b5={'raw':!![],'where':{'id':_0x49ef60[_0x9424('0x48')]['id']}},_0x3cee3b={};_0x3cee3b[_0x9424('0x31')]=_['keys'](db[_0x9424('0x2d')][_0x9424('0x2e')]);_0x3cee3b[_0x9424('0x32')]=_['keys'](_0x49ef60[_0x9424('0x32')]);_0x3cee3b[_0x9424('0x3c')]=_[_0x9424('0x34')](_0x3cee3b[_0x9424('0x31')],_0x3cee3b['query']);_0x5310b5['attributes']=_[_0x9424('0x34')](_0x3cee3b['model'],qs[_0x9424('0x36')](_0x49ef60[_0x9424('0x32')][_0x9424('0x36')]));_0x5310b5[_0x9424('0x35')]=_0x5310b5[_0x9424('0x35')][_0x9424('0x37')]?_0x5310b5[_0x9424('0x35')]:_0x3cee3b[_0x9424('0x31')];if(_0x49ef60[_0x9424('0x32')][_0x9424('0x49')]){_0x5310b5['include']=[{'all':!![]}];}_0x5310b5=_[_0x9424('0x3f')]({},_0x5310b5,_0x49ef60[_0x9424('0x42')]);return db[_0x9424('0x2d')][_0x9424('0x4a')](_0x5310b5)[_0x9424('0x26')](handleEntityNotFound(_0x2246e8,null))[_0x9424('0x26')](respondWithResult(_0x2246e8,null))[_0x9424('0x46')](handleError(_0x2246e8,null));};exports['create']=function(_0x3d61fc,_0x3dd5e1){return db[_0x9424('0x2d')][_0x9424('0x4b')](_0x3d61fc['body'],{})[_0x9424('0x26')](respondWithResult(_0x3dd5e1,0xc9))[_0x9424('0x46')](handleError(_0x3dd5e1,null));};exports['update']=function(_0x16489b,_0x45076d){if(_0x16489b['body']['id']){delete _0x16489b['body']['id'];}return db[_0x9424('0x2d')][_0x9424('0x4a')]({'where':{'id':_0x16489b['params']['id']}})[_0x9424('0x26')](handleEntityNotFound(_0x45076d,null))[_0x9424('0x26')](saveUpdates(_0x16489b[_0x9424('0x4c')],null))['then'](respondWithResult(_0x45076d,null))['catch'](handleError(_0x45076d,null));};exports[_0x9424('0x27')]=function(_0x1ab6a1,_0x4483a7){return db[_0x9424('0x2d')][_0x9424('0x4a')]({'where':{'id':_0x1ab6a1['params']['id']}})[_0x9424('0x26')](handleEntityNotFound(_0x4483a7,null))['then'](removeEntity(_0x4483a7,null))[_0x9424('0x46')](handleError(_0x4483a7,null));};