Ir para conteúdo
Fórum Script Brasil

punix0210

Membros
  • Total de itens

    2
  • Registro em

  • Última visita

Sobre punix0210

punix0210's Achievements

0

Reputação

  1. Boa noite galera. Desculpem pela minha ignorância, sou novo em java mas tenho estudado bastante o desenvolvimento web com spring boot. E no meio desses estudos estou criando um projetinho com a finalidade de aprender . Pois bem. Cheguei a um ponto do qual não consigo sair . Colocarei trechos do meu código abaixo para melhor exemplificar. Modelos : @Entity @Table(name = "Pessoa", schema = "dbo") public class Pessoa { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "Id") private Integer id; @Column(name = "Codigo") private String codigo; @Column(name = "Nome") private String nome; @Column(name = "Apelido") private String apelido; @Column(name = "Cpf_cnpj") private String cpf_cnpj; @OneToMany(mappedBy = "pessoa", cascade = CascadeType.ALL) private List<Endereco> enderecos = new ArrayList<Endereco>(); @Column(name = "Tipo") private String tipo; ------------------------------------------------------------- @Entity @Table(name = "Endereco", schema = "dbo") public class Endereco { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "Id") private Integer id; @ManyToOne @JoinColumn(name = "Pessoa_Id") private Pessoa pessoa; @Column(name = "Numero") private String numero; @ManyToOne @JoinColumn(name = "tipo_logradouro_id") private TipoLogradouro tipo; @Column(name = "Nome") private String nome; @ManyToOne @JoinColumn(name = "Bairro_Id") private Bairro bairro; @ManyToOne @JoinColumn(name = "Cidade_Id") private Cidade cidade; --------------------------------------------------------- Classe TDO para carregar todos esses objetos na View através da controller public class PessoaCadastro { private Pessoa pessoa; private Endereco endereco; private List<Bairro> bairros = new ArrayList<Bairro>(); private List<Cidade> cidades = new ArrayList<Cidade>(); private List<TipoLogradouro> logradouros = new ArrayList<TipoLogradouro>(); public List<TipoLogradouro> getLogradouros() { return logradouros; ---------------------------------------------------- Classe Controller @Controller // @RequestMapping("/pessoa") public class PessoaController { @Autowired PessoaService service; @Autowired BairroService serBairro; @Autowired CidadeService serCidade; @Autowired TipoLogradouroService serLogradouro; @RequestMapping(value = "/lista-pessoa", method = RequestMethod.GET) public String findAll(Map<String, Object> model) { model.put("pessoas", service.findAll()); return "/lista-pessoas"; } // @RequestMapping(value = "/lista-pessoa", method = RequestMethod.GET) // public ModelAndView findByAll() { // return new ModelAndView("lista-pessoas", "pessoas", service.findAll()); // } @RequestMapping(value = "/excluir-pessoa", params = "id", method = RequestMethod.GET) public String excluir(@RequestParam("id") Integer id) { service.delete(id); return "redirect:/lista-pessoa"; } public ModelAndView cadastro(PessoaCadastro formPessoa) { return new ModelAndView("cadastro-pessoa", "formPessoa", formPessoa); } @RequestMapping(value = "/cadastro-pessoa", params = "id", method = RequestMethod.GET) public ModelAndView editar(@RequestParam("id") Integer id) { PessoaCadastro pessoa = new PessoaCadastro(); pessoa.setPessoa(service.findOne(id)); pessoa.setEndereco(new Endereco()); pessoa.setLogradouros(serLogradouro.findAll()); pessoa.setBairros((List<Bairro>) serBairro.findAll()); pessoa.setCidades((List<Cidade>) serCidade.finfAll()); return cadastro(pessoa); } @RequestMapping(value = "/cadastro-pessoa", method = RequestMethod.GET) public ModelAndView novo() { PessoaCadastro pessoa = new PessoaCadastro(); pessoa.setPessoa(new Pessoa()); pessoa.setEndereco(new Endereco()); pessoa.setLogradouros(serLogradouro.findAll()); pessoa.setBairros((List<Bairro>) serBairro.findAll()); pessoa.setCidades((List<Cidade>) serCidade.finfAll()); return cadastro(pessoa); } @RequestMapping(value = "/salvar-pessoa") public String saveOrUpdate(PessoaCadastro pessoa) { service.saveOrUpdate(pessoa.getPessoa()); return "redirect:/lista-pessoa"; } @RequestMapping(value = "/adionar-endereco", method = RequestMethod.GET) public ModelAndView AdionarEndereco(PessoaCadastro pessoa) { pessoa.addEnderecoPessoa(pessoa.getEndereco()); return cadastro(pessoa); } Na minha view eu tenho os campos correspondes a Pessoa e uma tabela onde irão ser armazenados a lista de endereços da Pessoa que eu for adicionar. Ao abrir a pagina eu carrego as informações de cadastro da pessoa, mas só que não sei como faço para ir adicionando endereços para essa pessoa e depois gravar. Tenho método adicionar endereco mas só retorna null. Essa situação é praticamente a mesmo em um caso de Orçamento e seus itens no qual a pessoa cria o Orçamento e vai acionando os produtos na lista e depois grava. É isso que eu não sei fazer. Por favor me ajudem. Desde de já agradeço e desculpem pela minha ignorância.
×
×
  • Criar Novo...