public IActionResult PromoteStudents(PropomoteStudentsRequest request) { _service.PromoteStudents(request); var response = _service.PromoteStudents(request); return(Ok(response)); }
public string PromoteStudents(PropomoteStudentsRequest request) { var conBuilder = new SqlConnectionStringBuilder(); conBuilder.DataSource = "db-mssql"; conBuilder.InitialCatalog = "s17025"; conBuilder.IntegratedSecurity = true; string ConString = conBuilder.ConnectionString; using (var con = new SqlConnection(ConString)) using (var com = new SqlCommand()) { com.Connection = con; con.Open(); var tran = con.BeginTransaction(); com.Transaction = tran; try { com.CommandText = "SELECT S.IdStudy FROM STUDIES S, ENROLLMENT WHERE NAME=@name AND SEMESTER=@semester"; com.Parameters.AddWithValue("name", request.Studies); com.Parameters.AddWithValue("semester", request.Semester); var dr = com.ExecuteReader(); if (!dr.Read()) { tran.Rollback(); return("Brak studiow"); } int idstudy = (int)dr["IdStudy"]; com.CommandText = "EXEC PromoteStudents @name, @semester"; com.ExecuteNonQuery(); dr.Close(); com.CommandText = "SELECT * FROM ENROLLMENT WHERE IDSTUDY = @idstudy AND SEMESTER=@semester+1"; com.Parameters.AddWithValue("idstudy", idstudy); com.Parameters.AddWithValue("semester", request.Semester); var enrollment = new Enrollment(); enrollment.IdEnrollment = (int)dr["IdEnrollment"]; enrollment.IdStudy = idstudy; enrollment.Semester = (int)dr["Semester"]; enrollment.StartDate = Convert.ToString(dr["StartDate"]); com.ExecuteNonQuery(); dr.Close(); tran.Commit(); return("Ok(201), idWpisu: " + Convert.ToString(enrollment.IdEnrollment) + ", idStudy: " + Convert.ToString(enrollment.IdStudy) + ", semester: " + Convert.ToString(enrollment.Semester) + ", data rozpoczecia: " + Convert.ToString(enrollment.StartDate)); } catch (SqlException e) { return("Niespodziewany blad!"); } } }