대출,열람요청,관심자료 커밋
This commit is contained in:
parent
0743bcc5fb
commit
df2471735b
@ -33,5 +33,7 @@
|
|||||||
<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
|
<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
|
||||||
</attributes>
|
</attributes>
|
||||||
</classpathentry>
|
</classpathentry>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v8.5"/>
|
||||||
<classpathentry kind="output" path="target/classes"/>
|
<classpathentry kind="output" path="target/classes"/>
|
||||||
</classpath>
|
</classpath>
|
||||||
|
|||||||
98
data/dataxml/uac.service.col.interests.list_GET.xml
Normal file
98
data/dataxml/uac.service.col.interests.list_GET.xml
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<!-- uac.service.col.interests.list_GET.xml -->
|
||||||
|
<result>
|
||||||
|
<page>1</page>
|
||||||
|
<totPages>15</totPages>
|
||||||
|
<records>125</records>
|
||||||
|
<results>
|
||||||
|
<articleNo>1</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>2</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>3</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>4</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>5</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>6</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>7</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>8</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>9</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>10</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
</result>
|
||||||
|
|
||||||
97
data/dataxml/uac.service.col.listItems.list_GET.xml
Normal file
97
data/dataxml/uac.service.col.listItems.list_GET.xml
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<!-- uac.service.col.listItems.list_GET.xml -->
|
||||||
|
<result>
|
||||||
|
<page>1</page>
|
||||||
|
<totPages>15</totPages>
|
||||||
|
<records>125</records>
|
||||||
|
<results>
|
||||||
|
<articleNo>1</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>2</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>3</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>4</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>5</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>6</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>7</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>8</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>9</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>10</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
</result>
|
||||||
45
data/dataxml/uac.service.col.listItems_GET.xml
Normal file
45
data/dataxml/uac.service.col.listItems_GET.xml
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<!-- uac.service.rent.read_GET.xml -->
|
||||||
|
<result>
|
||||||
|
<!-- 상세내용 -->
|
||||||
|
<articleNo>5</articleNo>
|
||||||
|
<articleType>101</articleType>
|
||||||
|
<articleTypeName>Q&A</articleTypeName>
|
||||||
|
<title>공지사항 테스트</title>
|
||||||
|
<articlePassword>9uCh4qxBlFqap/+KiqoM68EqO8yYGpKa1c+BCgkOEa4=</articlePassword> <!-- 111 -->
|
||||||
|
<!-- <articlePassword>kac/2AarLABcE7TcGRMKiE6Qneo/ctRuMCZv4aH1iNg=</articlePassword> --> <!-- 555 -->
|
||||||
|
<readCount>15</readCount>
|
||||||
|
<regDate>2021-07-19</regDate>
|
||||||
|
<regUserName>김아무</regUserName>
|
||||||
|
<repStatus>답변완료</repStatus>
|
||||||
|
<email>myid@digitalship.co.kr</email>
|
||||||
|
<contentQeust>질문이 있습니다.</contentQeust>
|
||||||
|
<contentQeustFile>111111=화면캡쳐.jpg;222222=화면캡쳐2.jpg;</contentQeustFile>
|
||||||
|
<contentReply>이렇게 답변 드립니다.</contentReply>
|
||||||
|
<contentReplyFile>333333=결과확인.jpg;</contentReplyFile>
|
||||||
|
|
||||||
|
<!-- 이전글, 다음글 -->
|
||||||
|
<page>1</page>
|
||||||
|
<totPages>1</totPages>
|
||||||
|
<records>2</records>
|
||||||
|
<results>
|
||||||
|
<articleNo>4</articleNo>
|
||||||
|
<articleType>101</articleType>
|
||||||
|
<articleTypeName>Q&A</articleTypeName>
|
||||||
|
<title>이전의 글제목입니다.</title>
|
||||||
|
<regDate>2021-07-19</regDate>
|
||||||
|
<regUserName>김아무</regUserName>
|
||||||
|
<repStatus>답변완료</repStatus>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>6</articleNo>
|
||||||
|
<articleType>102</articleType>
|
||||||
|
<articleTypeName>Q&A</articleTypeName>
|
||||||
|
<title>다음의 글제목입니다.</title>
|
||||||
|
<regDate>2021-07-20</regDate>
|
||||||
|
<regUserName>홍아무</regUserName>
|
||||||
|
<repStatus>답변완료</repStatus>
|
||||||
|
</results>
|
||||||
|
|
||||||
|
</result>
|
||||||
|
|
||||||
98
data/dataxml/uac.service.col.rent.list_GET.xml
Normal file
98
data/dataxml/uac.service.col.rent.list_GET.xml
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<!-- uac.service.col.rent.read.list_GET.xml -->
|
||||||
|
<result>
|
||||||
|
<page>1</page>
|
||||||
|
<totPages>15</totPages>
|
||||||
|
<records>125</records>
|
||||||
|
<results>
|
||||||
|
<articleNo>1</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>2</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>3</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>4</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>5</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>6</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>7</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>8</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>9</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>10</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
</result>
|
||||||
|
|
||||||
98
data/dataxml/uac.service.col.rent.postpone.list_GET.xml
Normal file
98
data/dataxml/uac.service.col.rent.postpone.list_GET.xml
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<!-- uac.service.col.rent.read.list_GET.xml -->
|
||||||
|
<result>
|
||||||
|
<page>1</page>
|
||||||
|
<totPages>15</totPages>
|
||||||
|
<records>125</records>
|
||||||
|
<results>
|
||||||
|
<articleNo>1</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>2</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>3</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>4</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>5</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>6</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>7</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>8</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>9</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>10</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<rentDate>2021-07-27</rentDate>
|
||||||
|
<retDueDate>2021-08-31</retDueDate>
|
||||||
|
</results>
|
||||||
|
</result>
|
||||||
|
|
||||||
108
data/dataxml/uac.service.col.rent.read.list_GET.xml
Normal file
108
data/dataxml/uac.service.col.rent.read.list_GET.xml
Normal file
@ -0,0 +1,108 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<!-- uac.service.col.rent.read.list_GET.xml -->
|
||||||
|
<result>
|
||||||
|
<page>1</page>
|
||||||
|
<totPages>15</totPages>
|
||||||
|
<records>125</records>
|
||||||
|
<results>
|
||||||
|
<articleNo>1</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<reqDate>2021-07-27</reqDate>
|
||||||
|
<state>요청중</state>
|
||||||
|
<readingPeriod>2021-08-31~2021-09-31</readingPeriod>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>2</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<reqDate>2021-07-27</reqDate>
|
||||||
|
<state>열람허용</state>
|
||||||
|
<readingPeriod>2021-08-31~2021-09-31</readingPeriod>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>3</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<reqDate>2021-07-27</reqDate>
|
||||||
|
<state>열람중</state>
|
||||||
|
<readingPeriod>2021-08-31~2021-09-31</readingPeriod>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>4</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<reqDate>2021-07-27</reqDate>
|
||||||
|
<state>요청중</state>
|
||||||
|
<readingPeriod>2021-08-31~2021-09-31</readingPeriod>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>5</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<reqDate>2021-07-27</reqDate>
|
||||||
|
<state>요청중</state>
|
||||||
|
<readingPeriod>2021-08-31~2021-09-31</readingPeriod>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>6</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<reqDate>2021-07-27</reqDate>
|
||||||
|
<state>요청중</state>
|
||||||
|
<readingPeriod>2021-08-31~2021-09-31</readingPeriod>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>7</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<reqDate>2021-07-27</reqDate>
|
||||||
|
<state>요청중</state>
|
||||||
|
<readingPeriod>2021-08-31~2021-09-31</readingPeriod>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>8</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<reqDate>2021-07-27</reqDate>
|
||||||
|
<state>요청중</state>
|
||||||
|
<readingPeriod>2021-08-31~2021-09-31</readingPeriod>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>9</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<reqDate>2021-07-27</reqDate>
|
||||||
|
<state>요청중</state>
|
||||||
|
<readingPeriod>2021-08-31~2021-09-31</readingPeriod>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>10</articleNo>
|
||||||
|
<rentItem>경성기담</rentItem>
|
||||||
|
<ctrlNum>2021-000084</ctrlNum>
|
||||||
|
<author>홍길동</author>
|
||||||
|
<publisher>살림</publisher>
|
||||||
|
<reqDate>2021-07-27</reqDate>
|
||||||
|
<state>요청중</state>
|
||||||
|
<readingPeriod>2021-08-31~2021-09-31</readingPeriod>
|
||||||
|
</results>
|
||||||
|
</result>
|
||||||
|
|
||||||
45
data/dataxml/uac.service.col.rent.read_GET.xml
Normal file
45
data/dataxml/uac.service.col.rent.read_GET.xml
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<!-- uac.service.rent.read_GET.xml -->
|
||||||
|
<result>
|
||||||
|
<!-- 상세내용 -->
|
||||||
|
<articleNo>5</articleNo>
|
||||||
|
<articleType>101</articleType>
|
||||||
|
<articleTypeName>Q&A</articleTypeName>
|
||||||
|
<title>공지사항 테스트</title>
|
||||||
|
<articlePassword>9uCh4qxBlFqap/+KiqoM68EqO8yYGpKa1c+BCgkOEa4=</articlePassword> <!-- 111 -->
|
||||||
|
<!-- <articlePassword>kac/2AarLABcE7TcGRMKiE6Qneo/ctRuMCZv4aH1iNg=</articlePassword> --> <!-- 555 -->
|
||||||
|
<readCount>15</readCount>
|
||||||
|
<regDate>2021-07-19</regDate>
|
||||||
|
<regUserName>김아무</regUserName>
|
||||||
|
<repStatus>답변완료</repStatus>
|
||||||
|
<email>myid@digitalship.co.kr</email>
|
||||||
|
<contentQeust>질문이 있습니다.</contentQeust>
|
||||||
|
<contentQeustFile>111111=화면캡쳐.jpg;222222=화면캡쳐2.jpg;</contentQeustFile>
|
||||||
|
<contentReply>이렇게 답변 드립니다.</contentReply>
|
||||||
|
<contentReplyFile>333333=결과확인.jpg;</contentReplyFile>
|
||||||
|
|
||||||
|
<!-- 이전글, 다음글 -->
|
||||||
|
<page>1</page>
|
||||||
|
<totPages>1</totPages>
|
||||||
|
<records>2</records>
|
||||||
|
<results>
|
||||||
|
<articleNo>4</articleNo>
|
||||||
|
<articleType>101</articleType>
|
||||||
|
<articleTypeName>Q&A</articleTypeName>
|
||||||
|
<title>이전의 글제목입니다.</title>
|
||||||
|
<regDate>2021-07-19</regDate>
|
||||||
|
<regUserName>김아무</regUserName>
|
||||||
|
<repStatus>답변완료</repStatus>
|
||||||
|
</results>
|
||||||
|
<results>
|
||||||
|
<articleNo>6</articleNo>
|
||||||
|
<articleType>102</articleType>
|
||||||
|
<articleTypeName>Q&A</articleTypeName>
|
||||||
|
<title>다음의 글제목입니다.</title>
|
||||||
|
<regDate>2021-07-20</regDate>
|
||||||
|
<regUserName>홍아무</regUserName>
|
||||||
|
<repStatus>답변완료</repStatus>
|
||||||
|
</results>
|
||||||
|
|
||||||
|
</result>
|
||||||
|
|
||||||
@ -6,12 +6,36 @@ import nlib.restful.service.DataApiResVO;
|
|||||||
|
|
||||||
public interface RentService
|
public interface RentService
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* 대출 목록 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public DataApiResVO listRentItems(DataApiReqVO reqVO);
|
public DataApiResVO listRentItems(DataApiReqVO reqVO);
|
||||||
|
|
||||||
public DataApiResVO postponeReturnDate(DataApiReqVO reqVO);
|
/**
|
||||||
|
* 반납 연기 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public DataApiResVO listPostpones(DataApiReqVO reqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 대출 취소 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public DataApiResVO listCanceledRentItems(DataApiReqVO reqVO);
|
public DataApiResVO listCanceledRentItems(DataApiReqVO reqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 대출 예약 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public DataApiResVO listReservations(DataApiReqVO reqVO);
|
public DataApiResVO listReservations(DataApiReqVO reqVO);
|
||||||
|
|
||||||
public DataApiResVO cancelReservations(DataApiReqVO reqVO);
|
public DataApiResVO cancelReservations(DataApiReqVO reqVO);
|
||||||
|
|||||||
@ -6,16 +6,29 @@ import org.slf4j.LoggerFactory;
|
|||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
import nlib.bbs.service.impl.BoardDAO;
|
import nlib.bbs.service.impl.BoardDAO;
|
||||||
|
import nlib.restful.DataApi;
|
||||||
import nlib.restful.service.DataApiReqVO;
|
import nlib.restful.service.DataApiReqVO;
|
||||||
import nlib.restful.service.DataApiResVO;
|
import nlib.restful.service.DataApiResVO;
|
||||||
|
|
||||||
@Repository("collectionDAO")
|
@Repository("collectionDAO")
|
||||||
public class CollectionDAO
|
public class CollectionDAO extends DataApi
|
||||||
{
|
{
|
||||||
private static final Logger log = LoggerFactory.getLogger(CollectionDAO.class);
|
private static final Logger log = LoggerFactory.getLogger(CollectionDAO.class);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 주 자원의 URI
|
||||||
|
*/
|
||||||
|
public static final String RESOURCE_URI = "/uac/service/col";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 소장 자료 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public DataApiResVO listItems(DataApiReqVO reqVO) {
|
public DataApiResVO listItems(DataApiReqVO reqVO) {
|
||||||
return null;
|
reqVO.setReqUrl(RESOURCE_URI + "/listItems/list");
|
||||||
|
return get(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
public DataApiResVO insertInterest(DataApiReqVO reqVO) {
|
public DataApiResVO insertInterest(DataApiReqVO reqVO) {
|
||||||
@ -33,13 +46,26 @@ public class CollectionDAO
|
|||||||
public DataApiResVO requestViewingItem(DataApiReqVO reqVO) {
|
public DataApiResVO requestViewingItem(DataApiReqVO reqVO) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 소장자료를 상세 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public DataApiResVO selectItemInfo(DataApiReqVO reqVO) {
|
public DataApiResVO selectItemInfo(DataApiReqVO reqVO) {
|
||||||
return null;
|
reqVO.setReqUrl(RESOURCE_URI + "/listItems");
|
||||||
|
return get(reqVO);
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* 관심 자료 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public DataApiResVO listInterests(DataApiReqVO reqVO) {
|
public DataApiResVO listInterests(DataApiReqVO reqVO) {
|
||||||
return null;
|
reqVO.setReqUrl(RESOURCE_URI + "/interests/list");
|
||||||
|
return get(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
public DataApiResVO deleteInterest(DataApiReqVO reqVO) {
|
public DataApiResVO deleteInterest(DataApiReqVO reqVO) {
|
||||||
|
|||||||
@ -19,9 +19,14 @@ public class CollectionServiceImpl implements CollectionService
|
|||||||
@Resource(name = "collectionDAO")
|
@Resource(name = "collectionDAO")
|
||||||
private CollectionDAO collectionDAO;
|
private CollectionDAO collectionDAO;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 소장자료 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* (non-Javadoc)
|
||||||
|
* @see nlib.col.service.CollectionService#listItems(nlib.restful.service.DataApiReqVO)
|
||||||
|
*/
|
||||||
public DataApiResVO listItems(DataApiReqVO reqVO) {
|
public DataApiResVO listItems(DataApiReqVO reqVO) {
|
||||||
return null;
|
return collectionDAO.listItems(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
public DataApiResVO insertInterest(DataApiReqVO reqVO) {
|
public DataApiResVO insertInterest(DataApiReqVO reqVO) {
|
||||||
@ -39,13 +44,23 @@ public class CollectionServiceImpl implements CollectionService
|
|||||||
public DataApiResVO requestViewingItem(DataApiReqVO reqVO) {
|
public DataApiResVO requestViewingItem(DataApiReqVO reqVO) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
|
* 소장자료를 상세 조회한다.
|
||||||
|
*
|
||||||
|
* (non-Javadoc)
|
||||||
|
* @see nlib.col.service.CollectionService#selectItemInfo(nlib.restful.service.DataApiReqVO)
|
||||||
|
*/
|
||||||
public DataApiResVO selectItemInfo(DataApiReqVO reqVO) {
|
public DataApiResVO selectItemInfo(DataApiReqVO reqVO) {
|
||||||
return null;
|
return collectionDAO.selectItemInfo(reqVO);
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
|
* 관심 자료 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* (non-Javadoc)
|
||||||
|
* @see nlib.col.service.CollectionService#listInterests(nlib.restful.service.DataApiReqVO)
|
||||||
|
*/
|
||||||
public DataApiResVO listInterests(DataApiReqVO reqVO) {
|
public DataApiResVO listInterests(DataApiReqVO reqVO) {
|
||||||
return null;
|
return collectionDAO.listInterests(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
public DataApiResVO deleteInterest(DataApiReqVO reqVO) {
|
public DataApiResVO deleteInterest(DataApiReqVO reqVO) {
|
||||||
|
|||||||
@ -5,40 +5,84 @@ import org.slf4j.Logger;
|
|||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
import nlib.restful.DataApi;
|
||||||
import nlib.restful.service.DataApiReqVO;
|
import nlib.restful.service.DataApiReqVO;
|
||||||
import nlib.restful.service.DataApiResVO;
|
import nlib.restful.service.DataApiResVO;
|
||||||
|
|
||||||
@Repository("rentDAO")
|
@Repository("rentDAO")
|
||||||
public class RentDAO
|
public class RentDAO extends DataApi
|
||||||
{
|
{
|
||||||
private static final Logger log = LoggerFactory.getLogger(RentDAO.class);
|
private static final Logger log = LoggerFactory.getLogger(RentDAO.class);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 주 자원의 URI
|
||||||
|
*/
|
||||||
|
public static final String RESOURCE_URI = "/uac/service/col/rent";
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 대출 목록 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public DataApiResVO listRentItems(DataApiReqVO reqVO) {
|
public DataApiResVO listRentItems(DataApiReqVO reqVO) {
|
||||||
return null;
|
reqVO.setReqUrl(RESOURCE_URI + "/list");
|
||||||
|
return get(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
public DataApiResVO postponeReturnDate(DataApiReqVO reqVO) {
|
/**
|
||||||
return null;
|
* 반납 연기 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public DataApiResVO listPostpones(DataApiReqVO reqVO) {
|
||||||
|
reqVO.setReqUrl(RESOURCE_URI + "/list");
|
||||||
|
return get(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 대출 취소 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public DataApiResVO listCanceledRentItems(DataApiReqVO reqVO) {
|
public DataApiResVO listCanceledRentItems(DataApiReqVO reqVO) {
|
||||||
return null;
|
reqVO.setReqUrl(RESOURCE_URI + "/list");
|
||||||
|
return get(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 대출 예약 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public DataApiResVO listReservations(DataApiReqVO reqVO) {
|
public DataApiResVO listReservations(DataApiReqVO reqVO) {
|
||||||
return null;
|
reqVO.setReqUrl(RESOURCE_URI + "/list");
|
||||||
|
return get(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
public DataApiResVO cancelReservations(DataApiReqVO reqVO) {
|
public DataApiResVO cancelReservations(DataApiReqVO reqVO) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 열람 요청 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param reqVO
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public DataApiResVO listRequestsForViewingItem(DataApiReqVO reqVO) {
|
public DataApiResVO listRequestsForViewingItem(DataApiReqVO reqVO) {
|
||||||
return null;
|
reqVO.setReqUrl(RESOURCE_URI + "/read/list");
|
||||||
|
return get(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
public DataApiResVO selectRequestInfoForViewingItem(DataApiReqVO reqVO) {
|
public DataApiResVO selectRequestInfoForViewingItem(DataApiReqVO reqVO) {
|
||||||
return null;
|
reqVO.setReqUrl(RESOURCE_URI + "/read");
|
||||||
|
return get(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -19,34 +19,65 @@ public class RentServiceImpl implements RentService
|
|||||||
@Resource(name="rentDAO")
|
@Resource(name="rentDAO")
|
||||||
private RentDAO rentDAO;
|
private RentDAO rentDAO;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 대출 목록 조회한다.
|
||||||
|
*
|
||||||
|
* (non-Javadoc)
|
||||||
|
* @see nlib.col.service.RentService#listRentItems(nlib.restful.service.DataApiReqVO)
|
||||||
|
*/
|
||||||
public DataApiResVO listRentItems(DataApiReqVO reqVO) {
|
public DataApiResVO listRentItems(DataApiReqVO reqVO) {
|
||||||
return null;
|
return rentDAO.listRentItems(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
public DataApiResVO postponeReturnDate(DataApiReqVO reqVO) {
|
/*
|
||||||
return null;
|
* 반납 연기 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* (non-Javadoc)
|
||||||
|
* @see nlib.col.service.RentService#listPostpones(nlib.restful.service.DataApiReqVO)
|
||||||
|
*/
|
||||||
|
public DataApiResVO listPostpones(DataApiReqVO reqVO) {
|
||||||
|
return rentDAO.listPostpones(reqVO);
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
|
* 대출 취소 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* (non-Javadoc)
|
||||||
|
* @see nlib.col.service.RentService#listCanceledRentItems(nlib.restful.service.DataApiReqVO)
|
||||||
|
*/
|
||||||
public DataApiResVO listCanceledRentItems(DataApiReqVO reqVO) {
|
public DataApiResVO listCanceledRentItems(DataApiReqVO reqVO) {
|
||||||
return null;
|
return rentDAO.listCanceledRentItems(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 대출 예약 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* (non-Javadoc)
|
||||||
|
* @see nlib.col.service.RentService#listReservations(nlib.restful.service.DataApiReqVO)
|
||||||
|
*/
|
||||||
public DataApiResVO listReservations(DataApiReqVO reqVO) {
|
public DataApiResVO listReservations(DataApiReqVO reqVO) {
|
||||||
return null;
|
return rentDAO.listReservations(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
public DataApiResVO cancelReservations(DataApiReqVO reqVO) {
|
public DataApiResVO cancelReservations(DataApiReqVO reqVO) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 열람 요청 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* (non-Javadoc)
|
||||||
|
* @see nlib.col.service.RentService#listRequestsForViewingItem(nlib.restful.service.DataApiReqVO)
|
||||||
|
*/
|
||||||
public DataApiResVO listRequestsForViewingItem(DataApiReqVO reqVO) {
|
public DataApiResVO listRequestsForViewingItem(DataApiReqVO reqVO) {
|
||||||
return null;
|
return rentDAO.listRequestsForViewingItem(reqVO);
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
|
* 열람 요청 상세 조회한다.
|
||||||
|
*
|
||||||
|
* (non-Javadoc)
|
||||||
|
* @see nlib.col.service.RentService#listRequestsForViewingItem(nlib.restful.service.DataApiReqVO)
|
||||||
|
*/
|
||||||
public DataApiResVO selectRequestInfoForViewingItem(DataApiReqVO reqVO) {
|
public DataApiResVO selectRequestInfoForViewingItem(DataApiReqVO reqVO) {
|
||||||
return null;
|
return rentDAO.selectRequestInfoForViewingItem(reqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -1,28 +1,107 @@
|
|||||||
|
|
||||||
package nlib.col.web;
|
package nlib.col.web;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.http.ResponseEntity;
|
||||||
|
import org.springframework.security.core.Authentication;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
|
||||||
|
import nlib.cmm.NlibCommonController;
|
||||||
|
import nlib.cmm.service.CodeService;
|
||||||
|
import nlib.cmm.service.NlibProperty;
|
||||||
import nlib.col.service.CollectionService;
|
import nlib.col.service.CollectionService;
|
||||||
import nlib.col.service.impl.RentServiceImpl;
|
import nlib.restful.service.DataApiReqVO;
|
||||||
|
import nlib.restful.service.DataApiResVO;
|
||||||
|
import nlib.util.StringUtil;
|
||||||
|
|
||||||
@Controller
|
@Controller
|
||||||
public class CollectionController
|
public class CollectionController extends NlibCommonController
|
||||||
{
|
{
|
||||||
private static final Logger log = LoggerFactory.getLogger(CollectionController.class);
|
private static final Logger log = LoggerFactory.getLogger(CollectionController.class);
|
||||||
|
static final String DEFUALT_PAGE_SIZE = NlibProperty.getProperty("list.paging.page.size");
|
||||||
|
|
||||||
|
@Resource(name = "codeService")
|
||||||
|
private CodeService codeService;
|
||||||
|
|
||||||
@Resource(name="collectionService")
|
@Resource(name="collectionService")
|
||||||
private CollectionService collectionService;
|
private CollectionService collectionService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 소장자료 화면을 호출한다.
|
||||||
|
*
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping("/collection/listItems.do")
|
||||||
|
public String listItems(HttpServletRequest req, Authentication authentication, @RequestParam Map<String, String> paramMap, ModelMap model) {
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
public ModelMap listItems(HttpServletRequest req) {
|
// 페이징 사이즈 코드 목록 조회
|
||||||
return null;
|
DataApiReqVO reqVOforPageSize = new DataApiReqVO();
|
||||||
|
reqVOforPageSize.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVOforPageSize.setPageSize(0);
|
||||||
|
reqVOforPageSize.addInfoItem("codeUpperId", "PAGE_SIZE");
|
||||||
|
DataApiResVO resVOforPageSize = codeService.listCodes(reqVOforPageSize);
|
||||||
|
|
||||||
|
// 반환 정보
|
||||||
|
model.addAttribute("pageIndex" , pageIndex);
|
||||||
|
model.addAttribute("pageSize" , pageSize);
|
||||||
|
model.addAttribute("searchKeyword", searchKeyword);
|
||||||
|
model.addAttribute("pageSizeCodes", resVOforPageSize.getList());
|
||||||
|
return "nlib/collection/listItems";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 소장자료를 조회한다.
|
||||||
|
*
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping(value="/collection/listItemsAjax.do")
|
||||||
|
public ResponseEntity<String> listItemsAjax(HttpServletRequest req,
|
||||||
|
Authentication authentication, @RequestBody Map<String, String> paramMap) {
|
||||||
|
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// REQ VO 구성
|
||||||
|
//-------------------------------
|
||||||
|
DataApiReqVO reqVO = new DataApiReqVO();
|
||||||
|
reqVO.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVO.setPageIndex(pageIndex);
|
||||||
|
reqVO.setPageSize(pageSize);
|
||||||
|
reqVO.addInfoItem("searchKeyword", searchKeyword);
|
||||||
|
|
||||||
|
// 요청
|
||||||
|
DataApiResVO resVO = collectionService.listItems(reqVO);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// JSON변환 응답 처리
|
||||||
|
//-------------------------------
|
||||||
|
// JS-GRID 페이징 처리를 포함한 응답값 처리
|
||||||
|
// {data: [{...}],
|
||||||
|
// itemsCount: 255
|
||||||
|
// }
|
||||||
|
HashMap<String, Object> retMap = new HashMap<String, Object>();
|
||||||
|
retMap.put("data", resVO.getList());
|
||||||
|
retMap.put("itemsCount", resVO.getRecordTotCount());
|
||||||
|
|
||||||
|
return makeResponseEntityJson(retMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
public ModelMap insertInterest(HttpServletRequest req) {
|
public ModelMap insertInterest(HttpServletRequest req) {
|
||||||
@ -40,15 +119,120 @@ public class CollectionController
|
|||||||
public ModelMap requestViewingItem(HttpServletRequest req) {
|
public ModelMap requestViewingItem(HttpServletRequest req) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* 소장자료 상세 내용 조회한다.
|
||||||
|
*
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping("/collection/selectItemInfo.do")
|
||||||
|
public String selectItemInfo(HttpServletRequest req, Authentication authentication, @RequestParam Map<String, String> paramMap, ModelMap model) {
|
||||||
|
// 목록 이동시 전달할 매개변수
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = paramMap.get("pageIndex");
|
||||||
|
String pageSize = paramMap.get("pageSize");
|
||||||
|
String message = paramMap.get("message");
|
||||||
|
|
||||||
|
// 게시물 번호
|
||||||
|
String articleNo = paramMap.get("articleNo");
|
||||||
|
|
||||||
|
log.debug("selectQnA > pageIndex = " + pageIndex);
|
||||||
|
log.debug("selectQnA > pageSize = " + pageSize);
|
||||||
|
log.debug("selectQnA > searchKeyword = " + searchKeyword);
|
||||||
|
log.debug("selectQnA > articleNo = " + articleNo);
|
||||||
|
log.debug("selectQnA > message = " + message);
|
||||||
|
|
||||||
public ModelMap selectItemInfo(HttpServletRequest req) {
|
//-------------------------------
|
||||||
return null;
|
// REQ VO 구성
|
||||||
|
//-------------------------------
|
||||||
|
DataApiReqVO reqVO = new DataApiReqVO();
|
||||||
|
reqVO.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVO.setPageIndex(pageIndex);
|
||||||
|
reqVO.setPageSize(pageSize);
|
||||||
|
reqVO.addInfoItem("boardNo", "QNA"); // 게시판ID
|
||||||
|
reqVO.addInfoItem("articleNo", articleNo); // 게시물번호
|
||||||
|
|
||||||
|
// 요청
|
||||||
|
DataApiResVO resVO = collectionService.selectItemInfo(reqVO);
|
||||||
|
|
||||||
|
// 반환 정보
|
||||||
|
model.addAttribute("articleNo" , articleNo);
|
||||||
|
model.addAttribute("article" , resVO.getInfo()); // 게시물 상세
|
||||||
|
model.addAttribute("preArticle" , resVO.getList().get(0)); // 이전글 정보
|
||||||
|
model.addAttribute("nextArticle" , resVO.getList().get(1)); // 다음글 정보
|
||||||
|
model.addAttribute("message" , message);
|
||||||
|
model.addAttribute("pageIndex" , pageIndex);
|
||||||
|
model.addAttribute("pageSize" , pageSize);
|
||||||
|
model.addAttribute("searchKeyword", searchKeyword);
|
||||||
|
|
||||||
|
return "nlib/collection/selectItemInfo";
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 관심 자료 화면을 호출한다.
|
||||||
|
*
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping("/collection/listInterests.do")
|
||||||
|
public String listInterests(HttpServletRequest req, Authentication authentication, @RequestParam Map<String, String> paramMap, ModelMap model) {
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
// 페이징 사이즈 코드 목록 조회
|
||||||
|
DataApiReqVO reqVOforPageSize = new DataApiReqVO();
|
||||||
|
reqVOforPageSize.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVOforPageSize.setPageSize(0);
|
||||||
|
reqVOforPageSize.addInfoItem("codeUpperId", "PAGE_SIZE");
|
||||||
|
DataApiResVO resVOforPageSize = codeService.listCodes(reqVOforPageSize);
|
||||||
|
|
||||||
|
// 반환 정보
|
||||||
|
model.addAttribute("pageIndex" , pageIndex);
|
||||||
|
model.addAttribute("pageSize" , pageSize);
|
||||||
|
model.addAttribute("searchKeyword", searchKeyword);
|
||||||
|
model.addAttribute("pageSizeCodes", resVOforPageSize.getList());
|
||||||
|
return "nlib/collection/listInterests";
|
||||||
}
|
}
|
||||||
|
|
||||||
public ModelMap listInterests(HttpServletRequest req) {
|
/**
|
||||||
return null;
|
* 관심 자료를 조회한다.
|
||||||
}
|
*
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping(value="/collection/listInterestsAjax.do")
|
||||||
|
public ResponseEntity<String> listInterestsAjax(HttpServletRequest req,
|
||||||
|
Authentication authentication, @RequestBody Map<String, String> paramMap) {
|
||||||
|
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// REQ VO 구성
|
||||||
|
//-------------------------------
|
||||||
|
DataApiReqVO reqVO = new DataApiReqVO();
|
||||||
|
reqVO.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVO.setPageIndex(pageIndex);
|
||||||
|
reqVO.setPageSize(pageSize);
|
||||||
|
reqVO.addInfoItem("searchKeyword", searchKeyword);
|
||||||
|
|
||||||
|
// 요청
|
||||||
|
DataApiResVO resVO = collectionService.listInterests(reqVO);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// JSON변환 응답 처리
|
||||||
|
//-------------------------------
|
||||||
|
// JS-GRID 페이징 처리를 포함한 응답값 처리
|
||||||
|
// {data: [{...}],
|
||||||
|
// itemsCount: 255
|
||||||
|
// }
|
||||||
|
HashMap<String, Object> retMap = new HashMap<String, Object>();
|
||||||
|
retMap.put("data", resVO.getList());
|
||||||
|
retMap.put("itemsCount", resVO.getRecordTotCount());
|
||||||
|
|
||||||
|
return makeResponseEntityJson(retMap);
|
||||||
|
}
|
||||||
public ModelMap deleteInterest(HttpServletRequest req) {
|
public ModelMap deleteInterest(HttpServletRequest req) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,94 +1,447 @@
|
|||||||
|
|
||||||
package nlib.col.web;
|
package nlib.col.web;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import java.util.HashMap;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import java.util.Map;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
import javax.annotation.Resource;
|
||||||
import org.slf4j.LoggerFactory;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import org.springframework.stereotype.Controller;
|
|
||||||
import org.springframework.ui.ModelMap;
|
import org.slf4j.Logger;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.http.ResponseEntity;
|
||||||
import nlib.col.service.RentService;
|
import org.springframework.security.core.Authentication;
|
||||||
|
import org.springframework.stereotype.Controller;
|
||||||
/**
|
import org.springframework.ui.ModelMap;
|
||||||
* <pre>
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
* @Class Name : RentController.java
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
*
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
* @Description : 대출 Controller
|
|
||||||
*
|
import nlib.cmm.NlibCommonController;
|
||||||
*
|
import nlib.cmm.service.CodeService;
|
||||||
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
import nlib.cmm.service.NlibProperty;
|
||||||
*
|
import nlib.col.service.RentService;
|
||||||
* </pre>
|
import nlib.restful.service.DataApiReqVO;
|
||||||
*
|
import nlib.restful.service.DataApiResVO;
|
||||||
* @ ------------ -------- ---------------------------
|
import nlib.util.StringUtil;
|
||||||
* @ 수정일 수정자 수정내용
|
|
||||||
* @ ------------ -------- ---------------------------
|
/**
|
||||||
* @ 2021. 7. 21. JSYOO 최초 생성
|
* <pre>
|
||||||
*
|
* @Class Name : RentController.java
|
||||||
*
|
*
|
||||||
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
* @Description : 대출 Controller
|
||||||
* @since 2021. 7. 21.
|
*
|
||||||
* @version 1.0
|
*
|
||||||
*
|
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
||||||
*/
|
*
|
||||||
@Controller
|
* </pre>
|
||||||
public class RentController
|
*
|
||||||
{
|
* @ ------------ -------- ---------------------------
|
||||||
private static final Logger log = LoggerFactory.getLogger(RentController.class);
|
* @ 수정일 수정자 수정내용
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
@Resource(name = "rentService")
|
* @ 2021. 7. 21. JSYOO 최초 생성
|
||||||
private RentService rentService;
|
*
|
||||||
|
*
|
||||||
/** 대출 목록 화면을 호출한다.
|
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
||||||
* @param req
|
* @since 2021. 7. 21.
|
||||||
* @return
|
* @version 1.0
|
||||||
*/
|
*
|
||||||
@RequestMapping("/rent/listRentItems.do")
|
*/
|
||||||
public String listRentItems(HttpServletRequest req) {
|
@Controller
|
||||||
return "nlib/rent/listRentItems";
|
public class RentController extends NlibCommonController
|
||||||
}
|
{
|
||||||
|
private static final Logger log = LoggerFactory.getLogger(RentController.class);
|
||||||
/** 대출 취소 목록화면을 호출한다.
|
static final String DEFUALT_PAGE_SIZE = NlibProperty.getProperty("list.paging.page.size");
|
||||||
* @param req
|
|
||||||
* @return
|
@Resource(name = "rentService")
|
||||||
*/
|
private RentService rentService;
|
||||||
@RequestMapping("/rent/listCancelRentItems.do")
|
|
||||||
public String listCancelRentItems(HttpServletRequest req) {
|
@Resource(name = "codeService")
|
||||||
return "nlib/rent/listCancelRentItems";
|
private CodeService codeService;
|
||||||
}
|
|
||||||
|
|
||||||
|
/** 대출 목록 화면을 호출한다.
|
||||||
public ModelMap postponeReturnDate(HttpServletRequest req) {
|
* @param req
|
||||||
return null;
|
* @return
|
||||||
}
|
*/
|
||||||
|
@RequestMapping("/rent/listRentItems.do")
|
||||||
public ModelMap listCanceledRentItems(HttpServletRequest req) {
|
public String listRentItems(HttpServletRequest req, Authentication authentication, @RequestParam Map<String, String> paramMap, ModelMap model) {
|
||||||
return null;
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
}
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
/** 대출 예약 목록화면을 호출한다.
|
|
||||||
* @param req
|
// 페이징 사이즈 코드 목록 조회
|
||||||
* @return
|
DataApiReqVO reqVOforPageSize = new DataApiReqVO();
|
||||||
*/
|
reqVOforPageSize.setAuthKey(createAuthKey(req, authentication));
|
||||||
@RequestMapping("/rent/listReservations.do")
|
reqVOforPageSize.setPageSize(0);
|
||||||
public String listReservations(HttpServletRequest req) {
|
reqVOforPageSize.addInfoItem("codeUpperId", "PAGE_SIZE");
|
||||||
return "nlib/rent/listReservations";
|
DataApiResVO resVOforPageSize = codeService.listCodes(reqVOforPageSize);
|
||||||
}
|
|
||||||
|
// 반환 정보
|
||||||
public ModelMap cancelReservations(HttpServletRequest req) {
|
model.addAttribute("pageIndex" , pageIndex);
|
||||||
return null;
|
model.addAttribute("pageSize" , pageSize);
|
||||||
}
|
model.addAttribute("searchKeyword", searchKeyword);
|
||||||
|
model.addAttribute("pageSizeCodes", resVOforPageSize.getList());
|
||||||
public ModelMap listRequestsForViewingItem(HttpServletRequest req) {
|
return "nlib/rent/listRentItems";
|
||||||
return null;
|
}
|
||||||
}
|
|
||||||
|
/**
|
||||||
public ModelMap selectRequestInfoForViewingItem(HttpServletRequest req) {
|
* 대출 목록을 조회한다.
|
||||||
return null;
|
*
|
||||||
}
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping(value="/rent/listRentItemsAjax.do")
|
||||||
|
public ResponseEntity<String> listRentItemsAjax(HttpServletRequest req,
|
||||||
|
Authentication authentication, @RequestBody Map<String, String> paramMap) {
|
||||||
|
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// REQ VO 구성
|
||||||
|
//-------------------------------
|
||||||
|
DataApiReqVO reqVO = new DataApiReqVO();
|
||||||
|
reqVO.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVO.setPageIndex(pageIndex);
|
||||||
|
reqVO.setPageSize(pageSize);
|
||||||
|
reqVO.addInfoItem("searchKeyword", searchKeyword);
|
||||||
|
|
||||||
|
// 요청
|
||||||
|
DataApiResVO resVO = rentService.listRentItems(reqVO);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// JSON변환 응답 처리
|
||||||
|
//-------------------------------
|
||||||
|
// JS-GRID 페이징 처리를 포함한 응답값 처리
|
||||||
|
// {data: [{...}],
|
||||||
|
// itemsCount: 255
|
||||||
|
// }
|
||||||
|
HashMap<String, Object> retMap = new HashMap<String, Object>();
|
||||||
|
retMap.put("data", resVO.getList());
|
||||||
|
retMap.put("itemsCount", resVO.getRecordTotCount());
|
||||||
|
|
||||||
|
return makeResponseEntityJson(retMap);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 대출 목록 화면을 호출한다.
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping("/rent/listCanceledRentItems.do")
|
||||||
|
public String listCanceledRentItems(HttpServletRequest req, Authentication authentication, @RequestParam Map<String, String> paramMap, ModelMap model) {
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
// 페이징 사이즈 코드 목록 조회
|
||||||
|
DataApiReqVO reqVOforPageSize = new DataApiReqVO();
|
||||||
|
reqVOforPageSize.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVOforPageSize.setPageSize(0);
|
||||||
|
reqVOforPageSize.addInfoItem("codeUpperId", "PAGE_SIZE");
|
||||||
|
DataApiResVO resVOforPageSize = codeService.listCodes(reqVOforPageSize);
|
||||||
|
|
||||||
|
// 반환 정보
|
||||||
|
model.addAttribute("pageIndex" , pageIndex);
|
||||||
|
model.addAttribute("pageSize" , pageSize);
|
||||||
|
model.addAttribute("searchKeyword", searchKeyword);
|
||||||
|
model.addAttribute("pageSizeCodes", resVOforPageSize.getList());
|
||||||
|
return "nlib/rent/listCanceledRentItems";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 대출 취소 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping(value="/rent/listCanceledRentItemsAjax.do")
|
||||||
|
public ResponseEntity<String> listCanceledRentItemsAjax(HttpServletRequest req,
|
||||||
|
Authentication authentication, @RequestBody Map<String, String> paramMap) {
|
||||||
|
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// REQ VO 구성
|
||||||
|
//-------------------------------
|
||||||
|
DataApiReqVO reqVO = new DataApiReqVO();
|
||||||
|
reqVO.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVO.setPageIndex(pageIndex);
|
||||||
|
reqVO.setPageSize(pageSize);
|
||||||
|
reqVO.addInfoItem("searchKeyword", searchKeyword);
|
||||||
|
|
||||||
|
// 요청
|
||||||
|
DataApiResVO resVO = rentService.listCanceledRentItems(reqVO);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// JSON변환 응답 처리
|
||||||
|
//-------------------------------
|
||||||
|
// JS-GRID 페이징 처리를 포함한 응답값 처리
|
||||||
|
// {data: [{...}],
|
||||||
|
// itemsCount: 255
|
||||||
|
// }
|
||||||
|
HashMap<String, Object> retMap = new HashMap<String, Object>();
|
||||||
|
retMap.put("data", resVO.getList());
|
||||||
|
retMap.put("itemsCount", resVO.getRecordTotCount());
|
||||||
|
|
||||||
|
return makeResponseEntityJson(retMap);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 반납 연기 화면을 호출한다.
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping("/rent/listPostpones.do")
|
||||||
|
public String listPostpones(HttpServletRequest req, Authentication authentication, @RequestParam Map<String, String> paramMap, ModelMap model) {
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
// 페이징 사이즈 코드 목록 조회
|
||||||
|
DataApiReqVO reqVOforPageSize = new DataApiReqVO();
|
||||||
|
reqVOforPageSize.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVOforPageSize.setPageSize(0);
|
||||||
|
reqVOforPageSize.addInfoItem("codeUpperId", "PAGE_SIZE");
|
||||||
|
DataApiResVO resVOforPageSize = codeService.listCodes(reqVOforPageSize);
|
||||||
|
|
||||||
|
// 반환 정보
|
||||||
|
model.addAttribute("pageIndex" , pageIndex);
|
||||||
|
model.addAttribute("pageSize" , pageSize);
|
||||||
|
model.addAttribute("searchKeyword", searchKeyword);
|
||||||
|
model.addAttribute("pageSizeCodes", resVOforPageSize.getList());
|
||||||
|
return "nlib/rent/listPostpones";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 반납 연기 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping(value="/rent/listPostponesAjax.do")
|
||||||
|
public ResponseEntity<String> listPostponesAjax(HttpServletRequest req,
|
||||||
|
Authentication authentication, @RequestBody Map<String, String> paramMap) {
|
||||||
|
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// REQ VO 구성
|
||||||
|
//-------------------------------
|
||||||
|
DataApiReqVO reqVO = new DataApiReqVO();
|
||||||
|
reqVO.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVO.setPageIndex(pageIndex);
|
||||||
|
reqVO.setPageSize(pageSize);
|
||||||
|
reqVO.addInfoItem("searchKeyword", searchKeyword);
|
||||||
|
|
||||||
|
// 요청
|
||||||
|
DataApiResVO resVO = rentService.listPostpones(reqVO);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// JSON변환 응답 처리
|
||||||
|
//-------------------------------
|
||||||
|
// JS-GRID 페이징 처리를 포함한 응답값 처리
|
||||||
|
// {data: [{...}],
|
||||||
|
// itemsCount: 255
|
||||||
|
// }
|
||||||
|
HashMap<String, Object> retMap = new HashMap<String, Object>();
|
||||||
|
retMap.put("data", resVO.getList());
|
||||||
|
retMap.put("itemsCount", resVO.getRecordTotCount());
|
||||||
|
|
||||||
|
return makeResponseEntityJson(retMap);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ModelMap listCanceledRentItems(HttpServletRequest req) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 대출 예약 화면을 호출한다.
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping("/rent/listReservations.do")
|
||||||
|
public String listReservations(HttpServletRequest req, Authentication authentication, @RequestParam Map<String, String> paramMap, ModelMap model) {
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
// 페이징 사이즈 코드 목록 조회
|
||||||
|
DataApiReqVO reqVOforPageSize = new DataApiReqVO();
|
||||||
|
reqVOforPageSize.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVOforPageSize.setPageSize(0);
|
||||||
|
reqVOforPageSize.addInfoItem("codeUpperId", "PAGE_SIZE");
|
||||||
|
DataApiResVO resVOforPageSize = codeService.listCodes(reqVOforPageSize);
|
||||||
|
|
||||||
|
// 반환 정보
|
||||||
|
model.addAttribute("pageIndex" , pageIndex);
|
||||||
|
model.addAttribute("pageSize" , pageSize);
|
||||||
|
model.addAttribute("searchKeyword", searchKeyword);
|
||||||
|
model.addAttribute("pageSizeCodes", resVOforPageSize.getList());
|
||||||
|
return "nlib/rent/listReservations";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 대출 예약 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping(value="/rent/listReservationsAjax.do")
|
||||||
|
public ResponseEntity<String> listReservationsAjax(HttpServletRequest req,
|
||||||
|
Authentication authentication, @RequestBody Map<String, String> paramMap) {
|
||||||
|
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// REQ VO 구성
|
||||||
|
//-------------------------------
|
||||||
|
DataApiReqVO reqVO = new DataApiReqVO();
|
||||||
|
reqVO.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVO.setPageIndex(pageIndex);
|
||||||
|
reqVO.setPageSize(pageSize);
|
||||||
|
reqVO.addInfoItem("searchKeyword", searchKeyword);
|
||||||
|
|
||||||
|
// 요청
|
||||||
|
DataApiResVO resVO = rentService.listReservations(reqVO);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// JSON변환 응답 처리
|
||||||
|
//-------------------------------
|
||||||
|
// JS-GRID 페이징 처리를 포함한 응답값 처리
|
||||||
|
// {data: [{...}],
|
||||||
|
// itemsCount: 255
|
||||||
|
// }
|
||||||
|
HashMap<String, Object> retMap = new HashMap<String, Object>();
|
||||||
|
retMap.put("data", resVO.getList());
|
||||||
|
retMap.put("itemsCount", resVO.getRecordTotCount());
|
||||||
|
|
||||||
|
return makeResponseEntityJson(retMap);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ModelMap cancelReservations(HttpServletRequest req) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 열람 요청 화면을 호출한다.
|
||||||
|
*
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping("/rent/listRequestsForViewingItem.do")
|
||||||
|
public String listRequestsForViewingItem(HttpServletRequest req, Authentication authentication, @RequestParam Map<String, String> paramMap, ModelMap model) {
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
// 페이징 사이즈 코드 목록 조회
|
||||||
|
DataApiReqVO reqVOforPageSize = new DataApiReqVO();
|
||||||
|
reqVOforPageSize.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVOforPageSize.setPageSize(0);
|
||||||
|
reqVOforPageSize.addInfoItem("codeUpperId", "PAGE_SIZE");
|
||||||
|
DataApiResVO resVOforPageSize = codeService.listCodes(reqVOforPageSize);
|
||||||
|
|
||||||
|
// 반환 정보
|
||||||
|
model.addAttribute("pageIndex" , pageIndex);
|
||||||
|
model.addAttribute("pageSize" , pageSize);
|
||||||
|
model.addAttribute("searchKeyword", searchKeyword);
|
||||||
|
model.addAttribute("pageSizeCodes", resVOforPageSize.getList());
|
||||||
|
return "nlib/rent/listRequestsForViewingItem";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 열람 요청 목록을 조회한다.
|
||||||
|
*
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping(value="/rent/listRequestsForViewingItemAjax.do")
|
||||||
|
public ResponseEntity<String> listRequestsForViewingItemAjax(HttpServletRequest req,
|
||||||
|
Authentication authentication, @RequestBody Map<String, String> paramMap) {
|
||||||
|
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
|
||||||
|
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// REQ VO 구성
|
||||||
|
//-------------------------------
|
||||||
|
DataApiReqVO reqVO = new DataApiReqVO();
|
||||||
|
reqVO.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVO.setPageIndex(pageIndex);
|
||||||
|
reqVO.setPageSize(pageSize);
|
||||||
|
reqVO.addInfoItem("searchKeyword", searchKeyword);
|
||||||
|
|
||||||
|
// 요청
|
||||||
|
DataApiResVO resVO = rentService.listRequestsForViewingItem(reqVO);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// JSON변환 응답 처리
|
||||||
|
//-------------------------------
|
||||||
|
// JS-GRID 페이징 처리를 포함한 응답값 처리
|
||||||
|
// {data: [{...}],
|
||||||
|
// itemsCount: 255
|
||||||
|
// }
|
||||||
|
HashMap<String, Object> retMap = new HashMap<String, Object>();
|
||||||
|
retMap.put("data", resVO.getList());
|
||||||
|
retMap.put("itemsCount", resVO.getRecordTotCount());
|
||||||
|
|
||||||
|
return makeResponseEntityJson(retMap);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 묻고답하기 상세 내용 조회한다.
|
||||||
|
*
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping("/rent/selectRequestInfoForViewingItem.do")
|
||||||
|
public String selectRequestInfoForViewingItem(HttpServletRequest req, Authentication authentication, @RequestParam Map<String, String> paramMap, ModelMap model) {
|
||||||
|
|
||||||
|
// 목록 이동시 전달할 매개변수
|
||||||
|
String searchKeyword = paramMap.get("searchKeyword");
|
||||||
|
String pageIndex = paramMap.get("pageIndex");
|
||||||
|
String pageSize = paramMap.get("pageSize");
|
||||||
|
String message = paramMap.get("message");
|
||||||
|
|
||||||
|
// 게시물 번호
|
||||||
|
String articleNo = paramMap.get("articleNo");
|
||||||
|
|
||||||
|
log.debug("selectRequestInfoForViewingItem > pageIndex = " + pageIndex);
|
||||||
|
log.debug("selectRequestInfoForViewingItem > pageSize = " + pageSize);
|
||||||
|
log.debug("selectRequestInfoForViewingItem > searchKeyword = " + searchKeyword);
|
||||||
|
log.debug("selectRequestInfoForViewingItem > articleNo = " + articleNo);
|
||||||
|
log.debug("selectRequestInfoForViewingItem > message = " + message);
|
||||||
|
|
||||||
|
//-------------------------------
|
||||||
|
// REQ VO 구성
|
||||||
|
//-------------------------------
|
||||||
|
DataApiReqVO reqVO = new DataApiReqVO();
|
||||||
|
reqVO.setAuthKey(createAuthKey(req, authentication));
|
||||||
|
reqVO.setPageIndex(pageIndex);
|
||||||
|
reqVO.setPageSize(pageSize);
|
||||||
|
reqVO.addInfoItem("boardNo", "QNA"); // 게시판ID
|
||||||
|
reqVO.addInfoItem("articleNo", articleNo); // 게시물번호
|
||||||
|
|
||||||
|
// 요청
|
||||||
|
DataApiResVO resVO = rentService.selectRequestInfoForViewingItem(reqVO);
|
||||||
|
|
||||||
|
// 반환 정보
|
||||||
|
model.addAttribute("articleNo" , articleNo);
|
||||||
|
model.addAttribute("article" , resVO.getInfo()); // 게시물 상세
|
||||||
|
model.addAttribute("preArticle" , resVO.getList().get(0)); // 이전글 정보
|
||||||
|
model.addAttribute("nextArticle" , resVO.getList().get(1)); // 다음글 정보
|
||||||
|
model.addAttribute("message" , message);
|
||||||
|
model.addAttribute("pageIndex" , pageIndex);
|
||||||
|
model.addAttribute("pageSize" , pageSize);
|
||||||
|
model.addAttribute("searchKeyword", searchKeyword);
|
||||||
|
|
||||||
|
return "nlib/rent/selectRequestInfoForViewingItem";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@ -74,6 +74,8 @@ public class SpringSecurityConfig extends WebSecurityConfigurerAdapter {
|
|||||||
.antMatchers("/index.do").permitAll()
|
.antMatchers("/index.do").permitAll()
|
||||||
.antMatchers("/main/header.do").permitAll()
|
.antMatchers("/main/header.do").permitAll()
|
||||||
.antMatchers("/main/menu.do").permitAll()
|
.antMatchers("/main/menu.do").permitAll()
|
||||||
|
.antMatchers("/rent/*.do").permitAll()
|
||||||
|
.antMatchers("/collection/*.do").permitAll()
|
||||||
.antMatchers("/sample/password/getSampleEncoder.do").permitAll()
|
.antMatchers("/sample/password/getSampleEncoder.do").permitAll()
|
||||||
.anyRequest().authenticated()
|
.anyRequest().authenticated()
|
||||||
.and().formLogin()
|
.and().formLogin()
|
||||||
|
|||||||
186
src/main/webapp/WEB-INF/jsp/nlib/collection/listInterests.jsp
Normal file
186
src/main/webapp/WEB-INF/jsp/nlib/collection/listInterests.jsp
Normal file
@ -0,0 +1,186 @@
|
|||||||
|
<%
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* @Class Name : listInterests.jsp
|
||||||
|
*
|
||||||
|
* @Description : 관심 자료를 조회한다.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 수정일 수정자 수정내용
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 2021. 7. 28. JSYOO 최초 생성
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
||||||
|
* @since 2021. 7. 28.
|
||||||
|
* @version 1.0
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
%>
|
||||||
|
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
|
||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
|
||||||
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
||||||
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||||
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
|
||||||
|
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||||
|
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
||||||
|
|
||||||
|
<c:set var="pageTitle">관심 자료</c:set>
|
||||||
|
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>${pageTitle}</title>
|
||||||
|
|
||||||
|
<!-- GRID -->
|
||||||
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" />
|
||||||
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" />
|
||||||
|
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javaScript" language="javascript">
|
||||||
|
|
||||||
|
window.onload = function() {
|
||||||
|
//=======================================================
|
||||||
|
// 그리드 생성 환경설정
|
||||||
|
//=======================================================
|
||||||
|
$("#jsGrid").jsGrid({
|
||||||
|
pageSize : $("#pageSize").val(),
|
||||||
|
controller: {
|
||||||
|
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
|
||||||
|
var data = $.Deferred();
|
||||||
|
//======================================
|
||||||
|
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
|
||||||
|
//======================================
|
||||||
|
var reqUrl = "${pageContext.request.contextPath}/collection/listInterestsAjax.do";
|
||||||
|
var searchKeyword = document.articleForm.searchKeyword.value;
|
||||||
|
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
|
||||||
|
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
|
||||||
|
|
||||||
|
$("#pageIndex").val(pageIndex);
|
||||||
|
|
||||||
|
var inputData = {
|
||||||
|
"searchKeyword" : searchKeyword
|
||||||
|
, "pageIndex" : pageIndex
|
||||||
|
, "pageSize": pageSize};
|
||||||
|
|
||||||
|
|
||||||
|
//--------------------------------------
|
||||||
|
// 요청 처리
|
||||||
|
//--------------------------------------
|
||||||
|
$.ajax({
|
||||||
|
type: "post",
|
||||||
|
contentType: "application/json; charset=utf-8",
|
||||||
|
url: reqUrl,
|
||||||
|
dataType: "json",
|
||||||
|
data: JSON.stringify(inputData),
|
||||||
|
}).done(function(response){
|
||||||
|
<%
|
||||||
|
// 그리드 데이터 예시 :
|
||||||
|
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
|
||||||
|
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
|
||||||
|
%>
|
||||||
|
data.resolve(JSON.parse(response));
|
||||||
|
});
|
||||||
|
return data.promise();
|
||||||
|
} // loadData
|
||||||
|
},
|
||||||
|
|
||||||
|
rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수
|
||||||
|
|
||||||
|
// 클릭된 행의 자료 객체
|
||||||
|
var getData = args.item;
|
||||||
|
|
||||||
|
// 추출할 컬럼의 데이터 가져오기
|
||||||
|
var articleNo = getData["articleNo"];
|
||||||
|
|
||||||
|
// 상세 내용 보기
|
||||||
|
fn_view_detail(articleNo);
|
||||||
|
},
|
||||||
|
|
||||||
|
//======================================
|
||||||
|
// 그리드 컬럼 정의 (각 요청에 맞게 조정)
|
||||||
|
//======================================
|
||||||
|
fields: [
|
||||||
|
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
|
||||||
|
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
|
||||||
|
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
|
||||||
|
{ title:"저자", name: "author", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"대여일", name: "rentDate", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"반납예정일", name: "retDueDate", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"대출연장", name: "loanExtension", type: "text", width: 80, align: "center" , itemTemplate: function (_, item) {
|
||||||
|
var btn = $("<button type='button'>").text("연장").click(function (e) {
|
||||||
|
alert("Clicked!");
|
||||||
|
e.stopPropagation();
|
||||||
|
});
|
||||||
|
return $("<div>").append(item.loanExtension).append(" ").append(btn);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
});
|
||||||
|
|
||||||
|
// 페이지 크기 변경시 재조회
|
||||||
|
$("#pageSize").on("change", function(e) {
|
||||||
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
|
});
|
||||||
|
|
||||||
|
// 검색 버튼 클릭
|
||||||
|
$("#btnSearch").on("click", function(e) {
|
||||||
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
|
});
|
||||||
|
|
||||||
|
//초기 자료 조회
|
||||||
|
fn_search_article();
|
||||||
|
|
||||||
|
}; // window.onload
|
||||||
|
|
||||||
|
|
||||||
|
// 선택한 게시글 상세 보기로 이동
|
||||||
|
function fn_view_detail(articleNo) {
|
||||||
|
$("#articleNo").val(articleNo);
|
||||||
|
$("#articleForm").attr("action", "${pageContext.request.contextPath}/board/selectQnA.do");
|
||||||
|
$("#articleForm").submit();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 그리드 데이터 조회 호출
|
||||||
|
function fn_search_article(pageSize, pageIndex) {
|
||||||
|
$("#jsGrid").jsGrid("search"
|
||||||
|
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
|
||||||
|
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<h1>${pageTitle }</h1>
|
||||||
|
|
||||||
|
<form name="articleForm" id="articleForm"
|
||||||
|
method="post">
|
||||||
|
|
||||||
|
<!-- 검색조건 -->
|
||||||
|
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
|
||||||
|
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
|
||||||
|
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
|
||||||
|
</c:forEach>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
|
||||||
|
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
|
||||||
|
<input type="button" name="btnSearch" id="btnSearch" value="검색" />
|
||||||
|
|
||||||
|
<div id="jsGrid" name="jsGrid" style="height: 100%"></div>
|
||||||
|
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
186
src/main/webapp/WEB-INF/jsp/nlib/collection/listItems.jsp
Normal file
186
src/main/webapp/WEB-INF/jsp/nlib/collection/listItems.jsp
Normal file
@ -0,0 +1,186 @@
|
|||||||
|
<%
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* @Class Name : listItems.jsp
|
||||||
|
*
|
||||||
|
* @Description : 소장 자료를 조회한다.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 수정일 수정자 수정내용
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 2021. 7. 28. JSYOO 최초 생성
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
||||||
|
* @since 2021. 7. 28.
|
||||||
|
* @version 1.0
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
%>
|
||||||
|
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
|
||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
|
||||||
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
||||||
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||||
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
|
||||||
|
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||||
|
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
||||||
|
|
||||||
|
<c:set var="pageTitle">소장 자료</c:set>
|
||||||
|
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>${pageTitle}</title>
|
||||||
|
|
||||||
|
<!-- GRID -->
|
||||||
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" />
|
||||||
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" />
|
||||||
|
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javaScript" language="javascript">
|
||||||
|
|
||||||
|
window.onload = function() {
|
||||||
|
//=======================================================
|
||||||
|
// 그리드 생성 환경설정
|
||||||
|
//=======================================================
|
||||||
|
$("#jsGrid").jsGrid({
|
||||||
|
pageSize : $("#pageSize").val(),
|
||||||
|
controller: {
|
||||||
|
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
|
||||||
|
var data = $.Deferred();
|
||||||
|
//======================================
|
||||||
|
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
|
||||||
|
//======================================
|
||||||
|
var reqUrl = "${pageContext.request.contextPath}/collection/listItemsAjax.do";
|
||||||
|
var searchKeyword = document.articleForm.searchKeyword.value;
|
||||||
|
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
|
||||||
|
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
|
||||||
|
|
||||||
|
$("#pageIndex").val(pageIndex);
|
||||||
|
|
||||||
|
var inputData = {
|
||||||
|
"searchKeyword" : searchKeyword
|
||||||
|
, "pageIndex" : pageIndex
|
||||||
|
, "pageSize": pageSize};
|
||||||
|
|
||||||
|
|
||||||
|
//--------------------------------------
|
||||||
|
// 요청 처리
|
||||||
|
//--------------------------------------
|
||||||
|
$.ajax({
|
||||||
|
type: "post",
|
||||||
|
contentType: "application/json; charset=utf-8",
|
||||||
|
url: reqUrl,
|
||||||
|
dataType: "json",
|
||||||
|
data: JSON.stringify(inputData),
|
||||||
|
}).done(function(response){
|
||||||
|
<%
|
||||||
|
// 그리드 데이터 예시 :
|
||||||
|
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
|
||||||
|
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
|
||||||
|
%>
|
||||||
|
data.resolve(JSON.parse(response));
|
||||||
|
});
|
||||||
|
return data.promise();
|
||||||
|
} // loadData
|
||||||
|
},
|
||||||
|
|
||||||
|
rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수
|
||||||
|
|
||||||
|
// 클릭된 행의 자료 객체
|
||||||
|
var getData = args.item;
|
||||||
|
|
||||||
|
// 추출할 컬럼의 데이터 가져오기
|
||||||
|
var articleNo = getData["articleNo"];
|
||||||
|
|
||||||
|
// 상세 내용 보기
|
||||||
|
fn_view_detail(articleNo);
|
||||||
|
},
|
||||||
|
|
||||||
|
//======================================
|
||||||
|
// 그리드 컬럼 정의 (각 요청에 맞게 조정)
|
||||||
|
//======================================
|
||||||
|
fields: [
|
||||||
|
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
|
||||||
|
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
|
||||||
|
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
|
||||||
|
{ title:"저자", name: "author", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"대여일", name: "rentDate", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"반납예정일", name: "retDueDate", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"대출연장", name: "loanExtension", type: "text", width: 80, align: "center" , itemTemplate: function (_, item) {
|
||||||
|
var btn = $("<button type='button'>").text("연장").click(function (e) {
|
||||||
|
alert("Clicked!");
|
||||||
|
e.stopPropagation();
|
||||||
|
});
|
||||||
|
return $("<div>").append(item.loanExtension).append(" ").append(btn);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
});
|
||||||
|
|
||||||
|
// 페이지 크기 변경시 재조회
|
||||||
|
$("#pageSize").on("change", function(e) {
|
||||||
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
|
});
|
||||||
|
|
||||||
|
// 검색 버튼 클릭
|
||||||
|
$("#btnSearch").on("click", function(e) {
|
||||||
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
|
});
|
||||||
|
|
||||||
|
//초기 자료 조회
|
||||||
|
fn_search_article();
|
||||||
|
|
||||||
|
}; // window.onload
|
||||||
|
|
||||||
|
|
||||||
|
// 선택한 게시글 상세 보기로 이동
|
||||||
|
function fn_view_detail(articleNo) {
|
||||||
|
$("#articleNo").val(articleNo);
|
||||||
|
$("#articleForm").attr("action", "${pageContext.request.contextPath}/collection/selectItemInfo.do");
|
||||||
|
$("#articleForm").submit();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 그리드 데이터 조회 호출
|
||||||
|
function fn_search_article(pageSize, pageIndex) {
|
||||||
|
$("#jsGrid").jsGrid("search"
|
||||||
|
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
|
||||||
|
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<h1>${pageTitle }</h1>
|
||||||
|
|
||||||
|
<form name="articleForm" id="articleForm"
|
||||||
|
method="post">
|
||||||
|
|
||||||
|
<!-- 검색조건 -->
|
||||||
|
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
|
||||||
|
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
|
||||||
|
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
|
||||||
|
</c:forEach>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
|
||||||
|
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
|
||||||
|
<input type="button" name="btnSearch" id="btnSearch" value="검색" />
|
||||||
|
|
||||||
|
<div id="jsGrid" name="jsGrid" style="height: 100%"></div>
|
||||||
|
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@ -1,181 +0,0 @@
|
|||||||
<%
|
|
||||||
/**
|
|
||||||
* <pre>
|
|
||||||
* @Class Name : listCancelRentItems.jsp
|
|
||||||
*
|
|
||||||
* @Description : 대출 취소목록을 조회한다.
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @ ------------ -------- ---------------------------
|
|
||||||
* @ 수정일 수정자 수정내용
|
|
||||||
* @ ------------ -------- ---------------------------
|
|
||||||
* @ 2021. 7. 21. JSYOO 최초 생성
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
|
||||||
* @since 2021. 7. 21.
|
|
||||||
* @version 1.0
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
%>
|
|
||||||
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
|
|
||||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
|
||||||
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
|
|
||||||
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
|
||||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
|
||||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
|
|
||||||
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
|
||||||
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
|
||||||
|
|
||||||
<c:set var="pageTitle">대출 취소</c:set>
|
|
||||||
|
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>${pageTitle}</title>
|
|
||||||
|
|
||||||
<!-- GRID -->
|
|
||||||
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" />
|
|
||||||
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" />
|
|
||||||
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script>
|
|
||||||
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body onload="fn_init()">
|
|
||||||
|
|
||||||
<h1>대출 취소</h1>
|
|
||||||
|
|
||||||
<form name="articleForm"
|
|
||||||
action="${pageContext.request.contextPath}/board/listQnAs.do"
|
|
||||||
method="post"
|
|
||||||
onSubmit="fn_search_article(); return false;">
|
|
||||||
|
|
||||||
<!-- 검색조건 -->
|
|
||||||
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
|
|
||||||
<option value="10">10개씩 보기</option>
|
|
||||||
<option value="50">50개씩 보기</option>
|
|
||||||
<option value="100">100개씩 보기</option>
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="1" size="5" maxlength="5" />
|
|
||||||
|
|
||||||
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="" size="35" maxlength="50" />
|
|
||||||
|
|
||||||
<input type="submit" name="btnSearch" id="btnSearch" value="검색" />
|
|
||||||
|
|
||||||
<input type="button" name="btnNew" id="btnNew" value="글쓰기"
|
|
||||||
onclick="javascript:location.href='${pageContext.request.contextPath}/board/insertQnAForm.do';" />
|
|
||||||
|
|
||||||
<div id="jsGrid" name="jsGrid" ></div>
|
|
||||||
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<script type="text/javaScript" language="javascript">
|
|
||||||
// 그리드 데이터
|
|
||||||
var clients = [
|
|
||||||
{ "noticeNo": 1, "noticeType": "01", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 2, "noticeType": "02", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 3, "noticeType": "03", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 4, "noticeType": "04", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 5, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 6, "noticeType": "06", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 7, "noticeType": "06", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 9, "noticeType": "01", "title": "대출 취소 제목입니다.", "readCount": 7, "regDate": "2021-07-11" }
|
|
||||||
];
|
|
||||||
|
|
||||||
// 그리드내 콤보박스 값
|
|
||||||
var noticeTypes = [
|
|
||||||
{ Name: "공지" , Id: "01" },
|
|
||||||
{ Name: "자료" , Id: "02" },
|
|
||||||
{ Name: "모집" , Id: "03" },
|
|
||||||
{ Name: "입찰" , Id: "04" },
|
|
||||||
{ Name: "발표" , Id: "05" },
|
|
||||||
{ Name: "이벤트", Id: "06" }
|
|
||||||
];
|
|
||||||
|
|
||||||
// 그리드 생성
|
|
||||||
$("#jsGrid").jsGrid({
|
|
||||||
width: "100%",
|
|
||||||
height: "100%",
|
|
||||||
|
|
||||||
inserting: false,
|
|
||||||
editing: false,
|
|
||||||
sorting: true,
|
|
||||||
paging: true,
|
|
||||||
pageSize: 10,
|
|
||||||
pageButtonCount: 10,
|
|
||||||
pageIndex: 1,
|
|
||||||
pageFirstText: " << ",
|
|
||||||
pagePrevText: " < ",
|
|
||||||
pageLastText: " >> ",
|
|
||||||
pageNextText: " > ",
|
|
||||||
pagerFormat: "{first} {prev} {pages} {next} {last}",
|
|
||||||
|
|
||||||
|
|
||||||
/* 이하만 설정 */
|
|
||||||
data: clients,
|
|
||||||
|
|
||||||
fields: [
|
|
||||||
{ title:"번호", name: "noticeNo" , type: "number" , width: 50, align: "center"},
|
|
||||||
{ title:"유형", name: "noticeType", type: "select", width: 80, align: "center", items: noticeTypes, valueField: "Id", textField: "Name" },
|
|
||||||
{ title:"제목", name: "title", type: "text" , width: 200, align: "left" },
|
|
||||||
{ title:"조회수", name: "readCount", type: "number", width: 50, align: "center" },
|
|
||||||
{ title:"등록일", name: "regDate", type: "text", width: 100, align: "center"}
|
|
||||||
]
|
|
||||||
});
|
|
||||||
|
|
||||||
function fn_search_article() {
|
|
||||||
var searchKeyword = document.articleForm.searchKeyword.value;
|
|
||||||
var pageIndex = document.articleForm.pageIndex.value;
|
|
||||||
var pageSize = document.articleForm.pageSize.value;
|
|
||||||
|
|
||||||
var inputData = {
|
|
||||||
"searchKeyword" : searchKeyword /*encodeURIComponent(searchKeyword)*/
|
|
||||||
, "pageIndex" : pageIndex
|
|
||||||
, "pageSize": pageSize};
|
|
||||||
|
|
||||||
//lert(JSON.stringify(inputData));
|
|
||||||
}
|
|
||||||
|
|
||||||
function fn_init() {
|
|
||||||
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
179
src/main/webapp/WEB-INF/jsp/nlib/rent/listCanceledRentItems.jsp
Normal file
179
src/main/webapp/WEB-INF/jsp/nlib/rent/listCanceledRentItems.jsp
Normal file
@ -0,0 +1,179 @@
|
|||||||
|
<%
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* @Class Name : listCanceledRentItems.jsp
|
||||||
|
*
|
||||||
|
* @Description : 대출 취소목록을 조회한다.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 수정일 수정자 수정내용
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 2021. 7. 21. JSYOO 최초 생성
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
||||||
|
* @since 2021. 7. 21.
|
||||||
|
* @version 1.0
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
%>
|
||||||
|
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
|
||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
|
||||||
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
||||||
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||||
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
|
||||||
|
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||||
|
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
||||||
|
|
||||||
|
<c:set var="pageTitle">대출 취소 목록</c:set>
|
||||||
|
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>${pageTitle}</title>
|
||||||
|
|
||||||
|
<!-- GRID -->
|
||||||
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" />
|
||||||
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" />
|
||||||
|
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javaScript" language="javascript">
|
||||||
|
|
||||||
|
window.onload = function() {
|
||||||
|
//=======================================================
|
||||||
|
// 그리드 생성 환경설정
|
||||||
|
//=======================================================
|
||||||
|
$("#jsGrid").jsGrid({
|
||||||
|
pageSize : $("#pageSize").val(),
|
||||||
|
controller: {
|
||||||
|
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
|
||||||
|
var data = $.Deferred();
|
||||||
|
//======================================
|
||||||
|
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
|
||||||
|
//======================================
|
||||||
|
var reqUrl = "${pageContext.request.contextPath}/rent/listCanceledRentItemsAjax.do";
|
||||||
|
var searchKeyword = document.articleForm.searchKeyword.value;
|
||||||
|
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
|
||||||
|
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
|
||||||
|
|
||||||
|
$("#pageIndex").val(pageIndex);
|
||||||
|
|
||||||
|
var inputData = {
|
||||||
|
"searchKeyword" : searchKeyword
|
||||||
|
, "pageIndex" : pageIndex
|
||||||
|
, "pageSize": pageSize};
|
||||||
|
|
||||||
|
|
||||||
|
//--------------------------------------
|
||||||
|
// 요청 처리
|
||||||
|
//--------------------------------------
|
||||||
|
$.ajax({
|
||||||
|
type: "post",
|
||||||
|
contentType: "application/json; charset=utf-8",
|
||||||
|
url: reqUrl,
|
||||||
|
dataType: "json",
|
||||||
|
data: JSON.stringify(inputData),
|
||||||
|
}).done(function(response){
|
||||||
|
<%
|
||||||
|
// 그리드 데이터 예시 :
|
||||||
|
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
|
||||||
|
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
|
||||||
|
%>
|
||||||
|
data.resolve(JSON.parse(response));
|
||||||
|
});
|
||||||
|
return data.promise();
|
||||||
|
} // loadData
|
||||||
|
},
|
||||||
|
|
||||||
|
rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수
|
||||||
|
|
||||||
|
// 클릭된 행의 자료 객체
|
||||||
|
var getData = args.item;
|
||||||
|
|
||||||
|
// 추출할 컬럼의 데이터 가져오기
|
||||||
|
var articleNo = getData["articleNo"];
|
||||||
|
|
||||||
|
// 상세 내용 보기
|
||||||
|
fn_view_detail(articleNo);
|
||||||
|
},
|
||||||
|
|
||||||
|
//======================================
|
||||||
|
// 그리드 컬럼 정의 (각 요청에 맞게 조정)
|
||||||
|
//======================================
|
||||||
|
fields: [
|
||||||
|
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
|
||||||
|
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
|
||||||
|
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
|
||||||
|
{ title:"저자", name: "author", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"대여일", name: "rentDate", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"반납예정일", name: "retDueDate", type: "text", width: 100, align: "center"}
|
||||||
|
]
|
||||||
|
});
|
||||||
|
|
||||||
|
// 페이지 크기 변경시 재조회
|
||||||
|
$("#pageSize").on("change", function(e) {
|
||||||
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
|
});
|
||||||
|
|
||||||
|
// 검색 버튼 클릭
|
||||||
|
$("#btnSearch").on("click", function(e) {
|
||||||
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
|
});
|
||||||
|
|
||||||
|
//초기 자료 조회
|
||||||
|
fn_search_article();
|
||||||
|
|
||||||
|
}; // window.onload
|
||||||
|
|
||||||
|
|
||||||
|
// 선택한 게시글 상세 보기로 이동
|
||||||
|
function fn_view_detail(articleNo) {
|
||||||
|
$("#articleNo").val(articleNo);
|
||||||
|
$("#articleForm").attr("action", "${pageContext.request.contextPath}/board/selectQnA.do");
|
||||||
|
$("#articleForm").submit();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 그리드 데이터 조회 호출
|
||||||
|
function fn_search_article(pageSize, pageIndex) {
|
||||||
|
$("#jsGrid").jsGrid("search"
|
||||||
|
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
|
||||||
|
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<h1>${pageTitle }</h1>
|
||||||
|
|
||||||
|
<form name="articleForm" id="articleForm"
|
||||||
|
method="post">
|
||||||
|
|
||||||
|
<!-- 검색조건 -->
|
||||||
|
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
|
||||||
|
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
|
||||||
|
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
|
||||||
|
</c:forEach>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
|
||||||
|
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
|
||||||
|
<input type="button" name="btnSearch" id="btnSearch" value="검색" />
|
||||||
|
|
||||||
|
<div id="jsGrid" name="jsGrid" style="height: 100%"></div>
|
||||||
|
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@ -1,181 +1,189 @@
|
|||||||
<%
|
<%
|
||||||
/**
|
/**
|
||||||
* <pre>
|
* <pre>
|
||||||
* @Class Name : listRentItems.jsp
|
* @Class Name : listRentItems.jsp
|
||||||
*
|
*
|
||||||
* @Description : 대출 목록을 조회한다.
|
* @Description : 대출 목록을 조회한다.
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
||||||
*
|
*
|
||||||
* </pre>
|
* </pre>
|
||||||
*
|
*
|
||||||
* @ ------------ -------- ---------------------------
|
* @ ------------ -------- ---------------------------
|
||||||
* @ 수정일 수정자 수정내용
|
* @ 수정일 수정자 수정내용
|
||||||
* @ ------------ -------- ---------------------------
|
* @ ------------ -------- ---------------------------
|
||||||
* @ 2021. 7. 21. JSYOO 최초 생성
|
* @ 2021. 7. 21. JSYOO 최초 생성
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
||||||
* @since 2021. 7. 21.
|
* @since 2021. 7. 21.
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
%>
|
%>
|
||||||
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
|
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
|
||||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
|
||||||
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
||||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
|
||||||
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||||
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
||||||
|
|
||||||
<c:set var="pageTitle">대출 목록</c:set>
|
<c:set var="pageTitle">대출 목록</c:set>
|
||||||
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>${pageTitle}</title>
|
<title>${pageTitle}</title>
|
||||||
|
|
||||||
<!-- GRID -->
|
<!-- GRID -->
|
||||||
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" />
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" />
|
||||||
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" />
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" />
|
||||||
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script>
|
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script>
|
||||||
|
|
||||||
</head>
|
<script type="text/javaScript" language="javascript">
|
||||||
|
|
||||||
<body onload="fn_init()">
|
window.onload = function() {
|
||||||
|
//=======================================================
|
||||||
<h1>대출 목록</h1>
|
// 그리드 생성 환경설정
|
||||||
|
//=======================================================
|
||||||
<form name="articleForm"
|
$("#jsGrid").jsGrid({
|
||||||
action="${pageContext.request.contextPath}/board/listQnAs.do"
|
pageSize : $("#pageSize").val(),
|
||||||
method="post"
|
controller: {
|
||||||
onSubmit="fn_search_article(); return false;">
|
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
|
||||||
|
var data = $.Deferred();
|
||||||
<!-- 검색조건 -->
|
//======================================
|
||||||
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
|
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
|
||||||
<option value="10">10개씩 보기</option>
|
//======================================
|
||||||
<option value="50">50개씩 보기</option>
|
var reqUrl = "${pageContext.request.contextPath}/rent/listRentItemsAjax.do";
|
||||||
<option value="100">100개씩 보기</option>
|
var searchKeyword = document.articleForm.searchKeyword.value;
|
||||||
</select>
|
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
|
||||||
|
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
|
||||||
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="1" size="5" maxlength="5" />
|
|
||||||
|
$("#pageIndex").val(pageIndex);
|
||||||
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="" size="35" maxlength="50" />
|
|
||||||
|
var inputData = {
|
||||||
<input type="submit" name="btnSearch" id="btnSearch" value="검색" />
|
"searchKeyword" : searchKeyword
|
||||||
|
, "pageIndex" : pageIndex
|
||||||
<input type="button" name="btnNew" id="btnNew" value="글쓰기"
|
, "pageSize": pageSize};
|
||||||
onclick="javascript:location.href='${pageContext.request.contextPath}/board/insertQnAForm.do';" />
|
|
||||||
|
|
||||||
<div id="jsGrid" name="jsGrid" ></div>
|
//--------------------------------------
|
||||||
|
// 요청 처리
|
||||||
</form>
|
//--------------------------------------
|
||||||
<input type="button" value="대출 취소목록" onClick="location.href='http://www.example.com/nlib/rent/listCancelRentItems.do'">
|
$.ajax({
|
||||||
<script type="text/javaScript" language="javascript">
|
type: "post",
|
||||||
// 그리드 데이터
|
contentType: "application/json; charset=utf-8",
|
||||||
var clients = [
|
url: reqUrl,
|
||||||
{ "noticeNo": 1, "noticeType": "01", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
dataType: "json",
|
||||||
{ "noticeNo": 2, "noticeType": "02", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
data: JSON.stringify(inputData),
|
||||||
{ "noticeNo": 3, "noticeType": "03", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
}).done(function(response){
|
||||||
{ "noticeNo": 4, "noticeType": "04", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
<%
|
||||||
{ "noticeNo": 5, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// 그리드 데이터 예시 :
|
||||||
{ "noticeNo": 6, "noticeType": "06", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
|
||||||
{ "noticeNo": 7, "noticeType": "06", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
%>
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
data.resolve(JSON.parse(response));
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
});
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
return data.promise();
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
} // loadData
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// 클릭된 행의 자료 객체
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
var getData = args.item;
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// 추출할 컬럼의 데이터 가져오기
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
var articleNo = getData["articleNo"];
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// 상세 내용 보기
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
fn_view_detail(articleNo);
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
//======================================
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// 그리드 컬럼 정의 (각 요청에 맞게 조정)
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
//======================================
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
fields: [
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"저자", name: "author", type: "text", width: 100, align: "center"},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"대여일", name: "rentDate", type: "text", width: 100, align: "center"},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"반납예정일", name: "retDueDate", type: "text", width: 100, align: "center"},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"대출연장", name: "loanExtension", type: "text", width: 80, align: "center" , itemTemplate: function (_, item) {
|
||||||
{ "noticeNo": 9, "noticeType": "01", "title": "대출 목록 제목입니다.", "readCount": 7, "regDate": "2021-07-11" }
|
var btn = $("<button type='button'>").text("연장").click(function (e) {
|
||||||
];
|
alert("Clicked!");
|
||||||
|
e.stopPropagation();
|
||||||
// 그리드내 콤보박스 값
|
});
|
||||||
var noticeTypes = [
|
return $("<div>").append(item.loanExtension).append(" ").append(btn);
|
||||||
{ Name: "공지" , Id: "01" },
|
}
|
||||||
{ Name: "자료" , Id: "02" },
|
}
|
||||||
{ Name: "모집" , Id: "03" },
|
]
|
||||||
{ Name: "입찰" , Id: "04" },
|
});
|
||||||
{ Name: "발표" , Id: "05" },
|
|
||||||
{ Name: "이벤트", Id: "06" }
|
// 페이지 크기 변경시 재조회
|
||||||
];
|
$("#pageSize").on("change", function(e) {
|
||||||
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
// 그리드 생성
|
});
|
||||||
$("#jsGrid").jsGrid({
|
|
||||||
width: "100%",
|
// 검색 버튼 클릭
|
||||||
height: "100%",
|
$("#btnSearch").on("click", function(e) {
|
||||||
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
inserting: false,
|
});
|
||||||
editing: false,
|
|
||||||
sorting: true,
|
//초기 자료 조회
|
||||||
paging: true,
|
fn_search_article();
|
||||||
pageSize: 10,
|
|
||||||
pageButtonCount: 10,
|
}; // window.onload
|
||||||
pageIndex: 1,
|
|
||||||
pageFirstText: " << ",
|
|
||||||
pagePrevText: " < ",
|
// 선택한 게시글 상세 보기로 이동
|
||||||
pageLastText: " >> ",
|
function fn_view_detail(articleNo) {
|
||||||
pageNextText: " > ",
|
$("#articleNo").val(articleNo);
|
||||||
pagerFormat: "{first} {prev} {pages} {next} {last}",
|
$("#articleForm").attr("action", "${pageContext.request.contextPath}/board/selectQnA.do");
|
||||||
|
$("#articleForm").submit();
|
||||||
|
}
|
||||||
/* 이하만 설정 */
|
|
||||||
data: clients,
|
// 그리드 데이터 조회 호출
|
||||||
|
function fn_search_article(pageSize, pageIndex) {
|
||||||
fields: [
|
$("#jsGrid").jsGrid("search"
|
||||||
{ title:"번호", name: "noticeNo" , type: "number" , width: 50, align: "center"},
|
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
|
||||||
{ title:"유형", name: "noticeType", type: "select", width: 80, align: "center", items: noticeTypes, valueField: "Id", textField: "Name" },
|
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
|
||||||
{ title:"제목", name: "title", type: "text" , width: 200, align: "left" },
|
}
|
||||||
{ title:"조회수", name: "readCount", type: "number", width: 50, align: "center" },
|
);
|
||||||
{ title:"등록일", name: "regDate", type: "text", width: 100, align: "center"}
|
}
|
||||||
]
|
|
||||||
});
|
</script>
|
||||||
|
</head>
|
||||||
function fn_search_article() {
|
|
||||||
var searchKeyword = document.articleForm.searchKeyword.value;
|
<body>
|
||||||
var pageIndex = document.articleForm.pageIndex.value;
|
|
||||||
var pageSize = document.articleForm.pageSize.value;
|
<h1>${pageTitle }</h1>
|
||||||
|
|
||||||
var inputData = {
|
<form name="articleForm" id="articleForm"
|
||||||
"searchKeyword" : searchKeyword /*encodeURIComponent(searchKeyword)*/
|
method="post">
|
||||||
, "pageIndex" : pageIndex
|
|
||||||
, "pageSize": pageSize};
|
<!-- 검색조건 -->
|
||||||
|
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
|
||||||
//lert(JSON.stringify(inputData));
|
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
|
||||||
}
|
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
|
||||||
|
</c:forEach>
|
||||||
function fn_init() {
|
</select>
|
||||||
|
|
||||||
}
|
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
|
||||||
</script>
|
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
|
||||||
|
<input type="button" name="btnSearch" id="btnSearch" value="검색" />
|
||||||
</body>
|
|
||||||
</html>
|
<div id="jsGrid" name="jsGrid" style="height: 100%"></div>
|
||||||
|
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
|
||||||
|
<input type="button" value="대출 취소목록" onClick="location.href='${pageContext.request.contextPath}/rent/listCanceledRentItems.do'">
|
||||||
|
<input type="button" value="반납 연기" onClick="location.href='${pageContext.request.contextPath}/rent/listPostpones.do'">
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@ -0,0 +1,179 @@
|
|||||||
|
<%
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* @Class Name : listRequestsForViewingItem.jsp
|
||||||
|
*
|
||||||
|
* @Description : 열람 요청을 조회한다.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 수정일 수정자 수정내용
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 2021. 7. 21. JSYOO 최초 생성
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
||||||
|
* @since 2021. 7. 21.
|
||||||
|
* @version 1.0
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
%>
|
||||||
|
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
|
||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
|
||||||
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
||||||
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||||
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
|
||||||
|
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||||
|
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
||||||
|
|
||||||
|
<c:set var="pageTitle">열람 요청</c:set>
|
||||||
|
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>${pageTitle}</title>
|
||||||
|
|
||||||
|
<!-- GRID -->
|
||||||
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" />
|
||||||
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" />
|
||||||
|
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script>
|
||||||
|
|
||||||
|
<script type="text/javaScript" language="javascript">
|
||||||
|
|
||||||
|
window.onload = function() {
|
||||||
|
//=======================================================
|
||||||
|
// 그리드 생성 환경설정
|
||||||
|
//=======================================================
|
||||||
|
$("#jsGrid").jsGrid({
|
||||||
|
pageSize : $("#pageSize").val(),
|
||||||
|
controller: {
|
||||||
|
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
|
||||||
|
var data = $.Deferred();
|
||||||
|
//======================================
|
||||||
|
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
|
||||||
|
//======================================
|
||||||
|
var reqUrl = "${pageContext.request.contextPath}/rent/listRequestsForViewingItemAjax.do";
|
||||||
|
var searchKeyword = document.articleForm.searchKeyword.value;
|
||||||
|
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
|
||||||
|
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
|
||||||
|
|
||||||
|
$("#pageIndex").val(pageIndex);
|
||||||
|
|
||||||
|
var inputData = {
|
||||||
|
"searchKeyword" : searchKeyword
|
||||||
|
, "pageIndex" : pageIndex
|
||||||
|
, "pageSize": pageSize};
|
||||||
|
|
||||||
|
|
||||||
|
//--------------------------------------
|
||||||
|
// 요청 처리
|
||||||
|
//--------------------------------------
|
||||||
|
$.ajax({
|
||||||
|
type: "post",
|
||||||
|
contentType: "application/json; charset=utf-8",
|
||||||
|
url: reqUrl,
|
||||||
|
dataType: "json",
|
||||||
|
data: JSON.stringify(inputData),
|
||||||
|
}).done(function(response){
|
||||||
|
<%
|
||||||
|
// 그리드 데이터 예시 :
|
||||||
|
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
|
||||||
|
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
|
||||||
|
%>
|
||||||
|
data.resolve(JSON.parse(response));
|
||||||
|
});
|
||||||
|
return data.promise();
|
||||||
|
} // loadData
|
||||||
|
},
|
||||||
|
|
||||||
|
rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수
|
||||||
|
|
||||||
|
// 클릭된 행의 자료 객체
|
||||||
|
var getData = args.item;
|
||||||
|
|
||||||
|
// 추출할 컬럼의 데이터 가져오기
|
||||||
|
var articleNo = getData["articleNo"];
|
||||||
|
|
||||||
|
// 상세 내용 보기
|
||||||
|
fn_view_detail(articleNo);
|
||||||
|
},
|
||||||
|
|
||||||
|
//======================================
|
||||||
|
// 그리드 컬럼 정의 (각 요청에 맞게 조정)
|
||||||
|
//======================================
|
||||||
|
fields: [
|
||||||
|
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
|
||||||
|
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
|
||||||
|
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
|
||||||
|
{ title:"저자", name: "author", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"요청일자", name: "reqDate", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"상태", name: "state", type: "text", width: 100, align: "center"},
|
||||||
|
{ title:"열람기간", name: "readingPeriod", type: "text", width: 80, align: "center"}
|
||||||
|
]
|
||||||
|
});
|
||||||
|
|
||||||
|
// 페이지 크기 변경시 재조회
|
||||||
|
$("#pageSize").on("change", function(e) {
|
||||||
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
|
});
|
||||||
|
|
||||||
|
// 검색 버튼 클릭
|
||||||
|
$("#btnSearch").on("click", function(e) {
|
||||||
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
|
});
|
||||||
|
|
||||||
|
//초기 자료 조회
|
||||||
|
fn_search_article();
|
||||||
|
|
||||||
|
}; // window.onload
|
||||||
|
|
||||||
|
|
||||||
|
// 선택한 게시글 상세 보기로 이동
|
||||||
|
function fn_view_detail(articleNo) {
|
||||||
|
$("#articleNo").val(articleNo);
|
||||||
|
$("#articleForm").attr("action", "${pageContext.request.contextPath}/rent/selectRequestInfoForViewingItem.do");
|
||||||
|
$("#articleForm").submit();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 그리드 데이터 조회 호출
|
||||||
|
function fn_search_article(pageSize, pageIndex) {
|
||||||
|
$("#jsGrid").jsGrid("search"
|
||||||
|
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
|
||||||
|
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<h1>${pageTitle }</h1>
|
||||||
|
|
||||||
|
<form name="articleForm" id="articleForm"
|
||||||
|
method="post">
|
||||||
|
|
||||||
|
<!-- 검색조건 -->
|
||||||
|
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
|
||||||
|
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
|
||||||
|
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
|
||||||
|
</c:forEach>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
|
||||||
|
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
|
||||||
|
<input type="button" name="btnSearch" id="btnSearch" value="검색" />
|
||||||
|
|
||||||
|
<div id="jsGrid" name="jsGrid" style="height: 100%"></div>
|
||||||
|
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@ -1,181 +1,371 @@
|
|||||||
<%
|
<<<<<<< HEAD
|
||||||
/**
|
<%
|
||||||
* <pre>
|
/**
|
||||||
* @Class Name : listReserVations.jsp
|
* <pre>
|
||||||
*
|
* @Class Name : listReserVations.jsp
|
||||||
* @Description : 대출 예약 목록을 조회한다.
|
*
|
||||||
*
|
* @Description : 대출 예약 목록을 조회한다.
|
||||||
*
|
*
|
||||||
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
*
|
||||||
*
|
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
||||||
* </pre>
|
*
|
||||||
*
|
* </pre>
|
||||||
* @ ------------ -------- ---------------------------
|
*
|
||||||
* @ 수정일 수정자 수정내용
|
* @ ------------ -------- ---------------------------
|
||||||
* @ ------------ -------- ---------------------------
|
* @ 수정일 수정자 수정내용
|
||||||
* @ 2021. 7. 21. JSYOO 최초 생성
|
* @ ------------ -------- ---------------------------
|
||||||
*
|
* @ 2021. 7. 21. JSYOO 최초 생성
|
||||||
*
|
*
|
||||||
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
*
|
||||||
* @since 2021. 7. 21.
|
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
||||||
* @version 1.0
|
* @since 2021. 7. 21.
|
||||||
*
|
* @version 1.0
|
||||||
*/
|
*
|
||||||
%>
|
*/
|
||||||
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
|
%>
|
||||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
|
||||||
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
|
||||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
||||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||||
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
|
||||||
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||||
|
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
||||||
<c:set var="pageTitle">대출 예약</c:set>
|
|
||||||
|
<c:set var="pageTitle">대출 예약 목록</c:set>
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
<!DOCTYPE html>
|
||||||
<head>
|
<html>
|
||||||
<title>${pageTitle}</title>
|
<head>
|
||||||
|
<title>${pageTitle}</title>
|
||||||
<!-- GRID -->
|
|
||||||
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" />
|
<!-- GRID -->
|
||||||
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" />
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" />
|
||||||
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script>
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" />
|
||||||
|
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script>
|
||||||
</head>
|
|
||||||
|
<script type="text/javaScript" language="javascript">
|
||||||
<body onload="fn_init()">
|
|
||||||
|
window.onload = function() {
|
||||||
<h1>대출 예약</h1>
|
//=======================================================
|
||||||
|
// 그리드 생성 환경설정
|
||||||
<form name="articleForm"
|
//=======================================================
|
||||||
action="${pageContext.request.contextPath}/board/listQnAs.do"
|
$("#jsGrid").jsGrid({
|
||||||
method="post"
|
pageSize : $("#pageSize").val(),
|
||||||
onSubmit="fn_search_article(); return false;">
|
controller: {
|
||||||
|
loadData: function (filter) { // 그리드에 데이터를 가져올 때 실팽되는 함수
|
||||||
<!-- 검색조건 -->
|
var data = $.Deferred();
|
||||||
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
|
//======================================
|
||||||
<option value="10">10개씩 보기</option>
|
// 요청 정보 구성 : 시작 (각 요청에 맞게 조정)
|
||||||
<option value="50">50개씩 보기</option>
|
//======================================
|
||||||
<option value="100">100개씩 보기</option>
|
var reqUrl = "${pageContext.request.contextPath}/rent/listReservationsAjax.do";
|
||||||
</select>
|
var searchKeyword = document.articleForm.searchKeyword.value;
|
||||||
|
var pageIndex = ( filter && filter.pageIndex ? filter.pageIndex : $("#pageIndex").val());
|
||||||
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="1" size="5" maxlength="5" />
|
var pageSize = ( filter && filter.pageSize ? filter.pageSize : $("#pageSize").val());
|
||||||
|
|
||||||
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="" size="35" maxlength="50" />
|
$("#pageIndex").val(pageIndex);
|
||||||
|
|
||||||
<input type="submit" name="btnSearch" id="btnSearch" value="검색" />
|
var inputData = {
|
||||||
|
"searchKeyword" : searchKeyword
|
||||||
<input type="button" name="btnNew" id="btnNew" value="글쓰기"
|
, "pageIndex" : pageIndex
|
||||||
onclick="javascript:location.href='${pageContext.request.contextPath}/board/insertQnAForm.do';" />
|
, "pageSize": pageSize};
|
||||||
|
|
||||||
<div id="jsGrid" name="jsGrid" ></div>
|
|
||||||
|
//--------------------------------------
|
||||||
</form>
|
// 요청 처리
|
||||||
|
//--------------------------------------
|
||||||
<script type="text/javaScript" language="javascript">
|
$.ajax({
|
||||||
// 그리드 데이터
|
type: "post",
|
||||||
var clients = [
|
contentType: "application/json; charset=utf-8",
|
||||||
{ "noticeNo": 1, "noticeType": "01", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
url: reqUrl,
|
||||||
{ "noticeNo": 2, "noticeType": "02", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
dataType: "json",
|
||||||
{ "noticeNo": 3, "noticeType": "03", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
data: JSON.stringify(inputData),
|
||||||
{ "noticeNo": 4, "noticeType": "04", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
}).done(function(response){
|
||||||
{ "noticeNo": 5, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
<%
|
||||||
{ "noticeNo": 6, "noticeType": "06", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// 그리드 데이터 예시 :
|
||||||
{ "noticeNo": 7, "noticeType": "06", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// (1) 페이징 클라이언트에서 수행하는 경우(pageloading = false) : [{ "articleNo": 1, "articleType": "01" }, { "articleNo": 2, "articleType": "02" }]
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// (2) 페이징 서버에서 수행하는 경우(pageloading = true) : {data: [{...}], itemsCount: 255}
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
%>
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
data.resolve(JSON.parse(response));
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
});
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
return data.promise();
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
} // loadData
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
rowClick: function(args) { // 행 클릭 시, 실행되는 이벤트 함수
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// 클릭된 행의 자료 객체
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
var getData = args.item;
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// 추출할 컬럼의 데이터 가져오기
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
var articleNo = getData["articleNo"];
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// 상세 내용 보기
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
fn_view_detail(articleNo);
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
//======================================
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
// 그리드 컬럼 정의 (각 요청에 맞게 조정)
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
//======================================
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
fields: [
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"번호", name: "articleNo" , type: "number" , width: 50, align: "center"},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"자료명", name: "rentItem", type: "text" , width: 200, align: "center" },
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"관리번호", name: "ctrlNum", type: "number", width: 50, align: "center" },
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"저자", name: "author", type: "text", width: 100, align: "center"},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"출판사", name: "publisher", type: "text", width: 100, align: "center"},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"예약일", name: "rentDate", type: "text", width: 100, align: "center"},
|
||||||
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
{ title:"반납예정일", name: "retDueDate", type: "text", width: 100, align: "center"},
|
||||||
{ "noticeNo": 9, "noticeType": "01", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" }
|
{ title:"예약취소", name:"", type: "text", width: 80, align: "center" , itemTemplate: function (_, item) {
|
||||||
];
|
var btn = $("<button type='button'>").text("취소").click(function (e) {
|
||||||
|
alert("Clicked!");
|
||||||
// 그리드내 콤보박스 값
|
e.stopPropagation();
|
||||||
var noticeTypes = [
|
});
|
||||||
{ Name: "공지" , Id: "01" },
|
return $("<div>").append(item.loanExtension).append(" ").append(btn);
|
||||||
{ Name: "자료" , Id: "02" },
|
}
|
||||||
{ Name: "모집" , Id: "03" },
|
}
|
||||||
{ Name: "입찰" , Id: "04" },
|
]
|
||||||
{ Name: "발표" , Id: "05" },
|
});
|
||||||
{ Name: "이벤트", Id: "06" }
|
|
||||||
];
|
// 페이지 크기 변경시 재조회
|
||||||
|
$("#pageSize").on("change", function(e) {
|
||||||
// 그리드 생성
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
$("#jsGrid").jsGrid({
|
});
|
||||||
width: "100%",
|
|
||||||
height: "100%",
|
// 검색 버튼 클릭
|
||||||
|
$("#btnSearch").on("click", function(e) {
|
||||||
inserting: false,
|
fn_search_article($("#pageSize").val(), 1);
|
||||||
editing: false,
|
});
|
||||||
sorting: true,
|
|
||||||
paging: true,
|
//초기 자료 조회
|
||||||
pageSize: 10,
|
fn_search_article();
|
||||||
pageButtonCount: 10,
|
|
||||||
pageIndex: 1,
|
}; // window.onload
|
||||||
pageFirstText: " << ",
|
|
||||||
pagePrevText: " < ",
|
|
||||||
pageLastText: " >> ",
|
// 선택한 게시글 상세 보기로 이동
|
||||||
pageNextText: " > ",
|
function fn_view_detail(articleNo) {
|
||||||
pagerFormat: "{first} {prev} {pages} {next} {last}",
|
$("#articleNo").val(articleNo);
|
||||||
|
$("#articleForm").attr("action", "${pageContext.request.contextPath}/board/selectQnA.do");
|
||||||
|
$("#articleForm").submit();
|
||||||
/* 이하만 설정 */
|
}
|
||||||
data: clients,
|
|
||||||
|
// 그리드 데이터 조회 호출
|
||||||
fields: [
|
function fn_search_article(pageSize, pageIndex) {
|
||||||
{ title:"번호", name: "noticeNo" , type: "number" , width: 50, align: "center"},
|
$("#jsGrid").jsGrid("search"
|
||||||
{ title:"유형", name: "noticeType", type: "select", width: 80, align: "center", items: noticeTypes, valueField: "Id", textField: "Name" },
|
, {'pageSize' : (pageSize ? pageSize : fn_getIntValue("pageSize", ${pageSize})),
|
||||||
{ title:"제목", name: "title", type: "text" , width: 200, align: "left" },
|
'pageIndex': (pageIndex ? pageIndex : fn_getIntValue("pageIndex", 1))
|
||||||
{ title:"조회수", name: "readCount", type: "number", width: 50, align: "center" },
|
}
|
||||||
{ title:"등록일", name: "regDate", type: "text", width: 100, align: "center"}
|
);
|
||||||
]
|
}
|
||||||
});
|
|
||||||
|
</script>
|
||||||
function fn_search_article() {
|
</head>
|
||||||
var searchKeyword = document.articleForm.searchKeyword.value;
|
|
||||||
var pageIndex = document.articleForm.pageIndex.value;
|
<body>
|
||||||
var pageSize = document.articleForm.pageSize.value;
|
|
||||||
|
<h1>${pageTitle }</h1>
|
||||||
var inputData = {
|
|
||||||
"searchKeyword" : searchKeyword /*encodeURIComponent(searchKeyword)*/
|
<form name="articleForm" id="articleForm"
|
||||||
, "pageIndex" : pageIndex
|
method="post">
|
||||||
, "pageSize": pageSize};
|
|
||||||
|
<!-- 검색조건 -->
|
||||||
//lert(JSON.stringify(inputData));
|
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
|
||||||
}
|
<c:forEach var="pageSizeItem" items="${pageSizeCodes}" varStatus="status">
|
||||||
|
<option value="<c:out value="${pageSizeItem.code }" />" <c:if test="${pageSizeItem.code == pageSize }">selected</c:if> ><c:out value="${pageSizeItem.name }" /></option>
|
||||||
function fn_init() {
|
</c:forEach>
|
||||||
|
</select>
|
||||||
}
|
|
||||||
</script>
|
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex }" size="5" maxlength="5" />
|
||||||
|
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword }" size="35" maxlength="50" />
|
||||||
</body>
|
<input type="button" name="btnSearch" id="btnSearch" value="검색" />
|
||||||
</html>
|
|
||||||
|
<div id="jsGrid" name="jsGrid" style="height: 100%"></div>
|
||||||
|
<input type="text" name="articleNo" id="articleNo" value="" title="선택글번호" readonly />
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
=======
|
||||||
|
<%
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* @Class Name : listReserVations.jsp
|
||||||
|
*
|
||||||
|
* @Description : 대출 예약 목록을 조회한다.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 수정일 수정자 수정내용
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 2021. 7. 21. JSYOO 최초 생성
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
||||||
|
* @since 2021. 7. 21.
|
||||||
|
* @version 1.0
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
%>
|
||||||
|
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
|
||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
|
||||||
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
||||||
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||||
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
|
||||||
|
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||||
|
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
||||||
|
|
||||||
|
<c:set var="pageTitle">대출 예약</c:set>
|
||||||
|
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>${pageTitle}</title>
|
||||||
|
|
||||||
|
<!-- GRID -->
|
||||||
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid.css" />
|
||||||
|
<link type="text/css" rel="stylesheet" href="/nlib/js/jsgrid/nlib-jsgrid-theme.css" />
|
||||||
|
<script src="/nlib/js/jsgrid/nlib-jsgrid.js"></script>
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body onload="fn_init()">
|
||||||
|
|
||||||
|
<h1>대출 예약</h1>
|
||||||
|
|
||||||
|
<form name="articleForm"
|
||||||
|
action="${pageContext.request.contextPath}/board/listQnAs.do"
|
||||||
|
method="post"
|
||||||
|
onSubmit="fn_search_article(); return false;">
|
||||||
|
|
||||||
|
<!-- 검색조건 -->
|
||||||
|
<select name="pageSize" id="pageSize" title="목록에 보여줄 글 개수">
|
||||||
|
<option value="10">10개씩 보기</option>
|
||||||
|
<option value="50">50개씩 보기</option>
|
||||||
|
<option value="100">100개씩 보기</option>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="1" size="5" maxlength="5" />
|
||||||
|
|
||||||
|
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="" size="35" maxlength="50" />
|
||||||
|
|
||||||
|
<input type="submit" name="btnSearch" id="btnSearch" value="검색" />
|
||||||
|
|
||||||
|
<input type="button" name="btnNew" id="btnNew" value="글쓰기"
|
||||||
|
onclick="javascript:location.href='${pageContext.request.contextPath}/board/insertQnAForm.do';" />
|
||||||
|
|
||||||
|
<div id="jsGrid" name="jsGrid" ></div>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<script type="text/javaScript" language="javascript">
|
||||||
|
// 그리드 데이터
|
||||||
|
var clients = [
|
||||||
|
{ "noticeNo": 1, "noticeType": "01", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 2, "noticeType": "02", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 3, "noticeType": "03", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 4, "noticeType": "04", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 5, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 6, "noticeType": "06", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 7, "noticeType": "06", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 8, "noticeType": "05", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" },
|
||||||
|
{ "noticeNo": 9, "noticeType": "01", "title": "대출예약 제목입니다.", "readCount": 7, "regDate": "2021-07-11" }
|
||||||
|
];
|
||||||
|
|
||||||
|
// 그리드내 콤보박스 값
|
||||||
|
var noticeTypes = [
|
||||||
|
{ Name: "공지" , Id: "01" },
|
||||||
|
{ Name: "자료" , Id: "02" },
|
||||||
|
{ Name: "모집" , Id: "03" },
|
||||||
|
{ Name: "입찰" , Id: "04" },
|
||||||
|
{ Name: "발표" , Id: "05" },
|
||||||
|
{ Name: "이벤트", Id: "06" }
|
||||||
|
];
|
||||||
|
|
||||||
|
// 그리드 생성
|
||||||
|
$("#jsGrid").jsGrid({
|
||||||
|
width: "100%",
|
||||||
|
height: "100%",
|
||||||
|
|
||||||
|
inserting: false,
|
||||||
|
editing: false,
|
||||||
|
sorting: true,
|
||||||
|
paging: true,
|
||||||
|
pageSize: 10,
|
||||||
|
pageButtonCount: 10,
|
||||||
|
pageIndex: 1,
|
||||||
|
pageFirstText: " << ",
|
||||||
|
pagePrevText: " < ",
|
||||||
|
pageLastText: " >> ",
|
||||||
|
pageNextText: " > ",
|
||||||
|
pagerFormat: "{first} {prev} {pages} {next} {last}",
|
||||||
|
|
||||||
|
|
||||||
|
/* 이하만 설정 */
|
||||||
|
data: clients,
|
||||||
|
|
||||||
|
fields: [
|
||||||
|
{ title:"번호", name: "noticeNo" , type: "number" , width: 50, align: "center"},
|
||||||
|
{ title:"유형", name: "noticeType", type: "select", width: 80, align: "center", items: noticeTypes, valueField: "Id", textField: "Name" },
|
||||||
|
{ title:"제목", name: "title", type: "text" , width: 200, align: "left" },
|
||||||
|
{ title:"조회수", name: "readCount", type: "number", width: 50, align: "center" },
|
||||||
|
{ title:"등록일", name: "regDate", type: "text", width: 100, align: "center"}
|
||||||
|
]
|
||||||
|
});
|
||||||
|
|
||||||
|
function fn_search_article() {
|
||||||
|
var searchKeyword = document.articleForm.searchKeyword.value;
|
||||||
|
var pageIndex = document.articleForm.pageIndex.value;
|
||||||
|
var pageSize = document.articleForm.pageSize.value;
|
||||||
|
|
||||||
|
var inputData = {
|
||||||
|
"searchKeyword" : searchKeyword /*encodeURIComponent(searchKeyword)*/
|
||||||
|
, "pageIndex" : pageIndex
|
||||||
|
, "pageSize": pageSize};
|
||||||
|
|
||||||
|
//lert(JSON.stringify(inputData));
|
||||||
|
}
|
||||||
|
|
||||||
|
function fn_init() {
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
>>>>>>> refs/remotes/origin/master
|
||||||
|
|||||||
@ -0,0 +1,169 @@
|
|||||||
|
<%
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* @Class Name : selectRequestInfoForViewingItem.jsp
|
||||||
|
*
|
||||||
|
* @Description : 열람요청 상세내용을 조회한다.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 수정일 수정자 수정내용
|
||||||
|
* @ ------------ -------- ---------------------------
|
||||||
|
* @ 2021. 7. 30. JSYOO 최초 생성
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @author 이씨플라자 * DIGITALSHIP JSYOO
|
||||||
|
* @since 2021. 7. 30.
|
||||||
|
* @version 1.0
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
%>
|
||||||
|
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
|
||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui" %>
|
||||||
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
||||||
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||||
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
|
||||||
|
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||||
|
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
||||||
|
|
||||||
|
<c:set var="pageTitle">열람요청 - 상세조회</c:set>
|
||||||
|
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="ko">
|
||||||
|
<head>
|
||||||
|
<title>${pageTitle}</title>
|
||||||
|
|
||||||
|
<script type="text/javaScript" language="javascript">
|
||||||
|
|
||||||
|
//선택한 게시글 상세 보기로 이동
|
||||||
|
function fn_view_detail(articleNo) {
|
||||||
|
$("#articleNo").val(articleNo);
|
||||||
|
$("#articleForm").attr("action", "${pageContext.request.contextPath}/rent/selectRequestInfoForViewingItem.do");
|
||||||
|
$("#articleForm").submit();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 선택한 게시글 상세 보기로 이동
|
||||||
|
function fn_list() {
|
||||||
|
$("#articleForm").attr("action", "${pageContext.request.contextPath}/rent/listRequestForViewingItem.do");
|
||||||
|
$("#articleForm").submit();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 수정 화면 이동
|
||||||
|
function fn_updateForm(passwd) {
|
||||||
|
if(passwd == null || passwd == "") {
|
||||||
|
alert("수정을 위한 게시물의 비밀번호를 입력하여 주시기 바랍니다.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$("#articlePassword").val(passwd);
|
||||||
|
$("#articleForm").attr("action", "${pageContext.request.contextPath}/rent/updateRequestInfoForViewingItemForm.do");
|
||||||
|
$("#articleForm").submit();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 게시글 수정위한 비밀번호 확인
|
||||||
|
function fn_updatePassword() {
|
||||||
|
fn_promptPassword("수정을 위한 글 비밀번호를 입력하여 주시기 바랍니다.", "111", "fn_updateForm")
|
||||||
|
}
|
||||||
|
|
||||||
|
// 게시글 삭제위한 비밀번호 확인
|
||||||
|
function fn_deletePassword() {
|
||||||
|
fn_promptPassword("삭제를 위한 글 비밀번호를 입력하여 주시기 바랍니다.", "111", "fn_delete")
|
||||||
|
}
|
||||||
|
|
||||||
|
// 삭제 처리
|
||||||
|
function fn_delete(passwd) {
|
||||||
|
if(passwd == null || passwd == "") {
|
||||||
|
alert("삭제를 위한 게시물의 비밀번호를 입력하여 주시기 바랍니다.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$("#articlePassword").val(passwd);
|
||||||
|
$("#articleForm").attr("action", "${pageContext.request.contextPath}/rent/deleteRequestInfoForViewingItem.do");
|
||||||
|
$("#articleForm").submit();
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<h1>${pageTitle }</h1>
|
||||||
|
|
||||||
|
메시지 : <span style="color:red;">${message }</span>
|
||||||
|
<br />
|
||||||
|
|
||||||
|
<form name="articleForm" id="articleForm"
|
||||||
|
action="${pageContext.request.contextPath}/board/listQnAs.do"
|
||||||
|
method="post">
|
||||||
|
|
||||||
|
<!-- HIDDEN 영역 : 시작 -->
|
||||||
|
<input type="text" name="pageIndex" id="pageIndex" title="페이지번호" value="${pageIndex}" readonly />
|
||||||
|
<input type="text" name="pageSize" id="pageSize" title="목록에 보여줄 글개수" value="${pageSize}" readonly />
|
||||||
|
<input type="text" name="searchKeyword" id="searchKeyword" title="검색어" value="${searchKeyword}" readonly />
|
||||||
|
<input type="text" name="articleNo" id="articleNo" title="선택글번호" value="${articleNo}" readonly />
|
||||||
|
<input type="text" name="articlePassword" id="articlePassword" title="글비밀번호" value="${articlePassword}" readonly />
|
||||||
|
<!-- HIDDEN 영역 : 종료 -->
|
||||||
|
|
||||||
|
<table class="table_content" style="width:100% !important; margin-top: 20px;">
|
||||||
|
<tr>
|
||||||
|
<th>유형</th>
|
||||||
|
<td>${article.articleTypeName }</td>
|
||||||
|
<th>작성자 : ${article.regUserName }</th>
|
||||||
|
<th>작성일 : ${article.regDate }</th>
|
||||||
|
<th>상태 : ${article.repStatus }</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th rowspan="2">질문내용</th>
|
||||||
|
<td colspan="4">${article.contentQeust}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">${article.contentQeustFile}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th rowspan="2">답변내용</th>
|
||||||
|
<td colspan="4">${article.contentReply}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">${article.contentReplyFile}</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
<table class="table_content" style="width:100% !important;">
|
||||||
|
<tr>
|
||||||
|
<th>이전글</th>
|
||||||
|
<td>${preArticle.articleTypeName }</td>
|
||||||
|
<td><a href="javascript:void(0)" onclick="fn_view_detail('${preArticle.articleNo }')">${preArticle.title }</a></td>
|
||||||
|
<th>작성자 : ${preArticle.regUserName }</th>
|
||||||
|
<th>작성일 : ${preArticle.regDate }</th>
|
||||||
|
<th>상태 : ${preArticle.repStatus }</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>다음글</th>
|
||||||
|
<td>${nextArticle.articleTypeName }</td>
|
||||||
|
<td><a href="javascript:void(0)" onclick="fn_view_detail('${nextArticle.articleNo }')">${nextArticle.title }</a></td>
|
||||||
|
<th>작성자 : ${nextArticle.regUserName }</th>
|
||||||
|
<th>작성일 : ${nextArticle.regDate }</th>
|
||||||
|
<th>상태 : ${nextArticle.repStatus }</th>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<!-- 관련 작업 버튼 -->
|
||||||
|
<!--
|
||||||
|
<button type="button" name="btnList" id="btnList" class="float"
|
||||||
|
onclick="fn_list()">목록</button>
|
||||||
|
<button type="button" name="btnUpdate" id="btnUpdate" class="float"
|
||||||
|
onclick="fn_updatePassword()">수정</button>
|
||||||
|
<button type="button" name="btnDelete" id="btnDelete" class="float"
|
||||||
|
onclick="fn_deletePassword()">삭제</button> -->
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
Loading…
Reference in New Issue
Block a user