Modified the EmailMessages interface3

pull/96/head
tianlinzhong 2021-12-15 09:49:38 +08:00
parent 3cc2c929ec
commit 952e9dd278
2 changed files with 29 additions and 21 deletions

View File

@ -3,7 +3,7 @@ app.factory('EmailMessageAnalysisService', function($http) {
return { return {
getAnalysisResult: function(query, headers, callback) { getAnalysisResult: function(query, headers, callback) {
$http.get(getAPI()+"emailmessages", { params: {startdatetime: query.startdatetime, enddatetime: query.enddatetime}} , {headers}) $http.get(getAPI()+"emailmessages?" + 'startdatetime=' + query.startdatetime + '&enddatetime=' + query.enddatetime, {headers})
.then(function (response) { .then(function (response) {
callback(response); callback(response);
}, function (response) { }, function (response) {

View File

@ -13,38 +13,46 @@ class EmailMessageCollection:
pass pass
@staticmethod @staticmethod
def on_options(req, resp, startdate, enddate): def on_options(req, resp):
resp.status = falcon.HTTP_200 resp.status = falcon.HTTP_200
@staticmethod @staticmethod
def on_get(req, resp): def on_get(req, resp):
access_control(req) access_control(req)
print(req.params) print(req.params)
startdate = req.params.get('startdatetime') start_datetime_local = req.params.get('startdatetime')
enddate = req.params.get('enddatetime') end_datetime_local = req.params.get('enddatetime')
try:
start_datetime_local = datetime.strptime(startdate, '%Y-%m-%d')
except Exception:
raise falcon.HTTPError(falcon.HTTP_400,
title='API.BAD_REQUEST',
description='API.INVALID_START_DATE_FORMAT')
try:
end_datetime_local = datetime.strptime(enddate, '%Y-%m-%d')
except Exception:
raise falcon.HTTPError(falcon.HTTP_400,
title='API.BAD_REQUEST',
description='API.INVALID_END_DATE_FORMAT')
timezone_offset = int(config.utc_offset[1:3]) * 60 + int(config.utc_offset[4:6]) timezone_offset = int(config.utc_offset[1:3]) * 60 + int(config.utc_offset[4:6])
if config.utc_offset[0] == '-': if config.utc_offset[0] == '-':
timezone_offset = -timezone_offset timezone_offset = -timezone_offset
start_datetime_utc = start_datetime_local.replace(tzinfo=timezone.utc) if start_datetime_local is None:
start_datetime_utc -= timedelta(minutes=timezone_offset) raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST',
description="API.INVALID_START_DATE_FORMAT")
else:
start_datetime_local = str.strip(start_datetime_local)
try:
start_datetime_utc = datetime.strptime(start_datetime_local,
'%Y-%m-%d').replace(tzinfo=timezone.utc) - \
timedelta(minutes=timezone_offset)
except ValueError:
raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST',
description="API.INVALID_START_DATE_FORMAT")
end_datetime_utc = end_datetime_local.replace(tzinfo=timezone.utc) if end_datetime_local is None:
end_datetime_utc -= timedelta(minutes=timezone_offset) raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST',
description="API.INVALID_END_DATE_FORMAT")
else:
end_datetime_local = str.strip(end_datetime_local)
try:
end_datetime_utc = datetime.strptime(end_datetime_local,
'%Y-%m-%d').replace(tzinfo=timezone.utc) - \
timedelta(minutes=timezone_offset)
end_datetime_utc += timedelta(days=1) end_datetime_utc += timedelta(days=1)
except ValueError:
raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST',
description="API.INVALID_END_DATE_FORMAT")
if start_datetime_utc >= end_datetime_utc: if start_datetime_utc >= end_datetime_utc:
raise falcon.HTTPError(falcon.HTTP_400, raise falcon.HTTPError(falcon.HTTP_400,