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();
        }