Example #1
0
        public NewPrescriptionResponse CreatePrescription(NewPrescriptionRequest request)
        {
            using (var connection = new SqlConnection("Data Source=db-mssql;Initial Catalog=s18589;Integrated Security=true"))
                using (var command = new SqlCommand())
                {
                    command.Connection = connection;
                    connection.Open();
                    var transaction = connection.BeginTransaction();
                    command.Transaction = transaction;

                    if (DateTime.Compare(request.DueDate, request.Date) > 0)
                    {
                        transaction.Rollback();
                        throw new ArgumentException("duedate jest pozniejsze niz date");
                    }

                    command.Parameters.AddWithValue("duedate", request.DueDate);
                    command.Parameters.AddWithValue("date", request.Date);
                    command.Parameters.AddWithValue("idpatient", request.IdPatient);
                    command.Parameters.AddWithValue("iddoctor", request.IdDoctor);

                    command.CommandText = "insert into Prescription(date, duedate, iddoctor, idpatient) values(@date, @duedate, @iddoctor, @idpatient)";

                    var dr1 = command.ExecuteReader();

                    dr1.Close();

                    command.CommandText = "select max(idprescription) from prescription";
                    var dr2 = command.ExecuteReader();
                    dr2.Read();
                    int idprescription = dr2.GetInt32(0);

                    dr2.Close();
                    transaction.Commit();


                    return(new NewPrescriptionResponse
                    {
                        Id = idprescription
                    });
                }
        }
Example #2
0
        public IActionResult PostNewPrescription(NewPrescriptionRequest request)
        {
            int id = new Random().Next(10, 20000); // zabraklo czasu na dodanie id zgadzajacego sie z baza to dalem takie zeby dodac kilka razy nowa recepta i zobaczyc czy dziala
            


              using (SqlConnection con = new SqlConnection(ConString))
            using (SqlCommand com = new SqlCommand())
            {
                 
                com.Connection = con;
                com.CommandText = "insert into Prescription(IdPrescription, Date, DueDate, IdPatient, IdDoctor) "
                                      + "values (@IdPrescription, @Date, @DueDate, @IdPatient, @IdDoctor);";
                com.Parameters.AddWithValue("IdPrescription", id);
                com.Parameters.AddWithValue("Date", request.Date);
                com.Parameters.AddWithValue("DueDate", request.DueDate);
                com.Parameters.AddWithValue("IdPatient", request.IdPatient);
                com.Parameters.AddWithValue("IdDoctor", request.IdDoctor);
                con.Open();
                // zabraklo czasu
                }
                
            }
Example #3
0
        public void AddPrescriptions(NewPrescriptionRequest request)
        {
            using (var con = new SqlConnection("Data Source=db-mssql;Initial Catalog=s18836;Integrated Security=True"))
                using (var com = new SqlCommand())
                {
                    com.Connection = con;
                    con.Open();

                    var tran = con.BeginTransaction();
                    com.Transaction = tran;

                    try
                    {
                        var wpis = new Wpis();
                        wpis.Date      = request.Date;
                        wpis.DueDate   = request.DueDate;
                        wpis.IdPatient = request.IdPatient;
                        wpis.IdDoctor  = request.IdDoctor;

                        com.CommandText = "USE [2019SBD]; INSERT INTO Prescription VALUES(@id, @date , @duedate , @idpat, @iddoc)";
                        com.Parameters.AddWithValue("@id", 1);
                        com.Parameters.AddWithValue("@date", wpis.Date);
                        com.Parameters.AddWithValue("@duedate", wpis.DueDate);
                        com.Parameters.AddWithValue("@idpat", wpis.IdPatient);
                        com.Parameters.AddWithValue("@iddoc", wpis.IdDoctor);

                        com.ExecuteNonQuery();
                    }
                    catch (SqlException e)
                    {
                        tran.Rollback();
                    }

                    tran.Commit();
                }
        }