コード例 #1
0
        public ActionResult Edit(int id, FormCollection collection)
        {
            DispatchModel form = new DispatchModel();

            try
            {

                TryUpdateModel<DispatchModel>(form, collection.ToValueProvider());

                int rowsAffected = DispatchDAO.UpdateForm(form);
            }
            catch
            {
                return View();
            }

            try
            {
                return RedirectToAction("Edit", new { id = form.FormID });
            }
            catch
            {
                return RedirectToAction("Index");
            }
        }
コード例 #2
0
        public ActionResult Create(FormCollection collection)
        {
            try
            {
                DispatchModel form = new DispatchModel();

                TryUpdateModel<DispatchModel>(form, collection.ToValueProvider());

                int rowsAffected = DispatchDAO.Insert(form);

                return RedirectToAction("Index");

            }
            catch
            {
                return RedirectToAction("Create");
            }
        }
コード例 #3
0
        public int ImportFromExcel(string xlsFile, UserModel user)
        {
            var numAlpha = new Regex("(?<Alpha>[a-zA-Z]*)(?<Numeric>[0-9]*)");

            String strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
                "Data Source=" + xlsFile + ";" +
                "Extended Properties=Excel 8.0;";

            DataSet ds = new DataSet();
            //You must use the $ after the object
            //you reference in the spreadsheet
            OleDbDataAdapter da = new OleDbDataAdapter
            ("SELECT * FROM [Sheet1$]", strConn);

            //da.TableMappings.Add("Table", "ExcelTest");

            da.Fill(ds);

            DataTable dt = ds.Tables[0];

            foreach (DataRow dr in dt.Rows)
            {
                {
                    try
                    {

                        DispatchModel model = new DispatchModel();
                        model.CreateUser = user;

                        try
                        {
                            string time = dr[ExcelMap["Time"]].ToString().Substring(0, 2) + ":" + dr[ExcelMap["Time"]].ToString().Substring(2, 2);
                            string date = dr[ExcelMap["Date"]].ToString().Split(' ')[0];
                            model.CreateDate = DateTime.Parse(time + " " + date);
                        }
                        catch
                        {
                            throw;
                        }

                        model.Unit = StringToNumber(dr[ExcelMap["Unit"]].ToString());
                        InitialDiagnosisModel ic = new InitialDiagnosisModel();

                        string[] ageString = dr[ExcelMap["Age"]].ToString().Split(' ');
                        if (ageString.Length > 1)
                        {

                            var match = numAlpha.Match(dr[ExcelMap["Age"]].ToString());

                            ic.Age = StringToNumber(match.Groups["Numeric"].ToString());

                            string alpha = "";

                            if (match.Groups["Alpha"].Length == 0)
                                alpha = dr[ExcelMap["Age"]].ToString().Replace(match.Groups["Numeric"].ToString(), "");

                            switch (alpha.ToLower().Trim())
                            {
                                case "mos":
                                    ic.AgeType = AgeType.Months;
                                    break;
                                default:
                                    ic.AgeType = AgeType.Years;
                                    break;
                            }
                        }
                        else
                        {
                            ic.Age = StringToNumber(dr[ExcelMap["Age"]].ToString());
                            ic.AgeType = AgeType.Years;
                        }

                        switch (dr[ExcelMap["Sex"]].ToString().ToUpper().Trim())
                        {
                            case "M":
                                ic.Gender = Gender.Male;
                                break;
                            case "F":
                                ic.Gender = Gender.Female;
                                break;
                            default:
                                ic.Gender = Gender.Unknown;
                                break;
                        }

                        try
                        {
                            ic.Category = (Category)Enum.Parse(typeof(Category), dr[ExcelMap["Category"]].ToString());
                        }
                        catch
                        {
                            ic.Category = Category.OTHER;
                        }

                        ic.ChiefComplaint = dr[ExcelMap["CC"]].ToString();

                        string[] bp = dr[ExcelMap["BP"]].ToString().Split(' ');

                        if (bp.Length > 0)
                        {
                            ic.BP1 = new BloodPressure(bp[0]);
                            if (bp.Length > 1)
                            {
                                ic.BP2 = new BloodPressure(bp[1]);
                            }
                        }

                        string[] pulse = dr[ExcelMap["Pulse"]].ToString().Split('-');

                        if (pulse.Length > 0)
                        {
                            ic.Pulse1 = StringToNumber(pulse[0]);

                            if (pulse.Length > 1)
                            {
                                ic.Pulse2 = StringToNumber(pulse[1].Trim());
                            }
                        }

                        string[] Resp = dr[ExcelMap["Resp"]].ToString().Split('-');

                        if (Resp.Length > 0)
                        {
                            ic.Resp1 = StringToNumber(Resp[0]);

                            if (Resp.Length > 1)
                            {
                                ic.Resp2 = StringToNumber(Resp[1].Trim());
                            }
                        }
                        string[] O2Sat = dr[ExcelMap["O2"]].ToString().Split('-');

                        if (O2Sat.Length > 0)
                        {
                            ic.O2Sat = StringToNumber(O2Sat[0]);

                            if (O2Sat.Length > 1)
                            {
                                ic.O2Sat2 = StringToNumber(O2Sat[1].Trim());
                            }
                        }

                        string[] BLG = dr[ExcelMap["BLG"]].ToString().Split('-');

                        if (BLG.Length > 0)
                        {
                            ic.BLG1 = StringToNumber(BLG[0]);

                            if (BLG.Length > 1)
                            {
                                ic.BLG2 = StringToNumber(BLG[1].Trim());
                            }
                        }

                        switch (dr[ExcelMap["LOC"]].ToString().Trim().ToLower())
                        {
                            case "y":
                                ic.LossOfConciousness = true;
                                break;
                            default:
                                ic.LossOfConciousness = false;
                                break;
                        }

                        ic.GSC1 = StringToNumber(dr[ExcelMap["GSC"]].ToString());

                        AlertsModel alerts = new AlertsModel();

                        switch (dr[ExcelMap["Trauma"]].ToString().ToLower().Trim())
                        {
                            case "y":
                                alerts.TraumaAlert = true;
                                break;
                            default:
                                alerts.TraumaAlert = false;
                                break;
                        }

                        switch (dr[ExcelMap["Stroke"]].ToString().ToLower().Trim())
                        {
                            case "y":
                                alerts.StrokeAlert = true;
                                break;
                            default:
                                alerts.StrokeAlert = false;
                                break;
                        }

                        switch (dr[ExcelMap["Stemi"]].ToString().ToLower().Trim())
                        {
                            case "y":
                                alerts.STEMI = true;
                                break;
                            default:
                                alerts.STEMI = false;
                                break;
                        }

                        alerts.ETA = StringToNumber(numAlpha.Match(dr[ExcelMap["ETA"]].ToString()).Groups["Numeric"].ToString());

                        MedicalDetailModel md = new MedicalDetailModel();

                        try
                        {
                            md.TC_ER__PEDS = (DispatchDestination)Enum.Parse(typeof(DispatchDestination), dr[ExcelMap["Destination"]].ToString());
                        }
                        catch
                        {
                        }
                        md.Level = dr[ExcelMap["Level"]].ToString();

                        model.InitialCondition = ic;
                        model.Alerts = alerts;
                        model.MedicalDetail = md;

                        DispatchDAO.Insert(model);

                    }
                    catch
                    {
                    }
                }
            }

            return 1;
        }
コード例 #4
0
        public static int UpdateForm(DispatchModel form)
        {
            if (cn == null)
            {
                cn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["ConnectionString"]);

            }

            try
            {

                cn.Open();

                SqlTransaction tn = (SqlTransaction)cn.BeginTransaction(System.Data.IsolationLevel.ReadUncommitted);

                SqlCommand cmd = new SqlCommand("UpdateFormByID", cn, tn);

                cmd.CommandType = System.Data.CommandType.StoredProcedure;

                cmd.Parameters.AddWithValue("FormID", form.FormID);
                cmd.Parameters.AddWithValue("CreateUser", form.CreateUser.UserName);
                cmd.Parameters.AddWithValue("CreateDate", form.CreateDate);
                cmd.Parameters.AddWithValue("UnitNumber", form.Unit > 0 ? form.Unit : 0);
                cmd.Parameters.AddWithValue("County", form.County);
                cmd.Parameters.AddWithValue("Age", form.InitialCondition.Age);
                cmd.Parameters.AddWithValue("AgeType", form.InitialCondition.AgeType);
                cmd.Parameters.AddWithValue("Sex", form.InitialCondition.Gender);
                cmd.Parameters.AddWithValue("AnOx", form.InitialCondition.A_OX);
                cmd.Parameters.AddWithValue("BP", String.IsNullOrEmpty(form.InitialCondition.BP1.ToString()) ? null : form.InitialCondition.BP1.ToString());
                cmd.Parameters.AddWithValue("BP2", String.IsNullOrEmpty(form.InitialCondition.BP2.ToString()) ? null : form.InitialCondition.BP2.ToString());
                cmd.Parameters.AddWithValue("Pulse", form.InitialCondition.Pulse1);
                cmd.Parameters.AddWithValue("Pulse2", form.InitialCondition.Pulse2);
                cmd.Parameters.AddWithValue("Resp", form.InitialCondition.Resp1);
                cmd.Parameters.AddWithValue("Resp2", form.InitialCondition.Resp2);
                cmd.Parameters.AddWithValue("O2Sat", form.InitialCondition.O2Sat);
                cmd.Parameters.AddWithValue("O2Sat2", form.InitialCondition.O2Sat2);
                cmd.Parameters.AddWithValue("Category", form.InitialCondition.Category);
                cmd.Parameters.AddWithValue("CC", form.InitialCondition.ChiefComplaint);
                cmd.Parameters.AddWithValue("LOC", form.InitialCondition.LossOfConciousness);
                cmd.Parameters.AddWithValue("GCS", form.InitialCondition.GSC1);
                cmd.Parameters.AddWithValue("BLG1", form.InitialCondition.BLG1);
                cmd.Parameters.AddWithValue("BLG2", form.InitialCondition.BLG2);
                cmd.Parameters.AddWithValue("DriverRestrained", form.CrashInformation.DriverRestrained);
                cmd.Parameters.AddWithValue("PassengerRestrained", form.CrashInformation.PassengerRestrained);
                cmd.Parameters.AddWithValue("Speed", form.CrashInformation.Speed);
                cmd.Parameters.AddWithValue("Helmet", form.CrashInformation.HasHelmet);
                cmd.Parameters.AddWithValue("Airbag", form.CrashInformation.AirbagDeployed);
                cmd.Parameters.AddWithValue("Ejected", form.CrashInformation.Ejected);
                cmd.Parameters.AddWithValue("Rollover", form.CrashInformation.Rollover);
                cmd.Parameters.AddWithValue("Entrapped", form.CrashInformation.Entrapped);
                cmd.Parameters.AddWithValue("PKG", form.CrashInformation.isPackaged);
                cmd.Parameters.AddWithValue("TraumaAlert", form.Alerts.TraumaAlert);
                cmd.Parameters.AddWithValue("StrokeAlert", form.Alerts.StrokeAlert);
                cmd.Parameters.AddWithValue("Onset", form.Alerts.onSet);
                cmd.Parameters.AddWithValue("Stemi", form.Alerts.STEMI);
                cmd.Parameters.AddWithValue("TIBR", form.Alerts.TIBR);
                cmd.Parameters.AddWithValue("Dispatcher", form.Alerts.DISP);
                cmd.Parameters.AddWithValue("History", form.Alerts.History);
                cmd.Parameters.AddWithValue("Treatment", form.Alerts.Treatment);
                cmd.Parameters.AddWithValue("Notified", form.Alerts.Notified);
                cmd.Parameters.AddWithValue("ETA", form.Alerts.ETA);
                cmd.Parameters.AddWithValue("Rescue", form.MedicalControl.Rescue);
                cmd.Parameters.AddWithValue("Meds", form.MedicalControl.Meds);
                cmd.Parameters.AddWithValue("DrSignature", form.MedicalControl.DrsSignature);
                cmd.Parameters.AddWithValue("DEANumber", form.MedicalControl.DEANumber);
                cmd.Parameters.AddWithValue("Narc", form.MedicalControl.NARC);
                cmd.Parameters.AddWithValue("Detail", form.MedicalDetail.Detail);
                cmd.Parameters.AddWithValue("Level", form.MedicalDetail.Level);
                cmd.Parameters.AddWithValue("Destination", form.MedicalDetail.TC_ER__PEDS);

                int rowsAffected = cmd.ExecuteNonQuery();
                tn.Commit();
                return rowsAffected;
            }
            catch
            {
                //implement error logging
            }
            finally
            {
                cn.Close();
            }

            return -1;
        }
コード例 #5
0
        public static DispatchModel GetDispatchByID(int dispatchID)
        {
            DispatchModel form = null;

            if (cn == null)
            {
                cn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["ConnectionString"]);

            }

            try
            {

                cn.Open();

                SqlTransaction tn = (SqlTransaction)cn.BeginTransaction(System.Data.IsolationLevel.ReadUncommitted);

                SqlCommand cmd = new SqlCommand("GetFormByID", cn, tn);

                cmd.CommandType = System.Data.CommandType.StoredProcedure;

                cmd.Parameters.AddWithValue("FormID", dispatchID);

                SqlDataReader reader = cmd.ExecuteReader();

                while (reader.Read())
                {
                    form = new DispatchModel();

                    form.FormID = Int32.Parse(reader["FormID"].ToString());
                    form.CreateUser = UserDAO.GetUserByUsername(reader["CreateUser"].ToString());
                    form.CreateDate = DateTime.Parse(reader["CreateDate"].ToString());
                    form.Unit = Int32.Parse(reader["UnitNumber"].ToString());
                    form.County = (County)Enum.Parse(typeof(County), reader["County"].ToString());

                    string disp = reader["DISP"].ToString();

                    if (!String.IsNullOrEmpty(disp))
                    {
                        form.LoggingUser = UserDAO.GetUserByUsername(disp);
                    }

                    form.InitialCondition = new InitialDiagnosisModel();

                    form.InitialCondition.Age = Int32.Parse(reader["Age"].ToString());
                    form.InitialCondition.AgeType = (AgeType)Enum.Parse(typeof(AgeType), reader["AgeType"].ToString());
                    form.InitialCondition.Gender = (Gender)Enum.Parse(typeof(Gender), reader["Sex"].ToString());
                    form.InitialCondition.A_OX = Int16.Parse(reader["AnOX"].ToString());
                    form.InitialCondition.BP1 = new BloodPressure(reader["BP"].ToString());
                    form.InitialCondition.BP2 = new BloodPressure(reader["BP2"].ToString());
                    form.InitialCondition.Pulse1 = Int16.Parse(reader["Pulse"].ToString());
                    form.InitialCondition.Pulse2 = Int16.Parse(reader["Pulse2"].ToString());
                    form.InitialCondition.Resp1 = Int16.Parse(reader["Resp"].ToString());
                    form.InitialCondition.Resp2 = Int16.Parse(reader["Resp2"].ToString());
                    form.InitialCondition.O2Sat = Int16.Parse(reader["O2Sat"].ToString());
                    form.InitialCondition.O2Sat2 = Int16.Parse(reader["O2Sat2"].ToString());
                    form.InitialCondition.ChiefComplaint = reader["CC"].ToString();
                    form.InitialCondition.LossOfConciousness = Boolean.Parse(reader["LOC"].ToString());
                    form.InitialCondition.GSC1 = Int32.Parse(reader["GCS"].ToString());
                    form.InitialCondition.BLG1 = Int32.Parse(reader["BGL1"].ToString());
                    form.InitialCondition.BLG2 = Int32.Parse(reader["BLG2"].ToString());

                    form.CrashInformation = new CrashInformationModel()
                    {
                        DriverRestrained = (DriverRestraintLevel)Enum.Parse(typeof(DriverRestraintLevel), reader["Driver_Restrained"].ToString()),
                        PassengerRestrained = (PassengerRestraintLevel)Enum.Parse(typeof(PassengerRestraintLevel), reader["Passenger_Restrained"].ToString()),
                        Speed = Int16.Parse(reader["Speed"].ToString()),
                        HasHelmet = Boolean.Parse(reader["Helmet"].ToString()),
                        AirbagDeployed = Boolean.Parse(reader["Airbag"].ToString()),
                        Ejected = Boolean.Parse(reader["Ejected"].ToString()),
                        Entrapped = Boolean.Parse(reader["Entrapped"].ToString()),
                        isPackaged = Boolean.Parse(reader["PKG"].ToString()),
                        Rollover = Boolean.Parse(reader["Ejected"].ToString()),

                    };

                    form.Alerts = new AlertsModel()
                    {
                        DISP = reader["DISP"].ToString(),
                        ETA = Int32.Parse(reader["ETA"].ToString()),
                        History = (History)Enum.Parse(typeof(History), reader["HX"].ToString()),
                        Notified = Boolean.Parse(reader["Notified"].ToString()),
                        STEMI = Boolean.Parse(reader["STEMI"].ToString()),
                        StrokeAlert = Boolean.Parse(reader["SA"].ToString()),
                        TraumaAlert = Boolean.Parse(reader["TA"].ToString()),
                        TIBR = reader["TIBR"].ToString(),
                        Treatment = (Treatment)Enum.Parse(typeof(Treatment), reader["TX"].ToString()),
                        onSet = reader["Onset"].ToString()
                    };

                    form.MedicalControl = new MedicalControlModel()
                    {
                        DEANumber = Int32.Parse(reader["DEANumber"].ToString()),
                        Meds = reader["MEDS"].ToString(),
                        DrsSignature = reader["DrSign"].ToString(),
                        NARC = Boolean.Parse(reader["NARC"].ToString()),
                        Rescue = reader["Rescue"].ToString()
                    };

                    form.MedicalDetail = new MedicalDetailModel()
                    {
                        Detail = reader["Detail"].ToString(),
                        Level = reader["levels"].ToString(),
                        TC_ER__PEDS = (DispatchDestination)Enum.Parse(typeof(DispatchDestination), reader["Destination"].ToString())
                    };
                }

            }
            catch
            {
                //implement error logging
            }
            finally
            {
                cn.Close();
            }

            return form;
        }