Beispiel #1
0
        /// <summary>
        /// «اعتبارسنجی
        /// «نام نباید خالی باشد
        /// «نام گروه کاری تکراری نباشد
        /// کد تعریف شده نباید تکراری باشد
        /// </summary>
        /// <param name="workgroup"></param>
        protected override void InsertValidate(WorkGroup workgroup)
        {
            UIValidationExceptions exception = new UIValidationExceptions();

            if (Utility.IsEmpty(workgroup.Name))
            {
                exception.Add(new ValidationException(ExceptionResourceKeys.WorkGroupNameRequierd, "درج - نام نباید خالی باشد", ExceptionSrc));
            }
            else if (workGroupRep.GetCountByCriteria(new CriteriaStruct(Utility.GetPropertyName(() => workgroup.Name), workgroup.Name)) > 0)
            {
                exception.Add(new ValidationException(ExceptionResourceKeys.WorkGroupNameRepeated, "درج - نام نباید تکراری باشد", ExceptionSrc));
            }

            if (!Utility.IsEmpty(workgroup.CustomCode))
            {
                if (workGroupRep.GetCountByCriteria(new CriteriaStruct(Utility.GetPropertyName(() => workgroup.CustomCode), workgroup.CustomCode)) > 0)
                {
                    exception.Add(new ValidationException(ExceptionResourceKeys.WorkGroupCustomCodeRepeated, "درج - کد گروه کاری نباید تکراری باشد", ExceptionSrc));
                }
            }
            if (exception.Count > 0)
            {
                throw exception;
            }
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="assignWorkGroup">گروه کاری تخصیص داده شده به پرسنل</param>
        protected override void InsertValidate(AssignWorkGroup assignWorkGroup)
        {
            UIValidationExceptions exception = new UIValidationExceptions();

            PersonRepository    personRep = new PersonRepository(false);
            WorkGroupRepository workRep   = new WorkGroupRepository(false);

            if (assignWorkGroup.Person == null || personRep.GetCountByCriteria(new CriteriaStruct(Utility.GetPropertyName(() => new Person().ID), assignWorkGroup.Person.ID)) == 0)
            {
                exception.Add(new ValidationException(ExceptionResourceKeys.AssignWorkGroupPersonIdNotExsits, "پرسنلی با این مشخصات یافت نشد", ExceptionSrc));
            }

            if (assignWorkGroup.WorkGroup == null || workRep.GetCountByCriteria(new CriteriaStruct(Utility.GetPropertyName(() => new WorkGroup().ID), assignWorkGroup.WorkGroup.ID)) == 0)
            {
                exception.Add(new ValidationException(ExceptionResourceKeys.AssignWorkGroupIdNotExsits, "گروه کاری با این مشخصات یافت نشد", ExceptionSrc));
            }
            if (assignWorkGroup.FromDate < Utility.GTSMinStandardDateTime)
            {
                exception.Add(new ValidationException(ExceptionResourceKeys.AssignWorkGroupSmallerThanStandardValue, "مقدار تاریخ انتساب گروه محدوده محاسبات از حد مجاز کمتر میباشد", ExceptionSrc));
            }
            if (asignRepository.Find(x => x.Person.ID == assignWorkGroup.Person.ID && x.FromDate.Date == assignWorkGroup.FromDate.Date).Count() > 0)
            {
                exception.Add(new ValidationException(ExceptionResourceKeys.AssignWorkGroupIsRepeated, "تاریخ تکراری است", ExceptionSrc));
            }
            if (exception.Count > 0)
            {
                throw exception;
            }
        }