Built motion from commit 092f8824.|2.5.49
[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 _0x0a87=['util','path','sox','to-csv','ejs','fs-extra','lodash','squel','desk.js','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','offset','limit','undefined','count','apply','reject','save','update','then','destroy','status','end','error','stack','name','send','index','map','SmsApplication','rawAttributes','fieldName','type','model','query','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','rows','catch','show','params','keys','create','body','find','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache'];(function(_0x495387,_0x4b69b9){var _0x3c6c53=function(_0x4d1d27){while(--_0x4d1d27){_0x495387['push'](_0x495387['shift']());}};_0x3c6c53(++_0x4b69b9);}(_0x0a87,0x1b6));var _0x70a8=function(_0x199572,_0x33e667){_0x199572=_0x199572-0x0;var _0x13cfa3=_0x0a87[_0x199572];return _0x13cfa3;};'use strict';var emlformat=require(_0x70a8('0x0'));var rimraf=require(_0x70a8('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x70a8('0x2'));var rp=require(_0x70a8('0x3'));var moment=require('moment');var BPromise=require(_0x70a8('0x4'));var Mustache=require(_0x70a8('0x5'));var util=require(_0x70a8('0x6'));var path=require(_0x70a8('0x7'));var sox=require(_0x70a8('0x8'));var csv=require(_0x70a8('0x9'));var ejs=require(_0x70a8('0xa'));var fs=require('fs');var fs_extra=require(_0x70a8('0xb'));var _=require(_0x70a8('0xc'));var squel=require(_0x70a8('0xd'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x70a8('0xe'));var toCsv=require(_0x70a8('0x9'));var querystring=require('querystring');var Papa=require(_0x70a8('0xf'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x70a8('0x10'));var as=require(_0x70a8('0x11'));var hardwareService=require(_0x70a8('0x12'));var logger=require(_0x70a8('0x13'))(_0x70a8('0x14'));var utils=require(_0x70a8('0x15'));var config=require(_0x70a8('0x16'));var licenseUtil=require(_0x70a8('0x17'));var db=require(_0x70a8('0x18'))['db'];function respondWithStatusCode(_0x24e4bc,_0x1791d9){_0x1791d9=_0x1791d9||0xcc;return function(_0x3a0164){if(_0x3a0164){return _0x24e4bc[_0x70a8('0x19')](_0x1791d9);}return _0x24e4bc['status'](_0x1791d9)['end']();};}function respondWithResult(_0x1d7209,_0x2232af){_0x2232af=_0x2232af||0xc8;return function(_0x1819e6){if(_0x1819e6){return _0x1d7209['status'](_0x2232af)['json'](_0x1819e6);}};}function respondWithFilteredResult(_0x108db6,_0x17dced){return function(_0x767a8a){if(_0x767a8a){var _0x49bf66=typeof _0x17dced[_0x70a8('0x1a')]==='undefined'&&typeof _0x17dced[_0x70a8('0x1b')]===_0x70a8('0x1c');var _0x6862b8=_0x767a8a['count'];var _0x285cf1=_0x49bf66?0x0:_0x17dced['offset'];var _0x93aa95=_0x49bf66?_0x767a8a[_0x70a8('0x1d')]:_0x17dced[_0x70a8('0x1a')]+_0x17dced['limit'];var _0x26d24c;if(_0x93aa95>=_0x6862b8){_0x93aa95=_0x6862b8;_0x26d24c=0xc8;}else{_0x26d24c=0xce;}_0x108db6['status'](_0x26d24c);return _0x108db6['set']('Content-Range',_0x285cf1+'-'+_0x93aa95+'/'+_0x6862b8)['json'](_0x767a8a);}return null;};}function patchUpdates(_0x13efed){return function(_0x3c9076){try{jsonpatch[_0x70a8('0x1e')](_0x3c9076,_0x13efed,!![]);}catch(_0x3172f5){return BPromise[_0x70a8('0x1f')](_0x3172f5);}return _0x3c9076[_0x70a8('0x20')]();};}function saveUpdates(_0x3011cf,_0x4f2dba){return function(_0x37354a){if(_0x37354a){return _0x37354a[_0x70a8('0x21')](_0x3011cf)[_0x70a8('0x22')](function(_0x48978b){return _0x48978b;});}return null;};}function removeEntity(_0x226e2b,_0x2c5c36){return function(_0x29be89){if(_0x29be89){return _0x29be89[_0x70a8('0x23')]()[_0x70a8('0x22')](function(){_0x226e2b[_0x70a8('0x24')](0xcc)[_0x70a8('0x25')]();});}};}function handleEntityNotFound(_0x4f502e,_0x2cc06a){return function(_0x1ab1d2){if(!_0x1ab1d2){_0x4f502e[_0x70a8('0x19')](0x194);}return _0x1ab1d2;};}function handleError(_0x344a56,_0x1ad9d7){_0x1ad9d7=_0x1ad9d7||0x1f4;return function(_0x4000d1){logger[_0x70a8('0x26')](_0x4000d1[_0x70a8('0x27')]);if(_0x4000d1['name']){delete _0x4000d1[_0x70a8('0x28')];}_0x344a56[_0x70a8('0x24')](_0x1ad9d7)[_0x70a8('0x29')](_0x4000d1);};}exports[_0x70a8('0x2a')]=function(_0x1b6866,_0x32c17f){var _0x542dfe={},_0x97235a={},_0x15068a={'count':0x0,'rows':[]};var _0x1eab69=_[_0x70a8('0x2b')](db[_0x70a8('0x2c')][_0x70a8('0x2d')],function(_0x1a20ec){return{'name':_0x1a20ec[_0x70a8('0x2e')],'type':_0x1a20ec[_0x70a8('0x2f')]['key']};});_0x97235a[_0x70a8('0x30')]=_[_0x70a8('0x2b')](_0x1eab69,_0x70a8('0x28'));_0x97235a[_0x70a8('0x31')]=_['keys'](_0x1b6866[_0x70a8('0x31')]);_0x97235a[_0x70a8('0x32')]=_[_0x70a8('0x33')](_0x97235a['model'],_0x97235a[_0x70a8('0x31')]);_0x542dfe[_0x70a8('0x34')]=_[_0x70a8('0x33')](_0x97235a[_0x70a8('0x30')],qs[_0x70a8('0x35')](_0x1b6866[_0x70a8('0x31')][_0x70a8('0x35')]));_0x542dfe[_0x70a8('0x34')]=_0x542dfe[_0x70a8('0x34')][_0x70a8('0x36')]?_0x542dfe[_0x70a8('0x34')]:_0x97235a[_0x70a8('0x30')];if(!_0x1b6866[_0x70a8('0x31')]['hasOwnProperty'](_0x70a8('0x37'))){_0x542dfe['limit']=qs[_0x70a8('0x1b')](_0x1b6866[_0x70a8('0x31')]['limit']);_0x542dfe[_0x70a8('0x1a')]=qs['offset'](_0x1b6866[_0x70a8('0x31')][_0x70a8('0x1a')]);}_0x542dfe[_0x70a8('0x38')]=qs['sort'](_0x1b6866['query'][_0x70a8('0x39')]);_0x542dfe[_0x70a8('0x3a')]=qs[_0x70a8('0x32')](_[_0x70a8('0x3b')](_0x1b6866[_0x70a8('0x31')],_0x97235a['filters']),_0x1eab69);if(_0x1b6866['query'][_0x70a8('0x3c')]){_0x542dfe[_0x70a8('0x3a')]=_[_0x70a8('0x3d')](_0x542dfe[_0x70a8('0x3a')],{'$or':_[_0x70a8('0x2b')](_0x1eab69,function(_0x407851){if(_0x407851[_0x70a8('0x2f')]!==_0x70a8('0x3e')){var _0x3b9b5={};_0x3b9b5[_0x407851[_0x70a8('0x28')]]={'$like':'%'+_0x1b6866['query'][_0x70a8('0x3c')]+'%'};return _0x3b9b5;}})});}_0x542dfe=_[_0x70a8('0x3d')]({},_0x542dfe,_0x1b6866[_0x70a8('0x3f')]);var _0x5cadde={'where':_0x542dfe[_0x70a8('0x3a')]};return db['SmsApplication'][_0x70a8('0x1d')](_0x5cadde)[_0x70a8('0x22')](function(_0x16b888){_0x15068a[_0x70a8('0x1d')]=_0x16b888;if(_0x1b6866[_0x70a8('0x31')][_0x70a8('0x40')]){_0x542dfe[_0x70a8('0x41')]=[{'all':!![]}];}return db[_0x70a8('0x2c')]['findAll'](_0x542dfe);})[_0x70a8('0x22')](function(_0x2c6430){_0x15068a[_0x70a8('0x42')]=_0x2c6430;return _0x15068a;})[_0x70a8('0x22')](respondWithFilteredResult(_0x32c17f,_0x542dfe))[_0x70a8('0x43')](handleError(_0x32c17f,null));};exports[_0x70a8('0x44')]=function(_0x58b888,_0x51bdbd){var _0x5da998={'raw':!![],'where':{'id':_0x58b888[_0x70a8('0x45')]['id']}},_0x240800={};_0x240800[_0x70a8('0x30')]=_[_0x70a8('0x46')](db[_0x70a8('0x2c')]['rawAttributes']);_0x240800[_0x70a8('0x31')]=_['keys'](_0x58b888[_0x70a8('0x31')]);_0x240800[_0x70a8('0x32')]=_[_0x70a8('0x33')](_0x240800[_0x70a8('0x30')],_0x240800[_0x70a8('0x31')]);_0x5da998['attributes']=_[_0x70a8('0x33')](_0x240800[_0x70a8('0x30')],qs[_0x70a8('0x35')](_0x58b888['query']['fields']));_0x5da998['attributes']=_0x5da998[_0x70a8('0x34')][_0x70a8('0x36')]?_0x5da998[_0x70a8('0x34')]:_0x240800[_0x70a8('0x30')];if(_0x58b888[_0x70a8('0x31')][_0x70a8('0x40')]){_0x5da998[_0x70a8('0x41')]=[{'all':!![]}];}_0x5da998=_['merge']({},_0x5da998,_0x58b888[_0x70a8('0x3f')]);return db[_0x70a8('0x2c')]['find'](_0x5da998)['then'](handleEntityNotFound(_0x51bdbd,null))[_0x70a8('0x22')](respondWithResult(_0x51bdbd,null))[_0x70a8('0x43')](handleError(_0x51bdbd,null));};exports['create']=function(_0x50d62c,_0x3c3b82){return db[_0x70a8('0x2c')][_0x70a8('0x47')](_0x50d62c[_0x70a8('0x48')],{})['then'](respondWithResult(_0x3c3b82,0xc9))[_0x70a8('0x43')](handleError(_0x3c3b82,null));};exports[_0x70a8('0x21')]=function(_0x5325a4,_0x503c3d){if(_0x5325a4['body']['id']){delete _0x5325a4[_0x70a8('0x48')]['id'];}return db['SmsApplication'][_0x70a8('0x49')]({'where':{'id':_0x5325a4[_0x70a8('0x45')]['id']}})[_0x70a8('0x22')](handleEntityNotFound(_0x503c3d,null))[_0x70a8('0x22')](saveUpdates(_0x5325a4[_0x70a8('0x48')],null))['then'](respondWithResult(_0x503c3d,null))[_0x70a8('0x43')](handleError(_0x503c3d,null));};exports[_0x70a8('0x23')]=function(_0x39a671,_0x2e0ed9){return db[_0x70a8('0x2c')][_0x70a8('0x49')]({'where':{'id':_0x39a671[_0x70a8('0x45')]['id']}})[_0x70a8('0x22')](handleEntityNotFound(_0x2e0ed9,null))[_0x70a8('0x22')](removeEntity(_0x2e0ed9,null))[_0x70a8('0x43')](handleError(_0x2e0ed9,null));};