Пример #1
0
        //Constructor
        public Intervention()
        {
            this.resourceList       = new List <Resource>();
            this.interventionNumber = ++lastIntervention;
            this.timeOfCall         = DateTime.Now;
            this.additionalInfo     = new InterventionAdditionalInfo[10];
            this.abc                  = new ABC(this);
            this.isConcludedBool      = false;
            this.firstTeamArrivalTime = DateTime.MinValue;
            this.callID               = -1;

            activeInterventionList.Add(this);
            ClassModifiedNotification(typeof(Intervention));

            if (Operation.currentOperation != null)
            {
                this.operationID = Operation.currentOperation.getID();
            }
            this.interventionID = StaticDBConnection.NonQueryDatabaseWithID("INSERT INTO [Interventions] (Operation_ID, Intervention_Number, Time_Of_Call) VALUES (" + operationID + ", " + interventionNumber + ", '" + StaticDBConnection.DateTimeSQLite(timeOfCall) + "')");
        }
Пример #2
0
 //Set first responder arrival time
 public void setFirstResponderArrivalTime(DateTime firstResponderArrivalTime)
 {
     this.firstResponderArrivalTime = firstResponderArrivalTime;
     StaticDBConnection.NonQueryDatabase("UPDATE [Calls] SET Ambulance_Time='" + StaticDBConnection.DateTimeSQLite(firstResponderArrivalTime) + "' WHERE Call_ID=" + callID + ";");
 }
Пример #3
0
 //Set ambulance arrival time
 public void setAmbulanceArrivalTime(DateTime ambulanceArrivalTime)
 {
     this.ambulanceArrivalTime = ambulanceArrivalTime;
     StaticDBConnection.NonQueryDatabase("UPDATE [Calls] SET Ambulance_Time='" + StaticDBConnection.DateTimeSQLite(ambulanceArrivalTime) + "' WHERE Call_ID=" + callID + ";");
 }
Пример #4
0
 //Set conclusion time
 public void setConclusionTime(DateTime conclusionTime)
 {
     this.conclusionTime = conclusionTime;
     StaticDBConnection.NonQueryDatabase("UPDATE [Interventions] SET Conclusion_Time='" + StaticDBConnection.DateTimeSQLite(conclusionTime) + "' WHERE Intervention_ID=" + interventionID + ";");
 }
Пример #5
0
 //Set 911 call time
 public void setCall911Time(DateTime call911Time)
 {
     this.callID      = StaticDBConnection.NonQueryDatabaseWithID("INSERT INTO [Calls] (Intervention_ID) VALUES (" + this.interventionID + ");");
     this.call911Time = call911Time;
     StaticDBConnection.NonQueryDatabase("UPDATE [Calls] SET Call_Time='" + StaticDBConnection.DateTimeSQLite(call911Time) + "' WHERE Call_ID=" + callID + ";");
 }
Пример #6
0
        //Add intervening teams
        public void AddInterveningTeam(Team team)
        {
            foreach (Resource resource in resourceList)
            {
                if (resource.getTeam() == team)
                {
                    resource.setIntervening(true);
                    InstanceModifiedNotification();
                    if (team.getStatus().ToString().Equals("intervening"))
                    {
                        team.setStatus("moving");
                    }
                    return;
                }
            }

            //Set up arrival time
            if (firstTeamArrivalTime == DateTime.MinValue)
            {
                firstTeamArrivalTime = DateTime.Now;
            }
            team.incrementInterventionCount();
            resourceList.Add(new Resource(this, team));

            StaticDBConnection.NonQueryDatabase("INSERT INTO [Intervening_Teams] (Intervention_ID, Team_ID, Started_Intervening) VALUES (" + interventionID + ", " + team.getID() + ", '" + StaticDBConnection.DateTimeSQLite(DateTime.Now) + "');");
            InstanceModifiedNotification();
        }
Пример #7
0
        //Remove a team from an intervention
        public void RemoveInterveningTeam(Team team)
        {
            Resource resourceToRemove = null;

            foreach (Resource resource in resourceList)
            {
                if (resource.getTeam() == team)
                {
                    if (!resource.hasArrived())
                    {
                        resourceToRemove = resource;
                    }
                    else
                    {
                        resource.setIntervening(false);
                    }
                    StaticDBConnection.NonQueryDatabase("UPDATE [Intervening_Teams] SET Stopped_Intervening='" + StaticDBConnection.DateTimeSQLite(DateTime.Now) + "' WHERE Intervention_ID=" + interventionID + " AND Team_ID=" + team.getID() + ";");
                }
            }
            if (resourceToRemove != null)
            {
                resourceList.Remove(resourceToRemove);
            }
            InstanceModifiedNotification();
        }
        public InterventionAdditionalInfo(Intervention intervention, String information, DateTime timestamp)
        {
            this.information = information;
            this.timestamp   = timestamp;

            this.interventionID   = intervention.getID();
            this.additionalInfoID = StaticDBConnection.NonQueryDatabaseWithID("INSERT INTO [Additional_Informations] (Intervention_ID, Information, Timestamp) VALUES (" + interventionID + ", '" + information.Replace("'", "''") + "', '" + StaticDBConnection.DateTimeSQLite(timestamp) + "')");
        }
Пример #9
0
 //Creates a new operation
 public Operation(String operationName, String acronym, DateTime shiftStart, DateTime shiftEnd, String dispatcherName)
 {
     this.operationName  = operationName;
     this.acronym        = acronym;
     this.shiftStart     = shiftStart;
     this.shiftEnd       = shiftEnd;
     this.dispatcherName = dispatcherName;
     this.operationID    = StaticDBConnection.NonQueryDatabaseWithID("INSERT INTO [Operations] (Name, Acronym, Shift_Start, Shift_End, Dispatcher) VALUES ('" + operationName.Replace("'", "''") + "', '" + acronym.Replace("'", "''") + "', '" + StaticDBConnection.DateTimeSQLite(shiftStart) + "', '" + StaticDBConnection.DateTimeSQLite(shiftEnd) + "', '" + dispatcherName.Replace("'", "''") + "')");
     currentOperation    = this;
 }
Пример #10
0
 //Removing equipment from the team list
 public void RemoveEquipment(Equipment equipment)
 {
     if (equipmentList.Contains(equipment))
     {
         equipmentList.Remove(equipment);
         StaticDBConnection.NonQueryDatabase("UPDATE [Assigned_Equipment] SET Removed_Time='" + StaticDBConnection.DateTimeSQLite(DateTime.Now) + "' WHERE Equipment_ID=" + equipment.getID() + " AND Team_ID=" + teamID + ";");
         InstanceModifiedNotification();
     }
 }
Пример #11
0
 //Deletes a team from the team list
 private static void DeleteTeam(Team team, List <Team> list)
 {
     list.Remove(team);
     while (team.memberList.Count > 0)
     {
         StaticDBConnection.NonQueryDatabase("UPDATE [Team_Members] SET Disbanded='" + StaticDBConnection.DateTimeSQLite(DateTime.Now) + "' WHERE Volunteer_ID=" + team.getMember(0).getID() + " AND Team_ID=" + team.getID() + ";");
         team.memberList.RemoveAt(0);
     }
     ClassModifiedNotification(typeof(Team));
 }
Пример #12
0
 //Adds a maximum of 3 equipments to the team
 public bool AddEquipment(Equipment equipment)
 {
     if (equipmentList.Count < 3)
     {
         equipmentList.Add(equipment);
         StaticDBConnection.NonQueryDatabase("INSERT INTO [Assigned_Equipment] (Equipment_ID, Team_ID, Assigned_Time) VALUES (" + equipment.getID() + ", " + teamID + ", '" + StaticDBConnection.DateTimeSQLite(DateTime.Now) + "');");
         InstanceModifiedNotification();
         return(true);
     }
     MessageBox.Show(ETD.Properties.Resources.MessageBox_Notification_EquipmentLimit);
     return(false);
 }
Пример #13
0
 //Adds a maximum of 3 new member to the team
 public bool AddMember(TeamMember member)
 {
     if (memberList.Count <= 2)
     {
         memberList.Add(member);
         StaticDBConnection.NonQueryDatabase("INSERT INTO [Team_Members] (Team_ID, Volunteer_ID, Departure, Joined) VALUES (" + teamID + ", " + member.getID() + ", '" + StaticDBConnection.DateTimeSQLite(member.getDeparture()) + "', '" + StaticDBConnection.DateTimeSQLite(DateTime.Now) + "');");
         if ((int)highestLevelOfTraining < (int)member.getTrainingLevel())
         {
             highestLevelOfTraining = member.getTrainingLevel();
         }
         InstanceModifiedNotification();
         return(true);
     }
     return(false);
 }
Пример #14
0
 //Constructors
 public Resource(String resourceName, Team team, bool intervening, DateTime moving, DateTime arrival)
 {
     this.resourceName = resourceName;
     this.team         = team;
     this.intervening  = intervening;
     this.moving       = moving;
     this.arrival      = arrival;
     this.resourceID   = StaticDBConnection.NonQueryDatabaseWithID("INSERT INTO [Resources] (Intervention_ID, Name, Team_ID, Intervening, Moving, Arrival) VALUES (" + interventionID + ", '" + resourceName.Replace("'", "''") + "', " + team.getID() + ", " + intervening + "', '" + StaticDBConnection.DateTimeSQLite(moving) + "', '" + StaticDBConnection.DateTimeSQLite(arrival) + ")");
 }
Пример #15
0
 //Set arrival time
 public void setArrival(DateTime arrival)
 {
     this.arrival     = arrival;
     this.arrivedBool = true;
     StaticDBConnection.NonQueryDatabase("UPDATE [Resources] SET Arrival='" + StaticDBConnection.DateTimeSQLite(arrival) + "', HasArrived='TRUE' WHERE Resource_ID=" + resourceID + ";");
 }
Пример #16
0
 //Set status of moving
 public void setMoving(DateTime moving)
 {
     this.moving     = moving;
     this.movingBool = true;
     StaticDBConnection.NonQueryDatabase("UPDATE [Resources] SET Moving='" + StaticDBConnection.DateTimeSQLite(moving) + "', HasArrived='TRUE' WHERE Resource_ID=" + resourceID + ";");
 }