public void MigrateOldDb(DateTime dtFrom, DateTime dtTo) { var categories = dbContext.Categories.AsNoTracking().ToList(); dtFrom = dtFrom.Date; dtTo = dtTo.Date + new TimeSpan(23, 59, 59); var oldABMCs = dbContext.ABMCs.AsNoTracking().ToList(); foreach (var oldABMC in oldABMCs) { var category = categories.FirstOrDefault(a => a.CategoryIdOld == oldABMC.CATID); var weekDetail = new WeekDetail(oldABMC.DT); var newActualBaleMC = new ActualBalesMC() { CategoryId = category?.CategoryId ?? 0, DT = oldABMC.DT, FirstDay = weekDetail.FirstDay, LastDay = weekDetail.LastDay, MC = oldABMC.MC, WeekDay = weekDetail.WeekDay, WeekNum = weekDetail.WeekNum }; dbContext.ActualBalesMCs.Add(newActualBaleMC); dbContext.SaveChanges(); } ; }
public Dictionary <string, string> Validate(ActualBalesMC model) { var modelErrors = new Dictionary <string, string>(); var duplicateCount = dbContext.ActualBalesMCs.AsNoTracking().Count(a => a.CategoryId == model.CategoryId && a.DT == model.DT && a.ActualBalesMCId != model.ActualBalesMCId); if (duplicateCount > 0) { modelErrors.Add(nameof(model.CategoryId), "Entry already exists"); } return(modelErrors); }
public ActualBalesMC Create(ActualBalesMC model) { var weekDetail = new WeekDetail(model.DT); model.WeekDay = weekDetail.WeekDay; model.WeekNum = weekDetail.WeekNum; model.FirstDay = weekDetail.FirstDay; model.LastDay = weekDetail.LastDay; dbContext.ActualBalesMCs.Add(model); dbContext.SaveChanges(); return(model); }
private bool validateEntity(ActualBalesMC model) { var modelErrors = repository.Validate(model); if (modelErrors.Count > 0) { foreach (var modelError in modelErrors) { ModelState.AddModelError(modelError.Key, modelError.Value); } } return(ModelState.ErrorCount == 0); }
public bool Delete(ActualBalesMC model) { try { dbContext.ActualBalesMCs.Remove(model); dbContext.SaveChanges(); return(true); } catch (Exception ex) { logger.LogError(ex.GetExceptionMessages()); return(false); } }
public ActualBalesMC Update(ActualBalesMC model) { var entity = dbContext.ActualBalesMCs.Find(model.ActualBalesMCId); if (entity == null) { throw new Exception("Selected Record does not exists."); } entity.CategoryId = model.CategoryId; entity.MC = model.MC; entity.DT = model.DT; dbContext.ActualBalesMCs.Update(entity); dbContext.SaveChanges(); return(entity); }
public IActionResult Put([FromBody] ActualBalesMC model) { try { if (!ModelState.IsValid) { return(InvalidModelStateResult()); } if (!validateEntity(model)) { return(InvalidModelStateResult()); } return(Accepted(repository.Update(model))); } catch (Exception ex) { logger.LogError(ex.GetExceptionMessages()); return(StatusCode(StatusCodes.Status500InternalServerError, Constants.ErrorMessages.UpdateError)); } }