public void SaveMaintenanceInjectionDrugs(MaintenanceInjectionDrug drugs) { service.DeleteMaintenanceInhalantDrug(drugs.PatientId); if (service.UpdateMaintenanceInjectionDrug(drugs) == 0) service.CreateMaintenanceInjectionDrug(drugs); }
public void CreateMaintenanceInjectionDrug(MaintenanceInjectionDrug maintInject) { using (SqlConnection conn = new SqlConnection(connString)) { string sql = @"INSERT INTO dbo.Maintenance_Injection_Drugs_To_Patient ( PatientId, DrugId, RouteOfAdministrationId, Dosage ) VALUES ( @PatientId, @DrugId, @RouteOfAdministrationId, @Dosage )"; SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.Add("@PatientId", SqlDbType.Int).Value = maintInject.PatientId; if (maintInject.Drug.Id == -1) cmd.Parameters.Add("@DrugId", SqlDbType.Int).Value = DBNull.Value; else cmd.Parameters.Add("@DrugId", SqlDbType.Int).Value = maintInject.Drug.Id; if (maintInject.RouteOfAdministration.Id == -1) cmd.Parameters.Add("@RouteOfAdministrationId", SqlDbType.Int).Value = DBNull.Value; else cmd.Parameters.Add("@RouteOfAdministrationId", SqlDbType.Int).Value = maintInject.RouteOfAdministration.Id; if (maintInject.Dosage == 0.0M) cmd.Parameters.Add("@Dosage", SqlDbType.Decimal).Value = DBNull.Value; else cmd.Parameters.Add("@Dosage", SqlDbType.Decimal).Value = maintInject.Dosage; try { conn.Open(); cmd.ExecuteNonQuery(); } catch (Exception e) { throw e; } finally { conn.Close(); } } }
public MaintenanceInjectionDrug GetMaintenanceInjectionDrugs(int patientId, params MaintenanceInjectionDrug.LazyComponents[] lazyComponents) { MaintenanceInjectionDrug maintInjectDrugs = new MaintenanceInjectionDrug(); using (SqlConnection conn = new SqlConnection(connString)) { string sql = BuildMaintenanceInjectionDrugSQL(); string from = @"FROM dbo.Maintenance_Injection_Drugs_To_Patient AS a"; string where = @" WHERE a.PatientId = @PatientId "; foreach (MaintenanceInjectionDrug.LazyComponents a in lazyComponents) { if (a == MaintenanceInjectionDrug.LazyComponents.LOAD_DRUG_INFORMATION) { sql += @", b.CategoryId as 'b.CategoryId', b.Label as 'b.Label', b.OtherFlag as 'b.OtherFlag', b.Description as 'b.Description', b.Concentration as 'b.Concentration', b.MaxDosage as 'b.MaxDosage' "; from += @" LEFT OUTER JOIN dbo.Dropdown_Types b on b.Id = a.DrugId"; } else if (a == MaintenanceInjectionDrug.LazyComponents.LOAD_ROUTE_WITH_DETAILS) { sql += @", c.CategoryId as 'c.CategoryId', c.Label as 'c.Label', c.OtherFlag as 'c.OtherFlag', c.Description as 'c.Description', c.Concentration as 'c.Concentration' "; from += @" LEFT OUTER JOIN dbo.Dropdown_Types as c ON a.RouteOfAdministrationId = c.Id "; } } sql = sql + from + where; SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.Add("@PatientId", SqlDbType.Int).Value = patientId; try { conn.Open(); SqlDataReader read = cmd.ExecuteReader(); while (read.Read()) { maintInjectDrugs = new MaintenanceInjectionDrugCallback().ProcessRow(read, lazyComponents); } } catch (Exception e) { throw e; } finally { conn.Close(); } } return maintInjectDrugs; }
public int UpdateMaintenanceInjectionDrug(MaintenanceInjectionDrug maintInject) { int returnNum = 0; using (SqlConnection conn = new SqlConnection(connString)) { string sql = @"UPDATE dbo.Maintenance_Injection_Drugs_To_Patient SET DrugId = @DrugId, RouteOfAdministrationId = @RouteOfAdministrationId, Dosage = @Dosage WHERE PatientId = @PatientId"; SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.Add("@PatientId", SqlDbType.Int).Value = maintInject.PatientId; if (maintInject.Drug.Id == -1) cmd.Parameters.Add("@DrugId", SqlDbType.Int).Value = DBNull.Value; else cmd.Parameters.Add("@DrugId", SqlDbType.Int).Value = maintInject.Drug.Id; if (maintInject.RouteOfAdministration.Id == -1) cmd.Parameters.Add("@RouteOfAdministrationId", SqlDbType.Int).Value = DBNull.Value; else cmd.Parameters.Add("@RouteOfAdministrationId", SqlDbType.Int).Value = maintInject.RouteOfAdministration.Id; if (maintInject.Dosage == 0.0M) cmd.Parameters.Add("@Dosage", SqlDbType.Decimal).Value = DBNull.Value; else cmd.Parameters.Add("@Dosage", SqlDbType.Decimal).Value = maintInject.Dosage; try { conn.Open(); returnNum = cmd.ExecuteNonQuery(); } catch (Exception e) { throw e; } finally { conn.Close(); } } return returnNum; }
public Maintenance() { _maintenanceInjectionDrug = new MaintenanceInjectionDrug(); _maintenanceInhalantDrug = new MaintenanceInhalantDrug(); _maintenanceOther = new MaintenanceOther(); }