public IActionResult Create(ResistanceForm model) { if (ModelState.IsValid) { model.Resistance.UserName = UserName; _rsApplication.Create(model); return(Ok()); } var values = ModelState.Values.Where(m => m.Errors.Count > 0).Select(s => s.Errors).ToList(); return(StatusCode(StatusCodes.Status500InternalServerError, values)); }
public void Create(ResistanceForm model) { if (model.Resistance.CompanyId == -1) { var newCompany = _db.Company.Add(new Company { Name = model.Company.Name, CompanyScaleId = model.Company.ScaleId, CompanyTypeId = model.Company.TypeId, CompanyWorkLineId = model.Company.WorklineId }); model.Resistance.CompanyId = newCompany.Entity.Id; } if (model.Resistance.MainCompanyId == -1) { var newCompany = _db.Company.Add(new Company { Name = model.MainCompany.Name, CompanyScaleId = model.MainCompany.ScaleId, CompanyTypeId = model.MainCompany.TypeId, CompanyWorkLineId = model.MainCompany.WorklineId }); model.Resistance.MainCompanyId = newCompany.Entity.Id; _db.CompanyOutsourceCompany.Add(new CompanyOutsourceCompany { CompanyId = model.Resistance.MainCompanyId.Value, OutsourceCompanyId = model.Resistance.CompanyId }); } Resistance resistance = model.Resistance.MapToResistanceDto(); BindCorporation(resistance, model.Resistance.CorporationIds); BindResistanceReason(resistance, model.Resistance.ResistanceReasonIds); //BindTradeUnionId(resistance, model.Resistance.TradeUnionId); if (model.Resistance.ResistanceNewsIds != null) { model.Resistance.ResistanceNewsIds.Where(n => !n.IsDeleted).ToList().ForEach(news => resistance.ResistanceNews.Add(new ResistanceNews { NewsId = news.Id })); } Protesto protesto = model.Resistance.MapToProtestoDto(); BindProtestoType(protesto, model.Resistance.ProtestoTypeIds); BindProtestoPlace(protesto, model.Resistance.ProtestoPlaceIds); _db.Resistance.Add(resistance); protesto.ResistanceId = resistance.Id; _db.Protesto.Add(protesto); _db.SaveChanges(); }