Built motion from commit b4f7ded2.|2.0.69
[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 _0x36aa=['../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','count','offset','set','Content-Range','json','apply','reject','save','then','error','stack','name','send','index','SmsApplication','rawAttributes','model','keys','dateStart','query','dateEnd','filters','intersection','fields','attributes','hasOwnProperty','limit','pick','add','day','where','merge','filter','options','rows','catch','show','params','length','includeAll','include','find','create','body','fast-json-patch','moment','bluebird','mustache','util','sox','squel','crypto','to-csv','querystring'];(function(_0x5c0e3e,_0x6b4ed8){var _0x34bc5a=function(_0x38657d){while(--_0x38657d){_0x5c0e3e['push'](_0x5c0e3e['shift']());}};_0x34bc5a(++_0x6b4ed8);}(_0x36aa,0x170));var _0xa36a=function(_0x468291,_0x15a325){_0x468291=_0x468291-0x0;var _0x3911a2=_0x36aa[_0x468291];return _0x3911a2;};'use strict';var jsonpatch=require(_0xa36a('0x0'));var rp=require('request-promise');var moment=require(_0xa36a('0x1'));var BPromise=require(_0xa36a('0x2'));var Mustache=require(_0xa36a('0x3'));var util=require(_0xa36a('0x4'));var path=require('path');var sox=require(_0xa36a('0x5'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0xa36a('0x6'));var crypto=require(_0xa36a('0x7'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xa36a('0x8'));var querystring=require(_0xa36a('0x9'));var Papa=require('papaparse');var qs=require(_0xa36a('0xa'));var logger=require(_0xa36a('0xb'))(_0xa36a('0xc'));var utils=require(_0xa36a('0xd'));var config=require(_0xa36a('0xe'));var db=require(_0xa36a('0xf'))['db'];function respondWithStatusCode(_0x11595f,_0x31b317){_0x31b317=_0x31b317||0xcc;return function(_0x44787a){if(_0x44787a){return _0x11595f[_0xa36a('0x10')](_0x31b317);}return _0x11595f[_0xa36a('0x11')](_0x31b317)[_0xa36a('0x12')]();};}function respondWithResult(_0x2f2993,_0x5918e8){_0x5918e8=_0x5918e8||0xc8;return function(_0x42aed2){if(_0x42aed2){return _0x2f2993[_0xa36a('0x11')](_0x5918e8)['json'](_0x42aed2);}};}function respondWithFilteredResult(_0x4f3dd4,_0x1ad0df){return function(_0x45005e){if(_0x45005e){var _0x362bf8=_0x45005e[_0xa36a('0x13')],_0x240e39=_0x1ad0df[_0xa36a('0x14')],_0x1b7ba3=_0x1ad0df['offset']+_0x1ad0df['limit'],_0x376714;if(_0x1b7ba3>=_0x362bf8){_0x1b7ba3=_0x362bf8;_0x376714=0xc8;}else{_0x376714=0xce;}_0x4f3dd4[_0xa36a('0x11')](_0x376714);return _0x4f3dd4[_0xa36a('0x15')](_0xa36a('0x16'),_0x240e39+'-'+_0x1b7ba3+'/'+_0x362bf8)[_0xa36a('0x17')](_0x45005e);}return null;};}function patchUpdates(_0x1f16ee){return function(_0x3f5a32){try{jsonpatch[_0xa36a('0x18')](_0x3f5a32,_0x1f16ee,!![]);}catch(_0x5b11f7){return BPromise[_0xa36a('0x19')](_0x5b11f7);}return _0x3f5a32[_0xa36a('0x1a')]();};}function saveUpdates(_0x9a2333,_0x58ff09){return function(_0x3151d2){if(_0x3151d2){return _0x3151d2['update'](_0x9a2333)[_0xa36a('0x1b')](function(_0x26154f){return _0x26154f;});}return null;};}function removeEntity(_0x1014f8,_0x53d6d4){return function(_0xa960c6){if(_0xa960c6){return _0xa960c6['destroy']()['then'](function(){_0x1014f8[_0xa36a('0x11')](0xcc)[_0xa36a('0x12')]();});}};}function handleEntityNotFound(_0x5057ac,_0x11180e){return function(_0x461903){if(!_0x461903){_0x5057ac['sendStatus'](0x194);}return _0x461903;};}function handleError(_0x50c371,_0x91ad0b){_0x91ad0b=_0x91ad0b||0x1f4;return function(_0x5e0a30){logger[_0xa36a('0x1c')](_0x5e0a30[_0xa36a('0x1d')]);if(_0x5e0a30[_0xa36a('0x1e')]){delete _0x5e0a30[_0xa36a('0x1e')];}_0x50c371[_0xa36a('0x11')](_0x91ad0b)[_0xa36a('0x1f')](_0x5e0a30);};}exports[_0xa36a('0x20')]=function(_0x1e77c1,_0x556922){var _0x439c08={},_0x419035={},_0x4f73f7={'count':0x0,'rows':[]};var _0x5c612a=db[_0xa36a('0x21')][_0xa36a('0x22')];_0x419035[_0xa36a('0x23')]=_[_0xa36a('0x24')](_0x5c612a);var _0x18ad1d={'dateStart':_0x1e77c1['query'][_0xa36a('0x25')],'dateEnd':_0x1e77c1[_0xa36a('0x26')][_0xa36a('0x27')]};delete _0x1e77c1[_0xa36a('0x26')]['dateStart'];delete _0x1e77c1[_0xa36a('0x26')][_0xa36a('0x27')];_0x419035['query']=_[_0xa36a('0x24')](_0x1e77c1[_0xa36a('0x26')]);_0x419035[_0xa36a('0x28')]=_['intersection'](_0x419035[_0xa36a('0x23')],_0x419035[_0xa36a('0x26')]);_0x439c08['attributes']=_[_0xa36a('0x29')](_0x419035['model'],qs[_0xa36a('0x2a')](_0x1e77c1[_0xa36a('0x26')][_0xa36a('0x2a')]));_0x439c08[_0xa36a('0x2b')]=_0x439c08[_0xa36a('0x2b')]['length']?_0x439c08[_0xa36a('0x2b')]:_0x419035[_0xa36a('0x23')];if(!_0x1e77c1[_0xa36a('0x26')][_0xa36a('0x2c')]('nolimit')){_0x439c08[_0xa36a('0x2d')]=qs['limit'](_0x1e77c1[_0xa36a('0x26')]['limit']);_0x439c08[_0xa36a('0x14')]=qs[_0xa36a('0x14')](_0x1e77c1['query']['offset']);}_0x439c08['order']=qs['sort'](_0x1e77c1[_0xa36a('0x26')]['sort']);_0x439c08['where']=qs[_0xa36a('0x28')](_[_0xa36a('0x2e')](_0x1e77c1[_0xa36a('0x26')],_0x419035[_0xa36a('0x28')]));if(_0x18ad1d[_0xa36a('0x25')]){if(_0x18ad1d[_0xa36a('0x27')]){_0x18ad1d[_0xa36a('0x27')]=moment(_0x18ad1d[_0xa36a('0x27')])[_0xa36a('0x2f')](0x1,'day');}else{_0x18ad1d[_0xa36a('0x27')]=moment(_0x18ad1d[_0xa36a('0x25')])[_0xa36a('0x2f')](0x1,_0xa36a('0x30'));}_['merge'](_0x439c08[_0xa36a('0x31')],{'createdAt':{'$gte':_0x18ad1d[_0xa36a('0x25')],'$lte':_0x18ad1d[_0xa36a('0x27')]}});}if(_0x1e77c1[_0xa36a('0x26')]['filter']){_0x439c08[_0xa36a('0x31')]=_[_0xa36a('0x32')](_0x439c08['where'],{'$or':_['map'](_0x439c08[_0xa36a('0x2b')],function(_0x436bea){var _0x1ca805={};_0x1ca805[_0x436bea]={'$like':'%'+_0x1e77c1[_0xa36a('0x26')][_0xa36a('0x33')]+'%'};return _0x1ca805;})});}_0x439c08=_[_0xa36a('0x32')]({},_0x439c08,_0x1e77c1[_0xa36a('0x34')]);var _0x2ace2f={'where':_0x439c08['where']};return db[_0xa36a('0x21')][_0xa36a('0x13')](_0x2ace2f)[_0xa36a('0x1b')](function(_0x247555){_0x4f73f7[_0xa36a('0x13')]=_0x247555;if(_0x1e77c1[_0xa36a('0x26')]['includeAll']){_0x439c08['include']=[{'all':!![]}];}return db[_0xa36a('0x21')]['findAll'](_0x439c08);})[_0xa36a('0x1b')](function(_0xce0164){_0x4f73f7[_0xa36a('0x35')]=_0xce0164;return _0x4f73f7;})[_0xa36a('0x1b')](respondWithFilteredResult(_0x556922,_0x439c08))[_0xa36a('0x36')](handleError(_0x556922,null));};exports[_0xa36a('0x37')]=function(_0x27613d,_0x11b79a){var _0x280cb3={'raw':!![],'where':{'id':_0x27613d[_0xa36a('0x38')]['id']}},_0x4ee9bf={};_0x4ee9bf['model']=_[_0xa36a('0x24')](db[_0xa36a('0x21')][_0xa36a('0x22')]);_0x4ee9bf[_0xa36a('0x26')]=_['keys'](_0x27613d[_0xa36a('0x26')]);_0x4ee9bf[_0xa36a('0x28')]=_[_0xa36a('0x29')](_0x4ee9bf[_0xa36a('0x23')],_0x4ee9bf['query']);_0x280cb3['attributes']=_['intersection'](_0x4ee9bf['model'],qs[_0xa36a('0x2a')](_0x27613d['query']['fields']));_0x280cb3[_0xa36a('0x2b')]=_0x280cb3[_0xa36a('0x2b')][_0xa36a('0x39')]?_0x280cb3['attributes']:_0x4ee9bf['model'];if(_0x27613d[_0xa36a('0x26')][_0xa36a('0x3a')]){_0x280cb3[_0xa36a('0x3b')]=[{'all':!![]}];}_0x280cb3=_['merge']({},_0x280cb3,_0x27613d[_0xa36a('0x34')]);return db[_0xa36a('0x21')][_0xa36a('0x3c')](_0x280cb3)['then'](handleEntityNotFound(_0x11b79a,null))['then'](respondWithResult(_0x11b79a,null))['catch'](handleError(_0x11b79a,null));};exports[_0xa36a('0x3d')]=function(_0x12c7a4,_0x5e9dfe){return db[_0xa36a('0x21')]['create'](_0x12c7a4[_0xa36a('0x3e')],{})[_0xa36a('0x1b')](respondWithResult(_0x5e9dfe,0xc9))[_0xa36a('0x36')](handleError(_0x5e9dfe,null));};exports['update']=function(_0x1b51bd,_0x40afbb){if(_0x1b51bd[_0xa36a('0x3e')]['id']){delete _0x1b51bd[_0xa36a('0x3e')]['id'];}return db[_0xa36a('0x21')]['find']({'where':{'id':_0x1b51bd[_0xa36a('0x38')]['id']}})['then'](handleEntityNotFound(_0x40afbb,null))[_0xa36a('0x1b')](saveUpdates(_0x1b51bd[_0xa36a('0x3e')],null))[_0xa36a('0x1b')](respondWithResult(_0x40afbb,null))[_0xa36a('0x36')](handleError(_0x40afbb,null));};exports['destroy']=function(_0x3890ee,_0x8d8f2c){return db[_0xa36a('0x21')]['find']({'where':{'id':_0x3890ee[_0xa36a('0x38')]['id']}})[_0xa36a('0x1b')](handleEntityNotFound(_0x8d8f2c,null))['then'](removeEntity(_0x8d8f2c,null))[_0xa36a('0x36')](handleError(_0x8d8f2c,null));};