Exemplo n.º 1
0
        protected override ValidationResult IsValid(object value, ValidationContext validationContext)
        {
            if (validationContext == null)
            {
                return(ValidationResult.Success);
            }
            //var _context = (QLHDDbContext) validationContext.GetService(typeof(QLHDDbContext))?? new QLHDDbContext();
            var _context = new QLHDDbContext();
            //var context = (QLHDDbContext) validationContext.ServiceContainer.GetService(typeof(QLHDDbContext));
            Work work       = (Work)validationContext.ObjectInstance;
            var  costTypeId = (int?)value;

            if (work.ParentWorkId == null)
            {
                return(ValidationResult.Success);
            }
            else
            {
                Work parent = _context.Works.First(w => w.Id == work.ParentWorkId);
                if (costTypeId == parent.CostTypeId)
                {
                    return(ValidationResult.Success);
                }
                //Work parentWork = context;
            }
            return(new ValidationResult("Hạng mục con phải cùng loại chi phí với hạng mục cha"));
        }
Exemplo n.º 2
0
        public static ValidationResult HasSameCostTypeWithParent(Work work)
        {
            var _context = new QLHDDbContext();

            if (work != null && work.ParentWorkId != null)
            {
                Work parent = _context.Works.First(w => w.Id == work.ParentWorkId);
                if (parent != null && parent.CostTypeId != work.CostTypeId)
                {
                    return(new ValidationResult("Hạng mục con phải cùng loại chi phí với hạng mục cha"));
                }
            }
            return(ValidationResult.Success);
        }
Exemplo n.º 3
0
 /// <summary>
 /// Hàm kiểm tra xem mã dự án của hạng mục con có giống với mã dự án của hạng mục cha
 /// </summary>
 /// <param name="value"></param>
 /// <param name="validationContext"></param>
 /// <returns></returns>
 protected override ValidationResult IsValid(object value, ValidationContext validationContext)
 {
     if (validationContext != null)
     {
         var  _context  = new QLHDDbContext();
         Work work      = (Work)validationContext.ObjectInstance;
         var  projectId = (int?)value;
         if (work.ParentWorkId != null)
         {
             Work parent = _context.Works.First(w => w.Id == work.ParentWorkId);
             if (projectId != parent.ProjectId)
             {
                 return(new ValidationResult("Hạng mục con phải cùng dự án với hạng mục cha"));
             }
         }
     }
     return(ValidationResult.Success);
 }