Merge remote-tracking branch 'origin/master'

Conflicts:
	src/main/java/nlib/col/service/RisVO.java
This commit is contained in:
KNKIM 2021-10-01 16:53:53 +09:00
commit 3d1234c882
28 changed files with 1556 additions and 168 deletions

View File

@ -7,7 +7,17 @@ public class PagingVO {
int pageIndex = 1; /* 페이지 번호 */ int pageIndex = 1; /* 페이지 번호 */
int pageSize = DEFAULT_PAGE_SIZE; /* 페이지 크기 (1페이지당 보여줄 자료건수) */ int pageSize = DEFAULT_PAGE_SIZE; /* 페이지 크기 (1페이지당 보여줄 자료건수) */
int totRecordCount; /* 총건수 */ int totRecordCount; /* 총건수 */
int pageStart = 0; /* 시작번호 (limit용)*/
public int getPageStart() {
return pageStart;
}
public void setPageStart(int pageStart) {
this.pageStart = pageStart;
}
public int getPageIndex() { public int getPageIndex() {
return pageIndex; return pageIndex;
} }

View File

@ -0,0 +1,10 @@
package nlib.col.service;
import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO;
public interface CartService
{
}

View File

@ -1,6 +1,8 @@
package nlib.col.service; package nlib.col.service;
import java.util.List;
import nlib.restful.service.DataApiReqVO; import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO; import nlib.restful.service.DataApiResVO;
@ -18,9 +20,8 @@ public interface CollectionService
public DataApiResVO selectItemInfo(DataApiReqVO reqVO); public DataApiResVO selectItemInfo(DataApiReqVO reqVO);
public DataApiResVO listInterests(DataApiReqVO reqVO); public RisVO selectRisInfo(RisVO vo);
public DataApiResVO deleteInterest(DataApiReqVO reqVO); public List<DeptVO> selectOrgList(CollectionVO vo);
} }

View File

@ -0,0 +1,100 @@
package nlib.col.service;
import nlib.cmm.service.PagingVO;
import java.io.Serializable;
/**
* <pre>
* @Class Name : CollectionVO.java
*
* @Description : 소장자료 관련 VO
*
*
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
*
* </pre>
*
* @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용
* @ ------------ -------- ---------------------------
* @ 2021. 9. 23. JSYOO 최초 생성
*
*
* @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 9. 28.
* @version 1.0
*
*/
public class CollectionVO extends PagingVO {
private String masterId; /* 마스터id */
private int mbInterestId; /* 관심 id */
private String mbInfoId; /* 회원 id */
private String title; /* 제목 */
private String rprsThumbUrl; /* 대표썸네일URL */
private String useYn; /* 사용여부 */
private String regDd; /* 등록일자 */
private String mngOrgNm; /* 관리처리과명 */
private String mngOrgCd; /* 관리처리과코드 */
public String getMasterId() {
return masterId;
}
public void setMasterId(String masterId) {
this.masterId = masterId;
}
public int getMbInterestId() {
return mbInterestId;
}
public void setMbInterestId(int mbInterestId) {
this.mbInterestId = mbInterestId;
}
public void setMbInterestId(String mbInterestId) {
this.mbInterestId = Integer.parseInt(mbInterestId);
}
public String getMbInfoId() {
return mbInfoId;
}
public void setMbInfoId(String mbInfoId) {
this.mbInfoId = mbInfoId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getRprsThumbUrl() {
return rprsThumbUrl;
}
public void setRprsThumbUrl(String rprsThumbUrl) {
this.rprsThumbUrl = rprsThumbUrl;
}
public String getUseYn() {
return useYn;
}
public void setUseYn(String useYn) {
this.useYn = useYn;
}
public String getRegDd() {
return regDd;
}
public void setRegDd(String regDd) {
this.regDd = regDd;
}
public String getMngOrgNm() {
return mngOrgNm;
}
public void setMngOrgNm(String mngOrgNm) {
this.mngOrgNm = mngOrgNm;
}
public String getMngOrgCd() {
return mngOrgCd;
}
public void setMngOrgCd(String mngOrgCd) {
this.mngOrgCd = mngOrgCd;
}
}

View File

@ -0,0 +1,244 @@
package nlib.col.service;
import nlib.cmm.service.PagingVO;
import java.io.Serializable;
/**
* <pre>
* @Class Name : DeptVO.java
*
* @Description : 부서(문화원) VO
*
*
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
*
* </pre>
*
* @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용
* @ ------------ -------- ---------------------------
* @ 2021. 9. 30. JSYOO 최초 생성
*
*
* @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 9. 30.
* @version 1.0
*
*/
public class DeptVO {
private String deptSeq; /* 조직코드 */
private String orgCd; /* 처리과코드 */
private String deptNm; /* 조직명 */
private String deptAbbrNm; /* 조직약칭 */
private String hupperDeptSeq; /* 최상위조직코드 */
private String upDeptSeq; /* 상위조직코드 */
private String topDeptYn; /* 최상위여부 */
private String deptLv; /* 기관레벨-차수 */
private String sortSeq; /* 서열 */
private String closeFlag; /* 폐지여부(0:미폐지, 1:폐지) */
private String chngRsn; /* 변경사유 */
private String applyStartYmd; /* 적용시작일 */
private String applyCloseYmd; /* 적용종료일 */
private String syncYn; /* RMS연계여부 */
private String useYn; /* 사용여부 */
private String regId; /* 등록자 */
private String regDd; /* 등록일자 */
private String modId; /* 수정자 */
private String modDd; /* 수정일자 */
private String regionCd; /* 지역 */
private String remark; /* 비고 */
private String cloudId; /* 클라우드ID */
private String zipCode; /* 우편번호 */
private String address; /* 주소 */
private String addressDetail; /* 상세주소 */
private String phoneNo; /* 전화번호 */
private String faxNo; /* 팩스번호 */
private String latitude; /* 위도 */
private String longitude; /* 경도 */
private String domainHostNm; /* 도메인호스트명 */
public String getDeptSeq() {
return deptSeq;
}
public void setDeptSeq(String deptSeq) {
this.deptSeq = deptSeq;
}
public String getOrgCd() {
return orgCd;
}
public void setOrgCd(String orgCd) {
this.orgCd = orgCd;
}
public String getDeptNm() {
return deptNm;
}
public void setDeptNm(String deptNm) {
this.deptNm = deptNm;
}
public String getDeptAbbrNm() {
return deptAbbrNm;
}
public void setDeptAbbrNm(String deptAbbrNm) {
this.deptAbbrNm = deptAbbrNm;
}
public String getHupperDeptSeq() {
return hupperDeptSeq;
}
public void setHupperDeptSeq(String hupperDeptSeq) {
this.hupperDeptSeq = hupperDeptSeq;
}
public String getUpDeptSeq() {
return upDeptSeq;
}
public void setUpDeptSeq(String upDeptSeq) {
this.upDeptSeq = upDeptSeq;
}
public String getTopDeptYn() {
return topDeptYn;
}
public void setTopDeptYn(String topDeptYn) {
this.topDeptYn = topDeptYn;
}
public String getDeptLv() {
return deptLv;
}
public void setDeptLv(String deptLv) {
this.deptLv = deptLv;
}
public String getSortSeq() {
return sortSeq;
}
public void setSortSeq(String sortSeq) {
this.sortSeq = sortSeq;
}
public String getCloseFlag() {
return closeFlag;
}
public void setCloseFlag(String closeFlag) {
this.closeFlag = closeFlag;
}
public String getChngRsn() {
return chngRsn;
}
public void setChngRsn(String chngRsn) {
this.chngRsn = chngRsn;
}
public String getApplyStartYmd() {
return applyStartYmd;
}
public void setApplyStartYmd(String applyStartYmd) {
this.applyStartYmd = applyStartYmd;
}
public String getApplyCloseYmd() {
return applyCloseYmd;
}
public void setApplyCloseYmd(String applyCloseYmd) {
this.applyCloseYmd = applyCloseYmd;
}
public String getSyncYn() {
return syncYn;
}
public void setSyncYn(String syncYn) {
this.syncYn = syncYn;
}
public String getUseYn() {
return useYn;
}
public void setUseYn(String useYn) {
this.useYn = useYn;
}
public String getRegId() {
return regId;
}
public void setRegId(String regId) {
this.regId = regId;
}
public String getRegDd() {
return regDd;
}
public void setRegDd(String regDd) {
this.regDd = regDd;
}
public String getModId() {
return modId;
}
public void setModId(String modId) {
this.modId = modId;
}
public String getModDd() {
return modDd;
}
public void setModDd(String modDd) {
this.modDd = modDd;
}
public String getRegionCd() {
return regionCd;
}
public void setRegionCd(String regionCd) {
this.regionCd = regionCd;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public String getCloudId() {
return cloudId;
}
public void setCloudId(String cloudId) {
this.cloudId = cloudId;
}
public String getZipCode() {
return zipCode;
}
public void setZipCode(String zipCode) {
this.zipCode = zipCode;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getAddressDetail() {
return addressDetail;
}
public void setAddressDetail(String addressDetail) {
this.addressDetail = addressDetail;
}
public String getPhoneNo() {
return phoneNo;
}
public void setPhoneNo(String phoneNo) {
this.phoneNo = phoneNo;
}
public String getFaxNo() {
return faxNo;
}
public void setFaxNo(String faxNo) {
this.faxNo = faxNo;
}
public String getLatitude() {
return latitude;
}
public void setLatitude(String latitude) {
this.latitude = latitude;
}
public String getLongitude() {
return longitude;
}
public void setLongitude(String longitude) {
this.longitude = longitude;
}
public String getDomainHostNm() {
return domainHostNm;
}
public void setDomainHostNm(String domainHostNm) {
this.domainHostNm = domainHostNm;
}
}

View File

@ -0,0 +1,20 @@
package nlib.col.service;
import java.util.List;
import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO;
public interface InterestService
{
public List<CollectionVO> listInterests(CollectionVO vo);
public int countListInterests(CollectionVO vo);
public void deleteInterests(List<Integer> mbInterestIdList, String mbInfoId);
public void insertInterest(CollectionVO vo);
public int countInterest(CollectionVO vo);
}

View File

@ -0,0 +1,10 @@
package nlib.col.service;
import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO;
public interface ReserveService
{
}

View File

@ -1,3 +1,4 @@
<<<<<<< HEAD
package nlib.col.service; package nlib.col.service;
import java.io.Serializable; import java.io.Serializable;
@ -150,3 +151,157 @@ public class RisVO implements Serializable {
this.orgNm = orgNm; this.orgNm = orgNm;
} }
} }
=======
package nlib.col.service;
import java.io.Serializable;
/**
* <pre>
* @Class Name : RisVO.java
*
* @Description : Ris 통신규약 항목 VO
*
*
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
*
* </pre>
*
* @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용
* @ ------------ -------- ---------------------------
* @ 2021. 9. 23. JSYOO 최초 생성
*
*
* @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 9. 23.
* @version 1.0
*
*/
public class RisVO implements Serializable {
/* 기존 지역 n 문화 사이트 RIS 항목 */
private String typeDivCd; /* 참조유형 TY */
private String title; /* 제목 TI */
private String subTitle; /* 부제목 T2 */
private String creatYyyy; /* 생산일자 (YYYY) PY */
private String keyword; /* 키워드 (ex: 수원사랑) KW */
private String UR; /* URL */
/*private String AB; 요약
private String DA; 날짜
private String LA; 언어 (ex: Korean) */
/* RIS 추가 항목 */
private String masterId; /* 자료번호 ID */
private String M3; /* 주제분야명 */
private String rprsThumbUrl; /* 썸네일이미지 URL L4 */
private String stakrmMngNo; /* 관리번호 M1 */
private String producer; /* 생산자(저자) A1 */
private String orgNm; /* 생산기관명 PP */
public String getTypeDivCd() {
return typeDivCd;
}
public String getTy() {
return typeDivCd;
}
public void setTypeDivCd(String typeDivCd) {
this.typeDivCd = typeDivCd;
}
public String getTitle() {
return title;
}
public String getTt() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getSubTitle() {
return subTitle;
}
public String getT2() {
return subTitle;
}
public void setSubTitle(String subTitle) {
this.subTitle = subTitle;
}
public String getCreatYyyy() {
return creatYyyy;
}
public String getPy() {
return creatYyyy;
}
public void setCreatYyyy(String creatYyyy) {
this.creatYyyy = creatYyyy;
}
public String getKeyword() {
return keyword;
}
public String getKw() {
return keyword;
}
public void setKeyword(String keyword) {
this.keyword = keyword;
}
public String getUR() {
return UR;
}
public void setUR(String uR) {
UR = uR;
}
public String getMasterId() {
return masterId;
}
public String getId() {
return masterId;
}
public void setMasterId(String masterId) {
this.masterId = masterId;
}
public String getM3() {
return M3;
}
public void setM3(String m3) {
M3 = m3;
}
public String getRprsThumbUrl() {
return rprsThumbUrl;
}
public String getL4() {
return rprsThumbUrl;
}
public void setRprsThumbUrl(String rprsThumbUrl) {
this.rprsThumbUrl = rprsThumbUrl;
}
public String getStakrmMngNo() {
return stakrmMngNo;
}
public String getM1() {
return stakrmMngNo;
}
public void setStakrmMngNo(String stakrmMngNo) {
this.stakrmMngNo = stakrmMngNo;
}
public String getProducer() {
return producer;
}
public String getA1() {
return producer;
}
public void setProducer(String producer) {
this.producer = producer;
}
public String getOrgNm() {
return orgNm;
}
public String getPp() {
return orgNm;
}
public void setOrgNm(String orgNm) {
this.orgNm = orgNm;
}
}
>>>>>>> refs/remotes/origin/master

View File

@ -0,0 +1,16 @@
package nlib.col.service.impl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Repository;
import nlib.restful.DataApi;
import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO;
@Repository("cartDAO")
public class CartDAO extends DataApi
{
private static final Logger log = LoggerFactory.getLogger(CartDAO.class);
}

View File

@ -0,0 +1,20 @@
package nlib.col.service.impl;
import javax.annotation.Resource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import nlib.col.service.CartService;
import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO;
@Service("cartService")
public class CartServiceImpl implements CartService
{
private static final Logger log = LoggerFactory.getLogger(CartServiceImpl.class);
@Resource(name="cartDAO")
private CartDAO cartDAO;
}

View File

@ -1,35 +1,47 @@
package nlib.col.service.impl; package nlib.col.service.impl;
import java.util.List;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import nlib.bbs.service.impl.BoardDAOApi; import nlib.col.service.CollectionVO;
import nlib.col.service.DeptVO;
import nlib.col.service.RisVO;
import nlib.restful.DataApi; import nlib.restful.DataApi;
import nlib.restful.service.DataApiReqVO; import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO; import nlib.restful.service.DataApiResVO;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Repository;
import egovframework.com.cmm.service.impl.EgovComAbstractDAO;
import egovframework.rte.psl.dataaccess.mapper.Mapper;
import nlib.cmm.service.NotificationVO;
import nlib.cmm.service.NlibProperty;
import nlib.user.service.NlibLoginVO;
import nlib.util.StringUtil;
@Repository("collectionDAO") @Repository("collectionDAO")
public class CollectionDAO extends DataApi public class CollectionDAO extends EgovComAbstractDAO
{ {
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 * @param reqVO
* @return * @return
*/ *//*
public DataApiResVO listItems(DataApiReqVO reqVO) { public DataApiResVO listItems(DataApiReqVO reqVO) {
reqVO.setReqUrl(RESOURCE_URI + "/listItems/list"); reqVO.setReqUrl(RESOURCE_URI + "/listItems/list");
return get(reqVO); return get(reqVO);
} }*/
public DataApiResVO insertInterest(DataApiReqVO reqVO) { public DataApiResVO insertInterest(DataApiReqVO reqVO) {
return null; return null;
@ -52,25 +64,26 @@ public class CollectionDAO extends DataApi
* *
* @param reqVO * @param reqVO
* @return * @return
*/ *//*
public DataApiResVO selectItemInfo(DataApiReqVO reqVO) { public DataApiResVO selectItemInfo(DataApiReqVO reqVO) {
reqVO.setReqUrl(RESOURCE_URI + "/listItems"); }*/
return get(reqVO);
}
/**
* 관심 자료 목록을 조회한다.
*
* @param reqVO
* @return
*/
public DataApiResVO listInterests(DataApiReqVO reqVO) {
reqVO.setReqUrl(RESOURCE_URI + "/interests/list");
return get(reqVO);
}
public DataApiResVO deleteInterest(DataApiReqVO reqVO) { public DataApiResVO deleteInterest(DataApiReqVO reqVO) {
return null; return null;
} }
/**
* RIS파일 다운로드 데이터를 조회한다.
* @param vo
* @return
*/
public RisVO selectRisInfo(RisVO vo) {
return selectOne("CollectionDAO.selectRisInfo", vo);
}
/**
* 문화원 목록 조회
* @return
*/
public List<DeptVO> selectOrgList(CollectionVO vo) {
return selectList("CollectionDAO.selectOrgList",vo);
}
} }

View File

@ -1,6 +1,8 @@
package nlib.col.service.impl; package nlib.col.service.impl;
import java.util.List;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -8,6 +10,9 @@ import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import nlib.col.service.CollectionService; import nlib.col.service.CollectionService;
import nlib.col.service.CollectionVO;
import nlib.col.service.DeptVO;
import nlib.col.service.RisVO;
import nlib.restful.service.DataApiReqVO; import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO; import nlib.restful.service.DataApiResVO;
@ -26,7 +31,7 @@ public class CollectionServiceImpl implements CollectionService
* @see nlib.col.service.CollectionService#listItems(nlib.restful.service.DataApiReqVO) * @see nlib.col.service.CollectionService#listItems(nlib.restful.service.DataApiReqVO)
*/ */
public DataApiResVO listItems(DataApiReqVO reqVO) { public DataApiResVO listItems(DataApiReqVO reqVO) {
return collectionDAO.listItems(reqVO); return ((CollectionService) collectionDAO).listItems(reqVO);
} }
public DataApiResVO insertInterest(DataApiReqVO reqVO) { public DataApiResVO insertInterest(DataApiReqVO reqVO) {
@ -51,21 +56,24 @@ public class CollectionServiceImpl implements CollectionService
* @see nlib.col.service.CollectionService#selectItemInfo(nlib.restful.service.DataApiReqVO) * @see nlib.col.service.CollectionService#selectItemInfo(nlib.restful.service.DataApiReqVO)
*/ */
public DataApiResVO selectItemInfo(DataApiReqVO reqVO) { public DataApiResVO selectItemInfo(DataApiReqVO reqVO) {
return collectionDAO.selectItemInfo(reqVO); return ((CollectionService) collectionDAO).selectItemInfo(reqVO);
} }
/* /*
* 관심 자료 목록을 조회한다. * RIS파일 다운로드 데이터를 조회한다.
*
* (non-Javadoc) * (non-Javadoc)
* @see nlib.col.service.CollectionService#listInterests(nlib.restful.service.DataApiReqVO) * @see nlib.col.service.CollectionService#selectRisInfo(nlib.col.service.CollectionVO)
*/ */
public DataApiResVO listInterests(DataApiReqVO reqVO) { public RisVO selectRisInfo(RisVO vo) {
return collectionDAO.listInterests(reqVO); return collectionDAO.selectRisInfo(vo);
} }
public DataApiResVO deleteInterest(DataApiReqVO reqVO) { /*
return null; * 문화원 목록 조회
* (non-Javadoc)
* @see nlib.col.service.CollectionService#selectOrgList()
*/
public List<DeptVO> selectOrgList(CollectionVO vo) {
return collectionDAO.selectOrgList(vo);
} }
} }

View File

@ -0,0 +1,63 @@
package nlib.col.service.impl;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Repository;
import egovframework.com.cmm.service.impl.EgovComAbstractDAO;
import nlib.col.service.CollectionVO;
import nlib.restful.DataApi;
import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO;
@Repository("interestDAO")
public class InterestDAO extends EgovComAbstractDAO
{
private static final Logger log = LoggerFactory.getLogger(InterestDAO.class);
/**
* 관심 자료 목록을 조회한다.
*
* @param CollectionVO
* @return
*/
public List<CollectionVO> listInterests(CollectionVO vo) {
return selectList("InterestDAO.listInterests", vo);
}
/**
* 관심 자료 목록의 개수를 조회한다.
*
* @param CollectionVO
* @return
*/
public int countListInterests(CollectionVO vo) {
return selectOne("InterestDAO.countListInterests", vo);
}
/**
* 관심자료 목록 삭제
* @param masterIdList
*/
public void deleteInterests(CollectionVO vo) {
delete("InterestDAO.deleteInterests", vo);
}
/**
* 관심자료 추가시 중복체크용 count
* @param vo
* @return
*/
public int countInterest(CollectionVO vo) {
return selectOne("InterestDAO.countInterest",vo);
}
/**
* 관심자료 추가
* @param vo
*/
public void insertInterest(CollectionVO vo) {
insert("InterestDAO.insertInterest",vo);
}
}

View File

@ -0,0 +1,73 @@
package nlib.col.service.impl;
import java.util.List;
import javax.annotation.Resource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import nlib.col.service.CartService;
import nlib.col.service.CollectionVO;
import nlib.col.service.InterestService;
import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO;
@Service("interestService")
public class InterestServiceImpl implements InterestService
{
private static final Logger log = LoggerFactory.getLogger(InterestServiceImpl.class);
@Resource(name="interestDAO")
private InterestDAO interestDAO;
/*
* 관심자료 목록을 조회한다.
*
* (non-Javadoc)
* @see nlib.col.service.CollectionService#listInterests(nlib.restful.service.DataApiReqVO)
*/
public List<CollectionVO> listInterests(CollectionVO vo) {
return interestDAO.listInterests(vo);
}
/*
* 관심자료목록의 개수를 조회한다.
* (non-Javadoc)
* @see nlib.col.service.CollectionService#countListInterests(nlib.col.service.CollectionVO)
*/
public int countListInterests(CollectionVO vo) {
return interestDAO.countListInterests(vo);
}
/*
* 관심자료 목록 삭제
* (non-Javadoc)
* @see nlib.col.service.CollectionService#deleteInterests(java.util.List)
*/
public void deleteInterests(List<Integer> mbInterestIdList,String mbInfoId) {
CollectionVO vo = new CollectionVO();
vo.setMbInfoId(mbInfoId);
for(Integer mbInterestId : mbInterestIdList) {
vo.setMbInterestId(mbInterestId);
interestDAO.deleteInterests(vo);
}
}
/*
* 관심자료 추가시 중복체크용 count
* (non-Javadoc)
* @see nlib.col.service.CollectionService#countInterest(nlib.col.service.CollectionVO)
*/
public int countInterest(CollectionVO vo) {
return interestDAO.countInterest(vo);
}
/*
* 관심자료 추가
* (non-Javadoc)
* @see nlib.col.service.CollectionService#insertInterest(nlib.col.service.CollectionVO)
*/
public void insertInterest(CollectionVO vo) {
interestDAO.insertInterest(vo);
}
}

View File

@ -1,4 +1,3 @@
package nlib.col.service.impl; package nlib.col.service.impl;
import javax.annotation.Resource; import javax.annotation.Resource;

View File

@ -0,0 +1,16 @@
package nlib.col.service.impl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Repository;
import nlib.restful.DataApi;
import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO;
@Repository("reserveDAO")
public class ReserveDAO extends DataApi
{
private static final Logger log = LoggerFactory.getLogger(ReserveDAO.class);
}

View File

@ -0,0 +1,20 @@
package nlib.col.service.impl;
import javax.annotation.Resource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import nlib.col.service.ReserveService;
import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO;
@Service("reserveService")
public class ReserveServiceImpl implements ReserveService
{
private static final Logger log = LoggerFactory.getLogger(ReserveServiceImpl.class);
@Resource(name="reserveDAO")
private ReserveDAO reserveDAO;
}

View File

@ -0,0 +1,48 @@
package nlib.col.web;
import javax.annotation.Resource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import nlib.cmm.NlibCommonController;
import nlib.cmm.service.CodeService;
import nlib.cmm.service.NlibProperty;
import nlib.col.service.RentService;
/**
* <pre>
* @Class Name : CartController.java
*
* @Description : 소장자료 카트 컨트롤러
*
*
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
*
* </pre>
*
* @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용
* @ ------------ -------- ---------------------------
* @ 2021. 10. 01. JSYOO 최초 생성
*
*
* @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 10. 01.
* @version 1.0
*
*/
@Controller
public class CartController extends NlibCommonController
{
private static final Logger log = LoggerFactory.getLogger(CartController.class);
static final String DEFUALT_PAGE_SIZE = NlibProperty.getProperty("list.paging.page.size");
@Resource(name = "rentService")
private RentService rentService;
@Resource(name = "codeService")
private CodeService codeService;
}

View File

@ -1,12 +1,19 @@
package nlib.col.web; package nlib.col.web;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@ -17,15 +24,25 @@ import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import nlib.bbs.service.ArticleVO;
import nlib.cmm.NlibCommonController; import nlib.cmm.NlibCommonController;
import nlib.cmm.service.CodeService; import nlib.cmm.service.CodeService;
import nlib.cmm.service.NlibProperty; import nlib.cmm.service.NlibProperty;
import nlib.col.service.CollectionService; import nlib.col.service.CollectionService;
import nlib.col.service.CollectionVO;
import nlib.col.service.DeptVO;
import nlib.col.service.RisVO;
import nlib.restful.service.DataApiReqVO; import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO; import nlib.restful.service.DataApiResVO;
import nlib.user.service.NlibLoginVO;
import nlib.util.StringUtil; import nlib.util.StringUtil;
/**
* @author JSYOO
*
*/
@Controller @Controller
public class CollectionController extends NlibCommonController public class CollectionController extends NlibCommonController
{ {
@ -99,22 +116,75 @@ public class CollectionController extends NlibCommonController
return makeResponseEntityJson(retMap); return makeResponseEntityJson(retMap);
} }
/**
* RIS파일 다운로드
* @param vo
* @throws IOException
*/
@RequestMapping(value="/collection/risDownload.do")
public void risDownload(HttpServletRequest request,HttpServletResponse response) throws IOException {
RisVO vo = new RisVO();
vo.setMasterId(request.getParameter("masterId"));
vo = collectionService.selectRisInfo(vo);
response.setContentType("text/plain");
String fileName = vo.getTt();
String Ty="";
// 브라우저 한글 인코딩
String header = request.getHeader("User-Agent");
if (header.contains("Edge")){
fileName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20");
response.setHeader("Content-Disposition", "attachment;filename=\"" + fileName + ".ris;\"");
} else if (header.contains("MSIE") || header.contains("Trident")) { // IE 11버전부터 Trident로 변경되었기때문에 추가해준다.
fileName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20");
response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".ris;");
} else if (header.contains("Chrome")) {
fileName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20");
response.setHeader("Content-Disposition", "attachment; filename=\"" + fileName + ".ris\"");
} else if (header.contains("Opera")) {
fileName = new String(fileName.getBytes("UTF-8"), "ISO-8859-1");
response.setHeader("Content-Disposition", "attachment; filename=\"" + fileName + ".ris\"");
} else if (header.contains("Firefox")) {
fileName = new String(fileName.getBytes("UTF-8"), "ISO-8859-1");
response.setHeader("Content-Disposition", "attachment; filename=" + fileName + ".ris");
}
Ty = StringUtil.getString(vo.getTy(), "");
if(Ty.length() > 3)
{
Ty.replace("IT_", "");
}
String s = "TY - " + Ty;
s+= "\nTI - " + StringUtil.getString(vo.getTt(), "");
s+= "\nPY - " + StringUtil.getString(vo.getPy(), "");
s+= "\nKW - " + StringUtil.getString(vo.getKw(), "");
s+= "\nT2 - " + StringUtil.getString(vo.getT2(), "");
s+= "\nA1 - " + StringUtil.getString(vo.getA1(), "");
s+= "\nPP - " + StringUtil.getString(vo.getPp(), "");
s+= "\nM1 - " + StringUtil.getString(vo.getM1(), "");
s+= "\nL4 - " + StringUtil.getString(vo.getL4(), "");
s+= "\nER - ";
InputStream input = new ByteArrayInputStream(s.getBytes("UTF8"));
public ModelMap insertInterest(HttpServletRequest req) { int read = 0;
return null; byte[] bytes = new byte[1024];
} OutputStream os = response.getOutputStream();
public ModelMap reserveItem(HttpServletRequest req) { while ((read = input.read(bytes)) != -1) {
return null; os.write(bytes, 0, read);
} }
os.flush();
public ModelMap viewOriginalCopy(HttpServletRequest req) { os.close();
return null;
}
public ModelMap requestViewingItem(HttpServletRequest req) {
return null;
} }
/** /**
* 소장자료 상세 내용 조회한다. * 소장자료 상세 내용 조회한다.
* *
@ -160,70 +230,4 @@ public class CollectionController extends NlibCommonController
return "nlib/collection/selectItemInfo"; 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) throws Exception {
String searchKeyword = paramMap.get("searchKeyword");
String pageIndex = StringUtil.getString(paramMap.get("pageIndex"), "1");
String pageSize = StringUtil.getString(paramMap.get("pageSize") , DEFUALT_PAGE_SIZE);
// 페이징 사이즈 코드 목록 조회 (DB방식으로 변경 2021.08.06 KNKIM)
List<HashMap<String,String>> pageSizeCodes = codeService.listCodes("PAGE_SIZE_OPTION");
// 반환 정보
model.addAttribute("pageIndex" , pageIndex);
model.addAttribute("pageSize" , pageSize);
model.addAttribute("searchKeyword", searchKeyword);
model.addAttribute("pageSizeCodes", pageSizeCodes);
return "nlib/collection/listInterests";
}
/**
* 관심 자료를 조회한다.
*
* @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.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) {
return null;
}
} }

View File

@ -0,0 +1,174 @@
package nlib.col.web;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.http.ResponseEntity;
import org.springframework.security.core.Authentication;
import org.springframework.stereotype.Controller;
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 org.springframework.web.bind.annotation.ResponseBody;
import nlib.cmm.NlibCommonController;
import nlib.cmm.service.CodeService;
import nlib.cmm.service.NlibProperty;
import nlib.col.service.CollectionService;
import nlib.col.service.CollectionVO;
import nlib.col.service.DeptVO;
import nlib.col.service.InterestService;
import nlib.col.service.RentService;
import nlib.user.service.NlibLoginVO;
/**
* <pre>
* @Class Name : InterestController.java
*
* @Description : 관심자료 컨트롤러
*
*
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
*
* </pre>
*
* @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용
* @ ------------ -------- ---------------------------
* @ 2021. 10. 01. JSYOO 최초 생성
*
*
* @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 10. 01.
* @version 1.0
*
*/
@Controller
public class InterestController extends NlibCommonController
{
private static final Logger log = LoggerFactory.getLogger(InterestController.class);
static final String DEFUALT_PAGE_SIZE = NlibProperty.getProperty("list.paging.page.size");
@Resource(name = "interestService")
private InterestService interestService;
@Resource(name = "collectionService")
private CollectionService collectionService;
@Resource(name = "codeService")
private CodeService codeService;
/**
* 관심 자료 화면을 호출한다.
*
* @param req
* @return
*/
@RequestMapping("/interest/listInterests.do")
public String listInterests(HttpServletRequest req, Authentication authentication,
@RequestParam Map<String, String> paramMap,
CollectionVO searchCollectionVO, ModelMap model) throws Exception {
List<DeptVO> vo = new ArrayList();
//사용자 정보를 가져온다.
NlibLoginVO loginVO = getNlibLoginVO(authentication);
searchCollectionVO.setMbInfoId(loginVO.getMbInfoId());
//문화원 목록 조회
vo = collectionService.selectOrgList(searchCollectionVO);
model.addAttribute("deptList",vo);
model.addAttribute("searchCollection", searchCollectionVO);
return "nlib/collection/listInterests";
}
/**
* 관심 자료를 조회한다.
*
* @param req
* @return
*/
@RequestMapping(value="/interest/listInterestsAjax.do")
public ResponseEntity<String> listInterestsAjax(HttpServletRequest req,
Authentication authentication, @RequestBody CollectionVO searchCollectionVO) {
if(searchCollectionVO.getPageIndex() < 1) searchCollectionVO.setPageIndex(1);
if(searchCollectionVO.getPageSize() < 1) searchCollectionVO.setPageSize(DEFUALT_PAGE_SIZE);
int totalCount= 0;
//사용자 정보를 가져온다.
NlibLoginVO loginVO = getNlibLoginVO(authentication);
searchCollectionVO.setMbInfoId(loginVO.getMbInfoId());
searchCollectionVO.setPageStart((searchCollectionVO.getPageIndex()-1) * searchCollectionVO.getPageSize());
List<CollectionVO> List = new ArrayList();
// 요청
List = interestService.listInterests(searchCollectionVO);
totalCount = interestService.countListInterests(searchCollectionVO);
//-------------------------------
// JSON변환 응답 처리
//-------------------------------
// JS-GRID 페이징 처리를 포함한 응답값 처리
// {data: [{...}],
// itemsCount: 255
// }
HashMap<String, Object> retMap = new HashMap<String, Object>();
retMap.put("data", List);
retMap.put("itemsCount", totalCount);
return makeResponseEntityJson(retMap);
}
/**
* 관심자료 목록 삭제
* @param masterIdList
*/
@RequestMapping(value="/interest/deleteInterests.ajax")
@ResponseBody
public void deleteInterests(@RequestParam(value="mbInterestIdList[]") List<Integer> mbInterestIdList,Authentication authentication) {
NlibLoginVO loginVO = getNlibLoginVO(authentication);
interestService.deleteInterests(mbInterestIdList,loginVO.getMbInfoId());
}
/**
* 관심자료 추가
* @param masterIdList
*/
@RequestMapping(value="/interest/insertInterest.ajax")
@ResponseBody
public String insertInterest(@RequestParam(value="masterId") String masterId,HttpServletResponse response,Authentication authentication,HttpServletRequest request) {
NlibLoginVO loginVO = getNlibLoginVO(authentication);
CollectionVO vo = new CollectionVO();
vo.setMbInfoId(loginVO.getMbInfoId());
vo.setMasterId(masterId);
int count = 0;
String message = "";
count = interestService.countInterest(vo);
//중복된 관심자료가 있을시
if(count > 0)
{
message="이미 추가된 관심자료입니다.";
}else {
interestService.insertInterest(vo);
message="관심자료에 추가되었습니다.";
}
return message;
}
}

View File

@ -0,0 +1,48 @@
package nlib.col.web;
import javax.annotation.Resource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import nlib.cmm.NlibCommonController;
import nlib.cmm.service.CodeService;
import nlib.cmm.service.NlibProperty;
import nlib.col.service.RentService;
/**
* <pre>
* @Class Name : ReserveController.java
*
* @Description : 자료열람 컨트롤러
*
*
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
*
* </pre>
*
* @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용
* @ ------------ -------- ---------------------------
* @ 2021. 10. 01. JSYOO 최초 생성
*
*
* @author 이씨플라자 * DIGITALSHIP JSYOO
* @since 2021. 10. 01.
* @version 1.0
*
*/
@Controller
public class ReserveController extends NlibCommonController
{
private static final Logger log = LoggerFactory.getLogger(ReserveController.class);
static final String DEFUALT_PAGE_SIZE = NlibProperty.getProperty("list.paging.page.size");
@Resource(name = "rentService")
private RentService rentService;
@Resource(name = "codeService")
private CodeService codeService;
}

View File

@ -19,6 +19,9 @@
<typeAlias alias="NotificationVO" type="nlib.cmm.service.NotificationVO" /> <typeAlias alias="NotificationVO" type="nlib.cmm.service.NotificationVO" />
<typeAlias alias="ArticleVO" type="nlib.bbs.service.ArticleVO" /> <typeAlias alias="ArticleVO" type="nlib.bbs.service.ArticleVO" />
<typeAlias alias="AttachFileVO" type="nlib.bbs.service.AttachFileVO" /> <typeAlias alias="AttachFileVO" type="nlib.bbs.service.AttachFileVO" />
<typeAlias alias="RisVO" type="nlib.col.service.RisVO" />
<typeAlias alias="CollectionVO" type="nlib.col.service.CollectionVO" />
<typeAlias alias="DeptVO" type="nlib.col.service.DeptVO" />
</typeAliases> </typeAliases>

View File

@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?><!--Converted at: Wed May 11 15:49:38 KST 2016-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="CollectionDAO">
<select id="selectRisInfo" parameterType="RisVO" resultType="RisVO">
/* CollectionDAO.selectRisInfo RIS다운로드를 위한 자료 정보 조회 */
SELECT
*
FROM
RG_MASTER RM
WHERE 1=1
AND MASTER_ID = #{masterId}
</select>
<select id="selectOrgList" parameterType="CollectionVO" resultType="DeptVO" >
/* CollectionDAO.selectOrgList 문화원 목록 조회 */
<![CDATA[
SELECT
ORG_CD
,DEPT_NM
FROM
SM_DEPT SD
INNER JOIN
RG_MASTER RM
ON SD.ORG_CD = RM.MNG_ORG_CD
INNER JOIN
MB_INTEREST MI
ON RM.MASTER_ID = MI.MASTER_ID
WHERE 1=1
AND SD.USE_YN = "Y"
AND SD.CLOSE_FLAG = "0"
AND IFNULL(NULLIF(SD.APPLY_START_YMD,''),"99999999") < date_format(NOW(), '%Y%m%d')
AND IFNULL(NULLIF(SD.APPLY_CLOSE_YMD,''),"99999999") > date_format(NOW(), '%Y%m%d')
AND MI.USE_YN = "Y"
AND MI.MB_INFO_ID = #{mbInfoId}
GROUP BY ORG_CD,DEPT_NM
]]>
</select>
</mapper>

View File

@ -0,0 +1,85 @@
<?xml version="1.0" encoding="UTF-8"?><!--Converted at: Wed May 11 15:49:38 KST 2016-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="InterestDAO">
<select id="listInterests" parameterType="CollectionVO" resultType="CollectionVO">
/* CollectionDAO.listInterests 관심자료 목록조회 */
SELECT
MI.MB_INTEREST_ID
,RM.MASTER_ID
,RM.TITLE
,IFNULL(RM.RPRS_THUMB_URL,"") RPRS_THUMB_URL
,IFNULL(SD.DEPT_NM,"") MNG_ORG_NM
FROM
RG_MASTER RM
INNER JOIN
MB_INTEREST MI
ON RM.MASTER_ID =MI.MASTER_ID
LEFT OUTER JOIN
SM_DEPT SD
ON SD.ORG_CD = RM.MNG_ORG_CD
WHERE 1=1
AND MI.MB_INFO_ID = #{mbInfoId}
AND MI.USE_YN = "Y"
<if test='mngOrgCd != null and !mngOrgCd.equals("")'>
AND MNG_ORG_CD = #{mngOrgCd}
</if>
ORDER BY MI.MB_INTEREST_ID DESC
LIMIT #{pageStart},#{pageSize}
</select>
<select id="countListInterests" parameterType="CollectionVO" resultType="Integer">
/* CollectionDAO.countListInterests 관심자료 목록 개수 조회 */
SELECT
COUNT(*)
FROM
RG_MASTER RM
INNER JOIN
MB_INTEREST MI
ON RM.MASTER_ID =MI.MASTER_ID
WHERE 1=1
AND MI.MB_INFO_ID = #{mbInfoId}
AND USE_YN = "Y"
<if test='mngOrgCd != null and !mngOrgCd.equals("")'>
AND MNG_ORG_CD = #{mngOrgCd}
</if>
</select>
<update id="deleteInterests" parameterType="CollectionVO">
/* CollectionDAO.deleteInterests 관심자료 삭제 */
UPDATE
MB_INTEREST
SET
USE_YN="N"
WHERE 1=1
AND MB_INTEREST_ID = #{mbInterestId}
AND MB_INFO_ID = #{mbInfoId}
</update>
<insert id="insertInterest" parameterType="CollectionVO">
/* CollectionDAO.insertInterest 관심자료 추가 */
<selectKey resultType="Integer" keyProperty="mbInterestId" order="BEFORE">
SELECT MAX(MB_INTEREST_ID)+1 FROM MB_INTEREST;
</selectKey>
INSERT INTO
MB_INTEREST
VALUES
(#{mbInterestId},#{mbInfoId},#{masterId},NOW(),"Y");
</insert>
<select id="countInterest" parameterType="CollectionVO" resultType="Integer">
/* CollectionDAO.countInterest 관심자료 count(중복확인) */
SELECT
COUNT(*)
FROM
RG_MASTER RM
INNER JOIN
MB_INTEREST MI
ON RM.MASTER_ID = MI.MASTER_ID
WHERE 1=1
AND MI.MASTER_ID = #{masterId}
AND MI.MB_INFO_ID = #{mbInfoId}
AND MI.USE_YN = "Y"
</select>
</mapper>

View File

@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="nlib.user.service.impl.MemberDAO"> <mapper namespace="nlib.user.service.impl.MemberDAO">
<resultMap type="nlib.user.service.NlibLoginVO" id="NlibLoginVO"> <!-- <resultMap type="nlib.user.service.NlibLoginVO" id="NlibLoginVO">
<result column="MB_INFO_ID" property="mbInfoId"/> <result column="MB_INFO_ID" property="mbInfoId"/>
<result column="LOGIN_USER_ID" property="loginUserId"/> <result column="LOGIN_USER_ID" property="loginUserId"/>
<result column="NAME" property="name"/> <result column="NAME" property="name"/>
@ -19,10 +19,10 @@
<result column="JOIN_DATE" property="joinDate"/> <result column="JOIN_DATE" property="joinDate"/>
<result column="IP" property="IP"/> <result column="IP" property="IP"/>
<result column="LAST_ACCESS_DD" property="lastAccessDd"/> <result column="LAST_ACCESS_DD" property="lastAccessDd"/>
</resultMap> </resultMap> -->
<!-- 회원가입 --> <!-- 회원가입 -->
<insert id="insertMemberInfo" parameterType="nlib.user.service.NlibLoginVO"> <insert id="insertMemberInfo" parameterType="NlibLoginVO">
<selectKey resultType="java.lang.String" keyProperty="mbInfoId" order="BEFORE"> <selectKey resultType="java.lang.String" keyProperty="mbInfoId" order="BEFORE">
SELECT CONCAT(LEFT(MAX(MB_INFO_ID),2), SELECT CONCAT(LEFT(MAX(MB_INFO_ID),2),
LPAD(RIGHT(MAX(MB_INFO_ID),9)+1,9,0)) FROM MB_INFO; LPAD(RIGHT(MAX(MB_INFO_ID),9)+1,9,0)) FROM MB_INFO;
@ -79,7 +79,7 @@
</insert> </insert>
<!-- 비밀번호 변경 --> <!-- 비밀번호 변경 -->
<update id="changePassword" parameterType="nlib.user.service.NlibLoginVO"> <update id="changePassword" parameterType="NlibLoginVO">
UPDATE UPDATE
MB_INFO MB_INFO
SET SET
@ -119,7 +119,7 @@
</select> </select>
<!-- 회원가입시 입력한 휴대폰번호와 일치하는 계정이 있는지 체크 --> <!-- 회원가입시 입력한 휴대폰번호와 일치하는 계정이 있는지 체크 -->
<select id="selectAlreadySignUpMobile" parameterType="nlib.user.service.NlibLoginVO" resultMap="NlibLoginVO"> <select id="selectAlreadySignUpMobile" parameterType="NlibLoginVO" resultType="NlibLoginVO">
SELECT SELECT
MB_INFO_ID MB_INFO_ID
,LOGIN_USER_ID ,LOGIN_USER_ID
@ -183,7 +183,7 @@
</select> </select>
<!-- 회원 탈퇴 --> <!-- 회원 탈퇴 -->
<update id="deleteMembership" parameterType="nlib.user.service.NlibLoginVO"> <update id="deleteMembership" parameterType="NlibLoginVO">
/* deleteMembership */ /* deleteMembership */
UPDATE UPDATE
MB_INFO MB_INFO

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -150,4 +150,76 @@ function fn_lengthBytes(s) {
function fn_extractContentText(html) { function fn_extractContentText(html) {
return new DOMParser().parseFromString(html, "text/html").documentElement.textContent; return new DOMParser().parseFromString(html, "text/html").documentElement.textContent;
}
function risShow(risId){
var tag = document.createElement("div");
tag.class="popup pop-user-set pop-export";
tag.id = "export-data";
tag.style="style='display: none;'";
document.body.prepend(tag);
document.getElementById("export-data").className="popup pop-user-set pop-export";
var html="";
html+='<div class="pop-wrap">';
html+='<div class="pop-inner-wrap">';
html+='<h1>서지정보 내보내기 (Export)</h1>';
html+='<div class="guide export first">';
html+='<div class="guide-title underline">서지정보 내보내기 안내</div>';
html+='<div class="guide-contents">';
html+='<p>지역N문화 포털은 콘텐츠 생산자 및 연구자들을 위해 서지정보 내보내기 기능을 제공하고 있습니다.</p>';
html+='<ul class="dot-list type1 blank-type2">';
html+='<li>서지정보 내용<br>: 형식, 제목, 저자, 시리즈, 언어, URL, 태그</li>';
html+='<li>제공 포멧<br>: RIS : Search Information System (*.ris)</li>';
html+='<li>RIS 지원 서지관리 프로그램<br>: EndNote, Mendeley, Zotero) 외</li>';
html+='</ul>';
html+='</div>';
html+='</div>';
html+='<div class="guide program next">';
html+='<div class="guide-title underline">서지관리 프로그램 안내</div>';
html+='<div class="guide-contents">';
html+='<p>서지관리 프로그램은 문헌 및 온라인 콘텐츠 등 자료를 관리하고 공유하는데 사용됩니다.</p>';
html+='<p class="caution">※ 해당 프로그램은 소속기관 또는 개인 가입이 필요할 수 있으며, 지역N문화 포털은 링크만 제공하고 직접 서비스를 제공하지 않습니다.</p>';
html+='<ul class="dot-list type1 blank-type1">';
html+='<li>Zotero (www.zotero.com) / 한글 메뉴 지원 (o), 300MB 용량 무료 (초과 유료)</li>';
html+='<li>EndNote (www.endnote.com) / 한글 메뉴 지원 (x) , 2G 용량 무료 (초과유료)</li>';
html+='<li>Mendeley (www.mendeley.com) / 한글 메뉴 지원 (x), 2G 용량 무료 (초과유료)</li>';
html+='</ul>';
html+='</div>';
html+='</div>';
html+='<div class="btn-wrap">';
html+='<button class="btn btn-color" id="risExport" onclick="risDownload(\''+risId+'\');">내보내기</button>';
html+='<button class="btn btn-gray" onclick="risClose();">닫기</button>';
html+='</div>';
html+='</div>';
html+='<div class="week-no-show">';
html+='<div class="check"><input type="checkbox" id="e-week-no"><label for="e-week-no">일주일간 보지 않기</label></div>';
html+='</div>';
html+='</div>';
$("#export-data").append(html);
}
function risClose(){
$("#export-data").remove();
}
function risDownload(risId){
$("#masterId").val(risId);
document.interestsForm.action="/collection/risDownload.do";
document.interestsForm.submit();
}
function insertInterest(masterId){
$.ajax({
type: "post",
url: "/interest/insertInterest.ajax",
data: {"masterId" : masterId}
}).done(function(result){
alert(result);
});
} }