예제 #1
0
        private void seteazaPerioada(CDefinitiiComune.EnumTipPerioada pTipPerioada, DateTime pDataReferinta)
        {
            this.lTipPerioada = pTipPerioada;
            switch (pTipPerioada)
            {
            case CDefinitiiComune.EnumTipPerioada.Custom:
                //Tratat in amonte
                break;

            case CDefinitiiComune.EnumTipPerioada.Luna:
                DateTime intai = CUtil.GetPrimaZiDinLuna(pDataReferinta);
                this.datInceput.DataAfisata = intai;
                this.datSfarsit.DataAfisata = intai.AddMonths(1).AddDays(-1);
                break;

            case CDefinitiiComune.EnumTipPerioada.PatruZile:
            case CDefinitiiComune.EnumTipPerioada.Saptamana:
                DateTime luni = CUtil.GetDataZileiDeLuniDinSaptamanaData(pDataReferinta.Date);
                this.datInceput.DataAfisata = luni;
                this.datSfarsit.DataAfisata = luni.AddDays(6);
                break;

            case CDefinitiiComune.EnumTipPerioada.An:
                this.datInceput.DataAfisata = CUtil.getIntaiIanuarie(pDataReferinta.Date);
                this.datSfarsit.DataAfisata = CUtil.GetUltimaZiDinAn(pDataReferinta.Date);
                break;

            case CDefinitiiComune.EnumTipPerioada.Zi:
                this.datInceput.DataAfisata = CUtil.GetPrimaOraDinData(pDataReferinta.Date);
                this.datSfarsit.DataAfisata = CUtil.GetUltimaOraDinData(pDataReferinta.Date);
                break;
            }

            afiseazaPerioda();
        }
예제 #2
0
        private void BtnCustom_Click(object sender, EventArgs e)
        {
            if (this.lSeIncarca)
            {
                return;
            }
            try
            {
                incepeIncarcarea();

                Tuple <DateTime, DateTime> perioada = IHMUtile.GetPerioada(this.GetFormParinte(), this.DataInceput, this.DataSfarsit);

                if (perioada != null && perioada.Item1 != this.DataInceput && perioada.Item2 != this.DataSfarsit)
                {
                    this.lTipPerioada           = CDefinitiiComune.EnumTipPerioada.Custom;
                    this.datInceput.DataAfisata = perioada.Item1;
                    this.datSfarsit.DataAfisata = perioada.Item2;

                    afiseazaPerioda();

                    anuntaSchimbareaPerioadei();
                }
            }
            catch (Exception ex)
            {
                GestiuneErori.AfiseazaMesaj(this.GetFormParinte(), ex);
            }
            finally
            {
                finalizeazaIncarcarea();
            }
        }
예제 #3
0
        public void Initializeaza(CDefinitiiComune.EnumTipPerioada pTipPerioada, DateTime pDataReferinta)
        {
            base.InitializeazaVariabileleGenerale();

            incepeIncarcarea();

            this.lEsteInitializat = true;

            if (pDataReferinta == CConstante.DataNula)
            {
                pDataReferinta = DateTime.Today;
            }

            seteazaPerioada(pTipPerioada, pDataReferinta);

            finalizeazaIncarcarea();
        }
예제 #4
0
        private void datSfarsit_CerereUpdate(Control psender, string proprietate, object sNouaValoare)
        {
            try
            {
                incepeIncarcarea();

                if (!this.datSfarsit.AreValoare())
                {
                    seteazaPerioada(CDefinitiiComune.EnumTipPerioada.Luna, DateTime.Today);
                }
                else
                {
                    if (this.datInceput.AreValoare() && this.datInceput.DataAfisata > this.datSfarsit.DataAfisata)
                    {
                        this.datInceput.DataAfisata = this.datSfarsit.DataAfisata;
                        seteazaPerioada(CDefinitiiComune.EnumTipPerioada.Zi, this.datInceput.DataAfisata);
                    }
                    else
                    {
                        CDefinitiiComune.EnumTipPerioada tipPer = CDefinitiiComune.EnumTipPerioada.Custom;
                        if (this.datInceput.AreValoare() && this.datSfarsit.AreValoare())
                        {
                            if (DateAndTime.DateDiff(DateInterval.Day, this.datInceput.DataAfisata, this.datSfarsit.DataAfisata) <= 1)
                            {
                                tipPer = CDefinitiiComune.EnumTipPerioada.Zi;
                            }
                        }

                        seteazaPerioada(tipPer, this.datSfarsit.DataAfisata);
                    }
                }

                anuntaSchimbareaPerioadei();
            }
            catch (Exception ex)
            {
                GestiuneErori.AfiseazaMesaj(this.GetFormParinte(), ex);
            }
            finally
            {
                finalizeazaIncarcarea();
            }
        }
예제 #5
0
        public void Initializeaza(DateTime pDataInceput, DateTime pDataSfarsit)
        {
            base.InitializeazaVariabileleGenerale();

            incepeIncarcarea();

            this.datInceput.DataAfisata = pDataInceput;
            this.datSfarsit.DataAfisata = pDataSfarsit;

            CDefinitiiComune.EnumTipPerioada tipPerioada = CDefinitiiComune.EnumTipPerioada.Custom;
            if (pDataInceput.Date == pDataSfarsit.Date)
            {
                tipPerioada = CDefinitiiComune.EnumTipPerioada.Zi;
            }
            else
            if (pDataInceput.DayOfWeek == DayOfWeek.Monday && pDataSfarsit.DayOfWeek == DayOfWeek.Sunday && DateAndTime.DateDiff(DateInterval.Day, pDataInceput, pDataInceput) < 8)
            {
                tipPerioada = CDefinitiiComune.EnumTipPerioada.Saptamana;
            }

            seteazaPerioada(tipPerioada, pDataInceput);

            finalizeazaIncarcarea();
        }