public void deleteListReason(quality_error_reason_model model)
        {
            var listDelete = _context.quality_reasons
                             .Where(d => d.id_error == model.db.id)
                             .Select(d => d).ToList();

            _context.quality_reasons.RemoveRange(listDelete);
            _context.SaveChanges();
        }
        public async Task <int> insert(quality_error_reason_model model)
        {
            model.db.status_del = 1;
            await _context.quality_errors.AddAsync(model.db);

            _context.SaveChanges();
            var id_error = await _context.quality_errors.Where(t => t.name == model.db.name).Select(t => t.id).SingleOrDefaultAsync();

            model.db.id = id_error;
            saveListReason(model);
            _context.SaveChanges();
            return(1);
        }
        public int update(quality_error_reason_model model)
        {
            var db = _context.quality_errors.Where(d => d.id == model.db.id).FirstOrDefault();

            db.status_del  = model.db.status_del;
            db.update_by   = model.db.update_by;
            db.update_date = model.db.update_date;
            db.description = model.db.description;
            deleteListReason(model);
            saveListReason(model);
            _context.SaveChanges();

            return(1);
        }
 public void saveListReason(quality_error_reason_model model)
 {
     for (int i = 0; i < model.list_reason_db.Count(); i++)
     {
         var newDb = new quality_reason_db()
         {
             create_by   = model.db.create_by,
             create_date = DateTime.Now,
             id_error    = model.db.id,
             note        = model.list_reason_db[i].note,
             reason_name = model.list_reason_db[i].reason_name,
             id          = Guid.NewGuid().ToString()
         };
         _context.quality_reasons.Add(newDb);
     }
     _context.SaveChanges();
 }
        private bool checkModelStateCreateEdit(ActionEnumForm action, quality_error_reason_model item)
        {
            if (string.IsNullOrEmpty(item.db.name))
            {
                ModelState.AddModelError("db.name", "required");
            }

            var searchName = repo.FindAll().Where(d =>
                                                  d.db.name == item.db.name && d.db.id != item.db.id).Count();

            if (searchName > 0)
            {
                ModelState.AddModelError("db.name", "existed");
            }

            return(ModelState.IsValid);
        }
 private bool checkModelStateEdit(quality_error_reason_model item)
 {
     return(checkModelStateCreateEdit(ActionEnumForm.edit, item));
 }