コード例 #1
0
ファイル: EventController.cs プロジェクト: Ariannwyn/Team-3
        public async Task <DataResponse <Event> > PostFeedbackResponse([FromBody] DataInput <Feedback> feedback)
        {
            try
            {
                var authenticate = _authenticationService.AuthenticateToken(feedback.Data.Token, AppSettingsModel.appSettings.FeedbackJwtSecret);
                feedback.Data.Email = authenticate.Data[0];
                feedback.EventId    = authenticate.Data[1];

                if (!string.IsNullOrEmpty(feedback.Data.Body))
                {
                    var analysis = _predictionService.Predict(new PredictionInput()
                    {
                        Sentiment = feedback.Data.Body
                    });
                    feedback.Data.IsPositive = analysis.Prediction;
                    feedback.Data.Score      = analysis.Score;
                }

                var response = await _eventService.AddFeedback(feedback);

                return(response);
            }
            catch (Exception ex)
            {
                LoggerHelper.Log(ex);
                return(new DataResponse <Event>()
                {
                    Errors = new Dictionary <string, List <string> >()
                    {
                        ["*"] = new List <string> {
                            ex.Message
                        },
                    },
                    Success = false
                });
            }
        }