예제 #1
0
 public void UpdateSlackChannelInfo(SlackChannelInfo slackChannelInfo)
 {
     using (var session = _documentStore.OpenSession())
     {
         session.Store(slackChannelInfo, slackChannelInfo.SlackChannelName);
         session.SaveChanges();
     }
 }
예제 #2
0
 public SlackChannelInfo GetSlackChannelInfo(string slackChannelName)
 {
     using (var session = _documentStore.OpenSession())
     {
         var channelInfo =
             session.Query <SlackChannelInfo>().FirstOrDefault(x => x.SlackChannelName == slackChannelName);
         if (channelInfo != null)
         {
             return(channelInfo);
         }
         channelInfo = new SlackChannelInfo(slackChannelName, 0, new List <string>());
         UpdateSlackChannelInfo(channelInfo);
         return(channelInfo);
     }
 }
예제 #3
0
        public SlackResponse Process(SlackRequest slackRequest)
        {
            var bAuthorized = _validator.IsAuthorized(slackRequest);

            if (!bAuthorized)
            {
                return(new SlackResponse
                {
                    Text = UnauthorizedResponse,
                    ResponseType = ResponseType.Ephemeral
                });
            }
            _formTextContent = slackRequest.CommandText;
            _channelInfo     = _databaseClient.GetSlackChannelInfo(slackRequest.ChannelName);
            return(_triggerWordMap[slackRequest.CommandType]());
        }
예제 #4
0
 public void UpdateSlackChannelInfo(SlackChannelInfo slackChannelInfo)
 {
     using (var connection = new SqlConnection(ConfigurationManager.AppSettings["SqlConnectionString"]))
     {
         connection.Open();
         using (var command = new SqlCommand("Update_SlackChannel", connection))
         {
             command.CommandType = StoredProcedure;
             command.Parameters.AddWithValue("@SlackChannelName", slackChannelInfo.SlackChannelName);
             command.Parameters.AddWithValue("@PivotalProjectId", slackChannelInfo.PivotalProjectId);
             command.Parameters.AddWithValue("@Descriptions",
                                             CreateDataTable(slackChannelInfo.DefaultTaskDescriptions));
             command.ExecuteNonQuery();
         }
     }
 }