@Transactional @RequestMapping(value = "/actualiza", method = RequestMethod.POST) public String actualiza( HttpServletRequest request, @Valid Entrada entrada, BindingResult bindingResult, Errors errors, Model modelo, RedirectAttributes redirectAttributes) { if (bindingResult.hasErrors()) { log.error("Hubo algun error en la forma, regresando"); return "inventario/entrada/edita"; } try { Usuario usuario = ambiente.obtieneUsuario(); if (request.getParameter("proveedor.id") == null) { log.warn("No se puede crear la entrada si no ha seleccionado un proveedor"); errors.rejectValue("proveedor", "entrada.sin.proveedor.message"); return "inventario/entrada/nueva"; } Proveedor proveedor = proveedorDao.obtiene(new Long(request.getParameter("proveedor.id"))); entrada.setProveedor(proveedor); entrada = entradaDao.actualiza(entrada, usuario); } catch (NoEstaAbiertaException e) { log.error("No se pudo actualizar la entrada", e); modelo.addAttribute("message", "entrada.intento.modificar.cerrada.message"); modelo.addAttribute("messageStyle", "alert-error"); modelo.addAttribute("messageAttrs", new String[] {entrada.getFolio()}); return "inventario/entrada/nueva"; } catch (ConstraintViolationException e) { log.error("No se pudo crear la entrada", e); errors.rejectValue("factura", "campo.duplicado.message", new String[] {"factura"}, null); return "inventario/entrada/nueva"; } redirectAttributes.addFlashAttribute("message", "entrada.actualizada.message"); redirectAttributes.addFlashAttribute("messageAttrs", new String[] {entrada.getFolio()}); return "redirect:/inventario/entrada/ver/" + entrada.getId(); }
@Transactional @RequestMapping(value = "/crea", method = RequestMethod.POST) public String crea( HttpServletRequest request, HttpServletResponse response, @Valid Entrada entrada, BindingResult bindingResult, Errors errors, Model modelo, RedirectAttributes redirectAttributes) { for (String nombre : request.getParameterMap().keySet()) { log.debug("Param: {} : {}", nombre, request.getParameterMap().get(nombre)); } if (bindingResult.hasErrors()) { log.debug("Hubo algun error en la forma, regresando"); return "inventario/entrada/nueva"; } try { Usuario usuario = ambiente.obtieneUsuario(); if (request.getParameter("proveedor.id") == null) { log.warn("No se puede crear la entrada si no ha seleccionado un proveedor"); errors.rejectValue("proveedor", "entrada.sin.proveedor.message"); return "inventario/entrada/nueva"; } Proveedor proveedor = proveedorDao.obtiene(new Long(request.getParameter("proveedor.id"))); entrada.setProveedor(proveedor); entrada = entradaDao.crea(entrada, usuario); } catch (ConstraintViolationException e) { log.error("No se pudo crear la entrada", e); errors.rejectValue("factura", "campo.duplicado.message", new String[] {"factura"}, null); return "inventario/entrada/nueva"; } redirectAttributes.addFlashAttribute("message", "entrada.creada.message"); redirectAttributes.addFlashAttribute("messageAttrs", new String[] {entrada.getFolio()}); return "redirect:/inventario/entrada/ver/" + entrada.getId(); }
@RequestMapping(value = "/proveedores", params = "term", produces = "application/json") public @ResponseBody List<LabelValueBean> proveedores( HttpServletRequest request, @RequestParam("term") String filtro) { for (String nombre : request.getParameterMap().keySet()) { log.debug("Param: {} : {}", nombre, request.getParameterMap().get(nombre)); } Map<String, Object> params = new HashMap<>(); params.put("empresa", request.getSession().getAttribute("empresaId")); params.put("filtro", filtro); params = proveedorDao.lista(params); List<LabelValueBean> valores = new ArrayList<>(); List<Proveedor> proveedores = (List<Proveedor>) params.get("proveedores"); for (Proveedor proveedor : proveedores) { StringBuilder sb = new StringBuilder(); sb.append(proveedor.getNombre()); sb.append(" | "); sb.append(proveedor.getRfc()); sb.append(" | "); sb.append(proveedor.getNombreCompleto()); valores.add(new LabelValueBean(proveedor.getId(), sb.toString(), proveedor.getNombre())); } return valores; }