From c45e4a84e3fef4ca0a6de2d0b0f78ba7e49cb96c Mon Sep 17 00:00:00 2001 From: tianlinzhong <673359306@qq.com> Date: Mon, 20 Dec 2021 11:55:16 +0800 Subject: [PATCH] Modified the TextMessages webmessage wechatmessage interface --- .../textmessageoption.controller.js | 7 +-- .../webmessage/webmessageoption.controller.js | 6 ++- .../wechatmessageoption.controller.js | 6 ++- .../fdd/textmessageanalysis.service.js | 2 +- .../fdd/webmessageanalysis.service.js | 2 +- .../fdd/wechatmessageanalysis.service.js | 2 +- myems-api/app.py | 6 +-- myems-api/core/textmessage.py | 49 ++++++++++++------- myems-api/core/webmessage.py | 48 +++++++++++------- myems-api/core/wechatmessage.py | 49 ++++++++++++------- 10 files changed, 107 insertions(+), 70 deletions(-) diff --git a/admin/app/controllers/fdd/textmessage/textmessageoption.controller.js b/admin/app/controllers/fdd/textmessage/textmessageoption.controller.js index b8ccef3a..77254fe3 100644 --- a/admin/app/controllers/fdd/textmessage/textmessageoption.controller.js +++ b/admin/app/controllers/fdd/textmessage/textmessageoption.controller.js @@ -30,15 +30,16 @@ app.controller('TextMessageOptionController', function( }; $scope.execute = function() { - var datestart,dateend; + var startdatetime, enddatetime; var query = { - datestart: $scope.daterange.startDate.format().slice(0, 10), - dateend: $scope.daterange.endDate.format().slice(0, 10) + startdatetime: $scope.daterange.startDate.format().slice(0, 19), + enddatetime: $scope.daterange.endDate.format().slice(0, 19) }; $scope.$emit('handleEmitTextMessageOptionChanged', { load: true, period:$scope.currentPeriod }); + console.log(query) let headers = { "User-UUID": $scope.cur_user.uuid, "Token": $scope.cur_user.token }; TextMessageAnalysisService.getAnalysisResult(query, headers, function (response) { if (angular.isDefined(response.status) && response.status === 200) { diff --git a/admin/app/controllers/fdd/webmessage/webmessageoption.controller.js b/admin/app/controllers/fdd/webmessage/webmessageoption.controller.js index 9d76829c..679392c7 100644 --- a/admin/app/controllers/fdd/webmessage/webmessageoption.controller.js +++ b/admin/app/controllers/fdd/webmessage/webmessageoption.controller.js @@ -30,14 +30,16 @@ app.controller('WebMessageOptionController', function( }; $scope.execute = function() { + var startdatetime, enddatetime; var query = { - datestart: $scope.daterange.startDate.format().slice(0, 10), - dateend: $scope.daterange.endDate.format().slice(0, 10) + startdatetime: $scope.daterange.startDate.format().slice(0, 19), + enddatetime: $scope.daterange.endDate.format().slice(0, 19) }; $scope.$emit('handleEmitWebMessageOptionChanged', { load: true, period:$scope.currentPeriod }); + console.log(query) let headers = { "User-UUID": $scope.cur_user.uuid, "Token": $scope.cur_user.token }; WebMessageAnalysisService.getAnalysisResult(query, headers, function (response) { if (angular.isDefined(response.status) && response.status === 200) { diff --git a/admin/app/controllers/fdd/wechatmessage/wechatmessageoption.controller.js b/admin/app/controllers/fdd/wechatmessage/wechatmessageoption.controller.js index 68944dd4..ebea0174 100644 --- a/admin/app/controllers/fdd/wechatmessage/wechatmessageoption.controller.js +++ b/admin/app/controllers/fdd/wechatmessage/wechatmessageoption.controller.js @@ -30,14 +30,16 @@ app.controller('WechatMessageOptionController', function( }; $scope.execute = function() { + var startdatetime, enddatetime; var query = { - datestart: $scope.daterange.startDate.format().slice(0, 10), - dateend: $scope.daterange.endDate.format().slice(0, 10) + startdatetime: $scope.daterange.startDate.format().slice(0, 19), + enddatetime: $scope.daterange.endDate.format().slice(0, 19) }; $scope.$emit('handleEmitWechatMessageOptionChanged', { load: true, period:$scope.currentPeriod }); + console.log(query) let headers = { "User-UUID": $scope.cur_user.uuid, "Token": $scope.cur_user.token }; WechatMessageAnalysisService.getAnalysisResult(query, headers, function (response) { if (angular.isDefined(response.status) && response.status === 200) { diff --git a/admin/app/services/fdd/textmessageanalysis.service.js b/admin/app/services/fdd/textmessageanalysis.service.js index dbe2d8d9..f6a4a075 100644 --- a/admin/app/services/fdd/textmessageanalysis.service.js +++ b/admin/app/services/fdd/textmessageanalysis.service.js @@ -3,7 +3,7 @@ app.factory('TextMessageAnalysisService', function($http) { return { getAnalysisResult: function(query, headers, callback) { - $http.get(getAPI()+"textmessages"+"/from/"+query.datestart+"/to/"+query.dateend, {headers}) + $http.get(getAPI()+"textmessages?" + 'startdatetime=' + query.startdatetime + '&enddatetime=' + query.enddatetime, {headers}) .then(function (response) { callback(response); }, function (response) { diff --git a/admin/app/services/fdd/webmessageanalysis.service.js b/admin/app/services/fdd/webmessageanalysis.service.js index 9fc18fcd..8baab4a1 100644 --- a/admin/app/services/fdd/webmessageanalysis.service.js +++ b/admin/app/services/fdd/webmessageanalysis.service.js @@ -3,7 +3,7 @@ app.factory('WebMessageAnalysisService', function($http) { return { getAnalysisResult: function(query, headers, callback) { - $http.get(getAPI()+"webmessages"+"/from/"+query.datestart+"/to/"+query.dateend, {headers}) + $http.get(getAPI()+"webmessages?" + "startdatetime=" + query.startdatetime + "&enddatetime=" + query.enddatetime, {headers}) .then(function (response) { callback(response); }, function (response) { diff --git a/admin/app/services/fdd/wechatmessageanalysis.service.js b/admin/app/services/fdd/wechatmessageanalysis.service.js index 13d3be20..fa64190e 100644 --- a/admin/app/services/fdd/wechatmessageanalysis.service.js +++ b/admin/app/services/fdd/wechatmessageanalysis.service.js @@ -2,7 +2,7 @@ app.factory('WechatMessageAnalysisService', function($http) { return { getAnalysisResult: function(query, headers, callback) { - $http.get(getAPI()+"wechatmessages"+"/from/"+query.datestart+"/to/"+query.dateend, {headers}) + $http.get(getAPI()+"wechatmessages?" + 'startdatetime=' + query.startdatetime + '&enddatetime=' + query.enddatetime, {headers}) .then(function (response) { callback(response); }, function (response) { diff --git a/myems-api/app.py b/myems-api/app.py index 4e81c2f0..7b5913b0 100644 --- a/myems-api/app.py +++ b/myems-api/app.py @@ -442,7 +442,7 @@ api.add_route('/tenanttypes', api.add_route('/tenanttypes/{id_}', tenanttype.TenantTypeItem()) -api.add_route('/textmessages/from/{startdate}/to/{enddate}', +api.add_route('/textmessages', textmessage.TextMessageCollection()) api.add_route('/textmessages/{id_}', textmessage.TextMessageItem()) @@ -472,14 +472,14 @@ api.add_route('/virtualmeters', api.add_route('/virtualmeters/{id_}', virtualmeter.VirtualMeterItem()) -api.add_route('/webmessages/from/{startdate}/to/{enddate}', +api.add_route('/webmessages', webmessage.WebMessageCollection()) api.add_route('/webmessagesnew', webmessage.WebMessageStatusNewCollection()) api.add_route('/webmessages/{id_}', webmessage.WebMessageItem()) -api.add_route('/wechatmessages/from/{startdate}/to/{enddate}', +api.add_route('/wechatmessages', wechatmessage.WechatMessageCollection()) api.add_route('/wechatmessages/{id_}', wechatmessage.WechatMessageItem()) diff --git a/myems-api/core/textmessage.py b/myems-api/core/textmessage.py index 5ce69800..298dc16f 100644 --- a/myems-api/core/textmessage.py +++ b/myems-api/core/textmessage.py @@ -13,35 +13,46 @@ class TextMessageCollection: pass @staticmethod - def on_options(req, resp, startdate, enddate): + def on_options(req, resp): resp.status = falcon.HTTP_200 @staticmethod - def on_get(req, resp, startdate, enddate): + def on_get(req, resp): access_control(req) - 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') + + print(req.params) + start_datetime_local = req.params.get('startdatetime') + end_datetime_local = req.params.get('enddatetime') timezone_offset = int(config.utc_offset[1:3]) * 60 + int(config.utc_offset[4:6]) if config.utc_offset[0] == '-': timezone_offset = -timezone_offset - start_datetime_utc = start_datetime_local.replace(tzinfo=timezone.utc) - start_datetime_utc -= timedelta(minutes=timezone_offset) + if start_datetime_local is None: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_START_DATETIME_FORMAT") + else: + start_datetime_local = str.strip(start_datetime_local) + try: + start_datetime_utc = datetime.strptime(start_datetime_local, + '%Y-%m-%dT%H:%M:%S').replace(tzinfo=timezone.utc) - \ + timedelta(minutes=timezone_offset) + except ValueError: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_START_DATETIME_FORMAT") - end_datetime_utc = end_datetime_local.replace(tzinfo=timezone.utc) - end_datetime_utc -= timedelta(minutes=timezone_offset) - end_datetime_utc += timedelta(days=1) + if end_datetime_local is None: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_END_DATETIME_FORMAT") + else: + end_datetime_local = str.strip(end_datetime_local) + try: + end_datetime_utc = datetime.strptime(end_datetime_local, + '%Y-%m-%dT%H:%M:%S').replace(tzinfo=timezone.utc) - \ + timedelta(minutes=timezone_offset) + except ValueError: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_END_DATETIME_FORMAT") if start_datetime_utc >= end_datetime_utc: raise falcon.HTTPError(falcon.HTTP_400, diff --git a/myems-api/core/webmessage.py b/myems-api/core/webmessage.py index 70a984f7..fc19bb60 100644 --- a/myems-api/core/webmessage.py +++ b/myems-api/core/webmessage.py @@ -13,34 +13,44 @@ class WebMessageCollection: pass @staticmethod - def on_options(req, resp, startdate, enddate): + def on_options(req, resp): resp.status = falcon.HTTP_200 @staticmethod - def on_get(req, resp, startdate, enddate): - 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') + def on_get(req, resp): + print(req.params) + start_datetime_local = req.params.get('startdatetime') + end_datetime_local = req.params.get('enddatetime') timezone_offset = int(config.utc_offset[1:3]) * 60 + int(config.utc_offset[4:6]) if config.utc_offset[0] == '-': timezone_offset = -timezone_offset - start_datetime_utc = start_datetime_local.replace(tzinfo=timezone.utc) - start_datetime_utc -= timedelta(minutes=timezone_offset) + if start_datetime_local is None: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_START_DATETIME_FORMAT") + else: + start_datetime_local = str.strip(start_datetime_local) + try: + start_datetime_utc = datetime.strptime(start_datetime_local, + '%Y-%m-%dT%H:%M:%S').replace(tzinfo=timezone.utc) - \ + timedelta(minutes=timezone_offset) + except ValueError: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_START_DATETIME_FORMAT") - end_datetime_utc = end_datetime_local.replace(tzinfo=timezone.utc) - end_datetime_utc -= timedelta(minutes=timezone_offset) - end_datetime_utc += timedelta(days=1) + if end_datetime_local is None: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_END_DATETIME_FORMAT") + else: + end_datetime_local = str.strip(end_datetime_local) + try: + end_datetime_utc = datetime.strptime(end_datetime_local, + '%Y-%m-%dT%H:%M:%S').replace(tzinfo=timezone.utc) - \ + timedelta(minutes=timezone_offset) + except ValueError: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_END_DATETIME_FORMAT") if start_datetime_utc >= end_datetime_utc: raise falcon.HTTPError(falcon.HTTP_400, diff --git a/myems-api/core/wechatmessage.py b/myems-api/core/wechatmessage.py index 3b3c0b78..6cbc6fca 100644 --- a/myems-api/core/wechatmessage.py +++ b/myems-api/core/wechatmessage.py @@ -13,35 +13,46 @@ class WechatMessageCollection(object): pass @staticmethod - def on_options(req, resp, startdate, enddate): + def on_options(req, resp): resp.status = falcon.HTTP_200 @staticmethod - def on_get(req, resp, startdate, enddate): + def on_get(req, resp): access_control(req) - 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') + + print(req.params) + start_datetime_local = req.params.get('startdatetime') + end_datetime_local = req.params.get('enddatetime') timezone_offset = int(config.utc_offset[1:3]) * 60 + int(config.utc_offset[4:6]) if config.utc_offset[0] == '-': timezone_offset = -timezone_offset - start_datetime_utc = start_datetime_local.replace(tzinfo=timezone.utc) - start_datetime_utc -= timedelta(minutes=timezone_offset) + if start_datetime_local is None: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_START_DATETIME_FORMAT") + else: + start_datetime_local = str.strip(start_datetime_local) + try: + start_datetime_utc = datetime.strptime(start_datetime_local, + '%Y-%m-%dT%H:%M:%S').replace(tzinfo=timezone.utc) - \ + timedelta(minutes=timezone_offset) + except ValueError: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_START_DATETIME_FORMAT") - end_datetime_utc = end_datetime_local.replace(tzinfo=timezone.utc) - end_datetime_utc -= timedelta(minutes=timezone_offset) - end_datetime_utc += timedelta(days=1) + if end_datetime_local is None: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_END_DATETIME_FORMAT") + else: + end_datetime_local = str.strip(end_datetime_local) + try: + end_datetime_utc = datetime.strptime(end_datetime_local, + '%Y-%m-%dT%H:%M:%S').replace(tzinfo=timezone.utc) - \ + timedelta(minutes=timezone_offset) + except ValueError: + raise falcon.HTTPError(falcon.HTTP_400, title='API.BAD_REQUEST', + description="API.INVALID_END_DATETIME_FORMAT") if start_datetime_utc >= end_datetime_utc: raise falcon.HTTPError(falcon.HTTP_400,