protected void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    if (request.getSession(false) == null) {
      getServletContext().getRequestDispatcher(PAG_SALIR).forward(request, response);
    }

    int region =
        request.getSession().getAttribute("regionPerfil") != null
            ? Integer.parseInt(request.getSession().getAttribute("regionPerfil").toString())
            : -1;
    List<BuzonPendienteDTO> buzonesPendientesAsignarSc = null;
    List<AsesorDTO> allAsesores = null;

    try {
      buzonesPendientesAsignarSc = supervisorModel.getBuzonesScPendientesXasignar(region);
      allAsesores = asesorModel.getUsuariosXperfil(region, BuzonConst.ASESOR_SC_TELEFONICO);

      int paginas = 0;
      int indiceInicial = 0;
      int indiceFinal = 0;
      int paginaInicial = 1;

      Paginador<BuzonPendienteDTO> paginador = new Paginador<BuzonPendienteDTO>();
      paginas = utils.getTotalPaginas(buzonesPendientesAsignarSc.size());
      indiceInicial = utils.getIndiceInicial(paginaInicial);
      indiceFinal = utils.getIndiceFinal(paginaInicial, buzonesPendientesAsignarSc.size());

      paginador.setLista(buzonesPendientesAsignarSc.subList(indiceInicial, indiceFinal));
      paginador.setPaginaActual(paginaInicial);
      paginador.setTotalPaginas(paginas);

      request.getSession().setAttribute("buzonesPendientesAsignarSc", buzonesPendientesAsignarSc);
      request.setAttribute("paginador", paginador);
      request.setAttribute("allAsesores", allAsesores);

      getServletContext().getRequestDispatcher(PAG_PENDIENTES).forward(request, response);
    } catch (BuzonException e) {
      logger.error(e.toString());
      request.setAttribute("msg", e.getMensajeUsuario());
      getServletContext().getRequestDispatcher(PAG_ERROR).forward(request, response);
    }
  }
  @SuppressWarnings("unchecked")
  protected void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    if (request.getSession().isNew()) {
      response.sendRedirect(request.getContextPath() + "/salir.jsp");
    }

    int numEmpleado =
        request.getSession().getAttribute("numEmp") != null
            ? Integer.parseInt(request.getSession().getAttribute("numEmp").toString())
            : -1;
    int areaSeguimiento =
        request.getSession().getAttribute("cveAreaUsr") != null
            ? Integer.parseInt(request.getSession().getAttribute("cveAreaUsr").toString())
            : -1;
    String filename = "";
    SeguimientoAreaDTO seguimiento = new SeguimientoAreaDTO();
    ArchivoDTO archivoAnexo = new ArchivoDTO();

    try {
      List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request);

      for (FileItem item : items) {
        if (item.isFormField()) { // Archivos input text, textarea, checkbox, hidden, radiobutton,
          // select

          if (item.getFieldName().equals("folioBuzon")) {
            seguimiento.setFolioBuzon(Integer.parseInt(item.getString()));
          } else if (item.getFieldName().equals("tipoFolio")) {
            seguimiento.setTipoFolio(Integer.parseInt(item.getString()));
          } else if (item.getFieldName().equals("evaluacion")) {
            seguimiento.setCveStatus(Integer.parseInt(item.getString()));
          } else if (item.getFieldName().equals("marca")) {
            seguimiento.setCveMarca(Integer.parseInt(item.getString()));
          } else if (item.getFieldName().equals("v_accionimpl_seg")) {
            seguimiento.setAccionImplementada(item.getString());
          } else if (item.getFieldName().equals("v_observacion_seg")) {
            seguimiento.setObservaciones(item.getString());
          } else if (item.getFieldName().equals("contactaNuevamente")) {
            // seguimiento.setRequiereContacto(item.getString().equals("on") ? 1 : 0);
            seguimiento.setRequiereContacto(Integer.parseInt(item.getString()));
          }
        } else { // input file
          filename = FilenameUtils.getName(item.getName());

          if (item.getSize() > THRESHOLD_SIZE) {
            throw new BuzonException(
                "El archivo <b>"
                    + filename
                    + "</b> contiene <b>"
                    + item.getSize()
                    + "</b> Bytes rebasando los 5MB permitidos, <br>favor de verificar.");
          }

          archivoAnexo.setNbArchivo(filename);
          archivoAnexo.setTpArchivo(filename.trim().equals("") ? "" : item.getContentType());
          archivoAnexo.setArchivoInputStream(item.getInputStream());
        }
      }

      seguimiento.setNumEmpCaptura(numEmpleado);
      seguimiento.setCveAreaSeguimiento(areaSeguimiento);
      seguimiento.setArchivo(archivoAnexo);

      areaAsignModel.guardarSeguimientoAreaAsignada(seguimiento);

      request.setAttribute("msg", "Buzón atendido exitósamente");
      getServletContext().getRequestDispatcher(PAG_OK).forward(request, response);
    } catch (BuzonException be) {
      logger.error(be.toString());
      request.setAttribute("msg", be.getMensajeUsuario());
      getServletContext().getRequestDispatcher(PAG_ERROR).forward(request, response);
    } catch (Exception ex) {
      logger.error(ex.toString());
      request.setAttribute("msg", ex.getMessage());
      getServletContext().getRequestDispatcher(PAG_ERROR).forward(request, response);
    }
  }
  protected void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    if (request.getSession(false) == null) {
      response.sendRedirect(request.getContextPath() + "/" + PAG_SALIR);
    }

    List<AsesorDTO> allAsesores = null;
    List<BuzonPendienteDTO> buzonesPendientesAsignarSc = null;
    int folioInicial =
        request.getParameter("slFolioMasivoInicial") != null
            ? Integer.parseInt(request.getParameter("slFolioMasivoInicial"))
            : -1;
    int folioFinal =
        request.getParameter("slFolioMasivoFinal") != null
            ? Integer.parseInt(request.getParameter("slFolioMasivoFinal"))
            : -1;
    String numEmpAsesor =
        request.getParameter("slAsesorMasivo") != null
            ? request.getParameter("slAsesorMasivo")
            : "";
    String textoFolioInicial =
        request.getParameter("txtFolioMasivoInicial") != null
            ? request.getParameter("txtFolioMasivoInicial")
            : "";
    String textoFolioFinal =
        request.getParameter("txtFolioMasivoFinal") != null
            ? request.getParameter("txtFolioMasivoFinal")
            : "";
    int region =
        request.getSession().getAttribute("regionPerfil") != null
            ? Integer.parseInt(String.valueOf(request.getSession().getAttribute("regionPerfil")))
            : -1;
    AsesorDTO asesor = null;
    EmpleadoLdapDTO datosEmp = null;
    String url = "";

    try {

      asesorModelo.registrarMasivamenteAsesorBuzonesIndirectosVarios(
          numEmpAsesor, folioInicial, folioFinal);

      url = paramsModel.getParametro(BuzonConst.URL_BUZON_SC);
      datosEmp = datosLdap.getDatoLdapEmpleado(numEmpAsesor);

      // Envia la notificacion de los folios asignados
      asesor = asesorModelo.getNoBuzonesPendientesAsesor(numEmpAsesor);
      asesor.setEmail(datosEmp.getEmail());

      asesorModelo.enviarNotificacionBuzonesMasivoXatender(
          asesor, textoFolioInicial, textoFolioFinal, url);
      // Termina envía correo a los asesores seleccionados

      buzonesPendientesAsignarSc = supervisorModel.getBuzonesScPendientesXasignar(region);
      allAsesores = asesorModelo.getUsuariosXperfil(region, BuzonConst.ASESOR_SC_TELEFONICO);

      int paginas = 0;
      int indiceInicial = 0;
      int indiceFinal = 0;
      int paginaInicial = 1;

      Paginador<BuzonPendienteDTO> paginador = new Paginador<BuzonPendienteDTO>();
      paginas = utils.getTotalPaginas(buzonesPendientesAsignarSc.size());
      indiceInicial = utils.getIndiceInicial(paginaInicial);
      indiceFinal = utils.getIndiceFinal(paginaInicial, buzonesPendientesAsignarSc.size());

      paginador.setLista(buzonesPendientesAsignarSc.subList(indiceInicial, indiceFinal));
      paginador.setPaginaActual(paginaInicial);
      paginador.setTotalPaginas(paginas);

      request.getSession().setAttribute("buzonesPendientesAsignarSc", buzonesPendientesAsignarSc);
      request.setAttribute("msg", "Buzones asignados correctamente");
      request.setAttribute("paginador", paginador);
      request.setAttribute("allAsesores", allAsesores);
      getServletContext().getRequestDispatcher(PAG_OK).forward(request, response);
    } catch (BuzonException be) {
      logger.error(be.toString());
      request.setAttribute("msg", be.getMensajeUsuario());
      getServletContext().getRequestDispatcher(PAG_ERROR).forward(request, response);
    } catch (Exception ex) {
      logger.error(ex.toString());
      request.setAttribute("msg", ex.getMessage());
      getServletContext().getRequestDispatcher(PAG_ERROR).forward(request, response);
    }
  }
  /* (non-Java-doc)
   * @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    HttpSession session = request.getSession(true);

    try {
      String i_cve_area = request.getParameter("cve_area");

      int cve_area = Integer.parseInt(i_cve_area);

      String i_folio_buzon = request.getParameter("folio_buzon");

      int folio_buzon = Integer.parseInt(i_folio_buzon);

      String folio = request.getParameter("folio");

      String c_status_seg = request.getParameter("status_seg");

      String v_observacion = request.getParameter("v_observacion");

      String c_evalua = request.getParameter("");

      String llamada = request.getParameter("llamada");

      String tipo_folio = request.getParameter("tipo_folio");

      datosPropModel.updateAreaseg(
          cve_area, folio_buzon, folio, "", "", c_status_seg, v_observacion, c_evalua, tipo_folio);

      // resul = guarda.guardaAreaseg(cve_area, folio_buzon, folio,"","", c_status_seg,
      // v_observacion, c_evalua,tipo_folio,0,0);

      session.setAttribute("i_folio", i_folio_buzon);

      if (llamada.contains("SeguiMail")) {
        // String numEmp = request.getParameter("numEmp");
        //  response.sendRedirect(request.getContextPath()+ "/MailAreaCtrl?numEmpS=" + numEmp);
        response.sendRedirect("menuprueba.jsp");
      } else {
        if (llamada.contains("Seguik")) {
          response.sendRedirect(
              request.getContextPath()
                  + "/SegKA?i_folio="
                  + i_folio_buzon
                  + "&folio="
                  + folio
                  + "&tipo_folio="
                  + tipo_folio
                  + "&llamada="
                  + llamada);
        } else {
          // response.sendRedirect(request.getContextPath()+ "/CalifBuzonCtrl?i_folio=" +
          // i_folio_buzon + "&folio=" + folio + "&tipo_folio=" + tipo_folio + "&llamada=" +
          // llamada);
          response.sendRedirect("menuprueba.jsp");
        }
      }

    } catch (BuzonException e) {
      // logger.error(e.toString());
      request.setAttribute("msg", e.getMensajeUsuario());
      getServletContext().getRequestDispatcher(PAG_ERROR).forward(request, response);
    }
  }