--- src/main/java/egovframework/com/cmm/web/EgovFileDownloadController.java
+++ src/main/java/egovframework/com/cmm/web/EgovFileDownloadController.java
... | ... | @@ -10,6 +10,7 @@ |
| 10 | 10 |
import java.io.PrintWriter; |
| 11 | 11 |
import java.net.URLEncoder; |
| 12 | 12 |
import java.util.ArrayList; |
| 13 |
+import java.util.Collections; |
|
| 13 | 14 |
import java.util.List; |
| 14 | 15 |
import java.util.Map; |
| 15 | 16 |
|
... | ... | @@ -106,7 +107,7 @@ |
| 106 | 107 |
String browser = getBrowser(request); |
| 107 | 108 |
|
| 108 | 109 |
String dispositionPrefix = "attachment; filename="; |
| 109 |
- String encodedFilename = null; |
|
| 110 |
+ String encodedFilename = URLEncoder.encode(filename, "UTF-8").replaceAll("\\+", "%20");
|
|
| 110 | 111 |
|
| 111 | 112 |
if (browser.equals("MSIE")) {
|
| 112 | 113 |
encodedFilename = URLEncoder.encode(filename, "UTF-8").replaceAll("\\+", "%20");
|
... | ... | @@ -132,7 +133,8 @@ |
| 132 | 133 |
throw new IOException("Not supported browser");
|
| 133 | 134 |
} |
| 134 | 135 |
|
| 135 |
- response.setHeader("Content-Disposition", dispositionPrefix + encodedFilename);
|
|
| 136 |
+ response.setHeader("Content-Disposition",
|
|
| 137 |
+ "attachment; filename=\"" + encodedFilename + "\"; filename*=UTF-8''" + encodedFilename); |
|
| 136 | 138 |
|
| 137 | 139 |
if ("Opera".equals(browser)) {
|
| 138 | 140 |
response.setContentType("application/octet-stream;charset=UTF-8");
|
... | ... | @@ -738,134 +740,71 @@ |
| 738 | 740 |
|
| 739 | 741 |
/* 파일 다운로드 - 일괄 zip 압축(사업관리)*/ |
| 740 | 742 |
@RequestMapping(value = "/cmm/fms/bizFileDownZip.do") |
| 741 |
- public void bizFileDownZip(@RequestParam Map<String, Object> commandMap, @ModelAttribute("bizCntrtVO") BizCntrtVO bizCntrtVO,
|
|
| 742 |
- BizItemVO bizItemVO, |
|
| 743 |
- HttpServletRequest request, HttpServletResponse response) throws Exception {
|
|
| 744 |
- |
|
| 745 |
- //파일ID를 리스트에 담기 |
|
| 746 |
- List<String> atchFileIdList = new ArrayList<String>(); |
|
| 747 |
- //split을 이용해 아이디를 각자 배열에 담기 |
|
| 748 |
- String[] splitStr =bizItemVO.getAtchFileId().split(",");
|
|
| 749 |
- //리스트에 아이디 담기 |
|
| 750 |
- for(int i=0; i<splitStr.length; i++) {
|
|
| 751 |
- atchFileIdList.add(splitStr[i]); |
|
| 752 |
- } |
|
| 753 |
- |
|
| 754 |
- //zip파일 이름 (메뉴명+글 제목명 +날짜) |
|
| 755 |
- String menuNm = "사업관리"; |
|
| 756 |
- String orgnZipNm = menuNm+"_"+bizCntrtVO.getBizNm()+"_"+bizCntrtVO.getFrstRegistPnttm()+".zip"; // 압축 파일명 필요.. |
|
| 757 |
- |
|
| 758 |
- |
|
| 759 |
- FileVO fileVO = new FileVO(); |
|
| 760 |
- fileVO.setAtchFileIdList(atchFileIdList); |
|
| 761 |
- List<FileVO> fvoList = fileService.selectBizFileInfs(fileVO); // 해당 기능에 맞게 파일 조회 |
|
| 762 |
- |
|
| 763 |
- if(fvoList.size() == 0){
|
|
| 764 |
- response.setContentType("application/x-msdownload");
|
|
| 765 |
- PrintWriter printwriter = response.getWriter(); |
|
| 766 |
- printwriter.println("<html>");
|
|
| 767 |
- printwriter.println("<br><br><br><h2>Could not get file name:<br></h2>");
|
|
| 768 |
- printwriter.println("<br><br><br><center><h3><a href='javascript: history.go(-1)'>Back</a></h3></center>");
|
|
| 769 |
- printwriter.println("<br><br><br>© webAccess");
|
|
| 770 |
- printwriter.println("</html>");
|
|
| 771 |
- printwriter.flush(); |
|
| 772 |
- printwriter.close(); |
|
| 773 |
- return ; |
|
| 774 |
- } |
|
| 775 |
- |
|
| 776 |
- |
|
| 777 |
- // buffer size |
|
| 778 |
- int size = 1024; |
|
| 779 |
- byte[] buf = new byte[size]; |
|
| 780 |
- |
|
| 781 |
- String outZipNm = fvoList.get(0).getFileStreCours()+File.separator + orgnZipNm; |
|
| 782 |
- FileInputStream fis = null; |
|
| 783 |
- ZipArchiveOutputStream zos = null; |
|
| 784 |
- BufferedInputStream bis = null; |
|
| 785 |
- |
|
| 786 |
- try {
|
|
| 787 |
- // Zip 파일생성 |
|
| 788 |
- zos = new ZipArchiveOutputStream(new BufferedOutputStream(new FileOutputStream(outZipNm))); |
|
| 789 |
- |
|
| 790 |
- for ( FileVO vo : fvoList ){
|
|
| 791 |
- zos.setEncoding("UTF-8");
|
|
| 792 |
- |
|
| 793 |
- //buffer에 해당파일의 stream을 입력한다. |
|
| 794 |
- fis = new FileInputStream(vo.getFileStreCours() + "/" + vo.getStreFileNm()); |
|
| 795 |
- bis = new BufferedInputStream(fis,size); |
|
| 796 |
- |
|
| 797 |
- //zip에 넣을 다음 entry 를 가져온다. |
|
| 798 |
- zos.putArchiveEntry(new ZipArchiveEntry(vo.getOrignlFileNm())); |
|
| 799 |
- |
|
| 800 |
- //준비된 버퍼에서 집출력스트림으로 write 한다. |
|
| 801 |
- int len; |
|
| 802 |
- while((len = bis.read(buf,0,size)) != -1) zos.write(buf,0,len); |
|
| 803 |
- |
|
| 804 |
- bis.close(); |
|
| 805 |
- fis.close(); |
|
| 806 |
- zos.closeArchiveEntry(); |
|
| 807 |
- } |
|
| 808 |
- |
|
| 809 |
- zos.close(); |
|
| 810 |
- |
|
| 811 |
- } catch (FileNotFoundException e) {
|
|
| 812 |
- e.printStackTrace(); |
|
| 813 |
- }finally{
|
|
| 814 |
- if( zos != null ) zos.close(); |
|
| 815 |
- if( fis != null ) fis.close(); |
|
| 816 |
- if( bis != null ) bis.close(); |
|
| 817 |
- } |
|
| 818 |
- |
|
| 819 |
- File uFile = new File(fvoList.get(0).getFileStreCours(), orgnZipNm); |
|
| 820 |
- long fSize = uFile.length(); |
|
| 821 |
- |
|
| 822 |
- if (fSize > 0) {
|
|
| 823 |
- String mimetype = "application/x-msdownload"; |
|
| 824 |
- |
|
| 825 |
- response.setContentType(mimetype); |
|
| 826 |
- setDisposition(orgnZipNm, request, response); |
|
| 827 |
- //response.setContentLength(fSize); |
|
| 828 |
- |
|
| 829 |
- BufferedInputStream in = null; |
|
| 830 |
- BufferedOutputStream out = null; |
|
| 831 |
- |
|
| 832 |
- try {
|
|
| 833 |
- in = new BufferedInputStream(new FileInputStream(uFile)); |
|
| 834 |
- out = new BufferedOutputStream(response.getOutputStream()); |
|
| 835 |
- |
|
| 836 |
- FileCopyUtils.copy(in, out); |
|
| 837 |
- out.flush(); |
|
| 838 |
- } catch (Exception ex) {
|
|
| 839 |
- LOGGER.debug("IGNORED: {}", ex.getMessage());
|
|
| 840 |
- } finally {
|
|
| 841 |
- if (in != null) {
|
|
| 842 |
- try {
|
|
| 843 |
- in.close(); |
|
| 844 |
- } catch (Exception ignore) {
|
|
| 845 |
- LOGGER.debug("IGNORED: {}", ignore.getMessage());
|
|
| 846 |
- } |
|
| 847 |
- } |
|
| 848 |
- if (out != null) {
|
|
| 849 |
- try {
|
|
| 850 |
- out.close(); |
|
| 851 |
- } catch (Exception ignore) {
|
|
| 852 |
- LOGGER.debug("IGNORED: {}", ignore.getMessage());
|
|
| 853 |
- } |
|
| 743 |
+ public void bizFileDownZip(@RequestParam Map<String, Object> commandMap, |
|
| 744 |
+ @ModelAttribute("bizCntrtVO") BizCntrtVO bizCntrtVO,
|
|
| 745 |
+ BizItemVO bizItemVO, |
|
| 746 |
+ HttpServletRequest request, |
|
| 747 |
+ HttpServletResponse response) throws Exception {
|
|
| 748 |
+ List<String> atchFileIdList = new ArrayList<>(); |
|
| 749 |
+ |
|
| 750 |
+ if (bizItemVO.getAtchFileId() != null && !bizItemVO.getAtchFileId().trim().isEmpty()) {
|
|
| 751 |
+ String[] splitStr = bizItemVO.getAtchFileId().split(",");
|
|
| 752 |
+ for (String id : splitStr) {
|
|
| 753 |
+ if (id != null && !id.trim().isEmpty()) {
|
|
| 754 |
+ atchFileIdList.add(id.trim()); |
|
| 854 | 755 |
} |
| 855 | 756 |
} |
| 856 |
- //파일 다운로드 후 파일 삭제 |
|
| 857 |
- File delFile = new File(outZipNm); |
|
| 858 |
- delFile.delete(); |
|
| 859 |
- } else {
|
|
| 860 |
- response.setContentType("application/x-msdownload");
|
|
| 861 |
- PrintWriter printwriter = response.getWriter(); |
|
| 862 |
- printwriter.println("<html>");
|
|
| 863 |
- printwriter.println("<br><br><br><h2>Could not get file name:<br>" + orgnZipNm + "</h2>");
|
|
| 864 |
- printwriter.println("<br><br><br><center><h3><a href='javascript: history.go(-1)'>Back</a></h3></center>");
|
|
| 865 |
- printwriter.println("<br><br><br>© webAccess");
|
|
| 866 |
- printwriter.println("</html>");
|
|
| 867 |
- printwriter.flush(); |
|
| 868 |
- printwriter.close(); |
|
| 757 |
+ } |
|
| 758 |
+ |
|
| 759 |
+ FileVO fileVO = new FileVO(); |
|
| 760 |
+ fileVO.setAtchFileIdList(!atchFileIdList.isEmpty() ? atchFileIdList : null); |
|
| 761 |
+ |
|
| 762 |
+ List<FileVO> fvoList = fileService.selectBizFileInfs(fileVO); |
|
| 763 |
+ |
|
| 764 |
+ if (fvoList == null || fvoList.isEmpty()) {
|
|
| 765 |
+ response.sendError(HttpServletResponse.SC_NOT_FOUND, "파일이 존재하지 않습니다."); |
|
| 766 |
+ return; |
|
| 767 |
+ } |
|
| 768 |
+ |
|
| 769 |
+ String menuNm = "사업관리"; |
|
| 770 |
+ String orgnZipNm = menuNm + "_" |
|
| 771 |
+ + bizCntrtVO.getBizNm() + "_" |
|
| 772 |
+ + bizCntrtVO.getFrstRegistPnttm() + ".zip"; |
|
| 773 |
+ |
|
| 774 |
+ response.reset(); |
|
| 775 |
+ response.setContentType("application/zip");
|
|
| 776 |
+ |
|
| 777 |
+ String encodedFileName = URLEncoder.encode(orgnZipNm, "UTF-8").replaceAll("\\+", "%20");
|
|
| 778 |
+ |
|
| 779 |
+ response.setHeader("Content-Disposition",
|
|
| 780 |
+ "attachment; filename=\"" + encodedFileName + "\"; filename*=UTF-8''" + encodedFileName); |
|
| 781 |
+ |
|
| 782 |
+ byte[] buffer = new byte[1024]; |
|
| 783 |
+ |
|
| 784 |
+ try (ZipArchiveOutputStream zos = new ZipArchiveOutputStream(response.getOutputStream())) {
|
|
| 785 |
+ |
|
| 786 |
+ zos.setEncoding("UTF-8");
|
|
| 787 |
+ |
|
| 788 |
+ for (FileVO vo : fvoList) {
|
|
| 789 |
+ |
|
| 790 |
+ File file = new File(vo.getFileStreCours(), vo.getStreFileNm()); |
|
| 791 |
+ |
|
| 792 |
+ if (!file.exists()) continue; |
|
| 793 |
+ |
|
| 794 |
+ try (BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file))) {
|
|
| 795 |
+ |
|
| 796 |
+ zos.putArchiveEntry(new ZipArchiveEntry(vo.getOrignlFileNm())); |
|
| 797 |
+ |
|
| 798 |
+ int len; |
|
| 799 |
+ while ((len = bis.read(buffer)) != -1) {
|
|
| 800 |
+ zos.write(buffer, 0, len); |
|
| 801 |
+ } |
|
| 802 |
+ |
|
| 803 |
+ zos.closeArchiveEntry(); |
|
| 804 |
+ } |
|
| 805 |
+ } |
|
| 806 |
+ |
|
| 807 |
+ zos.finish(); |
|
| 869 | 808 |
} |
| 870 | 809 |
} |
| 871 | 810 |
|
--- src/main/java/egovframework/let/itsm/security/service/RuleVO.java
+++ src/main/java/egovframework/let/itsm/security/service/RuleVO.java
... | ... | @@ -88,5 +88,5 @@ |
| 88 | 88 |
public void setRuleDetailUrl(String ruleDetailUrl) {
|
| 89 | 89 |
this.ruleDetailUrl = ruleDetailUrl; |
| 90 | 90 |
} |
| 91 |
- |
|
| 91 |
+ |
|
| 92 | 92 |
} |
--- src/main/java/egovframework/let/itsm/security/web/RuleManageController.java
+++ src/main/java/egovframework/let/itsm/security/web/RuleManageController.java
... | ... | @@ -6,6 +6,7 @@ |
| 6 | 6 |
import java.util.Properties; |
| 7 | 7 |
|
| 8 | 8 |
import javax.annotation.Resource; |
| 9 |
+import javax.servlet.http.HttpServletRequest; |
|
| 9 | 10 |
import javax.xml.parsers.DocumentBuilder; |
| 10 | 11 |
import javax.xml.parsers.DocumentBuilderFactory; |
| 11 | 12 |
|
... | ... | @@ -28,141 +29,134 @@ |
| 28 | 29 |
@Controller |
| 29 | 30 |
public class RuleManageController {
|
| 30 | 31 |
|
| 31 |
- @Resource(name="globalsProperties") |
|
| 32 |
- private Properties globalsProperties; |
|
| 33 |
- |
|
| 34 |
- |
|
| 35 |
- private static String getTagValue(String tag, Element eElement){
|
|
| 36 |
- NodeList nlList = eElement.getElementsByTagName(tag).item(0).getChildNodes(); |
|
| 37 |
- Node nValue = (Node) nlList.item(0); |
|
| 38 |
- if(nValue == null) |
|
| 39 |
- return null; |
|
| 40 |
- |
|
| 41 |
- return nValue.getNodeValue(); |
|
| 42 |
- } |
|
| 43 |
- |
|
| 44 |
- //규정 리스트 |
|
| 45 |
- @RequestMapping(value="/uss/itsm/security/selectRuleList.do") |
|
| 46 |
- public String selectRuleList(@ModelAttribute("searchVO") ComDefaultVO searchVO
|
|
| 47 |
- , @ModelAttribute("ruleVO") RuleVO ruleVO
|
|
| 48 |
- , @RequestParam Map <String, Object> commandMap |
|
| 49 |
- , ModelMap model) throws Exception {
|
|
| 50 |
- |
|
| 51 |
- // 검색조건 설정 -------------------------------------------------------------------------------------------- |
|
| 52 |
- String ruleUrl = globalsProperties.getProperty("Globals.rule.url");
|
|
| 53 |
- System.out.println("ruleUrl : '" + ruleUrl+"'");
|
|
| 54 |
- ruleVO.setRuleUrl(ruleUrl); |
|
| 55 |
- |
|
| 56 |
- String url = ruleUrl+"/DRF/lawSearch.do?OC=wyh2010&target=law&type=XML&popYn=Y&display=10"; |
|
| 57 |
- System.out.println("1 = url : '" + url+"'");
|
|
| 58 |
- |
|
| 59 |
- |
|
| 60 |
- // 페이지 |
|
| 61 |
- System.out.println("ruleVO.getPageIndex : '" + ruleVO.getPageIndex()+"'");
|
|
| 62 |
- url+="&page="+ruleVO.getPageIndex(); |
|
| 63 |
- |
|
| 64 |
- // 검색어 |
|
| 65 |
- if(ruleVO.getSearchKeyword() != null && ruleVO.getSearchKeyword().length() != 0 ) {
|
|
| 66 |
- String keyWord = ruleVO.getSearchKeyword(); |
|
| 67 |
- System.out.println("ruleVO.getSearchKeyword : '" + keyWord+"'");
|
|
| 68 |
- url+="&query="+keyWord; |
|
| 69 |
- } |
|
| 70 |
- |
|
| 71 |
- |
|
| 72 |
- // 기간 설정 |
|
| 73 |
- if((ruleVO.getSearchStartDate() != null && ruleVO.getSearchStartDate().length() != 0)&&(ruleVO.getSearchEndDate() != "" && ruleVO.getSearchEndDate().length() != 0)) {
|
|
| 74 |
- String startDate = ruleVO.getSearchStartDate().replaceAll("-", "");
|
|
| 75 |
- String endDate = ruleVO.getSearchEndDate().replaceAll("-", "");
|
|
| 76 |
- |
|
| 77 |
- System.out.println("ruleVO.getSearchStartDate : '" + startDate+"'");
|
|
| 78 |
- System.out.println("ruleVO.getSearchEndDate : '" + endDate+"'");
|
|
| 79 |
- url+="&ancYd="+startDate+"~"+endDate; |
|
| 80 |
- } |
|
| 81 |
- |
|
| 82 |
- System.out.println("url : '" + url+"'");
|
|
| 83 |
- // 검색결과 확인 -------------------------------------------------------------------------------------------- |
|
| 84 |
- // root tag |
|
| 85 |
- DocumentBuilderFactory dbFactoty = DocumentBuilderFactory.newInstance(); |
|
| 86 |
- DocumentBuilder dBuilder = dbFactoty.newDocumentBuilder(); |
|
| 87 |
- Document doc = dBuilder.parse(url); |
|
| 88 |
- doc.getDocumentElement().normalize(); |
|
| 89 |
- System.out.println("Root element: " + doc.getDocumentElement().getNodeName()); // Root element: LawSearch
|
|
| 90 |
- |
|
| 91 |
- PaginationInfo paginationInfo = new PaginationInfo(); |
|
| 92 |
- |
|
| 93 |
- paginationInfo.setCurrentPageNo(ruleVO.getPageIndex()); |
|
| 94 |
- paginationInfo.setRecordCountPerPage(ruleVO.getPageUnit()); |
|
| 95 |
- paginationInfo.setPageSize(ruleVO.getPageSize()); |
|
| 96 |
- |
|
| 97 |
- NodeList sList = doc.getElementsByTagName("LawSearch");
|
|
| 98 |
- |
|
| 99 |
- for(int temp =0; temp < sList.getLength(); temp ++) {
|
|
| 100 |
- Node sNode = sList.item(temp); |
|
| 101 |
- if(sNode.getNodeType() == Node.ELEMENT_NODE) {
|
|
| 102 |
- Element sElement = (Element) sNode; |
|
| 103 |
- System.out.println("############################# temp : " + temp);
|
|
| 104 |
- System.out.println("totalCnt : " + getTagValue("totalCnt", sElement));
|
|
| 105 |
- String totalCnt = getTagValue("totalCnt", sElement);
|
|
| 106 |
- paginationInfo.setTotalRecordCount(Integer.parseInt(totalCnt)); |
|
| 107 |
- System.out.println("#############################");
|
|
| 108 |
- } |
|
| 109 |
- } |
|
| 110 |
- |
|
| 111 |
- |
|
| 112 |
- |
|
| 113 |
- NodeList nList = doc.getElementsByTagName("law");
|
|
| 114 |
- |
|
| 115 |
- List<RuleVO> ruleVOList = new ArrayList<RuleVO>(); |
|
| 116 |
- |
|
| 117 |
- for(int temp =0; temp < nList.getLength(); temp ++) {
|
|
| 118 |
- RuleVO tempRuleVO = new RuleVO(); |
|
| 119 |
- Node nNode = nList.item(temp); |
|
| 120 |
- |
|
| 121 |
- if(nNode.getNodeType() == Node.ELEMENT_NODE) {
|
|
| 122 |
- Element eElement = (Element) nNode; |
|
| 123 |
- |
|
| 124 |
- System.out.println("############################# temp : " + temp);
|
|
| 125 |
- System.out.println("구분 : " + getTagValue("제개정구분명", eElement));
|
|
| 126 |
- tempRuleVO.setRuleDivision(getTagValue("제개정구분명", eElement));
|
|
| 127 |
- |
|
| 128 |
- System.out.println("공포일자 : " + getTagValue("공포일자", eElement));
|
|
| 129 |
- tempRuleVO.setRuleDate(getTagValue("공포일자", eElement));
|
|
| 130 |
- |
|
| 131 |
- System.out.println("공포번호 : " + getTagValue("공포번호", eElement));
|
|
| 132 |
- tempRuleVO.setRuleNum(getTagValue("공포번호", eElement));
|
|
| 133 |
- |
|
| 134 |
- System.out.println("법령명 : " + getTagValue("법령명한글", eElement));
|
|
| 135 |
- tempRuleVO.setRuleName(getTagValue("법령명한글", eElement));
|
|
| 136 |
- |
|
| 137 |
- System.out.println("법령약칭명 : " + getTagValue("법령약칭명", eElement));
|
|
| 138 |
- tempRuleVO.setRuleAbbName(getTagValue("법령약칭명", eElement));
|
|
| 139 |
- |
|
| 140 |
- System.out.println("법령상세링크 : " + getTagValue("법령상세링크", eElement));
|
|
| 141 |
- tempRuleVO.setRuleDetailUrl(getTagValue("법령상세링크", eElement));
|
|
| 142 |
- |
|
| 143 |
- System.out.println("#############################");
|
|
| 144 |
- ruleVOList.add(temp, tempRuleVO); |
|
| 145 |
- } |
|
| 146 |
- } |
|
| 147 |
- |
|
| 148 |
- |
|
| 149 |
- for(int i=0; i<ruleVOList.size(); i++) {
|
|
| 150 |
- System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ i : " + i );
|
|
| 151 |
- System.out.println("구분 : i = "+ ruleVOList.get(i).getRuleDivision());
|
|
| 152 |
- System.out.println("공포일자 : i = "+ ruleVOList.get(i).getRuleDate());
|
|
| 153 |
- System.out.println("공포번호 : i = "+ ruleVOList.get(i).getRuleNum());
|
|
| 154 |
- System.out.println("법령명 : i = "+ ruleVOList.get(i).getRuleName());
|
|
| 155 |
- System.out.println("법령약칭명 : i = "+ ruleVOList.get(i).getRuleAbbName());
|
|
| 156 |
- System.out.println("법령상세링크 : i = "+ ruleVOList.get(i).getRuleDetailUrl());
|
|
| 157 |
- System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@");
|
|
| 158 |
- } |
|
| 159 |
- |
|
| 160 |
- model.addAttribute("paginationInfo", paginationInfo);
|
|
| 161 |
- model.addAttribute("ruleVO", ruleVO);
|
|
| 162 |
- model.addAttribute("ruleVOList", ruleVOList);
|
|
| 163 |
- return "/uss/itsm/security/RuleMngList"; |
|
| 164 |
- } |
|
| 165 |
- |
|
| 166 |
-// public String |
|
| 167 |
- |
|
| 32 |
+ @Resource(name = "globalsProperties") |
|
| 33 |
+ private Properties globalsProperties; |
|
| 34 |
+ |
|
| 35 |
+ |
|
| 36 |
+ private static String getTagValue(String tag, Element eElement) {
|
|
| 37 |
+ NodeList nlList = eElement.getElementsByTagName(tag).item(0).getChildNodes(); |
|
| 38 |
+ Node nValue = (Node) nlList.item(0); |
|
| 39 |
+ if (nValue == null) |
|
| 40 |
+ return null; |
|
| 41 |
+ |
|
| 42 |
+ return nValue.getNodeValue(); |
|
| 43 |
+ } |
|
| 44 |
+ |
|
| 45 |
+ //규정 리스트 |
|
| 46 |
+ @RequestMapping(value = "/uss/itsm/security/selectRuleList.do") |
|
| 47 |
+ public String selectRuleList(@ModelAttribute("searchVO") ComDefaultVO searchVO
|
|
| 48 |
+ , @ModelAttribute("ruleVO") RuleVO ruleVO
|
|
| 49 |
+ , @RequestParam Map<String, Object> commandMap |
|
| 50 |
+ , ModelMap model |
|
| 51 |
+ ) throws Exception {
|
|
| 52 |
+ |
|
| 53 |
+ // 검색조건 설정 -------------------------------------------------------------------------------------------- |
|
| 54 |
+ String ruleUrl = globalsProperties.getProperty("Globals.rule.url");
|
|
| 55 |
+ ruleVO.setRuleUrl(ruleUrl); |
|
| 56 |
+ |
|
| 57 |
+ |
|
| 58 |
+ String target = "law"; |
|
| 59 |
+ |
|
| 60 |
+ String url = ruleUrl + "/DRF/lawSearch.do" |
|
| 61 |
+ + "?OC=itenTest1234" |
|
| 62 |
+ + "&target=" + target |
|
| 63 |
+ + "&type=XML" |
|
| 64 |
+ + "&display=10"; |
|
| 65 |
+ // 페이지 |
|
| 66 |
+ url += "&page=" + ruleVO.getPageIndex(); |
|
| 67 |
+ // 검색어 |
|
| 68 |
+ if (ruleVO.getSearchKeyword() != null && ruleVO.getSearchKeyword().length() != 0) {
|
|
| 69 |
+ String keyWord = ruleVO.getSearchKeyword(); |
|
| 70 |
+ url += "&query=" + keyWord; |
|
| 71 |
+ } |
|
| 72 |
+ // 기간 설정 |
|
| 73 |
+ if ((ruleVO.getSearchStartDate() != null && ruleVO.getSearchStartDate().length() != 0) && (ruleVO.getSearchEndDate() != "" && ruleVO.getSearchEndDate().length() != 0)) {
|
|
| 74 |
+ String startDate = ruleVO.getSearchStartDate().replaceAll("-", "");
|
|
| 75 |
+ String endDate = ruleVO.getSearchEndDate().replaceAll("-", "");
|
|
| 76 |
+ |
|
| 77 |
+ System.out.println("ruleVO.getSearchStartDate : '" + startDate + "'");
|
|
| 78 |
+ System.out.println("ruleVO.getSearchEndDate : '" + endDate + "'");
|
|
| 79 |
+ url += "&ancYd=" + startDate + "~" + endDate; |
|
| 80 |
+ } |
|
| 81 |
+ // 검색결과 확인 -------------------------------------------------------------------------------------------- |
|
| 82 |
+ // root tag |
|
| 83 |
+ DocumentBuilderFactory dbFactoty = DocumentBuilderFactory.newInstance(); |
|
| 84 |
+ DocumentBuilder dBuilder = dbFactoty.newDocumentBuilder(); |
|
| 85 |
+ Document doc = dBuilder.parse(url); |
|
| 86 |
+ doc.getDocumentElement().normalize(); |
|
| 87 |
+ System.out.println("Root element: " + doc.getDocumentElement().getNodeName()); // Root element: LawSearch
|
|
| 88 |
+ |
|
| 89 |
+ PaginationInfo paginationInfo = new PaginationInfo(); |
|
| 90 |
+ |
|
| 91 |
+ paginationInfo.setCurrentPageNo(ruleVO.getPageIndex()); |
|
| 92 |
+ paginationInfo.setRecordCountPerPage(ruleVO.getPageUnit()); |
|
| 93 |
+ paginationInfo.setPageSize(ruleVO.getPageSize()); |
|
| 94 |
+ |
|
| 95 |
+ NodeList sList = doc.getElementsByTagName("LawSearch");
|
|
| 96 |
+ |
|
| 97 |
+ for (int temp = 0; temp < sList.getLength(); temp++) {
|
|
| 98 |
+ Node sNode = sList.item(temp); |
|
| 99 |
+ if (sNode.getNodeType() == Node.ELEMENT_NODE) {
|
|
| 100 |
+ Element sElement = (Element) sNode; |
|
| 101 |
+ System.out.println("############################# temp : " + temp);
|
|
| 102 |
+ System.out.println("totalCnt : " + getTagValue("totalCnt", sElement));
|
|
| 103 |
+ String totalCnt = getTagValue("totalCnt", sElement);
|
|
| 104 |
+ paginationInfo.setTotalRecordCount(Integer.parseInt(totalCnt)); |
|
| 105 |
+ System.out.println("#############################");
|
|
| 106 |
+ } |
|
| 107 |
+ } |
|
| 108 |
+ |
|
| 109 |
+ |
|
| 110 |
+ NodeList nList = doc.getElementsByTagName("law");
|
|
| 111 |
+ |
|
| 112 |
+ List<RuleVO> ruleVOList = new ArrayList<RuleVO>(); |
|
| 113 |
+ |
|
| 114 |
+ for (int temp = 0; temp < nList.getLength(); temp++) {
|
|
| 115 |
+ RuleVO tempRuleVO = new RuleVO(); |
|
| 116 |
+ Node nNode = nList.item(temp); |
|
| 117 |
+ |
|
| 118 |
+ if (nNode.getNodeType() == Node.ELEMENT_NODE) {
|
|
| 119 |
+ Element eElement = (Element) nNode; |
|
| 120 |
+ |
|
| 121 |
+ System.out.println("############################# temp : " + temp);
|
|
| 122 |
+ System.out.println("구분 : " + getTagValue("제개정구분명", eElement));
|
|
| 123 |
+ tempRuleVO.setRuleDivision(getTagValue("제개정구분명", eElement));
|
|
| 124 |
+ |
|
| 125 |
+ System.out.println("공포일자 : " + getTagValue("공포일자", eElement));
|
|
| 126 |
+ tempRuleVO.setRuleDate(getTagValue("공포일자", eElement));
|
|
| 127 |
+ |
|
| 128 |
+ System.out.println("공포번호 : " + getTagValue("공포번호", eElement));
|
|
| 129 |
+ tempRuleVO.setRuleNum(getTagValue("공포번호", eElement));
|
|
| 130 |
+ |
|
| 131 |
+ System.out.println("법령명 : " + getTagValue("법령명한글", eElement));
|
|
| 132 |
+ tempRuleVO.setRuleName(getTagValue("법령명한글", eElement));
|
|
| 133 |
+ |
|
| 134 |
+ System.out.println("법령약칭명 : " + getTagValue("법령약칭명", eElement));
|
|
| 135 |
+ tempRuleVO.setRuleAbbName(getTagValue("법령약칭명", eElement));
|
|
| 136 |
+ |
|
| 137 |
+ System.out.println("법령상세링크 : " + getTagValue("법령상세링크", eElement));
|
|
| 138 |
+ tempRuleVO.setRuleDetailUrl(getTagValue("법령상세링크", eElement));
|
|
| 139 |
+ |
|
| 140 |
+ System.out.println("#############################");
|
|
| 141 |
+ ruleVOList.add(temp, tempRuleVO); |
|
| 142 |
+ } |
|
| 143 |
+ } |
|
| 144 |
+ |
|
| 145 |
+ |
|
| 146 |
+ for (int i = 0; i < ruleVOList.size(); i++) {
|
|
| 147 |
+ System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ i : " + i);
|
|
| 148 |
+ System.out.println("구분 : i = " + ruleVOList.get(i).getRuleDivision());
|
|
| 149 |
+ System.out.println("공포일자 : i = " + ruleVOList.get(i).getRuleDate());
|
|
| 150 |
+ System.out.println("공포번호 : i = " + ruleVOList.get(i).getRuleNum());
|
|
| 151 |
+ System.out.println("법령명 : i = " + ruleVOList.get(i).getRuleName());
|
|
| 152 |
+ System.out.println("법령약칭명 : i = " + ruleVOList.get(i).getRuleAbbName());
|
|
| 153 |
+ System.out.println("법령상세링크 : i = " + ruleVOList.get(i).getRuleDetailUrl());
|
|
| 154 |
+ System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@");
|
|
| 155 |
+ } |
|
| 156 |
+ |
|
| 157 |
+ model.addAttribute("paginationInfo", paginationInfo);
|
|
| 158 |
+ model.addAttribute("ruleVO", ruleVO);
|
|
| 159 |
+ model.addAttribute("ruleVOList", ruleVOList);
|
|
| 160 |
+ return "/uss/itsm/security/RuleMngList"; |
|
| 161 |
+ } |
|
| 168 | 162 |
} |
--- src/main/webapp/WEB-INF/jsp/uss/itsm/bizCntrt/BizCntrtView.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/itsm/bizCntrt/BizCntrtView.jsp
... | ... | @@ -607,10 +607,9 @@ |
| 607 | 607 |
var frm = document.writeForm |
| 608 | 608 |
window.opener.name="parentPage"; |
| 609 | 609 |
frm.target = "parentPage"; |
| 610 |
- frm.action="/cmm/fms/bizFileDownZip.do?atchFileId="+checkboxId; |
|
| 610 |
+ frm.action="/cmm/fms/bizFileDownZip.do?"; |
|
| 611 | 611 |
frm.submit(); |
| 612 |
- |
|
| 613 |
- } |
|
| 612 |
+ } |
|
| 614 | 613 |
|
| 615 | 614 |
/* 감사기간 validate */ |
| 616 | 615 |
function validateDate(neceFlag){
|
--- src/main/webapp/WEB-INF/jsp/uss/itsm/security/RuleMngList.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/itsm/security/RuleMngList.jsp
... | ... | @@ -1,78 +1,78 @@ |
| 1 |
-<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> |
|
| 1 |
+<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8" %> |
|
| 2 | 2 |
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> |
| 3 |
-<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> |
|
| 4 |
-<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> |
|
| 5 |
-<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> |
|
| 6 |
-<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> |
|
| 7 |
-<% |
|
| 8 |
- response.setHeader("Cache-Control","no-store");
|
|
| 9 |
- response.setHeader("Pragma","no-cache");
|
|
| 10 |
- response.setDateHeader("Expires",0);
|
|
| 11 |
- if (request.getProtocol().equals("HTTP/1.1")) response.setHeader("Cache-Control", "no-cache");
|
|
| 3 |
+<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %> |
|
| 4 |
+<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> |
|
| 5 |
+<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> |
|
| 6 |
+<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> |
|
| 7 |
+<% |
|
| 8 |
+ response.setHeader("Cache-Control", "no-store");
|
|
| 9 |
+ response.setHeader("Pragma", "no-cache");
|
|
| 10 |
+ response.setDateHeader("Expires", 0);
|
|
| 11 |
+ if (request.getProtocol().equals("HTTP/1.1")) response.setHeader("Cache-Control", "no-cache");
|
|
| 12 | 12 |
%> |
| 13 |
-<c:set var="ImgUrl" value="${pageContext.request.contextPath}/images/egovframework/com/cmm/" />
|
|
| 14 |
-<c:set var="CssUrl" value="${pageContext.request.contextPath}/css/egovframework/com/" />
|
|
| 15 |
-<c:set var="JsUrl" value="${pageContext.request.contextPath}/js/egovframework/com/uss/ion/pwm/"/>
|
|
| 13 |
+<c:set var="ImgUrl" value="${pageContext.request.contextPath}/images/egovframework/com/cmm/"/>
|
|
| 14 |
+<c:set var="CssUrl" value="${pageContext.request.contextPath}/css/egovframework/com/"/>
|
|
| 15 |
+<c:set var="JsUrl" value="${pageContext.request.contextPath}/js/egovframework/com/uss/ion/pwm/"/>
|
|
| 16 | 16 |
<!DOCTYPE html> |
| 17 | 17 |
<html lang="ko"> |
| 18 | 18 |
<head> |
| 19 |
- <title>보안관리</title> |
|
| 20 |
- <meta http-equiv="content-type" content="text/html; charset=utf-8"> |
|
| 21 |
- <link rel="stylesheet" href="/direct/css/font.css"> |
|
| 22 |
- <link rel="stylesheet" href="/direct/css/reset.css"> |
|
| 23 |
- <link rel="stylesheet" href="/direct/css/index.css"> |
|
| 24 |
- <link rel="stylesheet" href="/direct/css/nice-select.css"> |
|
| 25 |
- <!--[if IE]> |
|
| 26 |
- <link rel="stylesheet" type="text/css" href="/direct/css/ie_popup.css" /> |
|
| 19 |
+ <title>보안관리</title> |
|
| 20 |
+ <meta http-equiv="content-type" content="text/html; charset=utf-8"> |
|
| 21 |
+ <link rel="stylesheet" href="/direct/css/font.css"> |
|
| 22 |
+ <link rel="stylesheet" href="/direct/css/reset.css"> |
|
| 23 |
+ <link rel="stylesheet" href="/direct/css/index.css"> |
|
| 24 |
+ <link rel="stylesheet" href="/direct/css/nice-select.css"> |
|
| 25 |
+ <!--[if IE]> |
|
| 26 |
+ <link rel="stylesheet" type="text/css" href="/direct/css/ie_popup.css"/> |
|
| 27 | 27 |
<![endif]--> |
| 28 |
- <script src="/direct/js/jquery-1.11.3.min.js"></script> |
|
| 29 |
- <script src="/direct/js/jquery-ui.min.js"></script> |
|
| 30 |
- <script src="/direct/js/jquery.nice-select.js"></script> |
|
| 31 |
- <script src="/direct/js/script.js"></script> |
|
| 32 |
- <script src="/direct/js/popup_open.js"></script> |
|
| 33 |
- <script type="text/javascript" src="<c:url value='/js/EgovCalPopup.js' />"></script> |
|
| 34 |
- <script> |
|
| 35 |
- $(document).ready(function() {
|
|
| 36 |
- $('select').niceSelect();
|
|
| 37 |
- }); |
|
| 38 |
- |
|
| 39 |
- // 초기화 |
|
| 40 |
- function fn_clean(){
|
|
| 41 |
- $('#searchKeyword').val(''); // 검색어
|
|
| 42 |
- $('#ntceBgndeYYYMMDD').val(''); // 시작일자
|
|
| 43 |
- $('#ntceEnddeYYYMMDD').val(''); // 종료일자
|
|
| 44 |
- } |
|
| 45 |
- |
|
| 46 |
- //검색 |
|
| 47 |
- function fn_search(){
|
|
| 48 |
- linkPage(1); |
|
| 49 |
- } |
|
| 50 |
- |
|
| 51 |
- // 페이지 이동 |
|
| 52 |
- function linkPage(pageNo){
|
|
| 53 |
- var searchForm = document.searchForm ; |
|
| 54 |
- searchForm.pageIndex.value = pageNo ; |
|
| 55 |
- searchForm.searchStartDate.value = $('#ntceBgndeYYYMMDD').val();
|
|
| 56 |
- searchForm.searchEndDate.value = $('#ntceEnddeYYYMMDD').val();
|
|
| 57 |
- searchForm.searchKeyword.value = $('#searchKeyword').val();
|
|
| 58 |
- searchForm.submit(); |
|
| 59 |
- } |
|
| 60 |
- |
|
| 61 |
- // 상세보기 |
|
| 62 |
- function fn_modify(id){
|
|
| 63 |
- |
|
| 64 |
- var docWidth = screen.availWidth; |
|
| 65 |
- var docHeight = screen.availHeight; |
|
| 28 |
+ <script src="/direct/js/jquery-1.11.3.min.js"></script> |
|
| 29 |
+ <script src="/direct/js/jquery-ui.min.js"></script> |
|
| 30 |
+ <script src="/direct/js/jquery.nice-select.js"></script> |
|
| 31 |
+ <script src="/direct/js/script.js"></script> |
|
| 32 |
+ <script src="/direct/js/popup_open.js"></script> |
|
| 33 |
+ <script type="text/javascript" src="<c:url value='/js/EgovCalPopup.js' />"></script> |
|
| 34 |
+ <script> |
|
| 35 |
+ $(document).ready(function () {
|
|
| 36 |
+ $('select').niceSelect();
|
|
| 37 |
+ }); |
|
| 66 | 38 |
|
| 67 |
- var popupX = (docWidth/2) - (1366/2); |
|
| 68 |
- var popupY = (docHeight/2) - (786/2); |
|
| 69 |
- |
|
| 70 |
- var ruleUrl = $('#ruleUrl').val();
|
|
| 71 |
- ruleUrl = ruleUrl+id; |
|
| 72 |
- window.open(ruleUrl, "gamsaViewOpener", "width=1366, height=786, left="+popupX+", top="+popupY,"toolbar=0","location=no", "directories=0", "status=0", "menubar=0"); |
|
| 73 |
- } |
|
| 74 |
- |
|
| 75 |
- </script> |
|
| 39 |
+ // 초기화 |
|
| 40 |
+ function fn_clean() {
|
|
| 41 |
+ $('#searchKeyword').val(''); // 검색어
|
|
| 42 |
+ $('#ntceBgndeYYYMMDD').val(''); // 시작일자
|
|
| 43 |
+ $('#ntceEnddeYYYMMDD').val(''); // 종료일자
|
|
| 44 |
+ } |
|
| 45 |
+ |
|
| 46 |
+ //검색 |
|
| 47 |
+ function fn_search() {
|
|
| 48 |
+ linkPage(1); |
|
| 49 |
+ } |
|
| 50 |
+ |
|
| 51 |
+ // 페이지 이동 |
|
| 52 |
+ function linkPage(pageNo) {
|
|
| 53 |
+ var searchForm = document.searchForm; |
|
| 54 |
+ searchForm.pageIndex.value = pageNo; |
|
| 55 |
+ searchForm.searchStartDate.value = $('#ntceBgndeYYYMMDD').val();
|
|
| 56 |
+ searchForm.searchEndDate.value = $('#ntceEnddeYYYMMDD').val();
|
|
| 57 |
+ searchForm.searchKeyword.value = $('#searchKeyword').val();
|
|
| 58 |
+ searchForm.submit(); |
|
| 59 |
+ } |
|
| 60 |
+ |
|
| 61 |
+ // 상세보기 |
|
| 62 |
+ function fn_modify(id) {
|
|
| 63 |
+ |
|
| 64 |
+ var docWidth = screen.availWidth; |
|
| 65 |
+ var docHeight = screen.availHeight; |
|
| 66 |
+ |
|
| 67 |
+ var popupX = (docWidth / 2) - (1366 / 2); |
|
| 68 |
+ var popupY = (docHeight / 2) - (786 / 2); |
|
| 69 |
+ |
|
| 70 |
+ var ruleUrl = $('#ruleUrl').val();
|
|
| 71 |
+ ruleUrl = ruleUrl + id; |
|
| 72 |
+ window.open(ruleUrl, "gamsaViewOpener", "width=1366, height=786, left=" + popupX + ", top=" + popupY, "toolbar=0", "location=no", "directories=0", "status=0", "menubar=0"); |
|
| 73 |
+ } |
|
| 74 |
+ |
|
| 75 |
+ </script> |
|
| 76 | 76 |
</head> |
| 77 | 77 |
|
| 78 | 78 |
<body> |
... | ... | @@ -158,108 +158,89 @@ |
| 158 | 158 |
</div> |
| 159 | 159 |
</div> |
| 160 | 160 |
|
| 161 |
- <div class="list_tab_menu_wrap"> |
|
| 162 |
- <ul class="nav list_tab_menu"> |
|
| 163 |
- <li class="list_tab_menu_on"><a href="#">전체</a></li> |
|
| 164 |
- <li><a href="">법령</a></li> |
|
| 165 |
- <li><a href="">고시</a></li> |
|
| 166 |
- <li><a href="">훈령·예규</a></li> |
|
| 167 |
- <li><a href="">지침</a></li> |
|
| 168 |
- <li><a href="">조례</a></li> |
|
| 169 |
- <li><a href="">규정</a></li> |
|
| 170 |
- <li><a href="">기타</a></li> |
|
| 171 |
- </ul> |
|
| 161 |
+ <div class="list_tab_menu_wrap"> |
|
| 162 |
+ <ul class="nav list_tab_menu"> |
|
| 163 |
+ <li class="list_tab_menu_on"><a href="#">전체</a></li> |
|
| 164 |
+ <li><a href="">법령</a></li> |
|
| 165 |
+ <li><a href="">고시</a></li> |
|
| 166 |
+ <li><a href="">훈령·예규</a></li> |
|
| 167 |
+ <li><a href="">지침</a></li> |
|
| 168 |
+ <li><a href="">조례</a></li> |
|
| 169 |
+ <li><a href="">규정</a></li> |
|
| 170 |
+ <li><a href="">기타</a></li> |
|
| 171 |
+ </ul> |
|
| 172 | 172 |
|
| 173 |
- <div class="list_info"> |
|
| 174 |
- <div class="all_list_number">총 |
|
| 175 |
- <span class="all_number"><c:out value="${paginationInfo.totalRecordCount}"/></span>건
|
|
| 176 |
- </div> |
|
| 177 |
- </div> |
|
| 178 |
- <div class="list_wrap business_index security_index"> |
|
| 179 |
- <table> |
|
| 180 |
- <thead> |
|
| 181 |
- <tr> |
|
| 182 |
- <th> |
|
| 183 |
- <input type="checkbox" id="all_check"> |
|
| 184 |
- <label for="all_check"></label> |
|
| 185 |
- </th> |
|
| 186 |
- <th>번호</th> |
|
| 187 |
- <th>구분 |
|
| 188 |
- <div class="sort"> |
|
| 189 |
- <div class="sort_btn"><img src="/direct/img/sort_up_img.png" alt=""></div> |
|
| 190 |
- </div> |
|
| 191 |
- </th> |
|
| 192 |
- <th>공포일자 |
|
| 193 |
- <div class="sort"> |
|
| 194 |
- <div class="sort_btn"><img src="/direct/img/sort_up_img.png" alt=""></div> |
|
| 195 |
- </div> |
|
| 196 |
- </th> |
|
| 197 |
- <th>공포번호 |
|
| 198 |
- <div class="sort"> |
|
| 199 |
- <div class="sort_btn"><img src="/direct/img/sort_up_img.png" alt=""></div> |
|
| 200 |
- </div> |
|
| 201 |
- </th> |
|
| 202 |
- <th class="legal_name">법·규정명 |
|
| 203 |
- <div class="sort"> |
|
| 204 |
- <div class="sort_btn"><img src="/direct/img/sort_up_img.png" alt=""></div> |
|
| 205 |
- </div> |
|
| 206 |
- </th> |
|
| 207 |
- </tr> |
|
| 208 |
- </thead> |
|
| 209 |
- <tbody> |
|
| 210 |
- <c:forEach var="ruleVOInfo" items="${ruleVOList}" varStatus="status">
|
|
| 211 |
- <tr> |
|
| 212 |
- <td> |
|
| 213 |
- <input type="checkbox" id="check"> |
|
| 214 |
- <label for="check"></label> |
|
| 215 |
- </td> |
|
| 216 |
- <td> |
|
| 217 |
- |
|
| 218 |
- </td> |
|
| 219 |
- <td> |
|
| 220 |
- <c:out value="${ruleVOInfo.ruleDivision}"/>
|
|
| 221 |
- </td> |
|
| 222 |
- <td> |
|
| 223 |
- <c:out value="${ruleVOInfo.ruleDate}"/>
|
|
| 224 |
- </td> |
|
| 225 |
- <td> |
|
| 226 |
- <c:out value="${ruleVOInfo.ruleNum}"/>
|
|
| 227 |
- </td> |
|
| 228 |
- <td class="legal_name"> |
|
| 229 |
- <a href="#" onclick="javascript:fn_modify('${ruleVOInfo.ruleDetailUrl}'); return false;">
|
|
| 230 |
- ${ruleVOInfo.ruleName}
|
|
| 231 |
- </a> |
|
| 232 |
- </td> |
|
| 233 |
- </tr> |
|
| 234 |
- </c:forEach> |
|
| 235 |
- </tbody> |
|
| 236 |
- </table> |
|
| 237 |
- </div> |
|
| 238 |
- <div class="page"> |
|
| 239 |
- <ul> |
|
| 240 |
-<!-- <li class="page_prev"> --> |
|
| 241 |
-<!-- <img src="/direct/img/page_before.png" alt=""> --> |
|
| 242 |
-<!-- </li> --> |
|
| 243 |
-<!-- <li>1</li> --> |
|
| 244 |
-<!-- <li>2</li> --> |
|
| 245 |
-<!-- <li>3</li> --> |
|
| 246 |
-<!-- <li>4</li> --> |
|
| 247 |
-<!-- <li class="page_next"> --> |
|
| 248 |
-<!-- <img src="/direct/img/page_next.png" alt=""> --> |
|
| 249 |
-<!-- </li> --> |
|
| 250 |
- <ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
|
| 251 |
- </ul> |
|
| 252 |
- </div> |
|
| 253 |
- </div> |
|
| 254 |
- </div> |
|
| 255 |
- </form> |
|
| 256 |
- <form name="searchForm" method="post" action="<c:url value='/uss/itsm/security/selectRuleList.do'/>"> |
|
| 257 |
- <input name="pageIndex" type="hidden" value="1" /> |
|
| 258 |
- <input name="searchKeyword" type="hidden" /> |
|
| 259 |
- <input name="searchStartDate" type="hidden" /> |
|
| 260 |
- <input name="searchEndDate" type="hidden" /> |
|
| 261 |
- <input name="pageUnit" type="hidden" value="10" /> |
|
| 262 |
- </form> |
|
| 173 |
+ <div class="list_info"> |
|
| 174 |
+ <div class="all_list_number">총 |
|
| 175 |
+ <span class="all_number"><c:out value="${paginationInfo.totalRecordCount}"/></span>건
|
|
| 176 |
+ </div> |
|
| 177 |
+ </div> |
|
| 178 |
+ <div class="list_wrap business_index security_index"> |
|
| 179 |
+ <table> |
|
| 180 |
+ <thead> |
|
| 181 |
+ <tr> |
|
| 182 |
+ <th>번호</th> |
|
| 183 |
+ <th>구분 |
|
| 184 |
+ <div class="sort"> |
|
| 185 |
+ <div class="sort_btn"><img src="/direct/img/sort_up_img.png" alt=""></div> |
|
| 186 |
+ </div> |
|
| 187 |
+ </th> |
|
| 188 |
+ <th>공포일자 |
|
| 189 |
+ <div class="sort"> |
|
| 190 |
+ <div class="sort_btn"><img src="/direct/img/sort_up_img.png" alt=""></div> |
|
| 191 |
+ </div> |
|
| 192 |
+ </th> |
|
| 193 |
+ <th>공포번호 |
|
| 194 |
+ <div class="sort"> |
|
| 195 |
+ <div class="sort_btn"><img src="/direct/img/sort_up_img.png" alt=""></div> |
|
| 196 |
+ </div> |
|
| 197 |
+ </th> |
|
| 198 |
+ <th class="legal_name">법·규정명 |
|
| 199 |
+ <div class="sort"> |
|
| 200 |
+ <div class="sort_btn"><img src="/direct/img/sort_up_img.png" alt=""></div> |
|
| 201 |
+ </div> |
|
| 202 |
+ </th> |
|
| 203 |
+ </tr> |
|
| 204 |
+ </thead> |
|
| 205 |
+ <tbody> |
|
| 206 |
+ <c:forEach var="ruleVOInfo" items="${ruleVOList}" varStatus="status">
|
|
| 207 |
+ <tr> |
|
| 208 |
+ <td><c:out value="${(searchVO.pageIndex - 1) * searchVO.pageSize + status.count}"/></td>
|
|
| 209 |
+ <td> |
|
| 210 |
+ <c:out value="${ruleVOInfo.ruleDivision}"/>
|
|
| 211 |
+ </td> |
|
| 212 |
+ <td> |
|
| 213 |
+ <c:out value="${ruleVOInfo.ruleDate}"/>
|
|
| 214 |
+ </td> |
|
| 215 |
+ <td> |
|
| 216 |
+ <c:out value="${ruleVOInfo.ruleNum}"/>
|
|
| 217 |
+ </td> |
|
| 218 |
+ <td class="legal_name"> |
|
| 219 |
+ <a href="#" |
|
| 220 |
+ onclick="javascript:fn_modify('${ruleVOInfo.ruleDetailUrl}'); return false;">
|
|
| 221 |
+ ${ruleVOInfo.ruleName}
|
|
| 222 |
+ </a> |
|
| 223 |
+ </td> |
|
| 224 |
+ </tr> |
|
| 225 |
+ </c:forEach> |
|
| 226 |
+ </tbody> |
|
| 227 |
+ </table> |
|
| 228 |
+ </div> |
|
| 229 |
+ <div class="page"> |
|
| 230 |
+ <ul> |
|
| 231 |
+ <ui:pagination paginationInfo="${paginationInfo}" type="image" jsFunction="linkPage"/>
|
|
| 232 |
+ </ul> |
|
| 233 |
+ </div> |
|
| 234 |
+ </div> |
|
| 235 |
+ </div> |
|
| 236 |
+</form> |
|
| 237 |
+<form name="searchForm" method="post" action="<c:url value='/uss/itsm/security/selectRuleList.do'/>"> |
|
| 238 |
+ <input name="pageIndex" type="hidden" value="1"/> |
|
| 239 |
+ <input name="searchKeyword" type="hidden"/> |
|
| 240 |
+ <input name="searchStartDate" type="hidden"/> |
|
| 241 |
+ <input name="searchEndDate" type="hidden"/> |
|
| 242 |
+ <input name="pageUnit" type="hidden" value="10"/> |
|
| 243 |
+</form> |
|
| 263 | 244 |
</body> |
| 264 | 245 |
|
| 265 | 246 |
</html>(No newline at end of file) |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?