@RequestMapping(value = "/option_01.isnet")
 public ModelAndView option_01() {
   ModelAndView mav = new ModelAndView();
   mav.setViewName("/option/option_01");
   mav.addObject("customerList", commonCodeMap.getCustomerList());
   mav.addObject("productList", commonCodeMap.getProductList());
   return mav;
 }
  // 옵션 비교페이지로 이동합니다.
  @SuppressWarnings("unchecked")
  @RequestMapping(value = "/option_03.isnet")
  public ModelAndView option_03() {

    logger.debug("[" + getClass().getSimpleName() + "] [option_03] start");

    ModelAndView mav = new ModelAndView();
    mav.setViewName("/option/option_03");

    try {
      Map<String, Object> resultData = commonCodeMap.getCommonCodeMap();

      List<Map<String, Object>> customerList =
          (List<Map<String, Object>>) resultData.get("customerList");
      List<Map<String, Object>> productList =
          (List<Map<String, Object>>) resultData.get("productList");
      // List<Map<String, Object>> optionFile = optionService.select_option_03_05();

      mav.addObject("customerList", customerList);
      mav.addObject("productList", productList);
      // mav.addObject("optionFile", optionFile);

    } catch (Exception e) {
      e.printStackTrace();
      logger.error("[" + getClass().getSimpleName() + "] [option_03] 조회 오류");
      mav.addObject("error_msg", "옵션 조회중  오류가 발생하였습니다.");
      mav.setViewName("error");
    } finally {
      logger.debug("[" + getClass().getSimpleName() + "] [option_03] end");
    }

    return mav;
  }
  // 고객사별 제품별 옵션파일조회
  @RequestMapping(value = "/option_download_01.isnet")
  public ModelAndView option_download_01(
      @RequestParam(value = "customer_no") int customer_no,
      @RequestParam(value = "product_no") int product_no) {

    logger.debug("[" + getClass().getSimpleName() + "] [option_download_01] start");

    ModelAndView mav = new ModelAndView();

    logger.info(
        "[" + getClass().getSimpleName() + "] [option_download_01] customer_no = " + customer_no);
    logger.info(
        "[" + getClass().getSimpleName() + "] [option_download_01] product_no = " + product_no);

    try {
      Map<String, Object> paramMap = new HashMap<String, Object>();
      paramMap.put("CUSTOMER_NO", customer_no);
      paramMap.put("PRODUCT_NO", product_no);

      List<Map<String, Object>> optionList = optionService.getOptionList(paramMap);
      List<Map<String, Object>> optionFileList = optionService.getOptionFileList(paramMap);

      mav.addObject("optionFileList", optionFileList);
      mav.addObject("optionFileListSize", optionFileList.size());

      mav.addObject("optionList", optionList);
      mav.addObject("optionListSize", optionList.size());
      mav.addObject("customerList", commonCodeMap.getCustomerList());
      mav.addObject("productList", commonCodeMap.getProductList());

      mav.setViewName("/option/option_01");
    } catch (Exception e) {
      e.printStackTrace();
      logger.error("[" + getClass().getSimpleName() + "] [option_download_01] 조회 오류");
      mav.addObject("error_msg", "옵션 조회중  오류가 발생하였습니다.");
      mav.setViewName("error");
    } finally {
      logger.debug("[" + getClass().getSimpleName() + "] [option_download_01] end");
    }

    return mav;
  }
  // 옵션 등록페이지로 이동합니다.
  @SuppressWarnings("unchecked")
  @RequestMapping(value = "/option_05.isnet")
  public ModelAndView option_05() {

    Map<String, Object> resultData = commonCodeMap.getCommonCodeMap();
    List<Map<String, Object>> product = (List<Map<String, Object>>) resultData.get("productList");

    ModelAndView mav = new ModelAndView();

    mav.setViewName("/option/option_05");
    mav.addObject("product", product);
    mav.addObject("productSize", product.size());

    return mav;
  }
  // 옵션 리스트 페이지로 이동하기
  @RequestMapping(value = "/option_02.isnet")
  public ModelAndView option_02() {

    ModelAndView mav = new ModelAndView();
    List<Map<String, Object>> productList = commonCodeMap.getProductList();

    Map<String, Object> paramMap = new HashMap<String, Object>();
    List<Map<String, Object>> optionFileList = optionService.getOptionFileList(paramMap);
    String productListString = StringUtil.listToString(productList, "PRODUCT_NAME", "PRODUCT_NO");
    String optionFileListString =
        StringUtil.listToString(optionFileList, "OPTION_FILE_NAME", "OPTION_FILE_NO");
    mav.addObject("productValues", productListString);
    mav.addObject("optionFileValues", optionFileListString);

    mav.setViewName("/option/option_02");
    return mav;
  }