コード例 #1
0
        void DeleteEntity(AvgWorkingDaysInWeek entity)
        {
            AvgWorkingDaysInWeek am = entity;

            if (am == null && FocusedEntity == null)
            {
                return;
            }
            am = FocusedEntity;

            if (QuestionMessageYes(GetLocalized("QuestionRemoveEverageDaysInweek") + String.Format(" ({0})", am.Year)))
            {
                try
                {
                    ClientEnvironment.AvgWorkingDaysInWeekService.DeleteByID(am.ID);
                    AvgWorkingDaysInWeek removing = ListOfAvgWDInWeek.GetItemByID(am.ID);
                    if (removing != null)
                    {
                        ListOfAvgWDInWeek.Remove(removing);
                        UpdateBarButtons();
                    }
                }
                catch (ValidationException)
                {
                    ErrorMessage("CannotDeleteAverageDaysInWeek");
                    return;
                }
                catch (EntityException ex)
                {
                    ProcessEntityException(ex);
                    return;
                }
            }
        }
コード例 #2
0
        public void EditEntity(AvgWorkingDaysInWeek amount)
        {
            AvgWorkingDaysInWeek am = amount;

            if (amount == null && FocusedEntity == null)
            {
                return;
            }

            if (am == null)
            {
                am = FocusedEntity;
            }
            if (am == null)
            {
                return;            // paranoik check
            }
            using (AvgWorkingDaysInWeekForm form = new AvgWorkingDaysInWeekForm())
            {
                form.Amount = am;

                if (form.ShowDialog() == DialogResult.OK)
                {
                    ListOfAvgWDInWeek.ResetItemById(am.ID);
                }
            }
        }
コード例 #3
0
        public AvgWorkingDaysInWeek GetEntity(long countryid, int year)
        {
            Debug.Assert(countryid > 0);
            Debug.Assert((1900 <= year) && (year <= 2079));

            List <AvgWorkingDaysInWeek> entry  = null;
            AvgWorkingDaysInWeek        entity = null;

            if (last_access_entry != null && last_access_countryid == countryid)
            {
                entry = last_access_entry;
            }
            else
            {
                if (_dictionByCounrties.TryGetValue(countryid, out entry))
                {
                    last_access_entry     = entry;
                    last_access_countryid = countryid;
                }
            }

            if (entry != null)
            {
                foreach (AvgWorkingDaysInWeek item in entry)
                {
                    if (item.Year == year)
                    {
                        entity = item;
                        break;
                    }
                }
            }
            return(entity);
        }
コード例 #4
0
        AvgWorkingDaysInWeek GetEntityByRowHandle(int rowHandle)
        {
            AvgWorkingDaysInWeek AvgWDinweek = null;

            if (gridViewAvgWDiWeek.IsDataRow(rowHandle))
            {
                AvgWDinweek = (AvgWorkingDaysInWeek)gridViewAvgWDiWeek.GetRow(rowHandle);
            }
            return(AvgWDinweek);
        }
コード例 #5
0
        public double GetEntityValue(long countryid, int year)
        {
            AvgWorkingDaysInWeek entity = GetEntity(countryid, year);

            double resultValue = 0;

            if (entity != null)
            {
                resultValue = Convert.ToDouble(entity.DaysCount);
            }

            return(resultValue);
        }
コード例 #6
0
        void NewEntity()
        {
            AvgWorkingDaysInWeek amount = ClientEnvironment.AvgWorkingDaysInWeekService.CreateEntity();

            amount.CountryID = EntityCountry.ID;
            using (AvgWorkingDaysInWeekForm form = new AvgWorkingDaysInWeekForm())
            {
                form.Amount = amount;

                if (form.ShowDialog() == DialogResult.OK)
                {
                    ListOfAvgWDInWeek.Add(form.Amount);
                    UpdateBarButtons();
                }
            }
        }
コード例 #7
0
        private void GridControl_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            if (!isUserWriteRight)
            {
                return;
            }

            GridHitInfo info = gridViewAvgWDiWeek.CalcHitInfo(e.X, e.Y);

            if (info.InRowCell && gridViewAvgWDiWeek.IsDataRow(info.RowHandle))
            {
                AvgWorkingDaysInWeek amount = GetEntityByRowHandle(info.RowHandle);
                if (amount != null)
                {
                    if (FocusedEntity.Year > DateTime.Now.Year || (!isAliquoteAbsence() && FocusedEntity.Year == DateTime.Now.Year))
                    {
                        EditEntity(amount);
                    }
                }
            }
        }
コード例 #8
0
        public override bool Commit()
        {
            if (Amount == null)
            {
                return(false);
            }

            if (IsModified())
            {
                AvgWorkingDaysInWeek am = ClientEnvironment.CountryService.AvgWorkingDaysInWeekService.CreateEntity();
                AvgWorkingDaysInWeek.CopyTo(Amount, am);

                am.Year      = Year;
                am.DaysCount = Days;

                try
                {
                    if (Amount.IsNew)
                    {
                        List <AvgWorkingDaysInWeek> _check = ClientEnvironment.CountryService.AvgWorkingDaysInWeekService.GetAvgWorkingDaysInWeekFiltered(am.CountryID, Year, Year);
                        if (_check == null || _check.Count == 0)
                        {
                            am = ClientEnvironment.CountryService.AvgWorkingDaysInWeekService.Save(am);
                        }
                        else
                        {
                            ErrorMessage(GetLocalized("CannotAddAverageDaysInWeek"));
                            return(false);
                        }
                    }
                    else
                    {
                        if (Year < DateTime.Now.Year && am.Year == Amount.Year)
                        {
                            return(false);
                        }

                        List <AvgWorkingDaysInWeek> _check = ClientEnvironment.CountryService.AvgWorkingDaysInWeekService.GetAvgWorkingDaysInWeekFiltered(am.CountryID, Year, Year);
                        if (_check != null && _check.Count != 0 && am.Year != Amount.Year)
                        {
                            ErrorMessage(GetLocalized("CannotAddAverageDaysInWeek"));
                            return(false);
                        }

                        ClientEnvironment.CountryService.AvgWorkingDaysInWeekService.SaveOrUpdate(am);
                    }

                    AvgWorkingDaysInWeek.CopyTo(am, Amount);
                    Modified = true;

                    return(base.Commit());
                }
                catch (ValidationException)
                {
                    ErrorMessage(GetLocalized("CannotAddAverageDaysInWeek"));
                }
                catch (EntityException)
                {
                    ErrorMessage(GetLocalized("CannotAddAverageDaysInWeek"));
                }
            }
            return(false);
        }