public async Task <IHttpActionResult> DownloadAcceptanceAsync(string branch) { var connectionString = @"Server=(localdb)\ProjectsV13;Database=Entt;Trusted_Connection=True;"; var conn = new SqlConnection(connectionString); var acceptances = new List <EnttAcceptance>(); using (var cmd = new SqlCommand("SELECT [Id],[ConsignmentNo],[DateTime],[LocationId],[PickupNo],[Postcode],[Pl9No],[ShipperAccountNo],[ParentWeight] FROM [Entt].[Acceptance] WHERE [LocationId] = @LocationId AND [DateTime] > @StartDate AND [DateTime] <= @EndDate", conn)) { if (conn.State != ConnectionState.Open) { conn.Open(); } cmd.Parameters.AddWithValue("@LocationId", branch); cmd.Parameters.AddWithValue("@StartDate", DateTime.Today); cmd.Parameters.AddWithValue("@EndDate", DateTime.Now); using (var reader = await cmd.ExecuteReaderAsync(CommandBehavior.CloseConnection)) { while (reader.Read()) { var a = new EnttAcceptance { Id = reader.GetString(0) , ConsignmentNo = reader.GetString(1) , DateTime = reader.GetDateTime(2) , LocationId = reader.GetString(3) , Postcode = reader.GetValue(5).ToString() , Pl9No = reader.GetValue(6).ToString() , ShipperAccountNo = reader.GetValue(7).ToString() //,Weight = reader.GetDecimal(8) }; acceptances.Add(a); var weight = reader[8]; if (DBNull.Value != weight) { try { a.Weight = decimal.Parse(weight.ToString()); } catch (Exception ex) { Console.WriteLine(weight); } } } } } var sb = new StringBuilder(); foreach (var item in acceptances) { sb.AppendFormat("{0}\t{1}\t{2}\t{3}\t{4}\t{5}\t{6}\r\n", item.ConsignmentNo, item.ShipperAccountNo, item.DateTime, item.LocationId, item.Pl9No, item.Postcode, item.Weight); } var fileContent = Encoding.ASCII.GetBytes(sb.ToString()); return(File(fileContent, "text/plain", "sample.txt")); }
private async Task UpdateCmsAcceptanceAsync(EnttAcceptance acceptance) { var client = new HttpClient(); var cmsXUserKey = ConfigurationManager.GetEnvironmentVariable("Cms_XUserKey"); client.DefaultRequestHeaders.Add("X-User-Key", cmsXUserKey); var cmsApiUrl = ConfigurationManager.GetEnvironmentVariable("Cms_ApiUrl"); var keyValuePairs = new List <KeyValuePair <string, string> > { new KeyValuePair <string, string>("id", acceptance.ConsignmentNo), new KeyValuePair <string, string>("AcceptanceBy", acceptance.CourierId) }; var response = await client.PutAsync(cmsApiUrl, new FormUrlEncodedContent(keyValuePairs.ToArray())); var content = await response.Content.ReadAsStringAsync(); }
public async Task <IHttpActionResult> DownloadAcceptanceConnoteAsync(string branch) { var connectionString = ConfigurationManager.GetEnvironmentVariable("EnttConnectionString"); var conn = new SqlConnection(connectionString); var acceptances = new List <EnttAcceptance>(); using (var cmd = new SqlCommand("SELECT DISTINCT [ConsignmentNo] FROM [Entt].[Acceptance] WHERE ([LocationId] = @LocationId AND [DateTime] >= @StartDate AND [DateTime] <= @EndDate) OR ([IsPupStatCode] = 1 AND [PupStatCodeLocation] = @LocationId AND [PupStatCodeDateTime] >= @StartDate AND [PupStatCodeDateTime] <= @EndDate) OR ([IsMissort] = 1 AND [MissortLocation] = @LocationId AND[MissortDateTime] >= @StartDate AND[MissortDateTime] <= @EndDate)", conn)) { if (conn.State != ConnectionState.Open) { conn.Open(); } cmd.Parameters.AddWithValue("@LocationId", branch); cmd.Parameters.AddWithValue("@StartDate", DateTime.Today); cmd.Parameters.AddWithValue("@EndDate", DateTime.Now); using (var reader = await cmd.ExecuteReaderAsync(CommandBehavior.CloseConnection)) { while (reader.Read()) { var a = new EnttAcceptance { ConsignmentNo = reader.GetString(0) }; acceptances.Add(a); } } } var sb = new StringBuilder(); foreach (var item in acceptances) { sb.AppendFormat("{0}\r\n", item.ConsignmentNo); } var fileContent = Encoding.ASCII.GetBytes(sb.ToString()); return(File(fileContent, "text/plain", "sample.txt")); }
public async Task Run(EnttAcceptance acceptance) { await UpdateCmsAcceptanceAsync(acceptance); }