示例#1
0
 private void Beds_PreviewMouseDown(object sender, MouseButtonEventArgs e)
 {
     if (Beds.Text == "Amount of Beds Your Property has")
     {
         Beds.Clear();
     }
 }
 public IActionResult AddNewBed([FromBody] Beds bed)
 {
     try
     {
         bool   validIcu = false;
         string message  = "";
         IcuValidator.CheckForValidIcu(bed.IcuNo, ref validIcu, ref message);
         if (!validIcu)
         {
             return(BadRequest(message));
         }
         else
         {
             BedIdentification bedIdentification = new BedIdentification();
             bed.BedSerialNo = bedIdentification.FindBedSerialNo(bed.IcuNo);
             _context.Add(bed);
             _context.SaveChanges();
             return(Ok());
         }
     }
     catch (Exception ex)
     {
         return(StatusCode(500, ex));
     }
 }
示例#3
0
        public async Task <IActionResult> PutBeds(int id, Beds beds)
        {
            if (id != beds.BedId)
            {
                return(BadRequest());
            }

            _context.Entry(beds).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!BedsExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
示例#4
0
        private void saveBtn_Click(object sender, EventArgs e)
        {
            if (wardTxt.Text == "")
            {
                wardTxt.BackColor = Color.Red;
                return;
            }
            //if (Global._beds.Select(l=>l.No.Contains(bedTxt.Text) && l.WardID.Contains(wardTxt.Text)) {

            //    MessageBox.Show("Information already submitted !");
            //    return;
            //}

            string id = Guid.NewGuid().ToString();

            _bed = new Beds(id, wardTxt.Text, bedTxt.Text, accountTxt.Text, rateTxt.Text, statusTxt.Text, categoryTxt.Text, DateTime.Now.ToString("dd-MM-yyyy H:mm:ss"), Helper.orgID);

            if (DBConnect.Insert(_bed) != "")
            {
                Global._beds.Add(_bed);
                wardTxt.Text    = "";
                bedTxt.Text     = "";
                accountTxt.Text = "";
                MessageBox.Show("Information Saved");
                LoadData();
            }
            else
            {
                return;
            }
        }
示例#5
0
 public void AddBed(Bed bed)
 {
     if (bed != null)
     {
         Beds.Add(bed);
     }
 }
示例#6
0
 public static void LoadData(string start, string end)
 {
     _roles       = new List <Roles>(Roles.ListRoles());
     _patients    = new List <Patient>(Patient.ListPatients());
     _users       = new List <Users>(Users.ListUsers());
     _events      = new List <Events>(Events.ListEvents());
     _clinics     = new List <Clinics>(Clinics.ListClinic());
     _branch      = new List <Branch>(Branch.ListBranch());
     _queues      = new List <Queue>(Queue.ListQueue());
     _admit       = new List <Admission>(Admission.ListAdmission());
     _wards       = new List <Wards>(Wards.ListWards());
     _departments = new List <Departments>(Departments.ListDepartment());
     _procedures  = new List <Procedures>(Procedures.ListProcedures());
     _operations  = new List <Operations>(Operations.ListOperations());
     _specimens   = new List <Specimens>(Specimens.ListSpecimens());
     _tests       = new List <Tests>(Tests.ListTests());
     _disciplines = new List <Discipline>(Discipline.ListDiscipline());
     _beds        = new List <Beds>(Beds.ListBeds());
     _categories  = new List <Category>(Category.ListCategory());
     _cds         = new List <Cd10>(Cd10.ListCd10());
     _items       = new List <Item>(Item.ListItem());
     _stocks      = new List <Stock>(Stock.ListStock());
     _dosages     = new List <Dosage>(Dosage.ListDosage());
     _transactors = new List <Transactor>(Transactor.ListTransactors());
     //  _services = new List<Services>(Services.ListServices());
     // _diagnosis = new List<Diagnosis>(Diagnosis.ListDiagnosis());
     _rooms = new List <Room>(Room.ListRoom());
     // _vitals = new List<Vitals>(Vitals.ListVitals());
     _org = new List <Organisation>(Organisation.ListOrganisation());
 }
示例#7
0
        public async Task <ActionResult <Beds> > PostBeds(Beds beds)
        {
            _context.Beds.Add(beds);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetBeds", new { id = beds.BedId }, beds));
        }
        private void btnFindBed_Click(object sender, EventArgs e)
        {
            Beds   oBeds = new Beds();
            string msg   = "";

            string bed = oBeds.FindAvailableBed(cboWard.Text, cboBedType.Text);

            if (bed.Equals("none available"))
            {
                msg = "No " + cboBedType.Text + " bed available in " + cboWard.Text + ".\n";
                if (cboBedType.Text.Equals("Ward"))
                {
                    bed = UpdateBedForFree();
                    if (!bed.Equals("none available"))
                    {
                        msg        += "Patient upgraded bed type at no cost.\n";
                        txtBed.Text = bed;
                        MessageBox.Show(msg + "Bed " + bed + " found");
                        return;
                    }
                    msg = "No beds available in " + cboWard.Text + ".\n";
                }
                MessageBox.Show(msg);
            }
            else
            {
                txtBed.Text = bed;
                MessageBox.Show("Bed " + bed + " found");
                return;
            }
        }
示例#9
0
    public void UpdateBedsUI(TMP_Text textUI)
    {
        Beds beds = MapSystem.territorySelected.GetComponent <Beds>();

        // Mise à jour du texte et de la couleur de l'utilisation des lits
        textUI.text  = beds.intensiveBeds_need.ToString("N0", CultureInfo.CreateSpecificCulture("fr-FR")) + " / " + beds.intensiveBeds_current.ToString("N0", CultureInfo.CreateSpecificCulture("fr-FR"));
        textUI.color = new Color(2 * (float)beds.intensiveBeds_need / beds.intensiveBeds_current, 2 * (1f - (float)beds.intensiveBeds_need / beds.intensiveBeds_current), 0f);
    }
示例#10
0
 protected override void onStart()
 {
     // Récupération des données de la population
     countryData = countrySimData.GetComponent <TerritoryData>();
     // Récupération des données de lits de réa
     countryBeds = countrySimData.GetComponent <Beds>();
     // Récupération de l'échelle de temps
     time = countrySimData.GetComponent <TimeScale>();
 }
示例#11
0
        private void dtGrid_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            updateID = dtGrid.Rows[e.RowIndex].Cells[2].Value.ToString();
            _bed     = new Beds(dtGrid.Rows[e.RowIndex].Cells[2].Value.ToString(), dtGrid.Rows[e.RowIndex].Cells[4].Value.ToString(), dtGrid.Rows[e.RowIndex].Cells[5].Value.ToString(), dtGrid.Rows[e.RowIndex].Cells[6].Value.ToString(), dtGrid.Rows[e.RowIndex].Cells[7].Value.ToString(), dtGrid.Rows[e.RowIndex].Cells[8].Value.ToString(), dtGrid.Rows[e.RowIndex].Cells[9].Value.ToString(), DateTime.Now.ToString("dd-MM-yyyy H:mm:ss"), Helper.orgID);

            DBConnect.Update(_bed, updateID);
            Global._beds.RemoveAll(x => x.Id == updateID);
            Global._beds.Add(_bed);
        }
示例#12
0
 /// <summary>
 /// Creates a copy of this instance
 /// </summary>
 /// <returns>A copy of this instance</returns>
 public object Clone()
 {
     return(new Heat
     {
         Beds = Beds.Select(bed => (BedOrChamber)bed?.Clone()).ToList(),
         Chambers = Chambers.Select(chamber => (BedOrChamber)chamber?.Clone()).ToList(),
         ColdExtrudeTemperature = ColdExtrudeTemperature,
         ColdRetractTemperature = ColdRetractTemperature,
         Extra = Extra.Select(extra => (ExtraHeater)extra.Clone()).ToList(),
         Heaters = Heaters.Select(heater => (Heater)heater.Clone()).ToList()
     });
 }
        private string UpdateBedForFree()
        {
            string bed   = "none available";
            Beds   oBeds = new Beds();

            bed = oBeds.FindAvailableBed(cboWard.Text, "Semi-private");
            if (bed.Equals("none available"))
            {
                bed = oBeds.FindAvailableBed(cboWard.Text, "Private");
            }

            return(bed);
        }
示例#14
0
    // Use to process your families.
    protected override void onProcess(int familiesUpdateCount)
    {
        if (time.newDay)
        {
            foreach (GameObject bedsGO in f_beds)
            {
                Beds          beds      = bedsGO.GetComponent <Beds>();
                TerritoryData territory = bedsGO.GetComponent <TerritoryData>();

                if (beds.boostBeds)
                {
                    int newBeds = (beds.intensiveBeds_high - beds.intensiveBeds_current) / 8; // Le 8 permet de ralentir la croissance de la production (le temps de construire/acheter des respirateurs de réorganiser les services, de réquisitionner les hôpitaux et clinique privées...)
                    beds.intensiveBeds_current += newBeds;
                }

                // calcul du nombre de lits utilisés : comptabilisation du nombre de personne qui devraient pouvoir accéder à des lits de réanimation, on prend un fenêtre de 9 jours autour du pic de mortalité (même calcul fait dans DeadSystem)
                int criticAmount = 0;
                for (int day = Mathf.Max(0, (int)virusStats.deadlinessPeak - 4); day < Mathf.Min(virusStats.deadlinessPeak + 5, territory.numberOfInfectedPeoplePerDays.Length); day++)
                {
                    criticAmount = (int)(territory.numberOfInfectedPeoplePerDays[day] * virusStats.seriousRatio);
                }

                beds.intensiveBeds_need = criticAmount;

                if (beds.intensiveBeds_need > beds.intensiveBeds_current && beds.advisorNotification == -1 && territory.TerritoryName != "France")
                {
                    string msgBody = "Attention les hopitaux ";
                    if (territory.TerritoryName == "Mayotte" || territory.TerritoryName == "La Réunion")
                    {
                        msgBody += "à " + territory.TerritoryName;
                    }
                    else
                    {
                        msgBody += "en " + (territory.TerritoryName == "La Corse" ? "Corse" : territory.TerritoryName);
                    }
                    msgBody += " sont dépassés. Il y a trop de cas malades par rapport au nombre de lits de réanimation.";

                    GameObjectManager.addComponent <ChatMessage>(beds.gameObject, new { sender = "Fédération des hôpitaux", timeStamp = "" + time.daysGone, messageBody = msgBody });
                    beds.advisorNotification = 0;
                }
                else if (beds.intensiveBeds_need < beds.intensiveBeds_current && beds.advisorNotification > 10)
                {
                    beds.advisorNotification = -1;
                }
                else if (beds.advisorNotification != -1)
                {
                    beds.advisorNotification++;
                }
            }
        }
    }
示例#15
0
        public void AddBeds(int nr)
        {
            Point[] bedLocations = new Point[] { new Point((int)(Location.X + SIZE / 10), (int)(Location.Y + SIZE / 10)),
                                                 new Point((int)(Location.X + SIZE - SIZE / 10 - Patient.SIZE), (int)(Location.Y + SIZE / 10)),
                                                 new Point((int)(Location.X + SIZE / 10), (int)(Location.Y + SIZE - SIZE / 10 - Patient.SIZE)),
                                                 new Point((int)(Location.X + SIZE - SIZE / 10 - Patient.SIZE), (int)(Location.Y + SIZE - SIZE / 5 - Patient.SIZE)) };

            for (int i = 0; i < nr; i++)
            {
                // for testing
                Bed bed = new Bed(Injury.GetColor(Category), bedLocations[i], this);
                Beds.Add(bed);
            }
        }
        public void TestAddBedInfoApiWhenGivenIcuIsFull()
        {
            string url     = baseUrl + "Beds";
            var    client  = new RestClient(url);
            var    request = new RestRequest(Method.POST);

            request.AddHeader("Content-Type", "application/json");
            Beds bedInfo = new Beds {
                BedId = 11, IcuNo = 10, OccupancyStatus = true
            };

            request.AddJsonBody(bedInfo);
            IRestResponse response = client.Execute(request);

            Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode);
        }
        public void TestAddBedInfoWithExistingBedId()
        {
            string url     = baseUrl + "Beds";
            var    client  = new RestClient(url);
            var    request = new RestRequest(Method.POST);

            request.AddHeader("Content-Type", "application/json");
            Beds bedInfo = new Beds {
                BedId = 1, IcuNo = 3, OccupancyStatus = true
            };

            request.AddJsonBody(bedInfo);
            IRestResponse response = client.Execute(request);

            Assert.AreEqual(HttpStatusCode.InternalServerError, response.StatusCode);
        }
        public void Remove(Vector3Int position)
        {
            BedState bedState;

            if (!GetBedState(position, out bedState))
            {
                return;
            }

            if (bedState.State)
            {
                --UsedBeds;
            }

            Beds.Remove(position);
        }
        private string FillAdmissionInfo(string ID)
        {
            string admID = txtAdmissionID.Text;
            string sMsg  = "";

            DataSet    o_Find      = new DataSet();
            Admissions oAdmissions = new Admissions();

            try
            {
                o_Find             = oAdmissions.FindData(admID);
                dtpAdmission.Value = Convert.ToDateTime(o_Find.Tables["Admissions"].Rows[0]["AdmissionDate"]);

                if (o_Find.Tables["Admissions"].Rows[0]["SurgeryDate"] != DBNull.Value)
                {
                    dtpSurgery.Value = Convert.ToDateTime(o_Find.Tables["Admissions"].Rows[0]["SurgeryDate"]);
                }

                txtDoctorID.Text      = o_Find.Tables["Admissions"].Rows[0]["DoctorID"].ToString();
                txtPatientID.Text     = o_Find.Tables["Admissions"].Rows[0]["PatientID"].ToString();
                cboWard.SelectedValue = o_Find.Tables["Admissions"].Rows[0]["Ward"].ToString();
                txtBed.Text           = o_Find.Tables["Admissions"].Rows[0]["Bed"].ToString();
                cbTV.Checked          = Convert.ToBoolean(o_Find.Tables["Admissions"].Rows[0]["TV"]);
                cbPhone.Checked       = Convert.ToBoolean(o_Find.Tables["Admissions"].Rows[0]["Phone"]);

                FillDoctorInfo(txtDoctorID.Text);
                FillPatientInfo(txtPatientID.Text);
                if (!o_Find.Tables["Admissions"].Rows[0].IsNull("DischargeDate"))
                {
                    btnUpdate.Enabled = false;
                }

                Beds oBeds = new Beds();
                o_Find = oBeds.FindData(txtBed.Text);
                cboBedType.SelectedValue = o_Find.Tables["Beds"].Rows[0]["BedType"].ToString();
                sMsg = "Admission record found.";
            }
            catch
            {
                sMsg = "Admission not in database.";
                ResetFields();
                return(sMsg);
            }
            return(sMsg);
        }
示例#20
0
 protected override void onStart()
 {
     // Récupération de l'échelle de temps
     time = countrySimData.GetComponent <TimeScale>();
     // Récupération des données de la population
     countryPopData = countrySimData.GetComponent <TerritoryData>();
     // Récupération de données de la frontière
     frontierPermeability = countrySimData.GetComponent <FrontierPermeability>();
     // Récupération des finances
     finances = countrySimData.GetComponent <Finances>();
     // Récupération de données du télétravail
     remoteworking = countrySimData.GetComponent <Remoteworking>();
     // Récupération de données du chômage partiel
     shortTimeWorking = countrySimData.GetComponent <ShortTimeWorking>();
     // Récupération de données des impôts de entreprises
     tax = countrySimData.GetComponent <Tax>();
     // Récupération de données des lits de réanimation
     beds = countrySimData.GetComponent <Beds>();
     finances.historySpent.Add(0);
 }
示例#21
0
        public IActionResult UpdateBedInfo([FromBody] Beds updateBed)
        {
            try
            {
                var bedStore       = _context.Beds.ToList();
                var bedToBeUpdated =
                    bedStore.FirstOrDefault(item => item.BedId == updateBed.BedId && item.IcuNo == updateBed.IcuNo);
                if (bedToBeUpdated == null)
                {
                    return(BadRequest("No Bed With The Given Bed ID Exists"));
                }

                _context.Remove(bedToBeUpdated);
                _context.Add(updateBed);
                _context.SaveChanges();
                return(Ok());
            }
            catch (Exception)
            {
                return(StatusCode(500));
            }
        }
示例#22
0
 public void updateUI(TerritoryData territoryData, Beds territoryBeds)
 {
     setToggleUI(territoryData.closePrimarySchool_UIMaps, territoryData.closePrimarySchool, defaultMark);
     setToggleUI(territoryData.closeSecondarySchool_UIMaps, territoryData.closeSecondarySchool, defaultMark);
     setToggleUI(territoryData.closeHighSchool_UIMaps, territoryData.closeHighSchool, defaultMark);
     setToggleUI(territoryData.closeUniversity_UIMaps, territoryData.closeUniversity, defaultMark);
     setToggleUI(territoryData.callCivicism_UIMaps, territoryData.callCivicism, defaultMark);
     setToggleUI(territoryData.closeShop_UIMaps, territoryData.closeShop, defaultMark);
     setToggleUI(territoryData.certificateRequired_UIMaps, territoryData.certificateRequired, defaultMark);
     setToggleUI(territoryData.ageDependent_UIMaps, territoryData.ageDependent, defaultMark);
     territoryData.ageDependentMin_UIMaps.text = territoryData.ageDependentMin;
     territoryData.ageDependentMax_UIMaps.text = territoryData.ageDependentMax;
     if (territoryData.ageDependentMin != "" && territoryData.ageDependentMax != "")
     {
         territoryData.ageDependent_UIMaps.interactable = true;
     }
     else
     {
         territoryData.ageDependent_UIMaps.interactable = false;
     }
     setToggleUI(territoryBeds.beds_UIMaps, territoryBeds.boostBeds, defaultMark);
     SyncUISystem.needUpdate = true;
 }
示例#23
0
 public void OnBedsChange(bool newState)
 {
     if (MapSystem.territorySelected.TerritoryName == countryData.TerritoryName)
     {
         if (newState != countryBeds.boostBeds)
         {
             countryBeds.boostBeds = newState;
             // modification de l'action en moins de 5 jours
             if (countryBeds.boostBedsLastUpdate != 0 && time.daysGone - countryBeds.boostBedsLastUpdate < 5)
             {
                 noVision++;
             }
             countryBeds.boostBedsLastUpdate = time.daysGone;
             foreach (GameObject territory_go in f_territories)
             {
                 territory_go.GetComponent <Beds>().boostBeds = newState;
             }
         }
         updateCountryUI();
     }
     else
     {
         Beds beds = MapSystem.territorySelected.GetComponent <Beds>();
         if (beds.boostBeds != newState)
         {
             beds.boostBeds = newState;
             // modification de l'action en moins de 5 jours
             if (beds.boostBedsLastUpdate != 0 && time.daysGone - beds.boostBedsLastUpdate < 5)
             {
                 noVision++;
             }
             beds.boostBedsLastUpdate = time.daysGone;
         }
         updateUI(MapSystem.territorySelected, beds);
     }
     checkVision();
 }
示例#24
0
        private void updateBtn_Click(object sender, EventArgs e)
        {
            if (updateID == "")
            {
                return;
            }
            if (MessageBox.Show("YES or No?", "Are you sure you want to update this information? ", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
            {
                _bed = new Beds(updateID, wardTxt.Text, bedTxt.Text, accountTxt.Text, rateTxt.Text, statusTxt.Text, categoryTxt.Text, DateTime.Now.ToString("dd-MM-yyyy H:mm:ss"), Helper.orgID);

                DBConnect.Update(_bed, updateID);
                Global._beds.RemoveAll(x => x.Id == updateID);
                Global._beds.Add(_bed);
                // DBConnect.Execute(SQL);
                MessageBox.Show("Information updated");
                saveBtn.Visible   = true;
                updateBtn.Visible = false;
                updateID          = "";
                wardTxt.Text      = "";
                bedTxt.Text       = "";
                accountTxt.Text   = "";
                LoadData();
            }
        }
示例#25
0
 public List <Bed> GetBeds()
 {
     return(Beds.ToList());
 }
示例#26
0
    public void updateCountryUI()
    {
        // On initialise le national avec la première région
        TerritoryData territory     = f_territories.First().GetComponent <TerritoryData>();
        Beds          territoryBeds = f_territories.First().GetComponent <Beds>();

        countryData.closePrimarySchool = territory.closePrimarySchool;
        countryData.closePrimarySchool_UIMaps.GetComponentsInChildren <Image>()[1].sprite = defaultMark;
        countryData.closeSecondarySchool = territory.closeSecondarySchool;
        countryData.closeSecondarySchool_UIMaps.GetComponentsInChildren <Image>()[1].sprite = defaultMark;
        countryData.closeHighSchool = territory.closeHighSchool;
        countryData.closeHighSchool_UIMaps.GetComponentsInChildren <Image>()[1].sprite = defaultMark;
        countryData.closeUniversity = territory.closeUniversity;
        countryData.closeUniversity_UIMaps.GetComponentsInChildren <Image>()[1].sprite = defaultMark;
        countryData.callCivicism = territory.callCivicism;
        countryData.callCivicism_UIMaps.GetComponentsInChildren <Image>()[1].sprite = defaultMark;
        countryData.closeShop = territory.closeShop;
        countryData.closeShop_UIMaps.GetComponentsInChildren <Image>()[1].sprite = defaultMark;
        countryData.certificateRequired = territory.certificateRequired;
        countryData.certificateRequired_UIMaps.GetComponentsInChildren <Image>()[1].sprite = defaultMark;
        countryData.ageDependent = territory.ageDependent;
        countryData.ageDependent_UIMaps.GetComponentsInChildren <Image>()[1].sprite = defaultMark;
        countryData.ageDependent_UIMaps.interactable = true;
        ageMark = defaultMark;
        countryData.ageDependentMin             = territory.ageDependentMin;
        countryData.ageDependentMin_UIMaps.text = territory.ageDependentMin;
        countryData.ageDependentMax             = territory.ageDependentMax;
        countryData.ageDependentMax_UIMaps.text = territory.ageDependentMax;
        countryBeds.boostBeds = territoryBeds.boostBeds;
        countryBeds.beds_UIMaps.GetComponentsInChildren <Image>()[1].sprite = defaultMark;
        // On fusionne avec les autres territoires
        for (int i = 1; i < f_territories.Count; i++)
        {
            territory     = f_territories.getAt(i).GetComponent <TerritoryData>();
            territoryBeds = f_territories.getAt(i).GetComponent <Beds>();
            if (countryData.closePrimarySchool != territory.closePrimarySchool)
            {
                countryData.closePrimarySchool = true;
                setToggleUI(countryData.closePrimarySchool_UIMaps, true, customMark);
            }
            if (countryData.closeSecondarySchool != territory.closeSecondarySchool)
            {
                countryData.closeSecondarySchool = true;
                setToggleUI(countryData.closeSecondarySchool_UIMaps, true, customMark);
            }
            if (countryData.closeHighSchool != territory.closeHighSchool)
            {
                countryData.closeHighSchool = true;
                setToggleUI(countryData.closeHighSchool_UIMaps, true, customMark);
            }
            if (countryData.closeUniversity != territory.closeUniversity)
            {
                countryData.closeUniversity = true;
                setToggleUI(countryData.closeUniversity_UIMaps, true, customMark);
            }
            if (countryData.callCivicism != territory.callCivicism)
            {
                countryData.callCivicism = true;
                setToggleUI(countryData.callCivicism_UIMaps, true, customMark);
            }
            if (countryData.closeShop != territory.closeShop)
            {
                countryData.closeShop = true;
                setToggleUI(countryData.closeShop_UIMaps, true, customMark);
            }
            if (countryData.certificateRequired != territory.certificateRequired)
            {
                countryData.certificateRequired = true;
                setToggleUI(countryData.certificateRequired_UIMaps, true, customMark);
            }
            if (countryData.ageDependent != territory.ageDependent)
            {
                countryData.ageDependent = true;
                ageMark = customMark;
            }
            if (countryData.ageDependentMin != territory.ageDependentMin)
            {
                countryData.ageDependentMin             = "--";
                countryData.ageDependentMin_UIMaps.text = "--";
            }
            if (countryData.ageDependentMax != territory.ageDependentMax)
            {
                countryData.ageDependentMax             = "--";
                countryData.ageDependentMax_UIMaps.text = "--";
            }
            if (countryBeds.boostBeds != territoryBeds.boostBeds)
            {
                countryBeds.boostBeds = true;
                setToggleUI(countryBeds.beds_UIMaps, true, customMark);
            }
        }
        if (countryData.ageDependentMin != "" && countryData.ageDependentMin != "--" && countryData.ageDependentMax != "" && countryData.ageDependentMax != "--")
        {
            countryData.ageDependent_UIMaps.interactable = true;
            setToggleUI(countryData.ageDependent_UIMaps, countryData.ageDependent, ageMark);
        }
        else
        {
            countryData.ageDependent = false;
            setToggleUI(countryData.ageDependent_UIMaps, false, defaultMark);
            countryData.ageDependent_UIMaps.interactable = false;
        }
        SyncUISystem.needUpdate = true;
    }
 public Room WithBeds(BedKind kind, int quantity)
 {
     Beds.Add(new BedAllocation(kind, quantity));
     return(this);
 }
 public void Add(Vector3Int position, BedState bedState)
 {
     Beds.Add(position, bedState);
 }
 public bool GetBedState(Vector3Int position, out BedState bedState)
 {
     return(Beds.TryGetValue(position, out bedState));;
 }
示例#30
0
    // Use to process your families.
    protected override void onProcess(int familiesUpdateCount)
    {
        if (timeFirstNotif != -1 && Time.time - timeFirstNotif > 15 && time.daysGone == 0 && !helpPlay)
        {
            GameObjectManager.addComponent <ChatMessage>(chatContent, new { sender = "Conseiller au numérique", timeStamp = "0", messageBody = "Pour passer aux jours suivants, cliquez sur le bouton Play." });
            helpPlay = true;
        }

        if (newMessages > 0)
        {
            if (newMessages < 100)
            {
                newChatNotif.text = "" + newMessages;
            }
            else
            {
                newChatNotif.text = "+99";
            }

            newChatNotif.transform.parent.gameObject.SetActive(true);
        }
        else
        {
            newChatNotif.transform.parent.gameObject.SetActive(false);
        }

        if (time.newDay)
        {
            //---------------------------------------
            // Gestion des actions au niveau national
            //---------------------------------------
            // Gestion des frontières
            if (frontierPermeability.lastUpdate >= 0 && frontierPermeability.lastUpdate == time.daysGone - 1)
            {
                GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                if (frontierPermeability.currentState == 0)
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous avez ouvert les frontières";
                }
                else if (frontierPermeability.currentState == 1)
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous avez restreint l'ouverture des frontières seulement au fret mondial et européen.";
                }
                else if (frontierPermeability.currentState == 2)
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous avez restreint l'ouverture des frontières seulement au fret européen.";
                }
                else
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous avez fermé totalement les frontières de la France.";
                }
                newMessage.transform.SetParent(chatContent.transform);
                newMessage.transform.localScale = new Vector3(1, 1, 1);
            }

            // Gestion des aides aux entreprises
            if (tax.lastUpdate >= 0 && tax.lastUpdate == time.daysGone - 1)
            {
                GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                if (tax.currentState)
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous annulez les charges des entreprises.";
                }
                else
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous ne soutenez plus les entreprises.";
                }
                newMessage.transform.SetParent(chatContent.transform);
                newMessage.transform.localScale = new Vector3(1, 1, 1);
            }

            // Gestion du télétravail
            if (remoteworking.lastUpdate >= 0 && remoteworking.lastUpdate == time.daysGone - 1)
            {
                GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                if (remoteworking.currentState)
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous incitez les entreprises à mettre en place un télétravail massif.";
                }
                else
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous n'incitez plus au télétravail.";
                }
                newMessage.transform.SetParent(chatContent.transform);
                newMessage.transform.localScale = new Vector3(1, 1, 1);
            }

            // Gestion du chômage partiel
            if (shortTimeWorking.lastUpdate >= 0 && shortTimeWorking.lastUpdate == time.daysGone - 1)
            {
                GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                if (shortTimeWorking.currentState)
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous ouvrez les conditions d'accès au chômage partiel.";
                }
                else
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous restreignez les conditions d'acceptation du chômage partiel.";
                }
                newMessage.transform.SetParent(chatContent.transform);
                newMessage.transform.localScale = new Vector3(1, 1, 1);
            }

            // Gestion de la réquisition des masques
            if (masks.lastRequisitionUpdate >= 0 && masks.lastRequisitionUpdate == time.daysGone - 1)
            {
                GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                if (masks.requisition)
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous réquisitionnez les masques pour le corps médical.";
                }
                else
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous ne réquisitionnez plus les masques.";
                }
                newMessage.transform.SetParent(chatContent.transform);
                newMessage.transform.localScale = new Vector3(1, 1, 1);
            }

            // Gestion du boost de la production de masques
            if (masks.lastBoostProductionUpdate >= 0 && masks.lastBoostProductionUpdate == time.daysGone - 1)
            {
                GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                if (masks.boostProduction)
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous soutenez toutes les entreprises qui augmentent leur production de masques homologués.";
                }
                else
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous n'incitez plus à la production de masques.";
                }
                newMessage.transform.SetParent(chatContent.transform);
                newMessage.transform.localScale = new Vector3(1, 1, 1);
            }

            // Gestion de la production artisanale de masques
            if (masks.lastArtisanalProductionUpdate >= 0 && masks.lastArtisanalProductionUpdate == time.daysGone - 1)
            {
                GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                if (masks.selfProtectionPromoted)
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous incitez la population à se confectionner leurs propres masques.";
                }
                else
                {
                    newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text = "Vous n'incitez plus la population à se confectionner leurs propres masques.";
                }
                newMessage.transform.SetParent(chatContent.transform);
                newMessage.transform.localScale = new Vector3(1, 1, 1);
            }

            // Gestion de la commande de masques
            if (masks.lastOrderPlaced >= 0 && masks.lastOrderPlaced == time.daysGone - 1)
            {
                GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text            = "Vous avez passé une nouvelle commande sur les marchés extérieurs de " + masks.lastOrderAmount.ToString("N0", CultureInfo.CreateSpecificCulture("fr-FR")) + " masques.";
                newMessage.transform.SetParent(chatContent.transform);
                newMessage.transform.localScale = new Vector3(1, 1, 1);
            }

            // Gestion de la commande de vaccins
            if (vaccine.lastOrderPlaced >= 0 && vaccine.lastOrderPlaced == time.daysGone - 1)
            {
                GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                newMessage.transform.Find("TextContent").GetComponent <TMP_Text>().text            = "Vous avez passé une nouvelle commande sur les marchés extérieurs de " + vaccine.lastOrderAmount.ToString("N0", CultureInfo.CreateSpecificCulture("fr-FR")) + " doses de vaccin.";
                newMessage.transform.SetParent(chatContent.transform);
                newMessage.transform.localScale = new Vector3(1, 1, 1);
            }

            //------------------------------------------------
            // Gestion des actions au niveau régional/national
            //------------------------------------------------
            foreach (GameObject territory_go in f_territories)
            {
                TerritoryData territory = territory_go.GetComponent <TerritoryData>();
                // Fermeture des écoles
                if (territory.closePrimarySchoolLastUpdate >= 0 && territory.closePrimarySchoolLastUpdate == time.daysGone - 1)
                {
                    GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                    newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                    TMP_Text msgContent = newMessage.transform.Find("TextContent").GetComponent <TMP_Text>();
                    msgContent.text = "Vous avez " + (territory.closePrimarySchool ? "fermé" : "ouvert") + " les écoles maternelles et primaires ";
                    if (territory.TerritoryName == "France")
                    {
                        msgContent.text += "sur tout le territoire.";
                    }
                    else if (territory.TerritoryName == "Mayotte" || territory.TerritoryName == "La Réunion")
                    {
                        msgContent.text += "à " + territory.TerritoryName + ".";
                    }
                    else
                    {
                        msgContent.text += "en " + (territory.TerritoryName == "La Corse" ? "Corse" : territory.TerritoryName) + ".";
                    }
                    newMessage.transform.SetParent(chatContent.transform);
                    newMessage.transform.localScale = new Vector3(1, 1, 1);
                }
                // Fermeture des collèges
                if (territory.closeSecondarySchoolLastUpdate >= 0 && territory.closeSecondarySchoolLastUpdate == time.daysGone - 1)
                {
                    GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                    newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                    TMP_Text msgContent = newMessage.transform.Find("TextContent").GetComponent <TMP_Text>();
                    msgContent.text = "Vous avez " + (territory.closeSecondarySchool ? "fermé" : "ouvert") + " les collèges ";
                    if (territory.TerritoryName == "France")
                    {
                        msgContent.text += "sur tout le territoire.";
                    }
                    else if (territory.TerritoryName == "Mayotte" || territory.TerritoryName == "La Réunion")
                    {
                        msgContent.text += "à " + territory.TerritoryName + ".";
                    }
                    else
                    {
                        msgContent.text += "en " + (territory.TerritoryName == "La Corse" ? "Corse" : territory.TerritoryName) + ".";
                    }
                    newMessage.transform.SetParent(chatContent.transform);
                    newMessage.transform.localScale = new Vector3(1, 1, 1);
                }
                // Fermeture des lycées
                if (territory.closeHighSchoolLastUpdate >= 0 && territory.closeHighSchoolLastUpdate == time.daysGone - 1)
                {
                    GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                    newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                    TMP_Text msgContent = newMessage.transform.Find("TextContent").GetComponent <TMP_Text>();
                    msgContent.text = "Vous avez " + (territory.closeHighSchool ? "fermé" : "ouvert") + " les lycées ";
                    if (territory.TerritoryName == "France")
                    {
                        msgContent.text += "sur tout le territoire.";
                    }
                    else if (territory.TerritoryName == "Mayotte" || territory.TerritoryName == "La Réunion")
                    {
                        msgContent.text += "à " + territory.TerritoryName + ".";
                    }
                    else
                    {
                        msgContent.text += "en " + (territory.TerritoryName == "La Corse" ? "Corse" : territory.TerritoryName) + ".";
                    }
                    newMessage.transform.SetParent(chatContent.transform);
                    newMessage.transform.localScale = new Vector3(1, 1, 1);
                }
                // Fermeture des universités
                if (territory.closeUniversityLastUpdate >= 0 && territory.closeUniversityLastUpdate == time.daysGone - 1)
                {
                    GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                    newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                    TMP_Text msgContent = newMessage.transform.Find("TextContent").GetComponent <TMP_Text>();
                    msgContent.text = "Vous avez " + (territory.closeUniversity ? "fermé" : "ouvert") + " les universités ";
                    if (territory.TerritoryName == "France")
                    {
                        msgContent.text += "sur tout le territoire.";
                    }
                    else if (territory.TerritoryName == "Mayotte" || territory.TerritoryName == "La Réunion")
                    {
                        msgContent.text += "à " + territory.TerritoryName + ".";
                    }
                    else
                    {
                        msgContent.text += "en " + (territory.TerritoryName == "La Corse" ? "Corse" : territory.TerritoryName) + ".";
                    }
                    newMessage.transform.SetParent(chatContent.transform);
                    newMessage.transform.localScale = new Vector3(1, 1, 1);
                }
                // Appel civique
                if (territory.callCivicismLastUpdate >= 0 && territory.callCivicismLastUpdate == time.daysGone - 1)
                {
                    GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                    newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                    TMP_Text msgContent = newMessage.transform.Find("TextContent").GetComponent <TMP_Text>();
                    if (territory.callCivicism)
                    {
                        msgContent.text = "Vous avez appelé à la responsabilité civile ";
                    }
                    else
                    {
                        msgContent.text = "Vous n'appelez plus à la responsabilité civile ";
                    }
                    if (territory.TerritoryName == "France")
                    {
                        msgContent.text += "sur tout le territoire.";
                    }
                    else if (territory.TerritoryName == "Mayotte" || territory.TerritoryName == "La Réunion")
                    {
                        msgContent.text += "à " + territory.TerritoryName + ".";
                    }
                    else
                    {
                        msgContent.text += "en " + (territory.TerritoryName == "La Corse" ? "Corse" : territory.TerritoryName) + ".";
                    }
                    newMessage.transform.SetParent(chatContent.transform);
                    newMessage.transform.localScale = new Vector3(1, 1, 1);
                }
                // Fermeture des commerces
                if (territory.closeShopLastUpdate >= 0 && territory.closeShopLastUpdate == time.daysGone - 1)
                {
                    GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                    newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                    TMP_Text msgContent = newMessage.transform.Find("TextContent").GetComponent <TMP_Text>();
                    if (territory.closeShop)
                    {
                        msgContent.text = "Vous ordonnez la fermeture des commerces ";
                    }
                    else
                    {
                        msgContent.text = "Vous autorisez la réouverture des commerces ";
                    }
                    if (territory.TerritoryName == "France")
                    {
                        msgContent.text += "sur tout le territoire.";
                    }
                    else if (territory.TerritoryName == "Mayotte" || territory.TerritoryName == "La Réunion")
                    {
                        msgContent.text += "à " + territory.TerritoryName + ".";
                    }
                    else
                    {
                        msgContent.text += "en " + (territory.TerritoryName == "La Corse" ? "Corse" : territory.TerritoryName) + ".";
                    }
                    newMessage.transform.SetParent(chatContent.transform);
                    newMessage.transform.localScale = new Vector3(1, 1, 1);
                }
                // Attestation de sortie
                if (territory.certificateRequiredLastUpdate >= 0 && territory.certificateRequiredLastUpdate == time.daysGone - 1)
                {
                    GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                    newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                    TMP_Text msgContent = newMessage.transform.Find("TextContent").GetComponent <TMP_Text>();
                    if (territory.certificateRequired)
                    {
                        msgContent.text = "Vous limitez le déplacement des citoyens ";
                    }
                    else
                    {
                        msgContent.text = "Vous autorisez les citoyens à se déplacer librement ";
                    }
                    if (territory.TerritoryName == "France")
                    {
                        msgContent.text += "sur tout le territoire.";
                    }
                    else if (territory.TerritoryName == "Mayotte" || territory.TerritoryName == "La Réunion")
                    {
                        msgContent.text += "à " + territory.TerritoryName + ".";
                    }
                    else
                    {
                        msgContent.text += "en " + (territory.TerritoryName == "La Corse" ? "Corse" : territory.TerritoryName) + ".";
                    }
                    newMessage.transform.SetParent(chatContent.transform);
                    newMessage.transform.localScale = new Vector3(1, 1, 1);
                }
                // Restriction age
                if (territory.ageDependentLastUpdate >= 0 && territory.ageDependentLastUpdate == time.daysGone - 1)
                {
                    GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                    newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                    TMP_Text msgContent = newMessage.transform.Find("TextContent").GetComponent <TMP_Text>();
                    if (territory.ageDependent)
                    {
                        msgContent.text = "Vous interdisez aux citoyens âgés de " + territory.ageDependentMin + " à " + territory.ageDependentMax + " ans de sortir ";
                    }
                    else
                    {
                        msgContent.text = "Vous n'imposez plus d'interdiction de sortie liée à l'âge ";
                    }
                    if (territory.TerritoryName == "France")
                    {
                        msgContent.text += "sur tout le territoire.";
                    }
                    else if (territory.TerritoryName == "Mayotte" || territory.TerritoryName == "La Réunion")
                    {
                        msgContent.text += "à " + territory.TerritoryName + ".";
                    }
                    else
                    {
                        msgContent.text += "en " + (territory.TerritoryName == "La Corse" ? "Corse" : territory.TerritoryName) + ".";
                    }
                    newMessage.transform.SetParent(chatContent.transform);
                    newMessage.transform.localScale = new Vector3(1, 1, 1);
                }
                // Boost lit réanimation
                Beds beds = territory.GetComponent <Beds>();
                if (beds.boostBedsLastUpdate >= 0 && beds.boostBedsLastUpdate == time.daysGone - 1)
                {
                    GameObject newMessage = Object.Instantiate(playerMessagePrefab);
                    newMessage.transform.GetChild(0).Find("Timestamp").GetComponent <TMP_Text>().text += time.daysGone - 1;
                    TMP_Text msgContent = newMessage.transform.Find("TextContent").GetComponent <TMP_Text>();
                    if (beds.boostBeds)
                    {
                        msgContent.text = "Vous augmentez le nombre de lits de réanimation dans les services de soin ";
                    }
                    else
                    {
                        msgContent.text = "Vous stoppez l'augmentation du nombre de lits de réanimation ";
                    }
                    if (territory.TerritoryName == "France")
                    {
                        msgContent.text += "sur tout le territoire.";
                    }
                    else if (territory.TerritoryName == "Mayotte" || territory.TerritoryName == "La Réunion")
                    {
                        msgContent.text += "à " + territory.TerritoryName + ".";
                    }
                    else
                    {
                        msgContent.text += "en " + (territory.TerritoryName == "La Corse" ? "Corse" : territory.TerritoryName) + ".";
                    }
                    newMessage.transform.SetParent(chatContent.transform);
                    newMessage.transform.localScale = new Vector3(1, 1, 1);
                }
            }
        }
    }