/**
  * 기념일관리정보를 신규로 등록한다.
  *
  * @param annvrsryManageVO
  */
 public void insertAnnvrsryManage(AnnvrsryManageVO annvrsryManageVO) {
   try {
     annvrsryManageVO.setAnnId(annvrsryManageIdGnrService.getNextStringId());
   } catch (FdlException e) {
     throw new RuntimeException(e);
   }
   annvrsryManageMapper.insertAnnvrsryManage(annvrsryManageVO);
 }
  /**
   * 기념일정보를 일괄등록처리한다.
   *
   * @param annvrsryManageVO
   * @param checkedAnnvrsryManageForInsert
   */
  public void insertAnnvrsryManageBnde(
      AnnvrsryManageVO annvrsryManageVO, String checkedAnnvrsryManageForInsert) {
    AnnvrsryManageVO annvrsryManage;

    String[] annvrsryManageValues = checkedAnnvrsryManageForInsert.split("[$]");
    String[] sTempAnnvrsryManage;
    String sTemp = null;

    if (checkedAnnvrsryManageForInsert != null && !checkedAnnvrsryManageForInsert.equals("")) {
      for (int i = 0; i < annvrsryManageValues.length; i++) {
        annvrsryManage = new AnnvrsryManageVO();
        sTemp = annvrsryManageValues[i];
        sTempAnnvrsryManage = sTemp.split(",");
        annvrsryManage.setUsid(sTempAnnvrsryManage[0]);

        annvrsryManage.setAnnvrsryDe(StringUtil.removeMinusChar(sTempAnnvrsryManage[1]));
        annvrsryManage.setCldrSe(sTempAnnvrsryManage[2]);
        annvrsryManage.setAnnvrsrySe(sTempAnnvrsryManage[3]);
        annvrsryManage.setAnnvrsryNm(sTempAnnvrsryManage[4]);
        if ("Y".equals(sTempAnnvrsryManage[5])) annvrsryManage.setReptitSe("1");
        annvrsryManage.setAnnvrsryBeginDe("7");
        annvrsryManage.setAnnvrsrySetup("Y");
        annvrsryManage.setMemo("기념일 일괄등록");

        try {
          annvrsryManage.setAnnId(annvrsryManageIdGnrService.getNextStringId());
        } catch (FdlException e) {
          throw new RuntimeException(e);
        }

        annvrsryManage.setFrstRegisterId(annvrsryManageVO.getFrstRegisterId());
        annvrsryManageMapper.insertAnnvrsryManage(annvrsryManage);
      }
    }
  }
 /**
  * 등록된 기념일관리의 상세정보를 조회한다.
  *
  * @param annvrsryManageVO
  */
 public AnnvrsryManageVO selectAnnvrsryManage(AnnvrsryManageVO annvrsryManageVO) {
   AnnvrsryManageVO resultVo = annvrsryManageMapper.selectAnnvrsryManage(annvrsryManageVO);
   // searchVO 이전
   resultVo.setSearchVO(annvrsryManageVO.getSearchVO());
   return resultVo;
 }
  /**
   * 기념일정보 excel생성
   *
   * @param inputStream
   */
  public List<AnnvrsryManageVO> selectAnnvrsryManageBnde(InputStream inputStream) {

    String sTempId = null; // 사용자ID
    String sTempNm = null; // 사용자명
    String sTempAnnvrsryDe = null; // 기념일자
    String sTempCldrSe = null; // 양/음 구분
    String sTempAnnvrsrySe = null; // 기념일구분
    String sTempAnnvrsryNm = null; // 기념일명
    String sTempReptitSe = null; // 반복여부

    List<AnnvrsryManageVO> list = new ArrayList<AnnvrsryManageVO>();
    try {
      Workbook hssfWB = excelZipService.loadWorkbook(inputStream);
      // 엑셀 파일 시트 갯수 확인 sheet = 1
      if (hssfWB.getNumberOfSheets() == 1) {
        Sheet annvrsrySheet = hssfWB.getSheetAt(0); // 기념일관리 시트 가져오기
        //				HSSFRow annvrsryRow = annvrsrySheet.getRow(1); // 기념일 row 가져오기
        //				int annvrsrySheetRowCnt = annvrsryRow.getPhysicalNumberOfCells(); // 기념일 cell Cnt
        int rowsCnt = annvrsrySheet.getPhysicalNumberOfRows(); // 행 갯수 가져오기

        // 사용자ID 기념일자 양/음 구분 기념일구분 기념일명
        for (int j = 1; j < rowsCnt; j++) { // row 루프
          AnnvrsryManageVO annvrsryManageVO = new AnnvrsryManageVO();
          Row row = annvrsrySheet.getRow(j); // row 가져오기
          if (row != null) {
            //						int cells = row.getPhysicalNumberOfCells(); // cell 갯수 가져오기
            Cell cell = null;
            cell = row.getCell(0); // 사용자ID
            if (cell != null) {
              sTempId = cell.getRichStringCellValue().toString();
            }

            cell = row.getCell(1); // 사용자명
            if (cell != null) {
              sTempNm = cell.getRichStringCellValue().toString();
            }

            cell = row.getCell(2); // 기념일자
            if (cell != null) {
              sTempAnnvrsryDe = cell.getRichStringCellValue().toString();
            }

            cell = row.getCell(3); // 양/음구분
            if (cell != null) {
              sTempCldrSe = cell.getRichStringCellValue().toString();
            }

            cell = row.getCell(4); // 기념일구분
            if (cell != null) {
              sTempAnnvrsrySe = (String) cell.getStringCellValue();
            }
            cell = row.getCell(5); // 기념일명
            if (cell != null) {
              sTempAnnvrsryNm = cell.getRichStringCellValue().toString();
            }
            cell = row.getCell(6); // 반복여부
            if (cell != null) {
              sTempReptitSe = cell.getRichStringCellValue().toString();
            }
            annvrsryManageVO.setUsid(sTempId); // 당직자ID
            annvrsryManageVO.setUsNm(sTempNm); // 당직자명
            annvrsryManageVO.setAnnvrsrySe(sTempAnnvrsrySe);
            annvrsryManageMapper.selectAnnvrsryManageBnde(annvrsryManageVO);
            annvrsryManageVO.setAnnvrsryDe(DateUtil.formatDate(sTempAnnvrsryDe, "-"));
            annvrsryManageVO.setCldrSe(sTempCldrSe);
            annvrsryManageVO.setAnnvrsryNm(sTempAnnvrsryNm);
            annvrsryManageVO.setReptitSe(sTempReptitSe);
            list.add(annvrsryManageVO);
          }
        }
      }
    } catch (Exception e) {
      throw new RuntimeException(e);
    }
    return list;
  }