Compare commits

..

3 Commits

Author SHA1 Message Date
강석 최 1e4687ece0 ojdbc-14.jar 추가 2022-03-25 12:02:30 +09:00
강석 최 ed696e01f7 !ojdbc-14.jar 추가 2022-03-25 12:01:17 +09:00
강석 최 94853eb230 테스트 2022-03-25 09:08:31 +09:00
130 changed files with 7166 additions and 14176 deletions

2
.gitignore vendored
View File

@ -185,4 +185,4 @@ fabric.properties
hs_err_pid*
replay_pid*
faics.iml
!ojdbc-14.jar

36
pom.xml
View File

@ -130,16 +130,11 @@
<version>1.0.0.GA</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>net.sf</groupId>-->
<!-- <artifactId>log4jdbc3</artifactId>-->
<!-- <version>1.1</version>-->
<!-- </dependency>-->
<dependency>
<groupId>org.bgee.log4jdbc-log4j2</groupId>
<artifactId>log4jdbc-log4j2-jdbc4.1</artifactId>
<version>1.16</version>
</dependency>
<dependency>
<groupId>net.sf</groupId>
<artifactId>log4jdbc3</artifactId>
<version>1.1</version>
</dependency>
<!-- validation -->
<dependency>
@ -163,22 +158,15 @@
<!-- database driver -->
<!-- <dependency>-->
<!-- <groupId>ojdbc</groupId>-->
<!-- <artifactId>ojdbc</artifactId>-->
<!-- <version>14</version>-->
<!-- <scope>system</scope>-->
<!-- <systemPath>${basedir}/src/main/webapp/WEB-INF/lib/ojdbc-14.jar</systemPath>-->
<!-- </dependency>-->
<dependency>
<groupId>ojdbc</groupId>
<artifactId>ojdbc</artifactId>
<version>14</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/webapp/WEB-INF/lib/ojdbc-14.jar</systemPath>
</dependency>
<!-- /database driver -->
<!-- https://mvnrepository.com/artifact/org.postgresql/postgresql -->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.3.3</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>

View File

@ -12,7 +12,11 @@ package kcg.faics.admin.web;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@ -311,68 +315,8 @@ public class AdminController {
return "excelView";
}
/**
* .
*
* @param userIdStr
*
* @return
* @throws Exception
*
*/
@ResponseBody
@RequestMapping(value = "/faMemberDelete.do", method = RequestMethod.POST)
public HashMap<String, Object> faMemberDelete(HttpServletResponse res, String userIdStr) throws Exception {
HashMap<String, Object> resultMap = new HashMap<String, Object>();
try{
List<MemberVO> userList = new ArrayList<>();
for(String userId : userIdStr.split("\\|")){
MemberVO user = new MemberVO();
user.setUserid(userId);
userList.add(user);
}
MemberVO deleteUserInfo = new MemberVO();
deleteUserInfo.setDeleteUserList(userList);
resultMap.put("result", memberService.deleteFaMemberList(deleteUserInfo));
} catch (Exception e) {
e.printStackTrace();
}
return resultMap;
}
/**
* .
*
* @param userIdStr
*
* @return
* @throws Exception
*
*/
@ResponseBody
@RequestMapping(value = "/cmmnMemberDelete.do", method = RequestMethod.POST)
public HashMap<String, Object> cmmnMemberDelete(HttpServletResponse res, String userIdStr) throws Exception {
HashMap<String, Object> resultMap = new HashMap<String, Object>();
try{
List<MemberVO> userList = new ArrayList<>();
for(String userId : userIdStr.split("\\|")){
MemberVO user = new MemberVO();
user.setUserid(userId);
userList.add(user);
}
MemberVO deleteUserInfo = new MemberVO();
deleteUserInfo.setDeleteUserList(userList);
resultMap.put("result", memberService.deleteCmmnMemberList(deleteUserInfo));
} catch (Exception e) {
e.printStackTrace();
}
return resultMap;
}
/**
/**
* .
*
* "/faMemberUpdateView.do" = -

View File

@ -74,7 +74,7 @@ public class ArrestServiceImpl implements ArrestService {
//
if(!arrestVO.getShipProcType().equals("01")){
arrestVO.setCommissionCost(0);
arrestVO.setCommissionCost("");
}
if(arrestVO.getMarginPaymentYn().equals("N")){
@ -101,7 +101,7 @@ public class ArrestServiceImpl implements ArrestService {
HashMap<String, Object> result = new HashMap<String, Object>();
if(!arrestVO.getShipProcType().equals("01")){
arrestVO.setCommissionCost(0);
arrestVO.setCommissionCost("");
}
if(arrestVO.getMarginPaymentYn().equals("N")){

File diff suppressed because it is too large Load Diff

View File

@ -115,7 +115,6 @@ public class BoardMapper extends EgovAbstractMapper {
return map;
};
/**
* .
*

View File

@ -34,7 +34,7 @@ public class BoardSearchVO extends BaseSearchVO {
private String id = "";
/** 카테고리 이름 */
private String category = "";
private String category = " ";
/** 카테고리 이름 */
private String searchCondition = "";
@ -72,6 +72,9 @@ public class BoardSearchVO extends BaseSearchVO {
* @param id .
*/
public void setCategory(String category) {
if (category == null || category.equals("")) {
category = " ";
}
this.category = category;
}

View File

@ -52,9 +52,11 @@ public class CommonAop {
LogService logService;
@Around("execution(* kcg.faics..*Controller.*(..))")
public Object menuGenerator(final ProceedingJoinPoint thisJoinPoint) throws Throwable {
public Object menuGenerator(final ProceedingJoinPoint thisJoinPoint)
throws Throwable {
HttpServletRequest req = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
HttpServletRequest req = ((ServletRequestAttributes) RequestContextHolder
.getRequestAttributes()).getRequest();
String loginUrl = "/loginView.do";
String url = req.getRequestURI();
@ -79,10 +81,12 @@ public class CommonAop {
MenuVO menuVO = new MenuVO();
menuVO.setUserId(loginUserVO.getUserid());
menuVO.setUserType(loginUserVO.getType());
List<MenuVO> mainMenuList = menuService.selectMainMenuList(menuVO);
List<MenuVO> mainMenuList = menuService
.selectMainMenuList(menuVO);
model.addAttribute("mainMenuList", mainMenuList);
List<MenuVO> topSubMenuList = menuService.selectTopSubMenuList(menuVO);
List<MenuVO> topSubMenuList = menuService
.selectTopSubMenuList(menuVO);
model.addAttribute("topSubMenuList", topSubMenuList);
@ -110,8 +114,12 @@ public class CommonAop {
default:
if (req.getParameter("category") != null
&& !req.getParameter("category").equals(" ")) {
qryCate = "category=" + req.getParameter("category");
&& !req.getParameter("category")
.equals(" ")) {
qryCate = "category="
+ req.getParameter("category");
// url = url + "/" +
// req.getParameter("category");
}
break;
}
@ -122,14 +130,19 @@ public class CommonAop {
menu.put("boardId", boardId);
menu.put("query", qryCate);
HashMap<String, Object> menuInfo = menuService.getMenuInfo(menu);
menuVO.setId(((Double)menuInfo.get("id")).intValue());
HashMap<String, Object> menuInfo = menuService
.getMenuInfo(menu);
menuVO.setId(Integer
.parseInt(menuInfo.get("ID").toString()));
menuInfo.put("userId", loginUserVO.getUserid());
List<MenuVO> currAndHigherMenuList = menuService.selectListWithHigher(menuVO);
model.addAttribute("currAndHigherMenuList", currAndHigherMenuList);
List<MenuVO> currAndHigherMenuList = menuService
.selectListWithHigher(menuVO);
model.addAttribute("currAndHigherMenuList",
currAndHigherMenuList);
model.addAttribute("menu", menuInfo);
model.addAttribute("subMenu", menuService.getSubmenu(menuInfo));
model.addAttribute("subMenu",
menuService.getSubmenu(menuInfo));
addUserLog(req, menu);
}
@ -138,7 +151,8 @@ public class CommonAop {
// e.printStackTrace();
}
return thisJoinPoint.proceed();
Object proc = thisJoinPoint.proceed();
return proc;
}
/**

View File

@ -100,10 +100,10 @@ public class ExcelExporter<T> extends AbstractExcelExport {
try {
if (t instanceof Map<?, ?>) {
Object o = ((Map<?, ?>) t).get(key.toLowerCase());
Object o = ((Map<?, ?>) t).get(key);
if (o instanceof String) {
value = o.toString();
} else if (o instanceof Integer || o instanceof Double || o instanceof Long) {
} else if (o instanceof Integer || o instanceof Double) {
value = String.valueOf(o);
} else if (o instanceof BigDecimal) {
value = ((BigDecimal) o).toString();

View File

@ -34,14 +34,16 @@ public class MenuServiceImpl implements MenuService {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
menuVO.setDepth(1);
menuVO.setMaxLevel(2);
menuVO.setMenuPosition(MenuPosition.TOP);
List<MenuVO> list = menuMapper.selectListWithConnectBy(menuVO);
List<MenuVO> menuList = new ArrayList<MenuVO>();
for (MenuVO currVO: list) {
MenuVO prevMenu = null;
for (int i = 0; i < list.size(); i++) {
MenuVO currVO = list.get(i);
if (currVO.getDepth() == 0) {
menuList.add(currVO);
prevMenu = currVO;
menuList.add(prevMenu);
} else if (currVO.getDepth() == 1) {
// 견문 메뉴 권한
@ -54,13 +56,8 @@ public class MenuServiceImpl implements MenuService {
if (loginUserVO.getAuthManage() <= 0 && !UserUtil.isAdmin() && "관리기능".equals(currVO.getName())) {
continue;
}
for(MenuVO menu: menuList){
if(menu.getId()==currVO.getParent()){
menu.getSubMenu().add(currVO);
break;
}
}
prevMenu.getSubMenu().add(currVO);
}
}
@ -70,7 +67,6 @@ public class MenuServiceImpl implements MenuService {
@Override
public List<MenuVO> selectTopSubMenuList(final MenuVO menuVO) {
menuVO.setDepth(0);
menuVO.setMaxLevel(1);
menuVO.setMenuPosition(MenuPosition.TOP_SUB);
return menuMapper.selectListWithConnectBy(menuVO);
}
@ -84,11 +80,12 @@ public class MenuServiceImpl implements MenuService {
public HashMap<String, Object> getMenuInfo(final HashMap<String, Object> menu) {
HashMap<String, Object> paramMenu = menuMapper.getMenuInfo(menu);
if ((Double)paramMenu.get("depth") < 3.0d) {
int depth = ((BigDecimal) paramMenu.get("DEPTH")).intValue();
if (depth < 3) {
return paramMenu;
} else {
menu.put("id", ((BigDecimal) paramMenu.get("parent")).intValue());
menu.put("id", ((BigDecimal) paramMenu.get("PARENT")).intValue());
return menuMapper.getMenuInfoById(menu);
}
}

View File

@ -85,17 +85,7 @@ public class MenuVO {
*/
private int userType;
private int maxLevel;
public int getMaxLevel() {
return maxLevel;
}
public void setMaxLevel(int maxLevel) {
this.maxLevel = maxLevel;
}
/**
/**
* @return the id
*/
public final int getId() {

View File

@ -96,7 +96,7 @@ public class CommonController {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
ReportSearchVO reportSearchVO = new ReportSearchVO();
reportSearchVO.setRecordCountPerPage(5);
reportSearchVO.setType(Integer.toString(loginUserVO.getType()));
reportSearchVO.setType(loginUserVO.getType());
reportSearchVO.setUserid(loginUserVO.getUserid());
//최근 1달치
Calendar mon = Calendar.getInstance();
@ -115,25 +115,25 @@ public class CommonController {
List<ReportVO> reportList = judgeService.selectMyList(reportSearchVO);
model.addAttribute("reportList", reportList);
/* 공지사항 리스트 */
searchVO.setId("notice");
List<BoardVO> noticeList = boardService.selectList(searchVO);
model.addAttribute("noticeList", noticeList);
/* 공지사항 리스트 */
searchVO.setId("notice");
List<BoardVO> noticeList = boardService.selectList(searchVO);
model.addAttribute("noticeList", noticeList);
/* 게시판 리스트 */
searchVO.setId("bbs");
List<BoardVO> bbsList = boardService.selectList(searchVO);
model.addAttribute("bbsList", bbsList);
/* 자료실 리스트 */
searchVO.setId("data");
List<BoardVO> dataList = boardService.selectList(searchVO);
model.addAttribute("dataList", dataList);
/* 게시판 리스트 */
searchVO.setId("bbs");
List<BoardVO> bbsList = boardService.selectList(searchVO);
model.addAttribute("bbsList", bbsList);
return "main.tiles";
} else {
return "common/login";
}
/* 자료실 리스트 */
searchVO.setId("data");
List<BoardVO> dataList = boardService.selectList(searchVO);
model.addAttribute("dataList", dataList);
return "main.tiles";
} else {
return "common/login";
}
}
/**

View File

@ -59,8 +59,10 @@ public class ApproveServiceImpl implements ApproveService {
}
@Override
public HashMap<String, Object> insert(final ApproveVO dataVO, final Map<String, MultipartFile> fileMap) throws Exception {
public HashMap<String, Object> insert(final ApproveVO dataVO,
final Map<String, MultipartFile> fileMap) throws Exception {
HashMap<String, Object> result = new HashMap<String, Object>();
// 이미 결재 내역이 있으면 결재하지 않는다.
ApproveVO vo = select(dataVO);
if (vo == null) {

View File

@ -170,7 +170,7 @@ public class EquipmentServiceImpl implements EquipmentService {
while (it.hasNext()) {
HashMap<String, Object> value = paramMap.get(it.next());
HashMap<String, Object> record = equipmentMapper.getEquipUseStateInfoByCode(value);
boolean isInsert = record == null;
boolean isInsert = (record == null) ? true : false;
if (isInsert) {
success = equipmentMapper.insertEquipUseState(value);

View File

@ -10,7 +10,7 @@ package kcg.faics.equip.vo;
*
*/
public class EquipVO {
private Integer serNo;
private String serNo;
private String num;
private String equipType;
private String equipTypeName;
@ -41,7 +41,7 @@ public class EquipVO {
/**
* @return the serNo
*/
public Integer getSerNo() {
public String getSerNo() {
return serNo;
}
@ -90,7 +90,7 @@ public class EquipVO {
/**
* @param serNo the serNo to set
*/
public void setSerNo(Integer serNo) {
public void setSerNo(String serNo) {
this.serNo = serNo;
}
/**

View File

@ -36,8 +36,6 @@ import kcg.faics.member.vo.MemberVO;
import kcg.faics.sec.AuthType;
import kcg.faics.sec.LoginUserVO;
import kcg.faics.sec.UserUtil;
import kcg.faics.tg.service.impl.DivMngServiceImpl;
import kcg.faics.tg.vo.DivMngVO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@ -186,10 +184,10 @@ public class EquipmentController {
Calendar c = Calendar.getInstance();
int currYear = c.get(Calendar.YEAR);
int lastYear = Integer.parseInt((String) year.get(year.size() - 1).get("uyear"));
int lastYear = Integer.parseInt((String) year.get(year.size() - 1).get("UYEAR"));
for (int i = lastYear + 1; i <= currYear; i++) {
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("uyear", i);
map.put("UYEAR", i);
year.add(map);
}
@ -431,8 +429,10 @@ public class EquipmentController {
public String approve(final ApproveVO approveVO, final Model model) throws Exception {
HashMap<String, Object> result = approveService.insert(approveVO, null);
if ("1".equals(result.get("result").toString())) {
return String.format("redirect:/equip/useStateWaiting.do?police=%s&year=%s&quater=%s",
approveVO.getPolice(), approveVO.getYear(), approveVO.getQuater());
return String
.format("redirect:/equip/useStateWaiting.do?police=%s&year=%s&quater=%s",
approveVO.getPolice(), approveVO.getYear(),
approveVO.getQuater());
}
return useStateApprove(approveVO, model);
}
@ -594,24 +594,24 @@ public class EquipmentController {
// 파일 저장 및 데이터 입력
String[] deleteFiles = multiRequest.getParameterValues("deleteFile");
final Map<String, MultipartFile> fileMap = multiRequest.getFileMap();
if(equipVO.getSerNo()==null || equipVO.getSerNo() == 0){
if( equipVO.getSerNo().equals("") || equipVO.getSerNo().equals(null)){
/* 등록 처리 */
equipVO.setWriter(loginUserVO.getUserid());
equipVO.print();
/* 외사장비 등록 */
result = equipmentService.insertEquipment(equipVO, fileMap);
}else{
/* 수정 처리 */
result = equipmentService.updateEquipment(equipVO, fileMap, deleteFiles);
}
equipVO.print();
equipVO.print();

View File

@ -17,8 +17,6 @@ import kcg.faics.fa.vo.EduSearchVO;
import kcg.faics.fa.vo.EduVO;
import kcg.faics.sec.LoginUserVO;
import kcg.faics.sec.UserUtil;
import kcg.faics.tg.vo.DivMngSearchVO;
import kcg.faics.tg.vo.DivMngVO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;

View File

@ -123,7 +123,7 @@ public class ExMemberController {
List<ExMemberVO> resultList = memberService.exmemberVoList(searchVO);
model.addAttribute("resultList", resultList);
model.addAttribute("resultList", memberService.exmemberVoList(searchVO));
model.addAttribute("place1List", codeService.getPlace1List(false));
model.addAttribute("positionList", codeService.getPositionList());
} catch (Exception e) {

View File

@ -87,37 +87,37 @@ public class FaController {
*/
@RequestMapping("/memberManagePersonnelExcel.do")
public String memberManagePersonnelExcel(final Model model) throws Exception {
String title = "외사경찰 정원 및 현원 현황";
List<HashMap<String, Object>> resultList = memberService.getCapacityManagement();
LinkedHashMap<String, String> header = new LinkedHashMap<String, String>();
header.put("codenm", "구분");
header.put("tot_cnt", "전체 정원");
header.put("current_cnt", "현재 정원");
header.put("excess", "과부족");
header.put("position204", "총경 정원");
header.put("cnt_204", "총경 현원");
header.put("CODENM", "구분");
header.put("TOT_CNT", "전체 정원");
header.put("CURRENT_CNT", "현재 정원");
header.put("EXCESS", "과부족");
header.put("POSITION204", "총경 정원");
header.put("CNT_204", "총경 현원");
header.put("position203", "경정 정원");
header.put("cnt_203", "경정 현원");
header.put("POSITION203", "경정 정원");
header.put("CNT_203", "경정 현원");
header.put("position202", "경감 정원");
header.put("cnt_202", "경감 현원");
header.put("POSITION202", "경감 정원");
header.put("CNT_202", "경감 현원");
header.put("position201", "경위 정원");
header.put("cnt_201", "경위 현원");
header.put("POSITION201", "경위 정원");
header.put("CNT_201", "경위 현원");
header.put("position104", "경사 정원");
header.put("cnt_104", "경사 현원");
header.put("POSITION104", "경사 정원");
header.put("CNT_104", "경사 현원");
header.put("position103", "경장 정원");
header.put("cnt_103", "경장 현원");
header.put("POSITION103", "경장 정원");
header.put("CNT_103", "경장 현원");
header.put("POSITION102", "순경 정원");
header.put("CNT_102", "순경 현원");
header.put("position102", "순경 정원");
header.put("cnt_102", "순경 현원");
String title = "외사경찰 정원 및 현원 현황";
model.addAttribute("excel", new ExcelExporter<HashMap<String, Object>>(header, resultList, title));
model.addAttribute("filename", title);

View File

@ -108,23 +108,23 @@ public class InternationalVO {
/**
* 1
*/
private String invasionType1 = "";
private int invasionType1 = 0;
/**
* 2
*/
private String invasionType2 = "";
private int invasionType2 = 0;
/**
* 3
*/
private String invasionType3 = "";
private int invasionType3 = 0;
/**
* 4
*/
private String invasionType4 = "";
private int invasionType4 = 0;
/**
* 5
*/
private String invasionType5 = "";
private int invasionType5 = 0;
/**
* ()
*/
@ -1315,7 +1315,7 @@ public class InternationalVO {
/**
* @return the invasionType1
*/
public String getInvasionType1() {
public int getInvasionType1() {
return invasionType1;
}
@ -1323,7 +1323,7 @@ public class InternationalVO {
/**
* @param invasionType1 the invasionType1 to set
*/
public void setInvasionType1(String invasionType1) {
public void setInvasionType1(int invasionType1) {
this.invasionType1 = invasionType1;
}
@ -1331,7 +1331,7 @@ public class InternationalVO {
/**
* @return the invasionType2
*/
public String getInvasionType2() {
public int getInvasionType2() {
return invasionType2;
}
@ -1339,7 +1339,7 @@ public class InternationalVO {
/**
* @param invasionType2 the invasionType2 to set
*/
public void setInvasionType2(String invasionType2) {
public void setInvasionType2(int invasionType2) {
this.invasionType2 = invasionType2;
}
@ -1347,7 +1347,7 @@ public class InternationalVO {
/**
* @return the invasionType3
*/
public String getInvasionType3() {
public int getInvasionType3() {
return invasionType3;
}
@ -1355,7 +1355,7 @@ public class InternationalVO {
/**
* @param invasionType3 the invasionType3 to set
*/
public void setInvasionType3(String invasionType3) {
public void setInvasionType3(int invasionType3) {
this.invasionType3 = invasionType3;
}
@ -1363,7 +1363,7 @@ public class InternationalVO {
/**
* @return the invasionType4
*/
public String getInvasionType4() {
public int getInvasionType4() {
return invasionType4;
}
@ -1371,7 +1371,7 @@ public class InternationalVO {
/**
* @param invasionType4 the invasionType4 to set
*/
public void setInvasionType4(String invasionType4) {
public void setInvasionType4(int invasionType4) {
this.invasionType4 = invasionType4;
}
@ -1379,7 +1379,7 @@ public class InternationalVO {
/**
* @return the invasionType5
*/
public String getInvasionType5() {
public int getInvasionType5() {
return invasionType5;
}
@ -1387,7 +1387,7 @@ public class InternationalVO {
/**
* @param invasionType5 the invasionType5 to set
*/
public void setInvasionType5(String invasionType5) {
public void setInvasionType5(int invasionType5) {
this.invasionType5 = invasionType5;
}

View File

@ -561,10 +561,10 @@ public class InternationalController {
header.put("speciallaw", "기타(외국인관련범죄)_특별법범");
header.put("commissionCost", "비고");
arrestCntList.setDetentionTotalCnt(
String.valueOf(
arrestCntList.getCaptainCount() + arrestCntList.getMateCount()
+ arrestCntList.getEngineerCount() + arrestCntList.getCrewCount()));
arrestCntList.setDetentionTotalCnt(String.valueOf(arrestCntList.getCaptainCount()
+ arrestCntList.getMateCount()
+ arrestCntList.getEngineerCount()
+ arrestCntList.getCrewCount()));
arrestCntList.setSpecBatlYn(String.valueOf(arrestCntList.getSpecBatlCnt()));
arrestCntList.setNllYn(String.valueOf(arrestCntList.getNllCnt()));
arrestCntList.setNoPaymentCnt(String.valueOf(arrestCntList.getNotPayment()));

View File

@ -177,8 +177,4 @@ public interface MemberService extends BaseBbsService<MemberSearchVO, MemberVO>
*
*/
HashMap<String, Object> deleteExMember(ExMemberVO dataVO) throws Exception;
int deleteFaMemberList(MemberVO user) throws Exception;
int deleteCmmnMemberList(MemberVO user) throws Exception;
}

View File

@ -354,13 +354,4 @@ public class MemberMapper extends EgovAbstractMapper {
public int insertExMemeber(final MemberVO dataVO) {
return insert("Member.insertExMemberByMemberVO", dataVO);
}
public int deleteFaMemberList(MemberVO user) {
return delete("Member.deleteFaMemberList", user);
}
public int deleteCmmnMemberList(MemberVO user) {
return delete("Member.deleteCmmnMemberList", user);
}
}

View File

@ -651,11 +651,6 @@ public class MemberServiceImpl implements MemberService {
resultMap.put("result", memberMapper.deleteExMemeber(dataVO));
return resultMap;
}
public int deleteFaMemberList(MemberVO user) throws Exception{
return memberMapper.deleteFaMemberList(user);
}
public int deleteCmmnMemberList(MemberVO user) throws Exception{
return memberMapper.deleteCmmnMemberList(user);
}
}

View File

@ -5,7 +5,6 @@ import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Locale;
import kcg.faics.member.UserType;
@ -289,21 +288,8 @@ public class MemberVO implements Serializable {
*/
private String writer;
private List<MemberVO> deleteUserList;
public void setNowPlaceStr(String nowPlaceStr) {
this.nowPlaceStr = nowPlaceStr;
}
public List<MemberVO> getDeleteUserList() {
return deleteUserList;
}
public void setDeleteUserList(List<MemberVO> deleteUserList) {
this.deleteUserList = deleteUserList;
}
/**
/**
* @return the userid
*/
public String getUserid() {

View File

@ -401,17 +401,17 @@ public class ReportJudgeServiceImpl extends EgovAbstractServiceImpl implements R
HashMap<String, String> ttt = new HashMap<String, String>();
for (String mapKey : newMap.keySet()) {
if (!mapKey.equals("total") && !mapKey.equals("placename") && !mapKey.equals("placecode")) {
if (!mapKey.equals("TOTAL") && !mapKey.equals("PLACENAME") && !mapKey.equals("PLACECODE")) {
ttt.put(mapKey + "_1", newMap.get(mapKey));
}
}
ttt.put("placename", newMap.get("placename"));
ttt.put("PLACENAME", newMap.get("PLACENAME"));
if (cateMap.size() > idx && cateMap.get(idx) != null) {
cateMap.get(idx).putAll(ttt);
cateMap.get(idx).put("total", String.valueOf(Integer.parseInt(cateMap.get(idx).get("total").toString()) + Integer.parseInt(newMap.get("total").toString())));
cateMap.get(idx).put("TOTAL", String.valueOf(Integer.parseInt(cateMap.get(idx).get("TOTAL").toString()) + Integer.parseInt(newMap.get("TOTAL").toString())));
} else {
ttt.put("total", newMap.get("total"));
ttt.put("TOTAL", newMap.get("TOTAL"));
cateMap.add(idx, ttt);
}
idx++;
@ -427,17 +427,17 @@ public class ReportJudgeServiceImpl extends EgovAbstractServiceImpl implements R
HashMap<String, String> ttt = new HashMap<String, String>();
for (String mapKey : newMap.keySet()) {
if (!mapKey.equals("total") && !mapKey.equals("placename") && !mapKey.equals("placecode")) {
if (!mapKey.equals("TOTAL") && !mapKey.equals("PLACENAME") && !mapKey.equals("PLACECODE")) {
ttt.put(mapKey + "_2", newMap.get(mapKey));
}
ttt.put("placename", newMap.get("placename"));
ttt.put("PLACENAME", newMap.get("PLACENAME"));
}
if (cateMap.size() > idx && cateMap.get(idx) != null) {
cateMap.get(idx).putAll(ttt);
cateMap.get(idx).put("total", String.valueOf((Integer.parseInt(String.valueOf(cateMap.get(idx).get("total"))) + Integer.parseInt(String.valueOf(newMap.get("total"))))));
cateMap.get(idx).put("TOTAL", String.valueOf(Integer.parseInt(cateMap.get(idx).get("TOTAL").toString()) + Integer.parseInt(newMap.get("TOTAL").toString())));
} else {
ttt.put("total", newMap.get("total"));
ttt.put("TOTAL", newMap.get("TOTAL"));
cateMap.add(idx, ttt);
}
idx++;
@ -452,17 +452,17 @@ public class ReportJudgeServiceImpl extends EgovAbstractServiceImpl implements R
HashMap<String, String> ttt = new HashMap<String, String>();
for (String mapKey : newMap.keySet()) {
if (!mapKey.equals("total") && !mapKey.equals("placename") && !mapKey.equals("placecode")) {
if (!mapKey.equals("TOTAL") && !mapKey.equals("PLACENAME") && !mapKey.equals("PLACECODE")) {
ttt.put(mapKey + "_3", newMap.get(mapKey));
}
ttt.put("placename", newMap.get("placename"));
ttt.put("PLACENAME", newMap.get("PLACENAME"));
}
if (cateMap.size() > idx && cateMap.get(idx) != null) {
cateMap.get(idx).putAll(ttt);
cateMap.get(idx).put("total", String.valueOf(Integer.parseInt(String.valueOf(cateMap.get(idx).get("total"))) + Integer.parseInt(String.valueOf(newMap.get("total")))));
cateMap.get(idx).put("TOTAL", String.valueOf(Integer.parseInt(cateMap.get(idx).get("TOTAL").toString()) + Integer.parseInt(newMap.get("TOTAL").toString())));
} else {
ttt.put("total", newMap.get("total"));
ttt.put("TOTAL", newMap.get("TOTAL"));
cateMap.add(idx, ttt);
}
idx++;
@ -477,17 +477,17 @@ public class ReportJudgeServiceImpl extends EgovAbstractServiceImpl implements R
HashMap<String, String> ttt = new HashMap<String, String>();
for (String mapKey : newMap.keySet()) {
if (!mapKey.equals("total") && !mapKey.equals("placename") && !mapKey.equals("placecode")) {
if (!mapKey.equals("TOTAL") && !mapKey.equals("PLACENAME") && !mapKey.equals("PLACECODE")) {
ttt.put(mapKey + "_4", newMap.get(mapKey));
}
ttt.put("placename", newMap.get("placename"));
ttt.put("PLACENAME", newMap.get("PLACENAME"));
}
if (cateMap.size() > idx && cateMap.get(idx) != null) {
cateMap.get(idx).putAll(ttt);
cateMap.get(idx).put("total", String.valueOf(Integer.parseInt(String.valueOf(cateMap.get(idx).get("total"))) + Integer.parseInt(String.valueOf(newMap.get("total")))));
cateMap.get(idx).put("TOTAL", String.valueOf(Integer.parseInt(cateMap.get(idx).get("TOTAL").toString()) + Integer.parseInt(newMap.get("TOTAL").toString())));
} else {
ttt.put("total", newMap.get("total"));
ttt.put("TOTAL", newMap.get("TOTAL"));
cateMap.add(idx, ttt);
}
idx++;
@ -496,15 +496,15 @@ public class ReportJudgeServiceImpl extends EgovAbstractServiceImpl implements R
if (cateMap.size() > 0) {
HashMap<String, String> totalMap = new HashMap<String, String>();
totalMap.put("placename", "누계");
totalMap.put("PLACENAME", "누계");
for (String key : cateMap.get(0).keySet()) {
if (key.equals("placename")) {
if (key.equals("PLACENAME")) {
continue;
}
int tt = 0;
for (HashMap<String, String> hashMap : cateMap) {
tt = tt + Integer.parseInt(String.valueOf(hashMap.get(key)));
tt = tt + Integer.parseInt(hashMap.get(key));
}
totalMap.put(key, String.valueOf(tt));
}
@ -520,33 +520,33 @@ public class ReportJudgeServiceImpl extends EgovAbstractServiceImpl implements R
List<HashMap<String, String>> list = reportJudgeMapper.statsJudge(reportSearchVO);
HashMap<String, String> map = new HashMap<String, String>();
map.put("placename", "누계");
map.put("PLACENAME", "누계");
if (list.size() > 0) {
for (String key : list.get(0).keySet()) {
if (key.equals("placename")) {
if (key.equals("PLACENAME")) {
continue;
}
int total = 0;
for (HashMap<String, String> item : list) {
total += Integer.parseInt(String.valueOf(item.get("bg")));
total = total + Integer.parseInt(item.get(key));
}
map.put(key, String.valueOf(total));
}
} else {
map.put("report1", "0");
map.put("report2", "0");
map.put("ju1", "0");
map.put("ju2", "0");
map.put("ju3", "0");
map.put("ju4", "0");
map.put("ju5", "0");
map.put("ju6", "0");
map.put("ju7", "0");
map.put("ag", "0");
map.put("bg", "0");
map.put("cg", "0");
map.put("dg", "0");
map.put("REPORT1", "0");
map.put("REPORT2", "0");
map.put("JU1", "0");
map.put("JU2", "0");
map.put("JU3", "0");
map.put("JU4", "0");
map.put("JU5", "0");
map.put("JU6", "0");
map.put("JU7", "0");
map.put("AG", "0");
map.put("BG", "0");
map.put("CG", "0");
map.put("DG", "0");
}
list.add(list.size(), map);

View File

@ -9,12 +9,7 @@ import kcg.faics.cmmn.bbs.BaseSearchVO;
* VO
*/
public class ReportSearchVO extends BaseSearchVO implements Cloneable {
private int report1;
private int report2;
/**
*
*/
@ -26,7 +21,7 @@ public class ReportSearchVO extends BaseSearchVO implements Cloneable {
/**
*
*/
private String type;
private int type;
/**
*
*/
@ -154,22 +149,6 @@ public class ReportSearchVO extends BaseSearchVO implements Cloneable {
*
*/
private String month;
public int getReport1() {
return report1;
}
public void setReport1(int report1) {
this.report1 = report1;
}
public int getReport2() {
return report2;
}
public void setReport2(int report2) {
this.report2 = report2;
}
public String getUserid() {
return userid;
@ -183,10 +162,10 @@ public class ReportSearchVO extends BaseSearchVO implements Cloneable {
public void setUsegrade(final int usegrade) {
this.usegrade = usegrade;
}
public String getType() {
public int getType() {
return type;
}
public void setType(final String type) {
public void setType(final int type) {
this.type = type;
}
public int getMyGroupCode() {

View File

@ -348,7 +348,6 @@ public class ReportVO {
private String isJudge5;
private String isJudge6;
private String isJudge7;
private String isJudge8;
private String isReport1;
private String isReport2;
@ -614,12 +613,9 @@ public class ReportVO {
case 6:
this.isJudge6 = STRCORRECT;
break;
case 7:
this.isJudge7 = STRCORRECT;
break;
case 8:
this.isJudge8 = STRCORRECT;
break;
case 7:
this.isJudge7 = STRCORRECT;
break;
default:
break;
}
@ -910,12 +906,9 @@ public class ReportVO {
public String getIsJudge6() {
return isJudge6;
}
public String getIsJudge7() {
return isJudge7;
}
public String getIsJudge8() {
return isJudge8;
}
public String getIsJudge7() {
return isJudge7;
}
public String getIsReport1() {
return isReport1;
}
@ -988,8 +981,8 @@ public class ReportVO {
+ ", isSection=" + isSection + ", isJudge2=" + isJudge2
+ ", isJudge3=" + isJudge3 + ", isJudge4=" + isJudge4
+ ", isJudge5=" + isJudge5 + ", isJudge6=" + isJudge6
+ ", isJudge7=" + isJudge7 + ", isJudge8=" + isJudge8
+ ", isReport1=" + isReport1 + ", isReport2=" + isReport2 + ", reportList=" + reportList
+ ", isJudge7=" + isJudge7 + ", isReport1=" + isReport1
+ ", isReport2=" + isReport2 + ", reportList=" + reportList
+ "]";
}
}

View File

@ -213,7 +213,7 @@ public class ReportCommon {
result.setUserid(loginUserVO.getUserid());
result.setUsegrade(loginUserVO.getUsegrade());
result.setType(Integer.toString(loginUserVO.getType()));
result.setType(loginUserVO.getType());
result.setMyGroupCode(ReportCommon.getMyGroupCode());
result.setDuties(loginUserVO.getDutiesStr());
result.setUserPlace(loginUserVO.getPlace1());

View File

@ -131,7 +131,7 @@ public class ReportController {
try {
rptSearchVO.setUserid(loginUserVO.getUserid());
rptSearchVO.setUsegrade(loginUserVO.getUsegrade());
rptSearchVO.setType(Integer.toString(loginUserVO.getType()));
rptSearchVO.setType(loginUserVO.getType());
/* 페이징 처리 정보 */
rptSearchVO.setPageUnit(propertiesService.getInt("pageUnit"));

View File

@ -1,7 +1,12 @@
package kcg.faics.report.web;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Locale;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@ -197,49 +202,22 @@ public class ReportStatsController {
searchVO = ReportCommon.setSearchUserInfo(searchVO);
// 분야별 통계
if ("C".equals(searchVO.getStatsType())) {
header.put("placename", messageSource.getMessage("report.view.division", null, locale));
header.put("total", messageSource.getMessage("report.stats.total", null, locale));
if(reportSearchVO.getCategory1() != null) {
for (String category : reportSearchVO.getCategory1()) {
header.put(category + "_1", messageSource.getMessage("report.category." + category + "_1", null, locale));
}
}
else {
HashMap<String, String> category = cateService.getCategory1();
searchVO.setCategory1(category.keySet().toArray(new String[category.size()]));
}
if(reportSearchVO.getCategory2()!=null) {
for (String category : reportSearchVO.getCategory2()) {
header.put(category + "_2", messageSource.getMessage("report.category." + category + "_2", null, locale));
}
header.put("PLACENAME", messageSource.getMessage("report.view.division", null, locale));
header.put("TOTAL", messageSource.getMessage("report.stats.total", null, locale));
for (String category : reportSearchVO.getCategory1()) {
header.put(category + "_1", messageSource.getMessage("report.category." + category + "_1", null, locale));
}
else {
HashMap<String, String> category = cateService.getCategory2();
searchVO.setCategory2(category.keySet().toArray(new String[category.size()]));
for (String category : reportSearchVO.getCategory2()) {
header.put(category + "_2", messageSource.getMessage("report.category." + category + "_2", null, locale));
}
if(reportSearchVO.getCategory3()!=null) {
for (String category : reportSearchVO.getCategory3()) {
header.put(category + "_3", messageSource.getMessage("report.category." + category + "_3", null, locale));
}
for (String category : reportSearchVO.getCategory3()) {
header.put(category + "_3", messageSource.getMessage("report.category." + category + "_3", null, locale));
}
else {
HashMap<String, String> category = cateService.getCategory3();
searchVO.setCategory3(category.keySet().toArray(new String[category.size()]));
for (String category : reportSearchVO.getCategory4()) {
header.put(category + "_4", messageSource.getMessage("report.category." + category + "_4", null, locale));
}
if(reportSearchVO.getCategory4()!=null) {
for (String category : reportSearchVO.getCategory4()) {
header.put(category + "_4", messageSource.getMessage("report.category." + category + "_4", null, locale));
}
}
else {
HashMap<String, String> category = cateService.getCategory4();
searchVO.setCategory4(category.keySet().toArray(new String[category.size()]));
}
try {
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
@ -254,7 +232,7 @@ public class ReportStatsController {
searchVO.setPlaces(placeList.toArray(new String[placeList.size()]));
}
/* // 분류 아무것도 선택하지 않은 경우 모두 세팅
// 분류 아무것도 선택하지 않은 경우 모두 세팅
if (searchVO.isSearchCate1() && searchVO.getCategory1().length == 0) {
HashMap<String, String> category = cateService.getCategory1();
searchVO.setCategory1(category.keySet().toArray(new String[category.size()]));
@ -270,7 +248,7 @@ public class ReportStatsController {
if (searchVO.isSearchCate1() && searchVO.getCategory4().length == 0) {
HashMap<String, String> category = cateService.getCategory4();
searchVO.setCategory4(category.keySet().toArray(new String[category.size()]));
}*/
}
List<HashMap<String, String>> list = judgeService.statsCategory(searchVO);
@ -281,23 +259,23 @@ public class ReportStatsController {
e.printStackTrace();
}
} else if ("J".equals(searchVO.getStatsType())) {
header.put("placename", messageSource.getMessage("report.view.division", null, locale));
header.put("PLACENAME", messageSource.getMessage("report.view.division", null, locale));
header.put("report1", messageSource.getMessage("report.type.fullReport1", null, locale));
header.put("report2", messageSource.getMessage("report.type.fullReport2", null, locale));
header.put("REPORT1", messageSource.getMessage("report.type.fullReport1", null, locale));
header.put("REPORT2", messageSource.getMessage("report.type.fullReport2", null, locale));
header.put("ju1", messageSource.getMessage("report.type.newsflash", null, locale));
header.put("ju2", messageSource.getMessage("report.type.judge", null, locale));
header.put("ju3", messageSource.getMessage("report.type.middle", null, locale));
header.put("ju4", messageSource.getMessage("report.type.notice", null, locale));
header.put("ju5", messageSource.getMessage("report.type.record", null, locale));
header.put("ju6", messageSource.getMessage("report.type.survey", null, locale));
header.put("ju7", messageSource.getMessage("report.type.reference", null, locale));
header.put("JU1", messageSource.getMessage("report.type.newsflash", null, locale));
header.put("JU2", messageSource.getMessage("report.type.judge", null, locale));
header.put("JU3", messageSource.getMessage("report.type.middle", null, locale));
header.put("JU4", messageSource.getMessage("report.type.notice", null, locale));
header.put("JU5", messageSource.getMessage("report.type.record", null, locale));
header.put("JU6", messageSource.getMessage("report.type.survey", null, locale));
header.put("JU7", messageSource.getMessage("report.type.reference", null, locale));
header.put("ag", messageSource.getMessage("report.stats.AGrade", null, locale));
header.put("bg", messageSource.getMessage("report.stats.BGrade", null, locale));
header.put("cg", messageSource.getMessage("report.stats.CGrade", null, locale));
header.put("dg", messageSource.getMessage("report.stats.DGrade", null, locale));
header.put("AG", messageSource.getMessage("report.stats.AGrade", null, locale));
header.put("BG", messageSource.getMessage("report.stats.BGrade", null, locale));
header.put("CG", messageSource.getMessage("report.stats.CGrade", null, locale));
header.put("DG", messageSource.getMessage("report.stats.DGrade", null, locale));
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
@ -311,4 +289,4 @@ public class ReportStatsController {
return "excelView";
}
}
}

View File

@ -99,8 +99,8 @@ public class LoginSuccessHandler implements AuthenticationSuccessHandler {
String head = null;
String section = null;
if (rptApprove != null) {
head = (String) rptApprove.get("head");
section = (String) rptApprove.get("section");
head = (String) rptApprove.get("HEAD");
section = (String) rptApprove.get("SECTION");
}
/* 계장? */
user.setAuthHead(head != null && head.equals(userId) ? 1 : 0);
@ -113,10 +113,10 @@ public class LoginSuccessHandler implements AuthenticationSuccessHandler {
int authCode = 0;
if (rptAu != null) {
if (rptAu.get("code") == null) {
if (rptAu.get("CODE") == null) {
authCode = 32;
} else {
authCode = Integer.parseInt(rptAu.get("code").toString());
authCode = Integer.parseInt(rptAu.get("CODE").toString());
}
}
user.setAuthCode(authCode);
@ -170,8 +170,8 @@ public class LoginSuccessHandler implements AuthenticationSuccessHandler {
/* 관리자? */
int roleLev = user.getRolelevel();
user.setAuthAdmin((roleLev <= propertiesService.getInt("adminLevel")) ? 1 : 0);
user.setIsAdmin(roleLev <= propertiesService.getInt("adminLevel"));
user.setIsSysAdmin((roleLev <= propertiesService.getInt("sysAdminLevel")) || propertiesService.getString("sysAdminId").equals(userId));
user.setIsAdmin((roleLev <= propertiesService.getInt("adminLevel")) ? true : false);
user.setIsSysAdmin((roleLev <= propertiesService.getInt("sysAdminLevel")) || propertiesService.getString("sysAdminId").equals(userId) ? true : false);
/* 로그인 실패횟수 초기화 */
MemberVO memberVO = new MemberVO();

View File

@ -11,7 +11,6 @@ import kcg.faics.member.vo.MemberVO;
import kcg.faics.sec.LoginUserVO;
import kcg.faics.sec.role.SecurityRolesVO;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.security.access.ConfigAttribute;
import org.springframework.security.access.SecurityConfig;
import org.springframework.security.web.util.matcher.AntPathRequestMatcher;
@ -34,6 +33,7 @@ import egovframework.rte.psl.dataaccess.EgovAbstractMapper;
@Repository("securityMapper")
public class SecurityMapper extends EgovAbstractMapper {
/**
* .
*
@ -85,17 +85,16 @@ public class SecurityMapper extends EgovAbstractMapper {
public String getHierarchyRoles() {
List<Map<String, Object>> resultList = selectList("Security.getHierarchyRoles");
Iterator<Map<String, Object>> itr = resultList.iterator();
StringBuilder concatedRoles = new StringBuilder();
Map<String, Object> tempMap;
while (itr.hasNext()) {
tempMap = itr.next();
concatedRoles.append(tempMap.get("child"));
concatedRoles.append(" > ");
concatedRoles.append(tempMap.get("parent"));
concatedRoles.append("\n");
}
return concatedRoles.toString();
StringBuffer concatedRoles = new StringBuffer();
Map<String, Object> tempMap;
while (itr.hasNext()) {
tempMap = itr.next();
concatedRoles.append(tempMap.get("CHILD"));
concatedRoles.append(" > ");
concatedRoles.append(tempMap.get("PARENT"));
concatedRoles.append("\n");
}
return concatedRoles.toString();
}
/**
@ -141,9 +140,8 @@ public class SecurityMapper extends EgovAbstractMapper {
* SecuredObjectDAO, SecuredObjectServiceImpl .
* */
boolean isResourcesUrl = true;
String resourceType ="url";
String resourceType = "URL";
LinkedHashMap<Object, List<ConfigAttribute>> resourcesMap = new LinkedHashMap<Object, List<ConfigAttribute>>();
Iterator<Map<String, Object>> itr = list.iterator();
Map<String, Object> tempMap;
@ -177,7 +175,7 @@ public class SecurityMapper extends EgovAbstractMapper {
}
}
configList.add(new SecurityConfig((String) tempMap.get("authority")));
configList.add(new SecurityConfig((String) tempMap.get("AUTHORITY")));
resourcesMap.put(presentResource, configList);
@ -198,7 +196,7 @@ public class SecurityMapper extends EgovAbstractMapper {
/**
* .
*
* @param memberVO
* @param loginUserVO
* @return - 1, - 0
*/
public int updateChkInfo(MemberVO memberVO) {

View File

@ -235,9 +235,9 @@ public class PromotController {
*/
@RequestMapping(value = "/add.do", method = RequestMethod.POST)
public String add(final MultipartHttpServletRequest multiRequest,
@Valid @ModelAttribute("promotVO") final PromotVO promotVO,
final BindingResult bindingResult, final Model model,
final SessionStatus status) throws Exception {
@Valid @ModelAttribute("promotVO") final PromotVO promotVO,
final BindingResult bindingResult, final Model model,
final SessionStatus status) throws Exception {
// 사용자 인증 검사
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
@ -253,8 +253,10 @@ public class PromotController {
promotVO.setWriter(loginUserVO.getUserid());
// 파일 저장 및 데이터 입력
final Map<String, MultipartFile> fileMap = multiRequest.getFileMap();
HashMap<String, Object> map = susaService.insert(promotVO, fileMap);
final Map<String, MultipartFile> fileMap = multiRequest
.getFileMap();
HashMap<String, Object> map = susaService.insert(promotVO,
fileMap);
status.setComplete();

View File

@ -1,96 +0,0 @@
package kcg.faics.tg;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* .
*
* @author kimnomin
*
*/
public enum FerryRouteType {
/**
* -.
*/
KR_CH("A", "한-중"),
/**
* -.
*/
KR_RU("B", "한-러"),
/**
* -.
*/
KR_JP("C", "한-일"),
/**
* .
*/
KP("D", "북한");
/**
* code.
*/
private final String code;
/**
* value.
*/
private final String value;
/**
* @return the code
*/
public final String getCode() {
return code;
}
/**
* @return the value
*/
public final String getValue() {
return value;
}
/**
* code value .
*
* @param code code
* @return value
*/
public static final String getValue(final String code) {
String value = "";
for (FerryRouteType item: FerryRouteType.values()) {
if (item.getCode().equalsIgnoreCase(code)) {
value = item.getValue();
break;
}
}
return value;
}
/**
* exclude List .
*
* @param exclude
* @return List
*/
public static final List<FerryRouteType> values(final FerryRouteType... exclude) {
List<FerryRouteType> list = new ArrayList<FerryRouteType>();
for (FerryRouteType item : values()) {
if (!Arrays.asList(exclude).contains(item)) {
list.add(item);
}
}
return list;
}
/**
* .
*
* @param code
* @param value
*/
FerryRouteType(final String code, final String value) {
this.code = code;
this.value = value;
}
}

View File

@ -1,68 +0,0 @@
package kcg.faics.tg;
/**
* .
*
* @author kimnomin
*
*/
public enum FerryRunTermType {
/**
* .
*/
WEEK("A", "주"),
/**
* .
*/
DAY("B", "일");
/**
* code.
*/
private final String code;
/**
* value.
*/
private final String value;
/**
* @return the code
*/
public final String getCode() {
return code;
}
/**
* @return the value
*/
public final String getValue() {
return value;
}
/**
* code value .
*
* @param code code
* @return value
*/
public static final String getValue(final String code) {
String value = "";
for (FerryRunTermType item: FerryRunTermType.values()) {
if (item.getCode().equalsIgnoreCase(code)) {
value = item.getValue();
break;
}
}
return value;
}
/**
* .
*
* @param code
* @param value
*/
FerryRunTermType(final String code, final String value) {
this.code = code;
this.value = value;
}
}

View File

@ -1,8 +0,0 @@
/**
* .
*/
/**
* @author kimnomin
*
*/
package kcg.faics.tg;

View File

@ -1,25 +0,0 @@
package kcg.faics.tg.service;
import java.util.HashMap;
import java.util.List;
import kcg.faics.cmmn.bbs.BaseBbsService;
import kcg.faics.tg.vo.CorpSearchVO;
import kcg.faics.tg.vo.CorpVO;
/**
* .
*
* @author kimnomin
*
*/
public interface CorpService extends BaseBbsService<CorpSearchVO, CorpVO> {
/**
* .
*
* @return
* @throws Exception
*
*/
List<HashMap<String, Object>> selectStats() throws Exception;
}

View File

@ -1,37 +0,0 @@
package kcg.faics.tg.service;
import java.util.HashMap;
import java.util.List;
import kcg.faics.cmmn.bbs.BaseBbsService;
import kcg.faics.tg.vo.WeakPlaceSearchVO;
import kcg.faics.tg.vo.WeakPlaceVO;
/**
* .
*
* @author kimnomin
*
*/
public interface WeakPlaceService extends
BaseBbsService<WeakPlaceSearchVO, WeakPlaceVO> {
/**
* .
*
* @return
* @throws Exception
*
*/
List<HashMap<String, Object>> selectStatsPerPlace() throws Exception;
/**
* .
*
* @param place1
*
* @return
* @throws Exception
*
*/
int selectMaxWpNo(String place1) throws Exception;
}

View File

@ -1,109 +0,0 @@
package kcg.faics.tg.service.impl;
import java.util.HashMap;
import java.util.List;
import kcg.faics.tg.vo.CorpSearchVO;
import kcg.faics.tg.vo.CorpVO;
import org.springframework.stereotype.Repository;
import egovframework.rte.psl.dataaccess.EgovAbstractMapper;
/**
* Mapper .
*
* @author kimnomin
*
*/
@Repository("corpMapper")
public class CorpMapper extends EgovAbstractMapper {
/**
* .
*
* @param corpVO
* VO
* @return
* @throws Exception
*
*/
public CorpVO select(final CorpVO corpVO) throws Exception {
return selectOne("Corp.select", corpVO);
}
/**
* .
*
* @param searchVO
* VO
* @return
*/
public List<CorpVO> selectList(final CorpSearchVO searchVO) {
return selectList("Corp.selectList", searchVO);
}
/**
* .
*
* @param map
* Map
* @return
* @throws Exception
*
*/
public List<HashMap<String, Object>> selectStats(final HashMap<String, Object> map)
throws Exception {
return selectList("Corp.selectStats", map);
}
/**
* .
*
* @param corpVO
* VO
* @return <code>1</code> , <code>0</code>
*/
public int insert(final CorpVO corpVO) {
return insert("Corp.insert", corpVO);
}
/**
* orgNo .
*
* @param corpVO
* VO
* @return orgNo
* @throws Exception
*
*/
public int selectMaxOrgNo(final CorpVO corpVO) throws Exception {
return selectOne("Corp.selectMaxOrgNo", corpVO);
}
/**
* .
*
* @param corpVO
* VO
* @return <code>1</code>, <code>0</code>
* @throws Exception
*
*/
public int delete(final CorpVO corpVO) throws Exception {
return delete("Corp.delete", corpVO);
}
/**
* .
*
* @param corpVO
* VO
* @return <code>1</code>, <code>0</code>
* @throws Exception
*
*/
public int update(final CorpVO corpVO) throws Exception {
return update("Corp.update", corpVO);
}
}

View File

@ -1,128 +0,0 @@
package kcg.faics.tg.service.impl;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import kcg.faics.cmmn.egov.file.EgovFileMngUtil;
import kcg.faics.cmmn.service.CodeService;
import kcg.faics.tg.service.CorpService;
import kcg.faics.tg.vo.CorpSearchVO;
import kcg.faics.tg.vo.CorpVO;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
/**
* .
*
* @author kimnomin
*
*/
@Service("corpService")
public class CorpServiceImpl extends EgovAbstractServiceImpl implements CorpService {
/**
* Utility.
**/
@Resource(name = "EgovFileMngUtil")
private EgovFileMngUtil fileUtil;
/**
* Mapper .
*/
@Resource(name = "corpMapper")
private CorpMapper corpMapper;
/**
* orgNo .
*
* @param corpVO
* VO
* @return orgNo
* @throws Exception
*
*/
private int selectNextOrgNo(final CorpVO corpVO) throws Exception {
int result = 1;
try {
result = corpMapper.selectMaxOrgNo(corpVO) + 1;
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
@Override
public CorpVO select(final CorpVO dataVO) throws Exception {
return corpMapper.select(dataVO);
}
@Override
public List<CorpVO> selectListAll(final CorpSearchVO searchVO) throws Exception {
// TODO Auto-generated method stub
return null;
}
@Override
public List<CorpVO> selectList(final CorpSearchVO searchVO) throws Exception {
if (CodeService.LIST_ALL_VAL.equalsIgnoreCase(searchVO.getPlace1())) {
searchVO.setPlace1("");
}
return corpMapper.selectList(searchVO);
}
@Override
public int selectListCnt(final CorpSearchVO searchVO) throws Exception {
// TODO Auto-generated method stub
return 0;
}
@Override
public int selectTotalCnt(final CorpSearchVO searchVO) throws Exception {
// TODO Auto-generated method stub
return 0;
}
@Override
public HashMap<String, Object> insert(final CorpVO dataVO,
final Map<String, MultipartFile> fileMap) throws Exception {
int nextOrgNo = selectNextOrgNo(dataVO);
dataVO.setOrgNo(nextOrgNo);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("result", corpMapper.insert(dataVO));
return map;
}
@Override
public HashMap<String, Object> update(final CorpVO dataVO,
final Map<String, MultipartFile> fileMap, final String[] deleteFiles)
throws Exception {
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("result", corpMapper.update(dataVO));
return map;
}
@Override
public HashMap<String, Object> delete(final CorpVO dataVO) throws Exception {
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("result", corpMapper.delete(dataVO));
return map;
}
@Override
public List<HashMap<String, Object>> selectStats() throws Exception {
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("placeList", CodeService.POLICE_STATION_LIST);
return corpMapper.selectStats(map);
}
}

View File

@ -1,94 +0,0 @@
package kcg.faics.tg.service.impl;
import java.util.List;
import kcg.faics.tg.vo.DivMngSearchVO;
import kcg.faics.tg.vo.DivMngVO;
import org.springframework.stereotype.Repository;
import egovframework.rte.psl.dataaccess.EgovAbstractMapper;
/**
* Mapper .
*
* @author kimnomin
*
*/
@Repository("divMngMapper")
public class DivMngMapper extends EgovAbstractMapper {
/**
* .
*
* @param vo
* VO
* @return
* @throws Exception
*
*/
public DivMngVO select(final DivMngVO vo) throws Exception {
return selectOne("DivMng.select", vo);
}
/**
* .
*
* @param searchVO
* VO
* @return
*/
public List<DivMngVO> selectList(final DivMngSearchVO searchVO) {
return selectList("DivMng.selectList", searchVO);
}
/**
* .
*
* @param vo
* VO
* @return <code>1</code> , <code>0</code>
*/
public int insert(final DivMngVO vo) {
return insert("DivMng.insert", vo);
}
/**
* .
*
* @param vo
* VO
* @return <code>1</code>, <code>0</code>
* @throws Exception
*
*/
public int delete(final DivMngVO vo) throws Exception {
return delete("DivMng.delete", vo);
}
/**
* .
*
* @param vo
* VO
* @return <code>1</code>, <code>0</code>
* @throws Exception
*
*/
public int update(final DivMngVO vo) throws Exception {
return update("DivMng.update", vo);
}
/**
* Place DS_NO .
*
* @param vo
* VO
* @return place DS_NO
* @throws Exception
*
*/
public int selectMaxNo(final DivMngVO vo) throws Exception {
return selectOne("DivMng.selectMaxNo", vo);
}
}

View File

@ -1,224 +0,0 @@
package kcg.faics.tg.service.impl;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import kcg.faics.cmmn.bbs.BaseBbsService;
import kcg.faics.cmmn.egov.file.EgovFileMngUtil;
import kcg.faics.cmmn.egov.vo.FileVO;
import kcg.faics.cmmn.service.CodeService;
import kcg.faics.tg.vo.DivMngSearchVO;
import kcg.faics.tg.vo.DivMngVO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
/**
* .
*
* @author kimnomin
*
*/
@Service("divMngService")
public class DivMngServiceImpl extends EgovAbstractServiceImpl implements
BaseBbsService<DivMngSearchVO, DivMngVO> {
/**
* property .
*/
public static final String FILE_PATH_KEYWORD = "Target.divmng.fileStorePath";
/**
* Utility.
**/
@Resource(name = "EgovFileMngUtil")
private EgovFileMngUtil fileUtil;
/**
* Mapper .
*/
@Resource(name = "divMngMapper")
private DivMngMapper divMngMapper;
/**
* Place DS_NO .
*
* @param divMngVO
* VO
* @return place DS_NO+1
* @throws Exception
*
*/
private int selectNextNo(final DivMngVO divMngVO) throws Exception {
int result = 1;
try {
result = divMngMapper.selectMaxNo(divMngVO) + 1;
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
@Override
public DivMngVO select(final DivMngVO dataVO) throws Exception {
return divMngMapper.select(dataVO);
}
@Override
public List<DivMngVO> selectListAll(final DivMngSearchVO searchVO)
throws Exception {
// TODO Auto-generated method stub
return null;
}
@Override
public List<DivMngVO> selectList(final DivMngSearchVO searchVO) throws Exception {
if (CodeService.LIST_ALL_VAL.equalsIgnoreCase(searchVO.getPlace())) {
searchVO.setPlace("");
}
return divMngMapper.selectList(searchVO);
}
@Override
public int selectListCnt(final DivMngSearchVO searchVO) throws Exception {
// TODO Auto-generated method stub
return 0;
}
@Override
public int selectTotalCnt(final DivMngSearchVO searchVO) throws Exception {
// TODO Auto-generated method stub
return 0;
}
@Override
public HashMap<String, Object> insert(final DivMngVO dataVO,
final Map<String, MultipartFile> fileMap) throws Exception {
HashMap<String, Object> map = new HashMap<String, Object>();
int no = selectNextNo(dataVO);
if (no > 0) {
dataVO.setNo(no);
List<FileVO> fileList = fileUtil.parseFileInf(fileMap, null, 0, "", FILE_PATH_KEYWORD);
for (FileVO fileVO : fileList) {
if ("fileImgObj".equalsIgnoreCase(fileVO.getFileSn())) {
dataVO.setFileImg(fileVO.getStreFileNm());
} else if ("file1obj".equalsIgnoreCase(fileVO.getFileSn())) {
dataVO.setFile1(fileVO.getStreFileNm());
} else if ("file2obj".equalsIgnoreCase(fileVO.getFileSn())) {
dataVO.setFile2(fileVO.getStreFileNm());
} else if ("file3obj".equalsIgnoreCase(fileVO.getFileSn())) {
dataVO.setFile3(fileVO.getStreFileNm());
}
}
map.put("result", divMngMapper.insert(dataVO));
} else {
map.put("result", 0);
}
return map;
}
/**
* Update .
*
* @param fileMap Map
* @param fileMapKey Map key
* @param deleteFileList
* @param deleteFileListKey
* @return
*/
private boolean isRemoveTarget(final Map<String, MultipartFile> fileMap,
final String fileMapKey, final List<String> deleteFileList,
final String deleteFileListKey) {
boolean isRemoveTarget = false;
if (deleteFileList.contains(deleteFileListKey)
|| (fileMap.containsKey(fileMapKey) && fileMap.get(fileMapKey).getSize() > 0)) {
isRemoveTarget = true;
}
return isRemoveTarget;
}
@Override
public HashMap<String, Object> update(final DivMngVO dataVO,
final Map<String, MultipartFile> fileMap, final String[] deleteFiles)
throws Exception {
DivMngVO vo = select(dataVO);
dataVO.setFileImg(vo.getFileImg());
dataVO.setFile1(vo.getFile1());
dataVO.setFile2(vo.getFile2());
dataVO.setFile3(vo.getFile3());
List<String> deleteFileList = new ArrayList<String>();
if (deleteFiles != null) {
deleteFileList = Arrays.asList(deleteFiles);
}
if (isRemoveTarget(fileMap, "fileImgObj", deleteFileList, "fileImg")) {
fileUtil.deleteFile(vo.getFileImg(), FILE_PATH_KEYWORD);
dataVO.setFileImg("");
}
if (isRemoveTarget(fileMap, "file1obj", deleteFileList, "file1")) {
fileUtil.deleteFile(vo.getFile1(), FILE_PATH_KEYWORD);
dataVO.setFile1("");
}
if (isRemoveTarget(fileMap, "file2obj", deleteFileList, "file2")) {
fileUtil.deleteFile(vo.getFile2(), FILE_PATH_KEYWORD);
dataVO.setFile2("");
}
if (isRemoveTarget(fileMap, "file3obj", deleteFileList, "file3")) {
fileUtil.deleteFile(vo.getFile3(), FILE_PATH_KEYWORD);
dataVO.setFile3("");
}
List<FileVO> fileList = fileUtil.parseFileInf(fileMap, null, 0, "", FILE_PATH_KEYWORD);
for (FileVO fileVO : fileList) {
if ("fileImgObj".equalsIgnoreCase(fileVO.getFileSn())) {
dataVO.setFileImg(fileVO.getStreFileNm());
} else if ("file1obj".equalsIgnoreCase(fileVO.getFileSn())) {
dataVO.setFile1(fileVO.getStreFileNm());
} else if ("file2obj".equalsIgnoreCase(fileVO.getFileSn())) {
dataVO.setFile2(fileVO.getStreFileNm());
} else if ("file3obj".equalsIgnoreCase(fileVO.getFileSn())) {
dataVO.setFile3(fileVO.getStreFileNm());
}
}
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("result", divMngMapper.update(dataVO));
return map;
}
@Override
public HashMap<String, Object> delete(final DivMngVO dataVO) throws Exception {
DivMngVO vo = select(dataVO);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("result", divMngMapper.delete(dataVO));
if (StringUtils.isNotBlank(vo.getFileImg())) {
fileUtil.deleteFile(vo.getFileImg(), FILE_PATH_KEYWORD);
}
if (StringUtils.isNotBlank(vo.getFile1())) {
fileUtil.deleteFile(vo.getFile1(), FILE_PATH_KEYWORD);
}
if (StringUtils.isNotBlank(vo.getFile2())) {
fileUtil.deleteFile(vo.getFile2(), FILE_PATH_KEYWORD);
}
if (StringUtils.isNotBlank(vo.getFile3())) {
fileUtil.deleteFile(vo.getFile3(), FILE_PATH_KEYWORD);
}
return map;
}
}

View File

@ -1,94 +0,0 @@
package kcg.faics.tg.service.impl;
import java.util.List;
import kcg.faics.tg.vo.FerrySearchVO;
import kcg.faics.tg.vo.FerryVO;
import org.springframework.stereotype.Repository;
import egovframework.rte.psl.dataaccess.EgovAbstractMapper;
/**
* Mapper .
*
* @author kimnomin
*
*/
@Repository("ferryMapper")
public class FerryMapper extends EgovAbstractMapper {
/**
* .
*
* @param vo
* VO
* @return
* @throws Exception
*
*/
public FerryVO select(final FerryVO vo) throws Exception {
return selectOne("Ferry.select", vo);
}
/**
* .
*
* @param searchVO
* VO
* @return
*/
public List<FerryVO> selectList(final FerrySearchVO searchVO) {
return selectList("Ferry.selectList", searchVO);
}
/**
* .
*
* @param vo
* VO
* @return <code>1</code> , <code>0</code>
*/
public int insert(final FerryVO vo) {
return insert("Ferry.insert", vo);
}
/**
* .
*
* @param vo
* VO
* @return <code>1</code>, <code>0</code>
* @throws Exception
*
*/
public int delete(final FerryVO vo) throws Exception {
return delete("Ferry.delete", vo);
}
/**
* .
*
* @param vo
* VO
* @return <code>1</code>, <code>0</code>
* @throws Exception
*
*/
public int update(final FerryVO vo) throws Exception {
return update("Ferry.update", vo);
}
/**
* SER_NO .
*
* @param vo
* VO
* @return SER_NO
* @throws Exception
*
*/
public int selectMaxSerNo(final FerryVO vo) throws Exception {
return selectOne("Ferry.selectMaxSerNo", vo);
}
}

View File

@ -1,184 +0,0 @@
package kcg.faics.tg.service.impl;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import kcg.faics.cmmn.bbs.BaseBbsService;
import kcg.faics.cmmn.egov.file.EgovFileMngUtil;
import kcg.faics.cmmn.egov.vo.FileVO;
import kcg.faics.tg.vo.FerrySearchVO;
import kcg.faics.tg.vo.FerryVO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
/**
* .
*
* @author kimnomin
*
*/
@Service("ferryService")
public class FerryServiceImpl extends EgovAbstractServiceImpl implements
BaseBbsService<FerrySearchVO, FerryVO> {
/**
* property .
*/
public static final String FILE_PATH_KEYWORD = "Target.ferry.fileStorePath";
/**
* Utility.
**/
@Resource(name = "EgovFileMngUtil")
private EgovFileMngUtil fileUtil;
/**
* Mapper .
*/
@Resource(name = "ferryMapper")
private FerryMapper ferryMapper;
/**
* Place DS_NO .
*
* @param ferryVO
* VO
* @return SER_NO +1
* @throws Exception
*
*/
private int selectNextSerNo(final FerryVO ferryVO) throws Exception {
int result = 1;
try {
result = ferryMapper.selectMaxSerNo(ferryVO) + 1;
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
@Override
public FerryVO select(final FerryVO dataVO) throws Exception {
return ferryMapper.select(dataVO);
}
@Override
public List<FerryVO> selectListAll(final FerrySearchVO searchVO)
throws Exception {
// TODO Auto-generated method stub
return null;
}
@Override
public List<FerryVO> selectList(final FerrySearchVO searchVO) throws Exception {
return ferryMapper.selectList(searchVO);
}
@Override
public int selectListCnt(final FerrySearchVO searchVO) throws Exception {
// TODO Auto-generated method stub
return 0;
}
@Override
public int selectTotalCnt(final FerrySearchVO searchVO) throws Exception {
// TODO Auto-generated method stub
return 0;
}
@Override
public HashMap<String, Object> insert(final FerryVO dataVO,
final Map<String, MultipartFile> fileMap) throws Exception {
HashMap<String, Object> map = new HashMap<String, Object>();
int no = selectNextSerNo(dataVO);
if (no > 0) {
dataVO.setSerNo(no);
List<FileVO> fileList = fileUtil.parseFileInf(fileMap, null, 0, "", FILE_PATH_KEYWORD);
for (FileVO fileVO : fileList) {
if ("imgFileObj".equalsIgnoreCase(fileVO.getFileSn())) {
dataVO.setImgFile(fileVO.getStreFileNm());
}
}
map.put("result", ferryMapper.insert(dataVO));
} else {
map.put("result", 0);
}
return map;
}
/**
* Update .
*
* @param fileMap Map
* @param fileMapKey Map key
* @param deleteFileList
* @param deleteFileListKey
* @return
*/
private boolean isRemoveTarget(final Map<String, MultipartFile> fileMap,
final String fileMapKey, final List<String> deleteFileList,
final String deleteFileListKey) {
boolean isRemoveTarget = false;
if (deleteFileList.contains(deleteFileListKey)
|| (fileMap.containsKey(fileMapKey) && fileMap.get(fileMapKey).getSize() > 0)) {
isRemoveTarget = true;
}
return isRemoveTarget;
}
@Override
public HashMap<String, Object> update(final FerryVO dataVO,
final Map<String, MultipartFile> fileMap, final String[] deleteFiles)
throws Exception {
FerryVO vo = select(dataVO);
dataVO.setImgFile(vo.getImgFile());
List<String> deleteFileList = new ArrayList<String>();
if (deleteFiles != null) {
deleteFileList = Arrays.asList(deleteFiles);
}
if (isRemoveTarget(fileMap, "imgFileObj", deleteFileList, "imgFile")) {
fileUtil.deleteFile(vo.getImgFile(), FILE_PATH_KEYWORD);
dataVO.setImgFile("");
}
List<FileVO> fileList = fileUtil.parseFileInf(fileMap, null, 0, "", FILE_PATH_KEYWORD);
for (FileVO fileVO : fileList) {
if ("imgFileObj".equalsIgnoreCase(fileVO.getFileSn())) {
dataVO.setImgFile(fileVO.getStreFileNm());
}
}
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("result", ferryMapper.update(dataVO));
return map;
}
@Override
public HashMap<String, Object> delete(final FerryVO dataVO) throws Exception {
FerryVO vo = select(dataVO);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("result", ferryMapper.delete(dataVO));
if (StringUtils.isNotBlank(vo.getImgFile())) {
fileUtil.deleteFile(vo.getImgFile(), FILE_PATH_KEYWORD);
}
return map;
}
}

View File

@ -1,120 +0,0 @@
package kcg.faics.tg.service.impl;
import java.util.HashMap;
import java.util.List;
import kcg.faics.tg.vo.WeakPlaceSearchVO;
import kcg.faics.tg.vo.WeakPlaceVO;
import org.springframework.stereotype.Repository;
import egovframework.rte.psl.dataaccess.EgovAbstractMapper;
/**
* Mapper .
*
* @author kimnomin
*
*/
@Repository("weakPlaceMapper")
public class WeakPlaceMapper extends EgovAbstractMapper {
/**
* .
*
* @param vo
* VO
* @return VO
* @throws Exception
*
*/
public WeakPlaceVO select(final WeakPlaceVO vo) throws Exception {
return selectOne("WeakPlace.select", vo);
}
/**
* .
*
* @param vo
* VO
* @return
* @throws Exception
*
*/
public List<WeakPlaceVO> selectList(final WeakPlaceSearchVO vo)
throws Exception {
return selectList("WeakPlace.selectList", vo);
}
/**
* .
*
* @param place1
*
* @return
* @throws Exception
*
*/
public int selectMaxWpNo(final String place1) throws Exception {
int wpNo = 0;
try {
wpNo = selectOne("WeakPlace.selectMaxWpNo", place1);
} catch (Exception e) {
wpNo = 0;
}
return wpNo;
}
/**
* .
*
* @param placeList
*
* @return
* @throws Exception
*
*/
public List<HashMap<String, Object>> selectStatsPerPlace(final String[] placeList) throws Exception {
HashMap<String, String[]> map = new HashMap<String, String[]>();
map.put("placeList", placeList);
return selectList("WeakPlace.selectStatsPerPlace", map);
}
/**
* .
*
* @param weakPlaceVO
* VO
* @return 1-, 0-
* @throws Exception
*
*/
public int insert(final WeakPlaceVO weakPlaceVO) throws Exception {
return insert("WeakPlace.insert", weakPlaceVO);
}
/**
* .
*
* @param weakPlaceVO
* VO
* @return 1-, 0-
* @throws Exception
*
*/
public int update(final WeakPlaceVO weakPlaceVO) throws Exception {
return update("WeakPlace.update", weakPlaceVO);
}
/**
* .
*
* @param weakPlaceVO
* VO
* @return 1-, 0-
* @throws Exception
*
*/
public int delete(final WeakPlaceVO weakPlaceVO) throws Exception {
return delete("WeakPlace.delete", weakPlaceVO);
}
}

View File

@ -1,191 +0,0 @@
package kcg.faics.tg.service.impl;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import kcg.faics.cmmn.egov.file.EgovFileMngUtil;
import kcg.faics.cmmn.egov.vo.FileVO;
import kcg.faics.cmmn.service.CodeService;
import kcg.faics.tg.service.WeakPlaceService;
import kcg.faics.tg.vo.WeakPlaceSearchVO;
import kcg.faics.tg.vo.WeakPlaceVO;
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
/**
* .
*
* @author kimnomin
*
*/
@Service("weakPlaceService")
public class WeakPlaceServiceImpl extends EgovAbstractServiceImpl implements WeakPlaceService {
/**
* property .
*/
private String filePathKeyword = "Target.wp.fileStorePath";
/**
* Utility.
**/
@Resource(name = "EgovFileMngUtil")
private EgovFileMngUtil fileUtil;
/**
* Mapper .
*/
@Resource(name = "weakPlaceMapper")
private WeakPlaceMapper weakPlaceMapper;
@Override
public WeakPlaceVO select(final WeakPlaceVO dataVO) throws Exception {
return weakPlaceMapper.select(dataVO);
}
@Override
public List<WeakPlaceVO> selectListAll(final WeakPlaceSearchVO searchVO)
throws Exception {
// 사용하지 않음
return null;
}
@Override
public List<WeakPlaceVO> selectList(final WeakPlaceSearchVO searchVO)
throws Exception {
return weakPlaceMapper.selectList(searchVO);
}
@Override
public List<HashMap<String, Object>> selectStatsPerPlace() throws Exception {
List<HashMap<String, Object>> statsList = new ArrayList<HashMap<String, Object>>();
try {
statsList = weakPlaceMapper.selectStatsPerPlace(CodeService.POLICE_STATION_LIST);
} catch (Exception e) {
e.printStackTrace();
}
return statsList;
}
@Override
public int selectListCnt(final WeakPlaceSearchVO searchVO) throws Exception {
// 사용하지 않음
return 0;
}
@Override
public int selectTotalCnt(final WeakPlaceSearchVO searchVO) throws Exception {
// 사용하지 않음
return 0;
}
@Override
public int selectMaxWpNo(final String place1) throws Exception {
return weakPlaceMapper.selectMaxWpNo(place1);
}
@Override
public HashMap<String, Object> insert(final WeakPlaceVO dataVO,
final Map<String, MultipartFile> fileMap) throws Exception {
int result = 0;
try {
// 파일저장
if (fileMap != null) {
List<FileVO> uploadedFile = fileUtil.parseFileInf(fileMap, null, 0, "", filePathKeyword);
for (FileVO file : uploadedFile) {
if (file != null) {
String fileSn = file.getFileSn();
if (!StringUtils.isBlank(fileSn)) {
fileSn = fileSn.trim();
}
if ("file1".equalsIgnoreCase(fileSn)) {
dataVO.setFilename1(file.getStreFileNm());
} else if ("file2".equalsIgnoreCase(fileSn)) {
dataVO.setFilename2(file.getStreFileNm());
}
}
}
}
// DB저장
result = weakPlaceMapper.insert(dataVO);
} catch (Exception e) {
e.printStackTrace();
}
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("result", result);
if (result == 1) {
map.put("place1", dataVO.getPlace1());
map.put("wpNo", dataVO.getWpNo());
}
return map;
}
@Override
public HashMap<String, Object> update(final WeakPlaceVO dataVO,
final Map<String, MultipartFile> fileMap, final String[] deleteFiles)
throws Exception {
int result = 0;
try {
// 파일삭제 : 기존 PHP 소스에서 실제 물리적인 파일은 삭제하지 않는다. 이를 준용한다.
if (deleteFiles != null) {
for (String deleteTarget : deleteFiles) {
if ("1".equalsIgnoreCase(deleteTarget)) {
dataVO.setFilename1("");
} else if ("2".equalsIgnoreCase(deleteTarget)) {
dataVO.setFilename2("");
}
}
}
// 파일저장
if (fileMap != null) {
List<FileVO> uploadedFile = fileUtil.parseFileInf(fileMap, null, 0, "", filePathKeyword);
for (FileVO file : uploadedFile) {
if (file != null) {
String fileSn = file.getFileSn();
if (!StringUtils.isBlank(fileSn)) {
fileSn = fileSn.trim();
}
if ("file1".equalsIgnoreCase(fileSn)) {
dataVO.setFilename1(file.getStreFileNm());
} else if ("file2".equalsIgnoreCase(fileSn)) {
dataVO.setFilename2(file.getStreFileNm());
}
}
}
}
// DB저장
result = weakPlaceMapper.update(dataVO);
} catch (Exception e) {
e.printStackTrace();
}
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("result", result);
return map;
}
@Override
public HashMap<String, Object> delete(final WeakPlaceVO dataVO) throws Exception {
// 기존 PHP 소스에서 실제 물리적인 파일은 삭제하지 않는다. 이를 준용한다.
int result = weakPlaceMapper.delete(dataVO);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("result", result);
return map;
}
}

View File

@ -1,8 +0,0 @@
/**
* .
*/
/**
* @author kimnomin
*
*/
package kcg.faics.tg.service.impl;

View File

@ -1,8 +0,0 @@
/**
* .
*/
/**
* @author kimnomin
*
*/
package kcg.faics.tg.service;

View File

@ -1,92 +0,0 @@
package kcg.faics.tg.vo;
import kcg.faics.cmmn.bbs.BaseSearchVO;
/**
* Value Object.
*
* @author kimnomin
*
*/
public class CorpSearchVO extends BaseSearchVO {
/**
* 1.
*/
private String place1;
/**
* (~).
*/
private String orgId;
/**
* . (01-, 02-, 03-, 04-, 05-)
*/
private String grpNo;
/**
* //.
*/
private String name;
/**
* ( ).
*/
private String jobType;
/**
* @return the place1
*/
public final String getPlace1() {
return place1;
}
/**
* @param place1 the place1 to set
*/
public final void setPlace1(final String place1) {
this.place1 = place1;
}
/**
* @return the orgId
*/
public final String getOrgId() {
return orgId;
}
/**
* @param orgId the orgId to set
*/
public final void setOrgId(final String orgId) {
this.orgId = orgId;
}
/**
* @return the grpNo
*/
public final String getGrpNo() {
return grpNo;
}
/**
* @param grpNo the grpNo to set
*/
public final void setGrpNo(final String grpNo) {
this.grpNo = grpNo;
}
/**
* @return the name
*/
public final String getName() {
return name;
}
/**
* @param name the name to set
*/
public final void setName(final String name) {
this.name = name;
}
/**
* @return the jobType
*/
public final String getJobType() {
return jobType;
}
/**
* @param jobType the jobType to set
*/
public final void setJobType(final String jobType) {
this.jobType = jobType;
}
}

View File

@ -1,346 +0,0 @@
package kcg.faics.tg.vo;
/**
* Value Ojbect.
*
* @author kimnomin
*
*/
public class CorpVO {
/**
* 1.
*/
private String place1;
/**
* 1 .
*/
private String place1str;
/**
* (~).
*/
private String orgId;
/**
* .
*/
private int orgNo;
/**
* . (01-, 02-, 03-, 04-, 05-)
*/
private String grpNo;
/**
* //.
*/
private String name;
/**
* .
*/
private String location;
/**
* .
*/
private String ceo;
/**
* ( ).
*/
private String jobType;
/**
* .
*/
private String tel;
/**
* FAX.
*/
private String fax;
/**
* .
*/
private String comments;
/**
* ( ).
*/
private String partner;
/**
* ().
*/
private int shipCnt;
/**
* .
*/
private int memberCnt;
/**
* .
*/
private String basicYear;
/**
* ().
*/
private int fund;
/**
* .
*/
private String writerPlace1;
/**
* .
*/
private String writer;
/**
* .
*/
private String credate;
/**
* .
*/
private String logdate;
/**
* @return the place1
*/
public final String getPlace1() {
return place1;
}
/**
* @param place1 the place1 to set
*/
public final void setPlace1(final String place1) {
this.place1 = place1;
}
/**
* @return the place1str
*/
public final String getPlace1str() {
return place1str;
}
/**
* @param place1str the place1str to set
*/
public final void setPlace1str(final String place1str) {
this.place1str = place1str;
}
/**
* @return the orgId
*/
public final String getOrgId() {
return orgId;
}
/**
* @param orgId the orgId to set
*/
public final void setOrgId(final String orgId) {
this.orgId = orgId;
}
/**
* @return the orgNo
*/
public final int getOrgNo() {
return orgNo;
}
/**
* @param orgNo the orgNo to set
*/
public final void setOrgNo(final int orgNo) {
this.orgNo = orgNo;
}
/**
* @return the grpNo
*/
public final String getGrpNo() {
return grpNo;
}
/**
* @param grpNo the grpNo to set
*/
public final void setGrpNo(final String grpNo) {
this.grpNo = grpNo;
}
/**
* @return the name
*/
public final String getName() {
return name;
}
/**
* @param name the name to set
*/
public final void setName(final String name) {
this.name = name;
}
/**
* @return the location
*/
public final String getLocation() {
return location;
}
/**
* @param location the location to set
*/
public final void setLocation(final String location) {
this.location = location;
}
/**
* @return the ceo
*/
public final String getCeo() {
return ceo;
}
/**
* @param ceo the ceo to set
*/
public final void setCeo(final String ceo) {
this.ceo = ceo;
}
/**
* @return the jobType
*/
public final String getJobType() {
return jobType;
}
/**
* @param jobType the jobType to set
*/
public final void setJobType(final String jobType) {
this.jobType = jobType;
}
/**
* @return the tel
*/
public final String getTel() {
return tel;
}
/**
* @param tel the tel to set
*/
public final void setTel(final String tel) {
this.tel = tel;
}
/**
* @return the fax
*/
public final String getFax() {
return fax;
}
/**
* @param fax the fax to set
*/
public final void setFax(final String fax) {
this.fax = fax;
}
/**
* @return the comments
*/
public final String getComments() {
return comments;
}
/**
* @param comments the comments to set
*/
public final void setComments(final String comments) {
this.comments = comments;
}
/**
* @return the partner
*/
public final String getPartner() {
return partner;
}
/**
* @param partner the partner to set
*/
public final void setPartner(final String partner) {
this.partner = partner;
}
/**
* @return the shipCnt
*/
public final int getShipCnt() {
return shipCnt;
}
/**
* @param shipCnt the shipCnt to set
*/
public final void setShipCnt(final int shipCnt) {
this.shipCnt = shipCnt;
}
/**
* @return the memberCnt
*/
public final int getMemberCnt() {
return memberCnt;
}
/**
* @param memberCnt the memberCnt to set
*/
public final void setMemberCnt(final int memberCnt) {
this.memberCnt = memberCnt;
}
/**
* @return the basicYear
*/
public final String getBasicYear() {
return basicYear;
}
/**
* @param basicYear the basicYear to set
*/
public final void setBasicYear(final String basicYear) {
this.basicYear = basicYear;
}
/**
* @return the fund
*/
public final int getFund() {
return fund;
}
/**
* @param fund the fund to set
*/
public final void setFund(final int fund) {
this.fund = fund;
}
/**
* @return the writerPlace1
*/
public final String getWriterPlace1() {
return writerPlace1;
}
/**
* @param writerPlace1 the writerPlace1 to set
*/
public final void setWriterPlace1(final String writerPlace1) {
this.writerPlace1 = writerPlace1;
}
/**
* @return the writer
*/
public final String getWriter() {
return writer;
}
/**
* @param writer the writer to set
*/
public final void setWriter(final String writer) {
this.writer = writer;
}
/**
* @return the credate
*/
public final String getCredate() {
return credate;
}
/**
* @param credate the credate to set
*/
public final void setCredate(final String credate) {
this.credate = credate;
}
/**
* @return the logdate
*/
public final String getLogdate() {
return logdate;
}
/**
* @param logdate the logdate to set
*/
public final void setLogdate(final String logdate) {
this.logdate = logdate;
}
}

View File

@ -1,31 +0,0 @@
package kcg.faics.tg.vo;
import kcg.faics.cmmn.bbs.BaseSearchVO;
/**
* Value Object.
*
* @author kimnomin
*
*/
public class DivMngSearchVO extends BaseSearchVO {
/**
* .
*/
private String place;
/**
* @return the place
*/
public final String getPlace() {
return place;
}
/**
* @param place the place to set
*/
public final void setPlace(final String place) {
this.place = place;
}
}

View File

@ -1,355 +0,0 @@
package kcg.faics.tg.vo;
import java.util.Date;
import org.springframework.web.multipart.MultipartFile;
/**
* Value Object.
*
* @author kimnomin
*
*/
public class DivMngVO {
/**
* .
*/
private String place;
/**
* .
*/
private String placeStr;
/**
* .
*/
private int no;
/**
* .
*/
private String local;
/**
* . i-, o-
*/
private String gubun = "i";
/**
* .
*/
private String gubunStr = "비상주";
/**
* .
*/
private int staffNum;
/**
* .
*/
private String tel;
/**
* .
*/
private String condition;
/**
* .
*/
private String equipStat;
/**
* .
*/
private String fileImg;
/**
* .
*/
private MultipartFile fileImgObj;
/**
* 1.
*/
private String file1;
/**
* 2.
*/
private String file2;
/**
* 3.
*/
private String file3;
/**
* 1 .
*/
private MultipartFile file1obj;
/**
* 2 .
*/
private MultipartFile file2obj;
/**
* 3 .
*/
private MultipartFile file3obj;
/**
* .
*/
private Date creDate;
/**
* .
*/
private Date logDate;
/**
* .
*/
private String writer;
/**
* @return the place
*/
public final String getPlace() {
return place;
}
/**
* @param place the place to set
*/
public final void setPlace(final String place) {
this.place = place;
}
/**
* @return the placeStr
*/
public final String getPlaceStr() {
return placeStr;
}
/**
* @param placeStr the placeStr to set
*/
public final void setPlaceStr(final String placeStr) {
this.placeStr = placeStr;
}
/**
* @return the no
*/
public final int getNo() {
return no;
}
/**
* @param no the no to set
*/
public final void setNo(final int no) {
this.no = no;
}
/**
* @return the local
*/
public final String getLocal() {
return local;
}
/**
* @param local the local to set
*/
public final void setLocal(final String local) {
this.local = local;
}
/**
* @return the gubun
*/
public final String getGubun() {
return gubun;
}
/**
* @param gubun the gubun to set
*/
public final void setGubun(final String gubun) {
this.gubun = gubun;
if ("i".equalsIgnoreCase(this.gubun)) {
setGubunStr("상주");
} else {
setGubunStr("비상주");
}
}
/**
* @return the gubunStr
*/
public final String getGubunStr() {
return gubunStr;
}
/**
* @param gubunStr the gubunStr to set
*/
public final void setGubunStr(final String gubunStr) {
this.gubunStr = gubunStr;
}
/**
* @return the staffNum
*/
public final int getStaffNum() {
return staffNum;
}
/**
* @param staffNum the staffNum to set
*/
public final void setStaffNum(final int staffNum) {
this.staffNum = staffNum;
}
/**
* @return the tel
*/
public final String getTel() {
return tel;
}
/**
* @param tel the tel to set
*/
public final void setTel(final String tel) {
this.tel = tel;
}
/**
* @return the condition
*/
public final String getCondition() {
return condition;
}
/**
* @param condition the condition to set
*/
public final void setCondition(final String condition) {
this.condition = condition;
}
/**
* @return the equipStat
*/
public final String getEquipStat() {
return equipStat;
}
/**
* @param equipStat the equipStat to set
*/
public final void setEquipStat(final String equipStat) {
this.equipStat = equipStat;
}
/**
* @return the fileImgObj
*/
public final MultipartFile getFileImgObj() {
return fileImgObj;
}
/**
* @param fileImgObj the fileImgObj to set
*/
public final void setFileImgObj(final MultipartFile fileImgObj) {
this.fileImgObj = fileImgObj;
}
/**
* @return the fileImg
*/
public final String getFileImg() {
return fileImg;
}
/**
* @param fileImg the fileImg to set
*/
public final void setFileImg(final String fileImg) {
this.fileImg = fileImg;
}
/**
* @return the file1
*/
public final String getFile1() {
return file1;
}
/**
* @param file1 the file1 to set
*/
public final void setFile1(final String file1) {
this.file1 = file1;
}
/**
* @return the file2
*/
public final String getFile2() {
return file2;
}
/**
* @param file2 the file2 to set
*/
public final void setFile2(final String file2) {
this.file2 = file2;
}
/**
* @return the file3
*/
public final String getFile3() {
return file3;
}
/**
* @param file3 the file3 to set
*/
public final void setFile3(final String file3) {
this.file3 = file3;
}
/**
* @return the file1obj
*/
public final MultipartFile getFile1obj() {
return file1obj;
}
/**
* @param file1obj the file1obj to set
*/
public final void setFile1obj(final MultipartFile file1obj) {
this.file1obj = file1obj;
}
/**
* @return the file2obj
*/
public final MultipartFile getFile2obj() {
return file2obj;
}
/**
* @param file2obj the file2obj to set
*/
public final void setFile2obj(final MultipartFile file2obj) {
this.file2obj = file2obj;
}
/**
* @return the file3obj
*/
public final MultipartFile getFile3obj() {
return file3obj;
}
/**
* @param file3obj the file3obj to set
*/
public final void setFile3obj(final MultipartFile file3obj) {
this.file3obj = file3obj;
}
/**
* @return the creDate
*/
public final Date getCreDate() {
return creDate;
}
/**
* @param creDate the creDate to set
*/
public final void setCreDate(final Date creDate) {
this.creDate = creDate;
}
/**
* @return the logDate
*/
public final Date getLogDate() {
return logDate;
}
/**
* @param logDate the logDate to set
*/
public final void setLogDate(final Date logDate) {
this.logDate = logDate;
}
/**
* @return the writer
*/
public final String getWriter() {
return writer;
}
/**
* @param writer the writer to set
*/
public final void setWriter(final String writer) {
this.writer = writer;
}
}

View File

@ -1,51 +0,0 @@
package kcg.faics.tg.vo;
import kcg.faics.cmmn.bbs.BaseSearchVO;
import kcg.faics.tg.FerryRouteType;
/**
* Value Object.
*
* @author kimnomin
*
*/
public class FerrySearchVO extends BaseSearchVO {
/**
* (-, -, -, ).
*/
private String ferryRoute;
/**
* .
*/
private String ferryRouteStr;
/**
* @return the ferryRoute
*/
public final String getFerryRoute() {
return ferryRoute;
}
/**
* @param ferryRoute the ferryRoute to set
*/
public final void setFerryRoute(final String ferryRoute) {
this.ferryRoute = ferryRoute;
setFerryRouteStr(FerryRouteType.getValue(ferryRoute));
}
/**
* @return the ferryRouteStr
*/
public final String getFerryRouteStr() {
return ferryRouteStr;
}
/**
* @param ferryRouteStr the ferryRouteStr to set
*/
public final void setFerryRouteStr(final String ferryRouteStr) {
this.ferryRouteStr = ferryRouteStr;
}
}

View File

@ -1,559 +0,0 @@
package kcg.faics.tg.vo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import kcg.faics.tg.FerryRouteType;
import kcg.faics.tg.FerryRunTermType;
/**
* Value Object.
*
* @author kimnomin
*
*/
public class FerryVO {
/**
* ID.
*/
private int serNo;
/**
* .
*/
private String ferryOffice;
/**
* .
*/
private String ferryName;
/**
* .
*/
private String ferryTon;
/**
* (-, -, -, ).
*/
private String ferryRoute;
/**
* .
*/
private String ferryRouteStr;
/**
* .
*/
private String ferryTime;
/**
* .
*/
private String ferrySpeedMax;
/**
* .
*/
private String ferrySpeedNor;
/**
* .
*/
private int ferryGuestCnt;
/**
* .
*/
private int ferryClueCnt;
/**
* .
*/
private String runTerm;
/**
* .
*/
private String runTermStr;
/**
* .
*/
private String runCnt;
/**
* .
*/
private String repreName;
/**
* .
*/
private String tel;
/**
* .
*/
private String ferrySosok;
/**
* .
*/
private String sailingDistance;
/**
* .
*/
private String sailingDate;
/**
* .
*/
private String cooperateNation;
/**
* .
*/
private String isCooperateStr = "-";
/**
* .
*/
private String writer;
/**
* .
*/
private String creDate;
/**
* .
*/
private String logDate;
/**
* .
*/
private String imgFile;
/**
* .
*/
private MultipartFile imgFileObj;
/**
* .
*/
private String comments;
/**
* @return the serNo
*/
public final int getSerNo() {
return serNo;
}
/**
* @param serNo
* the serNo to set
*/
public final void setSerNo(final int serNo) {
this.serNo = serNo;
}
/**
* @return the ferryOffice
*/
public final String getFerryOffice() {
return ferryOffice;
}
/**
* @param ferryOffice
* the ferryOffice to set
*/
public final void setFerryOffice(final String ferryOffice) {
this.ferryOffice = ferryOffice;
}
/**
* @return the ferryName
*/
public final String getFerryName() {
return ferryName;
}
/**
* @param ferryName
* the ferryName to set
*/
public final void setFerryName(final String ferryName) {
this.ferryName = ferryName;
}
/**
* @return the ferryTon
*/
public final String getFerryTon() {
return ferryTon;
}
/**
* @param ferryTon
* the ferryTon to set
*/
public final void setFerryTon(final String ferryTon) {
this.ferryTon = ferryTon;
}
/**
* @return the ferryRoute
*/
public final String getFerryRoute() {
return ferryRoute;
}
/**
* @param ferryRoute
* the ferryRoute to set
*/
public final void setFerryRoute(final String ferryRoute) {
this.ferryRoute = ferryRoute;
setFerryRouteStr(FerryRouteType.getValue(ferryRoute));
}
/**
* @return the ferryRouteStr
*/
public final String getFerryRouteStr() {
return ferryRouteStr;
}
/**
* @param ferryRouteStr
* the ferryRouteStr to set
*/
public final void setFerryRouteStr(final String ferryRouteStr) {
this.ferryRouteStr = ferryRouteStr;
}
/**
* @return the ferryTime
*/
public final String getFerryTime() {
return ferryTime;
}
/**
* @param ferryTime
* the ferryTime to set
*/
public final void setFerryTime(final String ferryTime) {
this.ferryTime = ferryTime;
}
/**
* @return the ferrySpeedMax
*/
public final String getFerrySpeedMax() {
return ferrySpeedMax;
}
/**
* @param ferrySpeedMax
* the ferrySpeedMax to set
*/
public final void setFerrySpeedMax(final String ferrySpeedMax) {
this.ferrySpeedMax = ferrySpeedMax;
}
/**
* @return the ferrySpeedNor
*/
public final String getFerrySpeedNor() {
return ferrySpeedNor;
}
/**
* @param ferrySpeedNor
* the ferrySpeedNor to set
*/
public final void setFerrySpeedNor(final String ferrySpeedNor) {
this.ferrySpeedNor = ferrySpeedNor;
}
/**
* @return the capacity
*/
public final int getCapacity() {
return getFerryGuestCnt() + getFerryClueCnt();
}
/**
* @return the ferryGuestCnt
*/
public final int getFerryGuestCnt() {
return ferryGuestCnt;
}
/**
* @param ferryGuestCnt
* the ferryGuestCnt to set
*/
public final void setFerryGuestCnt(final int ferryGuestCnt) {
this.ferryGuestCnt = ferryGuestCnt;
}
/**
* @return the ferryClueCnt
*/
public final int getFerryClueCnt() {
return ferryClueCnt;
}
/**
* @param ferryClueCnt
* the ferryClueCnt to set
*/
public final void setFerryClueCnt(final int ferryClueCnt) {
this.ferryClueCnt = ferryClueCnt;
}
/**
* @return the runTerm
*/
public final String getRunTerm() {
return runTerm;
}
/**
* @param runTerm
* the runTerm to set
*/
public final void setRunTerm(final String runTerm) {
this.runTerm = runTerm;
setRunTermStr(FerryRunTermType.getValue(runTerm));
}
/**
* @return the runTermStr
*/
public final String getRunTermStr() {
return runTermStr;
}
/**
* @param runTermStr
* the runTermStr to set
*/
public final void setRunTermStr(final String runTermStr) {
this.runTermStr = runTermStr;
}
/**
* @return the runCnt
*/
public final String getRunCnt() {
return runCnt;
}
/**
* @param runCnt
* the runCnt to set
*/
public final void setRunCnt(final String runCnt) {
this.runCnt = runCnt;
}
/**
* @return the runCntStr
*/
public final String getRunCntStr() {
String result = "";
if (StringUtils.isNotBlank(getRunCnt())) {
result = String.format("%s %s회", getRunTermStr(), getRunCnt());
}
return result;
}
/**
* @return the repreName
*/
public final String getRepreName() {
return repreName;
}
/**
* @param repreName
* the repreName to set
*/
public final void setRepreName(final String repreName) {
this.repreName = repreName;
}
/**
* @return the tel
*/
public final String getTel() {
return tel;
}
/**
* @param tel
* the tel to set
*/
public final void setTel(final String tel) {
this.tel = tel;
}
/**
* @return the ferrySosok
*/
public final String getFerrySosok() {
return ferrySosok;
}
/**
* @param ferrySosok
* the ferrySosok to set
*/
public final void setFerrySosok(final String ferrySosok) {
this.ferrySosok = ferrySosok;
}
/**
* @return the sailingDistance
*/
public final String getSailingDistance() {
return sailingDistance;
}
/**
* @param sailingDistance
* the sailingDistance to set
*/
public final void setSailingDistance(final String sailingDistance) {
this.sailingDistance = sailingDistance;
}
/**
* @return the sailingDate
*/
public final String getSailingDate() {
return sailingDate;
}
/**
* @param sailingDate
* the sailingDate to set
*/
public final void setSailingDate(final String sailingDate) {
this.sailingDate = sailingDate;
}
/**
* @return the cooperateNation
*/
public final String getCooperateNation() {
return cooperateNation;
}
/**
* @param cooperateNation
* the cooperateNation to set
*/
public final void setCooperateNation(final String cooperateNation) {
this.cooperateNation = cooperateNation;
if (StringUtils.isNotBlank(cooperateNation)) {
setIsCooperateStr("합작");
} else {
setIsCooperateStr("-");
}
}
/**
* @return the isCooperateStr
*/
public final String getIsCooperateStr() {
return isCooperateStr;
}
/**
* @param isCooperateStr
* the isCooperateStr to set
*/
public final void setIsCooperateStr(final String isCooperateStr) {
this.isCooperateStr = isCooperateStr;
}
/**
* @return the writer
*/
public final String getWriter() {
return writer;
}
/**
* @param writer
* the writer to set
*/
public final void setWriter(final String writer) {
this.writer = writer;
}
/**
* @return the creDate
*/
public final String getCreDate() {
return creDate;
}
/**
* @param creDate
* the creDate to set
*/
public final void setCreDate(final String creDate) {
this.creDate = creDate;
}
/**
* @return the logDate
*/
public final String getLogDate() {
return logDate;
}
/**
* @param logDate
* the logDate to set
*/
public final void setLogDate(final String logDate) {
this.logDate = logDate;
}
/**
* @return the imgFile
*/
public final String getImgFile() {
return imgFile;
}
/**
* @param imgFile
* the imgFile to set
*/
public final void setImgFile(final String imgFile) {
this.imgFile = imgFile;
}
/**
* @return the imgFileObj
*/
public final MultipartFile getImgFileObj() {
return imgFileObj;
}
/**
* @param imgFileObj
* the imgFileObj to set
*/
public final void setImgFileObj(final MultipartFile imgFileObj) {
this.imgFileObj = imgFileObj;
}
/**
* @return the comments
*/
public final String getComments() {
return comments;
}
/**
* @param comments
* the comments to set
*/
public final void setComments(final String comments) {
this.comments = comments;
}
}

View File

@ -1,35 +0,0 @@
package kcg.faics.tg.vo;
import kcg.faics.cmmn.bbs.BaseSearchVO;
/**
* Value Object.
*
* @author kimnomin
*
*/
public class WeakPlaceSearchVO extends BaseSearchVO {
/**
* .
*/
private String place1;
/**
* .
*
* @return
*/
public final String getPlace1() {
return place1;
}
/**
* .
*
* @param place1
*/
public final void setPlace1(final String place1) {
this.place1 = place1;
}
}

View File

@ -1,314 +0,0 @@
package kcg.faics.tg.vo;
import org.springframework.web.multipart.MultipartFile;
/**
* Value Object.
*
* @author kimnomin
*
*/
public class WeakPlaceVO {
/**
* .
*/
private String place1;
/**
* .
*/
private String place1str;
/**
* .
*/
private int wpNo;
/**
* .
*/
private String name;
/**
* .
*/
private String location;
/**
* .
*/
private String comments;
/**
* .
*/
private MultipartFile file1;
/**
* .
*/
private String filename1 = "";
/**
* .
* O : , - : .
*/
private String filename1viewStr = "-";
/**
* .
*/
private MultipartFile file2;
/**
* .
*/
private String filename2 = "";
/**
* .
*/
private String writer;
/**
* .
*/
private String credate;
/**
* .
*/
private String logdate;
/**
* .
*
* @return
*/
public final String getPlace1() {
return place1;
}
/**
* .
*
* @param place1
*/
public final void setPlace1(final String place1) {
this.place1 = place1;
}
/**
* .
*
* @return
*/
public final String getPlace1str() {
return place1str;
}
/**
* .
*
* @param place1str
*/
public final void setPlace1str(final String place1str) {
this.place1str = place1str;
}
/**
* .
*
* @return
*/
public final int getWpNo() {
return wpNo;
}
/**
* .
*
* @param wpNo
*/
public final void setWpNo(final int wpNo) {
this.wpNo = wpNo;
}
/**
* .
*
* @return
*/
public final String getWpNoStr() {
return String.format("%s - %s", this.place1str, this.wpNo);
}
/**
* .
*
* @return
*/
public final String getName() {
return name;
}
/**
* .
*
* @param name
*/
public final void setName(final String name) {
this.name = name;
}
/**
* .
*
* @return
*/
public final String getLocation() {
return location;
}
/**
* .
*
* @param location
*/
public final void setLocation(final String location) {
this.location = location;
}
/**
* .
*
* @return
*/
public final String getComments() {
return comments;
}
/**
* .
*
* @param comments
*/
public final void setComments(final String comments) {
this.comments = comments;
}
/**
* .
*
* @return
*/
public final MultipartFile getFile1() {
return file1;
}
/**
* .
*
* @param file1
*/
public final void setFile1(final MultipartFile file1) {
this.file1 = file1;
if (this.file1 != null) {
setFilename1(this.file1.getOriginalFilename());
}
}
/**
* .
*
* @return
*/
public final String getFilename1() {
return filename1;
}
/**
* .
*
* @param filename1
*/
public final void setFilename1(final String filename1) {
this.filename1 = filename1;
if (this.filename1 != null && this.filename1.trim().length() > 0) {
setFilename1viewStr("O");
} else {
setFilename1viewStr("-");
}
}
/**
* .
*
* @return
*/
public final String getFilename1viewStr() {
return filename1viewStr;
}
/**
* .
*
* @param filename1viewStr
*/
public final void setFilename1viewStr(final String filename1viewStr) {
this.filename1viewStr = filename1viewStr;
}
/**
* .
*
* @return
*/
public final MultipartFile getFile2() {
return file2;
}
/**
* .
*
* @param file2
*/
public final void setFile2(final MultipartFile file2) {
this.file2 = file2;
if (this.file2 != null) {
setFilename2(this.file2.getOriginalFilename());
}
}
/**
* .
*
* @return
*/
public final String getFilename2() {
return filename2;
}
/**
* .
*
* @param filename2
*/
public final void setFilename2(final String filename2) {
this.filename2 = filename2;
}
/**
* .
*
* @return
*/
public final String getWriter() {
return writer;
}
/**
* .
*
* @param writer
*/
public final void setWriter(final String writer) {
this.writer = writer;
}
/**
* .
*
* @return
*/
public final String getCredate() {
return credate;
}
/**
* .
*
* @param credate
*/
public final void setCredate(final String credate) {
this.credate = credate;
}
/**
* .
*
* @return
*/
public final String getLogdate() {
return logdate;
}
/**
* .
*
* @param logdate
*/
public final void setLogdate(final String logdate) {
this.logdate = logdate;
}
}

View File

@ -1,8 +0,0 @@
/**
* Value Object .
*/
/**
* @author kimnomin
*
*/
package kcg.faics.tg.vo;

View File

@ -1,532 +0,0 @@
package kcg.faics.tg.web;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Locale;
import javax.annotation.Resource;
import javax.validation.Valid;
import kcg.faics.cmmn.bbs.PageType;
import kcg.faics.cmmn.excel.ExcelExporter;
import kcg.faics.cmmn.service.CodeService;
import kcg.faics.cmmn.vo.CodeVO;
import kcg.faics.sec.LoginUserVO;
import kcg.faics.sec.UserUtil;
import kcg.faics.tg.service.CorpService;
import kcg.faics.tg.vo.CorpSearchVO;
import kcg.faics.tg.vo.CorpVO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.MessageSource;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.support.SessionStatus;
import org.springmodules.validation.commons.DefaultBeanValidator;
import egovframework.rte.fdl.property.EgovPropertyService;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
/**
* .
*
* @author kimnomin
*
*/
@Controller
@RequestMapping("/target/corp")
public class CorpController {
/**
* properties .
**/
@Resource(name = "propertiesService")
private EgovPropertyService propertiesService;
/**
* message.properties .
*/
@Autowired
private MessageSource messageSource;
/**
* Validator - .
**/
@Resource(name = "beanValidator")
private DefaultBeanValidator beanValidator;
/**
* .
*/
@Resource(name = "codeService")
private CodeService codeService;
/**
* .
*/
@Resource(name = "corpService")
private CorpService corpService;
/**
* grpNo .
*
* @param grpNo
*
* @param locale
* Locale
* @return
*/
private LinkedHashMap<String, String> getFieldName(final String grpNo, final Locale locale) {
LinkedHashMap<String, String> map = new LinkedHashMap<String, String>();
map.put("place1str", messageSource.getMessage("target.corp.place1", null, locale));
if ("01".equalsIgnoreCase(grpNo)) {
map.put("name", messageSource.getMessage("target.corp.name01", null, locale));
map.put("location", messageSource.getMessage("target.corp.location", null, locale));
} else if ("02".equalsIgnoreCase(grpNo)) {
map.put("name", messageSource.getMessage("target.corp.name02", null, locale));
map.put("location", messageSource.getMessage("target.corp.location", null, locale));
map.put("ceo", messageSource.getMessage("target.corp.ceo", null, locale));
} else if ("03".equalsIgnoreCase(grpNo)) {
map.put("name", messageSource.getMessage("target.corp.name", null, locale));
map.put("location", messageSource.getMessage("target.corp.location", null, locale));
map.put("shipCnt", messageSource.getMessage("target.corp.shipcnt", null, locale));
map.put("ceo", messageSource.getMessage("target.corp.ceo", null, locale));
map.put("memberCnt", messageSource.getMessage("target.corp.membercnt", null, locale));
map.put("basicYear", messageSource.getMessage("target.corp.basicyear", null, locale));
map.put("fund", messageSource.getMessage("target.corp.fund", null, locale));
} else if ("04".equalsIgnoreCase(grpNo)) {
map.put("name", messageSource.getMessage("target.corp.name", null, locale));
map.put("location", messageSource.getMessage("target.corp.location", null, locale));
map.put("ceo", messageSource.getMessage("target.corp.ceo", null, locale));
map.put("jobType", messageSource.getMessage("target.corp.jobtype", null, locale));
} else if ("05".equalsIgnoreCase(grpNo)) {
map.put("name", messageSource.getMessage("target.corp.name", null, locale));
map.put("location", messageSource.getMessage("target.corp.location", null, locale));
map.put("ceo", messageSource.getMessage("target.corp.ceo", null, locale));
map.put("jobType", messageSource.getMessage("target.corp.jobtype", null, locale));
map.put("partner", messageSource.getMessage("target.corp.partner", null, locale));
}
map.put("tel", messageSource.getMessage("target.corp.tel", null, locale));
map.put("fax", messageSource.getMessage("target.corp.fax", null, locale));
map.put("comments", messageSource.getMessage("target.corp.comments", null, locale));
return map;
}
/**
* Redirect URI .
*
* @param pageType
*
* @param vo
* VO
* @return Redirect URI
*/
private String makeRedirectUri(final PageType pageType, final CorpVO vo) {
String uri = "redirect:/target/corp";
switch (pageType) {
case View:
uri = String.format("%s/view.do?place1=%s&orgId=%s&orgNo=%s", uri,
vo.getPlace1(), vo.getOrgId(), vo.getOrgNo());
break;
case List:
uri = String.format("%s/list.do?place1=%s&orgId=%s&grpNo=%s", uri,
vo.getPlace1(), vo.getOrgId(), vo.getGrpNo());
break;
case Stats:
default:
uri += "stats.do";
break;
}
return uri;
}
/**
* .
*
* @param model
* Model
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/stats.do")
public String stats(final Model model) throws Exception {
List<HashMap<String, Object>> stats = corpService.selectStats();
model.addAttribute("stats", stats);
return "/tg/corpStats.tiles";
}
/**
* .
*
* @param model
* Model
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/statstoexcel.do")
public String statsToExcel(final Model model) throws Exception {
String title = "치안대상";
// 엑셀 헤더 생성
LinkedHashMap<String, String> header = new LinkedHashMap<String, String>();
header.put("ORG_NM", "구분");
header.put("TOT_CNT", "계");
List<CodeVO> policeStations = codeService.getPlace1List(CodeService.POLICE_STATION_LIST);
for (CodeVO placeCode : policeStations) {
header.put(placeCode.getCode2() + "_CNT", placeCode.getCodenmYak());
}
// 데이터 생성
List<HashMap<String, Object>> stats = corpService.selectStats();
// Export
model.addAttribute("excel", new ExcelExporter<HashMap<String, Object>>(header, stats, title));
model.addAttribute("filename", title);
return "excelView";
}
/**
* .
*
* @param model
* Model
* @param searchVO
* VO
* @param locale
* Locale
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/list.do")
public String list(final Model model,
@ModelAttribute("searchVO") final CorpSearchVO searchVO,
final Locale locale) throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
List<CodeVO> placeList = codeService.getPlace1List(CodeService.POLICE_STATION_LIST, true);
model.addAttribute("placeList", placeList);
// place1 조건이 할당되지 않은 상태이고 로그인한 사용자의 소속이 검색조건에 적합하면 소속코드 할당
if (StringUtils.isEmpty(searchVO.getPlace1())) {
for (CodeVO place: placeList) {
if (loginUserVO.getPlace1().equalsIgnoreCase(place.getCode2())) {
searchVO.setPlace1(loginUserVO.getPlace1());
break;
}
}
}
if ("03".equalsIgnoreCase(searchVO.getGrpNo())) {
List<CodeVO> corpOrgList = codeService.getCorpOrgList();
LinkedHashMap<String, String> corpOrgMap = new LinkedHashMap<String, String>();
for (CodeVO vo : corpOrgList) {
String code2 = vo.getCode2();
String stChar2 = code2.substring(0, 2);
String edChar2 = code2.substring(code2.length() - 2);
if ("03".equalsIgnoreCase(edChar2)) {
corpOrgMap.put(stChar2, vo.getCodenm());
}
}
model.addAttribute("corpOrgList", corpOrgMap);
}
List<CorpVO> corpList = corpService.selectList(searchVO);
model.addAttribute("corpList", corpList);
LinkedHashMap<String, String> fieldNameMap = getFieldName(searchVO.getGrpNo(), locale);
model.addAttribute("fieldNameMap", fieldNameMap);
return "/tg/corpList.tiles";
}
/**
* .
*
* @param model
* Model
* @param searchVO
* VO
* @param locale
* Locale
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/listtoexcel.do")
public String listToExcel(final Model model,
@ModelAttribute("searchVO") final CorpSearchVO searchVO,
final Locale locale) throws Exception {
String grpNo = searchVO.getGrpNo();
String title = "치안대상";
// 엑셀 헤더 생성
LinkedHashMap<String, String> header = getFieldName(grpNo, locale);
// 데이터 생성
List<CorpVO> corpList = corpService.selectList(searchVO);
// Export
model.addAttribute("excel", new ExcelExporter<CorpVO>(header, corpList, title));
model.addAttribute("filename", title);
return "excelView";
}
/**
* .
*
* @param model
* Model
* @param locale
* Locale
* @param corpVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/view.do")
public String view(final Model model, final Locale locale,
final CorpVO corpVO) throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
CorpVO vo = corpService.select(corpVO);
model.addAttribute("corpVO", vo);
LinkedHashMap<String, String> fieldNameMap = getFieldName(vo.getGrpNo(), locale);
model.addAttribute("fieldNameMap", fieldNameMap);
return "/tg/corpView.tiles";
}
/**
* .
*
* @param model
* Model
* @param corpVO
* VO
* @param locale
* Locale
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/add.do")
public String add(final Model model,
@ModelAttribute("corpVO") final CorpVO corpVO, final Locale locale) throws Exception {
// 사용자 인증 검사
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
// 등록은 isAdmin이 true인 사용자만 가능하다.
if (isAuthenticated && UserUtil.isAdmin()) {
List<CodeVO> placeList = codeService.getPlace1List(CodeService.POLICE_STATION_LIST);
model.addAttribute("placeList", placeList);
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
// 로그인한 사용자가 입력가능한 소속이면 해당 소속으로 할당하고,
// 그렇지 않으면 기본값인 파라미터의 소속코드를 사용한다.
for (CodeVO tempVO : placeList) {
if (tempVO.getCode2().equalsIgnoreCase(loginUserVO.getPlace1())) {
corpVO.setPlace1(loginUserVO.getPlace1());
corpVO.setPlace1str(loginUserVO.getPlace1Str());
break;
}
}
corpVO.setWriter(loginUserVO.getUserid());
corpVO.setWriterPlace1(loginUserVO.getPlace1());
LinkedHashMap<String, String> fieldNameMap = getFieldName(corpVO.getGrpNo(), locale);
model.addAttribute("fieldNameMap", fieldNameMap);
model.addAttribute("registerFlag", "create");
}
return "/tg/corpAdd.tiles";
}
/**
* .
*
* <pre>
* php ,
* DB .
* </pre>
*
* @param corpVO
* VO
* @param bindingResult
*
* @param model
*
* @param status
* SessionStatus
* @param locale
* Locale
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/add.do", method = RequestMethod.POST)
public String add(@ModelAttribute("corpVO") final CorpVO corpVO,
final BindingResult bindingResult, final Model model,
final SessionStatus status, final Locale locale) throws Exception {
// 사용자 인증 검사
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
// 등록은 isAdmin이 true인 사용자만 가능하다.
if (isAuthenticated && UserUtil.isAdmin()) {
// 유효성 검사
beanValidator.validate(corpVO, bindingResult);
if (bindingResult.hasErrors()) {
return add(model, corpVO, locale);
}
HashMap<String, Object> map = corpService.insert(corpVO, null);
status.setComplete();
if ((Integer) map.get("result") == 1) {
return makeRedirectUri(PageType.List, corpVO);
}
}
return "error/bizError";
}
/**
* .
*
* @param model
* Model
* @param locale
* Locale
* @param corpVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/update.do")
public String update(final Model model, final Locale locale, final CorpVO corpVO) throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
// 등록은 관리자만 가능하지만, 수정/삭제는 관리자 + 해당 기관도 가능하다.
if (loginUserVO.getIsAdmin()
|| loginUserVO.getPlace1().equalsIgnoreCase(corpVO.getPlace1())) {
CorpVO vo = corpService.select(corpVO);
model.addAttribute("corpVO", vo);
LinkedHashMap<String, String> fieldNameMap = getFieldName(vo.getGrpNo(), locale);
model.addAttribute("fieldNameMap", fieldNameMap);
model.addAttribute("registerFlag", "modify");
return "/tg/corpAdd.tiles";
}
return makeRedirectUri(PageType.View, corpVO);
}
/**
* .
*
* <pre>
* php ,
* DB .
* </pre>
*
* @param corpVO
* VO
* @param bindingResult
*
* @param model
*
* @param status
* SessionStatus
* @param locale
* Locale
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/update.do", method = RequestMethod.POST)
public String update(@Valid @ModelAttribute("corpVO") final CorpVO corpVO,
final BindingResult bindingResult, final Model model,
final SessionStatus status, final Locale locale) throws Exception {
// 사용자 인증 검사
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (isAuthenticated) {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
// 등록은 관리자만 가능하지만, 수정/삭제는 관리자 + 해당 기관도 가능하다.
if (loginUserVO.getIsAdmin()
|| loginUserVO.getPlace1().equalsIgnoreCase(corpVO.getPlace1())) {
// 유효성 검사
beanValidator.validate(corpVO, bindingResult);
if (bindingResult.hasErrors()) {
return update(model, locale, corpVO);
}
corpVO.setWriter(loginUserVO.getUserid());
corpVO.setWriterPlace1(loginUserVO.getPlace1());
HashMap<String, Object> map = corpService.update(corpVO, null,
null);
status.setComplete();
if ((Integer) map.get("result") == 1) {
return makeRedirectUri(PageType.View, corpVO);
}
}
}
return "error/bizError";
}
/**
* .
*
* @param model
* Model
* @param locale
* Locale
* @param corpVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/delete.do", method = RequestMethod.POST)
public String delete(final Model model, final Locale locale, final CorpVO corpVO) throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
// 등록은 관리자만 가능하지만, 수정/삭제는 관리자 + 해당 기관도 가능하다.
if (loginUserVO.getIsAdmin()
|| loginUserVO.getPlace1().equalsIgnoreCase(corpVO.getPlace1())) {
CorpVO vo = corpService.select(corpVO);
HashMap<String, Object> result = corpService.delete(corpVO);
if ((Integer) result.get("result") == 1) {
return makeRedirectUri(PageType.List, vo);
}
}
return makeRedirectUri(PageType.View, corpVO);
}
}

View File

@ -1,435 +0,0 @@
package kcg.faics.tg.web;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import kcg.faics.cmmn.bbs.BaseBbsService;
import kcg.faics.cmmn.bbs.PageType;
import kcg.faics.cmmn.excel.ExcelExporter;
import kcg.faics.cmmn.file.FileResponser;
import kcg.faics.cmmn.service.CodeService;
import kcg.faics.cmmn.vo.CodeVO;
import kcg.faics.sec.LoginUserVO;
import kcg.faics.sec.UserUtil;
import kcg.faics.tg.service.impl.DivMngServiceImpl;
import kcg.faics.tg.vo.DivMngSearchVO;
import kcg.faics.tg.vo.DivMngVO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.MessageSource;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.util.FileCopyUtils;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.support.SessionStatus;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springmodules.validation.commons.DefaultBeanValidator;
import egovframework.rte.fdl.property.EgovPropertyService;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
/**
* .
*
* @author kimnomin
*
*/
@Controller
@RequestMapping("/target/divmng")
public class DivMngController {
/**
* properties .
**/
@Resource(name = "propertiesService")
private EgovPropertyService propertiesService;
/**
* message.properties .
*/
@Autowired
private MessageSource messageSource;
/**
* Validator - .
**/
@Resource(name = "beanValidator")
private DefaultBeanValidator beanValidator;
/**
* .
*/
@Resource(name = "codeService")
private CodeService codeService;
/**
* .
*/
@Resource(name = "divMngService")
private BaseBbsService<DivMngSearchVO, DivMngVO> divMngService;
/**
* Redirect URI .
*
* @param pageType
*
* @param vo
* VO
* @return Redirect URI
*/
private String makeRedirectUri(final PageType pageType, final DivMngVO vo) {
String uri = "redirect:/target/divmng";
switch (pageType) {
case View:
uri = String.format("%s/view.do?place=%s&no=%s", uri, vo.getPlace(), vo.getNo());
break;
case List:
uri = String.format("%s/list.do?place=%s", uri, vo.getPlace());
break;
default:
break;
}
return uri;
}
/**
* .
*
* @param model
* Model
* @param divMngVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/view.do")
public String view(final Model model, final DivMngVO divMngVO) throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
DivMngVO vo = divMngService.select(divMngVO);
model.addAttribute("divMngVO", vo);
return "/tg/divMngView.tiles";
}
/**
* .
*
* @param model
* Model
* @param locale
* Locale
* @param searchVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/list.do")
public String list(final Model model, final Locale locale,
@ModelAttribute("searchVO") final DivMngSearchVO searchVO)
throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
List<CodeVO> placeList = codeService.getPlace1List(false, true);
model.addAttribute("placeList", placeList);
List<DivMngVO> divMngList = divMngService.selectList(searchVO);
model.addAttribute("divMngList", divMngList);
return "/tg/divMngList.tiles";
}
/**
* .
*
* @param model
* Model
* @param locale
* Locale
* @param searchVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/listtoexcel.do")
public String listToExcel(final Model model, final Locale locale,
@ModelAttribute("searchVO") final DivMngSearchVO searchVO)
throws Exception {
String title = messageSource.getMessage("target.divmng", null, locale);
// 엑셀 헤더 생성
LinkedHashMap<String, String> header = new LinkedHashMap<String, String>();
header.put("placeStr", messageSource.getMessage("target.divmng.place", null, locale));
header.put("local", messageSource.getMessage("target.divmng.local", null, locale));
header.put("gubunStr", messageSource.getMessage("target.divmng.gubun", null, locale));
header.put("staffNum", messageSource.getMessage("target.divmng.staffNum", null, locale));
header.put("tel", messageSource.getMessage("target.divmng.tel", null, locale));
// 데이터 생성
List<DivMngVO> divMngList = divMngService.selectList(searchVO);
// Export
model.addAttribute("excel", new ExcelExporter<DivMngVO>(header, divMngList, title));
model.addAttribute("filename", title);
return "excelView";
}
/**
* .
*
* @param model
* Model
* @param divMngVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/add.do")
public String add(final Model model, final DivMngVO divMngVO)
throws Exception {
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (isAuthenticated && UserUtil.isAdmin()) {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
model.addAttribute("registerFlag", "create");
List<CodeVO> placeList = codeService.getPlace1List(false, false);
model.addAttribute("placeList", placeList);
divMngVO.setWriter(loginUserVO.getUserid());
divMngVO.setPlace(loginUserVO.getPlace1());
divMngVO.setPlaceStr(loginUserVO.getPlace1Str());
return "/tg/divMngAdd.tiles";
} else {
return makeRedirectUri(PageType.List, divMngVO);
}
}
/**
* .
*
* @param divMngVO
* VO
* @param bindingResult
* BindingResult
* @param model
* Model
* @param status
* SessionStatus
* @param multiRequest
* MultipartHttpServletRequest
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/add.do", method = RequestMethod.POST)
public String add(@ModelAttribute("divMngVO") final DivMngVO divMngVO,
final BindingResult bindingResult, final Model model,
final SessionStatus status,
final MultipartHttpServletRequest multiRequest) throws Exception {
// 사용자 인증 검사
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (isAuthenticated && UserUtil.isAdmin()) {
// 유효성 검사
beanValidator.validate(divMngVO, bindingResult);
if (bindingResult.hasErrors()) {
return add(model, divMngVO);
}
final Map<String, MultipartFile> fileMap = multiRequest.getFileMap();
HashMap<String, Object> resultMap = divMngService.insert(divMngVO, fileMap);
if ((Integer) resultMap.get("result") == 1) {
status.setComplete();
return makeRedirectUri(PageType.View, divMngVO);
}
}
return "error/bizError";
}
/**
* .
*
* @param divMngVO
* VO
* @param model
* Model
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/update.do")
public String update(final DivMngVO divMngVO, final Model model) throws Exception {
if (UserUtil.isAdmin()) {
model.addAttribute("registerFlag", "modify");
DivMngVO vo = divMngService.select(divMngVO);
model.addAttribute("divMngVO", vo);
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
return "/tg/divMngAdd.tiles";
}
return makeRedirectUri(PageType.View, divMngVO);
}
/**
* .
*
* @param divMngVO
* VO
* @param bindingResult
* BindingResult
* @param model
* Model
* @param status
* SessionStatus
* @param multiRequest
* MultipartHttpServletRequest
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/update.do", method = RequestMethod.POST)
public String update(@ModelAttribute("divMngVO") final DivMngVO divMngVO,
final BindingResult bindingResult, final Model model,
final SessionStatus status,
final MultipartHttpServletRequest multiRequest) throws Exception {
// 사용자 인증 검사
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (isAuthenticated && UserUtil.isAdmin()) {
// 유효성 검사
beanValidator.validate(divMngVO, bindingResult);
if (bindingResult.hasErrors()) {
return update(divMngVO, model);
}
String[] deleteFiles = multiRequest.getParameterValues("deleteFile");
final Map<String, MultipartFile> fileMap = multiRequest.getFileMap();
HashMap<String, Object> resultMap = divMngService.update(divMngVO, fileMap, deleteFiles);
if ((Integer) resultMap.get("result") > 0) {
status.setComplete();
return makeRedirectUri(PageType.View, divMngVO);
}
}
return update(divMngVO, model);
}
/**
* .
*
* @param divMngVO
* VO
* @param model
* Model
* @param status
* SessionStatus
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/delete.do", method = RequestMethod.POST)
public String delete(final DivMngVO divMngVO, final Model model,
final SessionStatus status) throws Exception {
if (UserUtil.isAdmin()) {
DivMngVO vo = divMngService.select(divMngVO);
if (vo != null) {
HashMap<String, Object> map = divMngService.delete(vo);
if ((Integer) map.get("result") > 0) {
return makeRedirectUri(PageType.List, vo);
}
}
}
return makeRedirectUri(PageType.View, divMngVO);
}
/**
* .
*
* @param divMngVO
* VO
* @param fileId
* ID
* @param request
* HttpServletRequest
* @param response
* HttpServletResponse
* @throws Exception
*
*/
@RequestMapping(value = "/download.do")
public void fileResponse(final DivMngVO divMngVO, final String fileId,
final HttpServletRequest request, final HttpServletResponse response)
throws Exception {
DivMngVO vo = divMngService.select(divMngVO);
String filename = "";
if ("fileImg".equals(fileId)) {
filename = vo.getFileImg();
} else if ("file1".equals(fileId)) {
filename = vo.getFile1();
} else if ("file2".equals(fileId)) {
filename = vo.getFile2();
} else if ("file3".equals(fileId)) {
filename = vo.getFile3();
}
if (StringUtils.isNotBlank(filename)) {
String fileFullPath = propertiesService
.getString(DivMngServiceImpl.FILE_PATH_KEYWORD) + filename;
File file = new File(fileFullPath);
if (file.exists()) {
FileResponser.setResponse(file, filename, request, response);
BufferedInputStream in = null;
try {
in = new BufferedInputStream(new FileInputStream(file));
FileCopyUtils.copy(in, response.getOutputStream());
} catch (Exception e) {
e.printStackTrace();
} finally {
if (in != null) {
try {
in.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
} else {
response.setStatus(HttpStatus.NOT_FOUND.value());
throw new Exception();
}
}
}
}

View File

@ -1,398 +0,0 @@
package kcg.faics.tg.web;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import kcg.faics.cmmn.bbs.BaseBbsService;
import kcg.faics.cmmn.bbs.PageType;
import kcg.faics.cmmn.file.FileResponser;
import kcg.faics.cmmn.service.CodeService;
import kcg.faics.sec.LoginUserVO;
import kcg.faics.sec.UserUtil;
import kcg.faics.tg.FerryRouteType;
import kcg.faics.tg.FerryRunTermType;
import kcg.faics.tg.service.impl.FerryServiceImpl;
import kcg.faics.tg.vo.FerrySearchVO;
import kcg.faics.tg.vo.FerryVO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.MessageSource;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.util.FileCopyUtils;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.support.SessionStatus;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springmodules.validation.commons.DefaultBeanValidator;
import egovframework.rte.fdl.property.EgovPropertyService;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
/**
* .
*
* @author kimnomin
*
*/
@Controller
@RequestMapping("/target/ferry")
public class FerryController {
/**
* properties .
**/
@Resource(name = "propertiesService")
private EgovPropertyService propertiesService;
/**
* message.properties .
*/
@Autowired
private MessageSource messageSource;
/**
* Validator - .
**/
@Resource(name = "beanValidator")
private DefaultBeanValidator beanValidator;
/**
* .
*/
@Resource(name = "codeService")
private CodeService codeService;
/**
* .
*/
@Resource(name = "ferryService")
private BaseBbsService<FerrySearchVO, FerryVO> ferryService;
/**
* Redirect URI .
*
* @param pageType
*
* @param vo
* VO
* @return Redirect URI
*/
private String makeRedirectUri(final PageType pageType, final FerryVO vo) {
String uri = "redirect:/target/ferry";
switch (pageType) {
case View:
uri = String.format("%s/view.do?serNo=%s", uri, vo.getSerNo());
break;
case List:
uri = String.format("%s/list.do?route=%s", uri, vo.getFerryRoute());
break;
default:
break;
}
return uri;
}
/**
* .
*
* @param model
* Model
* @param ferryVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/view.do")
public String view(final Model model, final FerryVO ferryVO) throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
FerryVO vo = ferryService.select(ferryVO);
model.addAttribute("ferryVO", vo);
return "/tg/ferryView.tiles";
}
/**
* .
*
* @param model
* Model
* @param locale
* Locale
* @param searchVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/list.do")
public String list(final Model model, final Locale locale,
@ModelAttribute("searchVO") final FerrySearchVO searchVO)
throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
List<FerryRouteType> routeList = Arrays.asList(FerryRouteType.values());
model.addAttribute("routeList", routeList);
if (StringUtils.isBlank(searchVO.getFerryRoute())) {
searchVO.setFerryRoute(FerryRouteType.KR_CH.getCode());
}
List<FerryVO> ferryList = ferryService.selectList(searchVO);
model.addAttribute("ferryList", ferryList);
return "/tg/ferryList.tiles";
}
/**
* .
*
* @param model
* Model
* @param ferryVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/add.do")
public String add(final Model model, final FerryVO ferryVO)
throws Exception {
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (isAuthenticated && UserUtil.isAdmin()) {
model.addAttribute("registerFlag", "create");
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
List<FerryRouteType> routeList = FerryRouteType.values(FerryRouteType.KP);
model.addAttribute("routeList", routeList);
List<FerryRunTermType> runTermList = Arrays.asList(FerryRunTermType.values());
model.addAttribute("runTermList", runTermList);
ferryVO.setWriter(loginUserVO.getUserid());
return "/tg/ferryAdd.tiles";
} else {
return makeRedirectUri(PageType.List, ferryVO);
}
}
/**
* .
*
* @param ferryVO
* VO
* @param bindingResult
* BindingResult
* @param model
* Model
* @param status
* SessionStatus
* @param multiRequest
* MultipartHttpServletRequest
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/add.do", method = RequestMethod.POST)
public String add(@ModelAttribute("ferryVO") final FerryVO ferryVO,
final BindingResult bindingResult, final Model model,
final SessionStatus status,
final MultipartHttpServletRequest multiRequest) throws Exception {
// 사용자 인증 검사
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (isAuthenticated && UserUtil.isAdmin()) {
// 유효성 검사
beanValidator.validate(ferryVO, bindingResult);
if (bindingResult.hasErrors()) {
return add(model, ferryVO);
}
final Map<String, MultipartFile> fileMap = multiRequest.getFileMap();
HashMap<String, Object> resultMap = ferryService.insert(ferryVO, fileMap);
if ((Integer) resultMap.get("result") == 1) {
status.setComplete();
return makeRedirectUri(PageType.View, ferryVO);
}
}
return "error/bizError";
}
/**
* .
*
* @param ferryVO
* VO
* @param model
* Model
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/update.do")
public String update(final FerryVO ferryVO, final Model model) throws Exception {
if (UserUtil.isAdmin()) {
model.addAttribute("registerFlag", "modify");
FerryVO vo = ferryService.select(ferryVO);
model.addAttribute("ferryVO", vo);
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
List<FerryRouteType> routeList = FerryRouteType.values(FerryRouteType.KP);
model.addAttribute("routeList", routeList);
List<FerryRunTermType> runTermList = Arrays.asList(FerryRunTermType.values());
model.addAttribute("runTermList", runTermList);
return "/tg/ferryAdd.tiles";
}
return makeRedirectUri(PageType.View, ferryVO);
}
/**
* .
*
* @param ferryVO
* VO
* @param bindingResult
* BindingResult
* @param model
* Model
* @param status
* SessionStatus
* @param multiRequest
* MultipartHttpServletRequest
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/update.do", method = RequestMethod.POST)
public String update(@ModelAttribute("ferryVO") final FerryVO ferryVO,
final BindingResult bindingResult, final Model model,
final SessionStatus status,
final MultipartHttpServletRequest multiRequest) throws Exception {
// 사용자 인증 검사
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (isAuthenticated && UserUtil.isAdmin()) {
// 유효성 검사
beanValidator.validate(ferryVO, bindingResult);
if (bindingResult.hasErrors()) {
return update(ferryVO, model);
}
String[] deleteFiles = multiRequest.getParameterValues("deleteFile");
final Map<String, MultipartFile> fileMap = multiRequest.getFileMap();
HashMap<String, Object> resultMap = ferryService.update(ferryVO, fileMap, deleteFiles);
if ((Integer) resultMap.get("result") > 0) {
status.setComplete();
return makeRedirectUri(PageType.View, ferryVO);
}
}
return update(ferryVO, model);
}
/**
* .
*
* @param ferryVO
* VO
* @param model
* Model
* @param status
* SessionStatus
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/delete.do", method = RequestMethod.POST)
public String delete(final FerryVO ferryVO, final Model model,
final SessionStatus status) throws Exception {
if (UserUtil.isAdmin()) {
FerryVO vo = ferryService.select(ferryVO);
if (vo != null) {
HashMap<String, Object> map = ferryService.delete(vo);
if ((Integer) map.get("result") > 0) {
return makeRedirectUri(PageType.List, vo);
}
}
}
return makeRedirectUri(PageType.View, ferryVO);
}
/**
* .
*
* @param ferryVO
* VO
* @param request
* HttpServletRequest
* @param response
* HttpServletResponse
* @throws Exception
*
*/
@RequestMapping(value = "/download.do")
public void fileResponse(final FerryVO ferryVO,
final HttpServletRequest request, final HttpServletResponse response)
throws Exception {
FerryVO vo = ferryService.select(ferryVO);
String filename = vo.getImgFile();
if (StringUtils.isNotBlank(filename)) {
String fileFullPath = propertiesService
.getString(FerryServiceImpl.FILE_PATH_KEYWORD) + filename;
File file = new File(fileFullPath);
if (file.exists()) {
FileResponser.setResponse(file, filename, request, response);
BufferedInputStream in = null;
try {
in = new BufferedInputStream(new FileInputStream(file));
FileCopyUtils.copy(in, response.getOutputStream());
} catch (Exception e) {
e.printStackTrace();
} finally {
if (in != null) {
try {
in.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
} else {
response.setStatus(HttpStatus.NOT_FOUND.value());
throw new Exception();
}
}
}
}

View File

@ -1,418 +0,0 @@
package kcg.faics.tg.web;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
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 javax.validation.Valid;
import kcg.faics.cmmn.file.FileResponser;
import kcg.faics.cmmn.service.CodeService;
import kcg.faics.cmmn.vo.CodeVO;
import kcg.faics.sec.LoginUserVO;
import kcg.faics.sec.UserUtil;
import kcg.faics.tg.service.WeakPlaceService;
import kcg.faics.tg.vo.WeakPlaceSearchVO;
import kcg.faics.tg.vo.WeakPlaceVO;
import org.apache.commons.io.FilenameUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.MessageSource;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.util.FileCopyUtils;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.support.SessionStatus;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springmodules.validation.commons.DefaultBeanValidator;
import egovframework.rte.fdl.property.EgovPropertyService;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
/**
* .
*
* @author kimnomin
*
*/
@Controller
@RequestMapping("/target/weakplace")
public class WeakPlaceController {
/**
* properties .
**/
@Resource(name = "propertiesService")
private EgovPropertyService propertiesService;
/**
* message.properties .
*/
@Autowired
private MessageSource messageSource;
/**
* .
*/
@Resource(name = "codeService")
private CodeService codeService;
/**
* Validator - .
**/
@Resource(name = "beanValidator")
private DefaultBeanValidator beanValidator;
/**
* .
*/
@Resource(name = "weakPlaceService")
private WeakPlaceService weakPlaceService;
/**
* .
*
* @param vo
* VO
* @param model
* Model
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/view.do")
public String view(final WeakPlaceVO vo, final ModelMap model)
throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
WeakPlaceVO weakPlaceVO = weakPlaceService.select(vo);
model.addAttribute("weakPlaceVO", weakPlaceVO);
String filename1Ext = "";
String filename1 = weakPlaceVO.getFilename1();
if (!StringUtils.isBlank(filename1)) {
filename1Ext = FilenameUtils.getExtension(filename1).toLowerCase();
}
model.addAttribute("filename1Ext", filename1Ext);
return "/tg/weakPlaceView.tiles";
}
/**
* .
*
* @param searchVO
* VO
* @param model
* Model
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/list.do")
public String list(@ModelAttribute("searchVO") final WeakPlaceSearchVO searchVO,
final ModelMap model) throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
model.addAttribute("loginUserVO", loginUserVO);
List<CodeVO> placeList = codeService.getPlace1List(CodeService.POLICE_STATION_LIST);
model.addAttribute("placeList", placeList);
List<HashMap<String, Object>> statsPerPlace = weakPlaceService.selectStatsPerPlace();
model.addAttribute("statsPerPlace", statsPerPlace);
List<WeakPlaceVO> weakPlaceList = weakPlaceService.selectList(searchVO);
model.addAttribute("weakPlaceList", weakPlaceList);
Date today = new Date();
SimpleDateFormat simpleDate = new SimpleDateFormat("yyyy. MM. dd.");
String todayStr = simpleDate.format(today);
model.addAttribute("today", todayStr);
return "/tg/weakPlaceList.tiles";
}
/**
* .
*
* @param model
* Model
* @param weakPlaceVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/add.do")
public String add(final Model model, final WeakPlaceVO weakPlaceVO) throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
WeakPlaceVO vo;
if (weakPlaceVO == null) {
vo = new WeakPlaceVO();
} else {
vo = weakPlaceVO;
}
vo.setWriter(loginUserVO.getUserid());
vo.setPlace1(loginUserVO.getPlace1());
vo.setPlace1str(loginUserVO.getPlace1Str());
List<CodeVO> placeList = codeService.getPlace1List(CodeService.POLICE_STATION_LIST);
int tempWpNo = 0;
String tempPlace1Code = "";
HashMap<String, Integer> wpNoMap = new HashMap<String, Integer>();
for (int i = 0; i < CodeService.POLICE_STATION_LIST.length; i++) {
tempWpNo = 0;
tempPlace1Code = CodeService.POLICE_STATION_LIST[i];
tempWpNo = weakPlaceService.selectMaxWpNo(tempPlace1Code);
wpNoMap.put(tempPlace1Code, ++tempWpNo);
// 중앙부처 사용자는 placeList의 첫번째 기관의 wpno 값을 기본으로 한다.
if ("PS00".equalsIgnoreCase(vo.getPlace1())
&& tempPlace1Code.equalsIgnoreCase(placeList.get(0).getCode2())) {
vo.setWpNo(tempWpNo);
} else if (tempPlace1Code.equalsIgnoreCase(vo.getPlace1())) {
vo.setWpNo(tempWpNo);
}
}
model.addAttribute("wpNoMap", wpNoMap);
model.addAttribute("placeList", placeList);
model.addAttribute("weakPlaceVO", vo);
model.addAttribute("loginUserVO", "loginUserVO");
model.addAttribute("registerFlag", "create");
return "/tg/weakPlaceAdd.tiles";
}
/**
* .
*
* @param multiRequest
* mutipartform
* @param weakPlaceVO
* VO
* @param bindingResult
*
* @param model
*
* @param status
* SessionStatus
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/add.do", method = RequestMethod.POST)
public String add(final MultipartHttpServletRequest multiRequest,
@Valid @ModelAttribute("weakPlaceVO") final WeakPlaceVO weakPlaceVO,
final BindingResult bindingResult, final Model model,
final SessionStatus status) throws Exception {
// 사용자 인증 검사
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if (isAuthenticated) {
// 유효성 검사
beanValidator.validate(weakPlaceVO, bindingResult);
if (bindingResult.hasErrors()) {
model.addAttribute("weakPlaceVO", weakPlaceVO);
model.addAttribute("registerFlag", "create");
return "tg/weakPlaceAdd.tiles";
}
// 파일 저장 및 데이터 입력
final Map<String, MultipartFile> fileMap = multiRequest.getFileMap();
HashMap<String, Object> map = weakPlaceService.insert(weakPlaceVO, fileMap);
status.setComplete();
if ((Integer) map.get("result") == 1) {
return String.format("redirect:/target/weakplace/view.do?place1=%s&wpNo=%s", map.get("place1"), map.get("wpNo"));
}
}
return "error/bizError";
}
/**
* .
*
* @param model
* Model
* @param weakPlaceVO
* VO
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/update.do", method = RequestMethod.GET)
public String update(final Model model, final WeakPlaceVO weakPlaceVO) throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
// 관리자만 수정 가능
if (loginUserVO.getAuthAdmin() == 1) {
WeakPlaceVO vo = weakPlaceService.select(weakPlaceVO);
model.addAttribute("weakPlaceVO", vo);
model.addAttribute("loginUserVO", loginUserVO);
model.addAttribute("registerFlag", "modify");
return "/tg/weakPlaceAdd.tiles";
}
return "redirect:/target/weakplace/view.do?place1="
+ weakPlaceVO.getPlace1() + "&wpNo=" + weakPlaceVO.getWpNo();
}
/**
* .
*
* @param multiRequest
* mutipartform
* @param weakPlaceVO
* VO
* @param bindingResult
*
* @param model
*
* @param status
* SessionStatus
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/update.do", method = RequestMethod.POST)
public String update(final MultipartHttpServletRequest multiRequest,
@Valid @ModelAttribute("weakPlaceVO") final WeakPlaceVO weakPlaceVO,
final BindingResult bindingResult, final Model model,
final SessionStatus status) throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
// 관리자만 수정 가능
if (loginUserVO.getAuthAdmin() == 1) {
// 유효성 검사
beanValidator.validate(weakPlaceVO, bindingResult);
if (bindingResult.hasErrors()) {
model.addAttribute("weakPlaceVO", weakPlaceVO);
model.addAttribute("registerFlag", "modify");
return "tg/weakPlaceAdd.tiles";
}
String[] deleteFiles = multiRequest.getParameterValues("deleteFile");
final Map<String, MultipartFile> fileMap = multiRequest.getFileMap();
HashMap<String, Object> map = weakPlaceService.update(weakPlaceVO, fileMap, deleteFiles);
status.setComplete();
if ((Integer) map.get("result") > 0) {
return "redirect:/target/weakplace/view.do?place1="
+ weakPlaceVO.getPlace1() + "&wpNo="
+ weakPlaceVO.getWpNo();
}
}
return "redirect:/target/weakplace/view.do?place1="
+ weakPlaceVO.getPlace1() + "&wpNo=" + weakPlaceVO.getWpNo();
}
/**
* .
*
* @param weakPlaceVO
* VO
* @param model
* Model
* @param status
* SessionStatus
* @return
* @throws Exception
*
*/
@RequestMapping(value = "/delete.do", method = RequestMethod.POST)
public String delete(final WeakPlaceVO weakPlaceVO, final Model model,
final SessionStatus status) throws Exception {
LoginUserVO loginUserVO = UserUtil.getMemberInfo();
// 관리자만 삭제 가능
if (loginUserVO.getAuthAdmin() == 1) {
WeakPlaceVO vo = weakPlaceService.select(weakPlaceVO);
if (vo != null) {
HashMap<String, Object> map = weakPlaceService.delete(weakPlaceVO);
if ((Integer) map.get("result") > 0) {
return "redirect:/target/weakplace/list.do";
}
}
}
return "redirect:/susa/incident/view.do?place1="
+ weakPlaceVO.getPlace1() + "&wpNo=" + weakPlaceVO.getWpNo();
}
/**
* .
*
* @param weakPlaceVO
* VO
* @param seq
*
* @param request
* HttpServletRequest
* @param response
* HttpServletResponse
* @throws Exception
*
*/
@RequestMapping(value = "/download.do")
public void fileResponse(final WeakPlaceVO weakPlaceVO, final int seq,
final HttpServletRequest request, final HttpServletResponse response) throws Exception {
WeakPlaceVO vo = weakPlaceService.select(weakPlaceVO);
String filename = "";
if (seq == 1) {
filename = vo.getFilename1();
} else if (seq == 2) {
filename = vo.getFilename2();
}
if (StringUtils.isNotBlank(filename)) {
String fileFullPath = propertiesService.getString("Target.wp.fileStorePath") + filename;
File file = new File(fileFullPath);
if (file.exists()) {
FileResponser.setResponse(file, filename, request, response);
BufferedInputStream in = null;
try {
in = new BufferedInputStream(new FileInputStream(file));
FileCopyUtils.copy(in, response.getOutputStream());
} catch (Exception e) {
e.printStackTrace();
} finally {
if (in != null) {
try {
in.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
} else {
response.setStatus(HttpStatus.NOT_FOUND.value());
throw new Exception();
}
}
}
}

View File

@ -1,8 +0,0 @@
/**
* .
*/
/**
* @author kimnomin
*
*/
package kcg.faics.tg.web;

File diff suppressed because it is too large Load Diff

View File

@ -1,17 +1,17 @@
#-----------------------------------------------------------------------
#
# globals.properties : \uC2DC\uC2A4\uD15C
# globals.properties : \uc2dc\uc2a4\ud15c
#
#-----------------------------------------------------------------------
# 1. key = value \uAD6C\uC870\uC785\uB2C8\uB2E4.
# 2. key\uAC12\uC740 \uACF5\uBC31\uBB38\uC790\uB97C \uD3EC\uD568\uBD88\uAC00, value\uAC12\uC740 \uACF5\uBC31\uBB38\uC790\uB97C \uAC00\uB2A5
# 3. key\uAC12\uC73C\uB85C \uD55C\uAE00\uC744 \uC0AC\uC6A9\uBD88\uAC00, value\uAC12\uC740 \uD55C\uAE00\uC0AC\uC6A9\uC774 \uAC00\uB2A5
# 4. \uC904\uC744 \uBC14\uAFC0 \uD544\uC694\uAC00 \uC788\uC73C\uBA74 '\'\uB97C \uB77C\uC778\uC758 \uB05D\uC5D0 \uCD94\uAC00(\uB9CC\uC57D '\'\uBB38\uC790\uB97C \uC0AC\uC6A9\uD574\uC57C \uD558\uB294 \uACBD\uC6B0\uB294 '\\'\uB97C \uC0AC\uC6A9)
# 5. Windows\uC5D0\uC11C\uC758 \uB514\uB809\uD1A0\uB9AC \uD45C\uC2DC : '\\' or '/' ('\' \uC0AC\uC6A9\uD558\uBA74 \uC548\uB428)
# 6. Unix\uC5D0\uC11C\uC758 \uB514\uB809\uD1A0\uB9AC \uD45C\uC2DC : '/'
# 7. \uC8FC\uC11D\uBB38 \uCC98\uB9AC\uB294 #\uC0AC\uC6A9
# 8. value\uAC12 \uB4A4\uC5D0 \uC2A4\uD398\uC774\uC2A4\uAC00 \uC874\uC7AC\uD558\uB294 \uACBD\uC6B0 \uC11C\uBE14\uB9BF\uC5D0\uC11C \uCC38\uC870\uD560\uB54C\uB294 \uC5D0\uB7EC\uBC1C\uC0DD\uD560 \uC218 \uC788\uC73C\uBBC0\uB85C trim()\uD558\uAC70\uB098 \uB9C8\uC9C0\uB9C9 \uACF5\uBC31\uC5C6\uC774 properties \uAC12\uC744 \uC124\uC815\uD560\uAC83
# 1. key = value \uad6c\uc870\uc785\ub2c8\ub2e4.
# 2. key\uac12\uc740 \uacf5\ubc31\ubb38\uc790\ub97c \ud3ec\ud568\ubd88\uac00, value\uac12\uc740 \uacf5\ubc31\ubb38\uc790\ub97c \uac00\ub2a5
# 3. key\uac12\uc73c\ub85c \ud55c\uae00\uc744 \uc0ac\uc6a9\ubd88\uac00, value\uac12\uc740 \ud55c\uae00\uc0ac\uc6a9\uc774 \uac00\ub2a5
# 4. \uc904\uc744 \ubc14\uafc0 \ud544\uc694\uac00 \uc788\uc73c\uba74 '\'\ub97c \ub77c\uc778\uc758 \ub05d\uc5d0 \ucd94\uac00(\ub9cc\uc57d '\'\ubb38\uc790\ub97c \uc0ac\uc6a9\ud574\uc57c \ud558\ub294 \uacbd\uc6b0\ub294 '\\'\ub97c \uc0ac\uc6a9)
# 5. Windows\uc5d0\uc11c\uc758 \ub514\ub809\ud1a0\ub9ac \ud45c\uc2dc : '\\' or '/' ('\' \uc0ac\uc6a9\ud558\uba74 \uc548\ub428)
# 6. Unix\uc5d0\uc11c\uc758 \ub514\ub809\ud1a0\ub9ac \ud45c\uc2dc : '/'
# 7. \uc8fc\uc11d\ubb38 \ucc98\ub9ac\ub294 #\uc0ac\uc6a9
# 8. value\uac12 \ub4a4\uc5d0 \uc2a4\ud398\uc774\uc2a4\uac00 \uc874\uc7ac\ud558\ub294 \uacbd\uc6b0 \uc11c\ube14\ub9bf\uc5d0\uc11c \ucc38\uc870\ud560\ub54c\ub294 \uc5d0\ub7ec\ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c trim()\ud558\uac70\ub098 \ub9c8\uc9c0\ub9c9 \uacf5\ubc31\uc5c6\uc774 properties \uac12\uc744 \uc124\uc815\ud560\uac83
#-----------------------------------------------------------------------
#DBServiceServer
@ -22,15 +22,12 @@
#TEST DB Server
#Global.datasource.driverClassName=oracle.jdbc.driver.OracleDriver
#Global.datasource.url=jdbc:oracle:thin:@106.247.244.146:51521:faics
#Global.datasource.username=new_faics
#Global.datasource.password=tkdlqjdhltk12#$
Global.datasource.driverClassName=oracle.jdbc.driver.OracleDriver
Global.datasource.url=jdbc:oracle:thin:@106.247.244.146:51521:faics
Global.datasource.username=new_faics
Global.datasource.password=tkdlqjdhltk12#$
Global.datasource.driverClassName=net.sf.log4jdbc.sql.jdbcapi.DriverSpy
Global.datasource.url=jdbc:log4jdbc:postgresql://192.168.0.157:5432/faics
Global.datasource.username=dbnt0031
Global.datasource.password=dbnt0928!
#File path
@ -62,18 +59,18 @@ Global.crypto.hased.password = U7Epd/1HVt76n5o0NAXS9f1ArmdigKFEJYgRfWeBjIA=
Global.crypto.password.algorithm = SHA-256
#System URL
#\uC0AC\uC774\uBC84\uC678\uC0AC\uC815\uBCF4\uC2DC\uC2A4\uD15C(\uAD6C)
#\uc0ac\uc774\ubc84\uc678\uc0ac\uc815\ubcf4\uc2dc\uc2a4\ud15c(\uad6c)
Url.FAICS.preSystem = http://10.29.9.40:8500/login.aspx
#\uAD6D\uC81C\uD574\uC591\uC815\uBCF4\uC2DC\uC2A4\uD15C(\uC2E4\uC11C\uBC84)
#\uad6d\uc81c\ud574\uc591\uc815\ubcf4\uc2dc\uc2a4\ud15c(\uc2e4\uc11c\ubc84)
Url.IMIS.loginProc = http://10.29.16.122
#\uAD6D\uC81C\uD574\uC591\uC815\uBCF4\uC2DC\uC2A4\uD15C(\uD14C\uC2A4\uD2B8)
#\uad6d\uc81c\ud574\uc591\uc815\ubcf4\uc2dc\uc2a4\ud15c(\ud14c\uc2a4\ud2b8)
#Url.IMIS.loginProc = http://192.168.10.115:8888/logic_login.php
#\uAD6D\uBBFC\uC548\uC804\uCC98
#\uad6d\ubbfc\uc548\uc804\ucc98
Url.MPSS = http://www.mpss.go.kr/
#\uc815\uc801 \uc18c\uc2a4 \ubc84\uc804
#StaticFile.version=180102
StaticFile.version=180102

View File

@ -1,2 +0,0 @@
log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator
log4jdbc.dump.sql.maxlinelength=0

View File

@ -270,12 +270,15 @@
A.ADDR_DTL ,
A.VLTN_TYPE ,
B.CODENM || ' (' || A.VLTN_DTL || ')' VLTN_DTL,
case A.IVSN_TYPE when 'YRB2' then '1' else '' end IVSN_TYPE1,
case A.IVSN_TYPE when 'YRD1' then '1' else '' end IVSN_TYPE2,
case A.IVSN_TYPE when 'YRA1' then '1' else '' end IVSN_TYPE3,
case A.IVSN_TYPE when 'YRB1' then '1' else '' end IVSN_TYPE4,
case A.SPEC_BATL_YN when 'Y' then '1' else '' end SPEC_BATL_YN,
case A.NLL_YN when 'Y' then '1' else '' end NLL_YN,
DECODE(A.IVSN_TYPE, 'YRB2', '1', '') IVSN_TYPE1,
DECODE(A.IVSN_TYPE, 'YRD1', '1', '') IVSN_TYPE2,
DECODE(A.IVSN_TYPE, 'YRA1', '1', '') IVSN_TYPE3,
DECODE(A.IVSN_TYPE, 'YRB1', '1', '') IVSN_TYPE4,
DECODE(A.SPEC_BATL_YN, 'Y', '1' , '') SPEC_BATL_YN,
DECODE(A.NLL_YN, 'Y', '1' , '') NLL_YN,
A.AGENCY_TYPE ,
A.AGENCY_GUARD ,
G.CODENM AGENCY_GUARD_STR ,
@ -297,22 +300,21 @@
A.VIO_CNT ,
A.VIO_PRTD_AMT ,
A.PROC_COND ,
case A.PROC_COND when '02' then '1' else '' end PROC_COND_Y,
case A.PROC_COND when '01' then '1' else '' end PROC_COND_N,
DECODE(A.PROC_COND, '02', '1', '') PROC_COND_Y,
DECODE(A.PROC_COND, '01', '1', '') PROC_COND_N,
A.MRGN_PYMT_YN ,
case when A.MRGN_PYMT_YN != null then 'Y' end MRGN_PYMT_AMT,
case when A.MRGN_PYMT_AMT != null then '' end MRGN_PYMT_AMT,
case when A.MRGN_PYMT_YN != null then 'N' end NO_MRGN_PYMT_AMT,
case when A.MRGN_PYMT_AMT != null then '' end NO_MRGN_PYMT_AMT,
TO_CHAR(MRGN_PYMT_DATE, 'YYYY-MM-DD hh24:mi') MRGN_PYMT_DATE ,
case A.MRGN_PYMT_YN when 'N' then '1' else '' end NOT_PAYMENT,
A.SHIP_PROC_TYPE ,
case A.SHIP_PROC_TYPE when '01' then '1' else '' end SHIP_PROC_TYPE_A,
case A.SHIP_PROC_TYPE when '02' then '1' else '' end SHIP_PROC_TYPE_B,
case A.SHIP_PROC_TYPE when '03' then '1' else '' end SHIP_PROC_TYPE_C,
case A.SHIP_PROC_TYPE when '04' then '1' else '' end SHIP_PROC_TYPE_D,
case A.SHIP_PROC_TYPE when '05' then '1' else '' end SHIP_PROC_TYPE_E,
DECODE(A.MRGN_PYMT_YN, 'Y', A.MRGN_PYMT_AMT, '' ) MRGN_PYMT_AMT,
DECODE(A.MRGN_PYMT_YN, 'N', A.MRGN_PYMT_AMT, '' ) NO_MRGN_PYMT_AMT,
TO_CHAR(MRGN_PYMT_DATE, 'YYYY-MM-DD hh24:mi') MRGN_PYMT_DATE ,
DECODE(A.MRGN_PYMT_YN, 'N', '1', '') NOT_PAYMENT,
A.SHIP_PROC_TYPE ,
DECODE(A.SHIP_PROC_TYPE, '01', '1', '') SHIP_PROC_TYPE_A,
DECODE(A.SHIP_PROC_TYPE, '02', '1', '') SHIP_PROC_TYPE_B,
DECODE(A.SHIP_PROC_TYPE, '03', '1', '') SHIP_PROC_TYPE_C,
DECODE(A.SHIP_PROC_TYPE, '04', '1', '') SHIP_PROC_TYPE_D,
DECODE(A.SHIP_PROC_TYPE, '05', '1', '') SHIP_PROC_TYPE_E,
A.SHIP_CMSN_COST,
A.DTTN_CAP_CNT ,
A.DTTN_MATE_CNT ,
@ -323,7 +325,7 @@
F.CODENM WO_DTTN_STR,
TO_CHAR(A.FIELD_ARST_DATE, 'YYYY-MM-DD hh24:mi') FIELD_ARST_DATE,
TO_CHAR(A.FIELD_RLS_DATE, 'YYYY-MM-DD hh24:mi') FIELD_RLS_DATE ,
case A.FIELD_ARST_DATE when NULL then '' else '1' end FIELD_CNT,
DECODE(A.FIELD_ARST_DATE, NULL, '', '1') FIELD_CNT,
A.LEAD_DISTANCE ,
A.LEAD_HOUR ,
A.LEAD_MINUTE ,
@ -335,25 +337,22 @@
A.REG_DATE ,
A.REG_USER ,
A.REG_AGENCY
FROM
T_CHN_ARREST_INFO A
right outer join
(SELECT CODE1, CODE2, CODENM
FROM TCODE WHERE CODE1 = 'C001') G
on g.code2 = a.agency_guard,
TCODE B ,
(SELECT CODE, UP_CODE, CODE_NM FROM CD_CODE C WHERE GP_CODE = 'A001' ) C,
TCODE D ,
TCODE E ,
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'T005' ) F ,
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'T004' ) H ,
(SELECT CODE, UP_CODE, CODE_NM FROM CD_CODE C WHERE GP_CODE = 'A001' AND UP_CODE ='0000' ) I
FROM T_CHN_ARREST_INFO A,
TCODE B , -- 위반내용
(SELECT CODE, UP_CODE, CODE_NM FROM CD_CODE C WHERE GP_CODE = 'A001' ) C, -- 시군구
TCODE D , -- 선적
TCODE E , -- 선종
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'T005' ) F , -- 무혐의불구속
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'C001' ) G , --
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'T004' ) H , -- 선질
(SELECT CODE, UP_CODE, CODE_NM FROM CD_CODE C WHERE GP_CODE = 'A001' AND UP_CODE ='0000' ) I -- 특별광역시도
WHERE A.DEL_YN = 'N'
AND (A.VLTN_TYPE = B.CODE2 AND B.CODE1 = 'T003')
AND (A.ADDR_CITY = C.CODE AND A.ADDR_AREA = C.UP_CODE)
AND (A.SHIP_MENT = D.CODE2 AND D.CODE1 = 'SSRR')
AND (A.SHIP_TYPE = E.CODE2 AND E.CODE1 = 'FA81')
AND A.WO_DTTN_TYPE = F.CODE2
AND G.CODE2(+) = A.AGENCY_GUARD
AND A.SHIP_QLTY = H.CODE2
AND A.ADDR_AREA = I.CODE
]]>
@ -512,31 +511,19 @@
A.ADDR_DTL ,
A.VLTN_TYPE ,
B.CODENM || ' (' || A.VLTN_DTL || ')' VLTN_DTL,
case A.IVSN_TYPE
when 'YRB2' then '1'
else '' end IVSN_TYPE1,
case A.IVSN_TYPE
when 'YRD1' then '1'
else '' end IVSN_TYPE2,
case A.IVSN_TYPE
when 'YRA1' then '1'
else '' end IVSN_TYPE3,
case A.IVSN_TYPE
when 'YRB1' then '1'
else '' end IVSN_TYPE4,
case A.SPEC_BATL_YN
when 'Y' then '1'
else '' end SPEC_BATL_YN,
case A.NLL_YN
when 'Y' then '1'
else '' end NLL_YN,
DECODE(A.IVSN_TYPE, 'YRB2', '1', '') IVSN_TYPE1,
DECODE(A.IVSN_TYPE, 'YRD1', '1', '') IVSN_TYPE2,
DECODE(A.IVSN_TYPE, 'YRA1', '1', '') IVSN_TYPE3,
DECODE(A.IVSN_TYPE, 'YRB1', '1', '') IVSN_TYPE4,
DECODE(A.SPEC_BATL_YN, 'Y', '1' , '') SPEC_BATL_YN,
DECODE(A.NLL_YN, 'Y', '1' , '') NLL_YN,
A.AGENCY_TYPE ,
A.AGENCY_GUARD ,
case A.AGENCY_TYPE
when '01' then '해경'
when '02' then '해수부'
else '해군' end || ' ' || G.CODENM AGENCY_GUARD_STR,
A.AGENCY_VESSEL ,
DECODE(A.AGENCY_TYPE, '01', '해경', '02', '해수부', '해군') || ' ' || G.CODENM AGENCY_GUARD_STR,
A.AGENCY_VESSEL ,
A.SHIP_NAME ,
A.SHIP_TONNAGE ,
A.SHIP_CREW_CNT ,
@ -554,48 +541,21 @@
A.VIO_CNT ,
A.VIO_PRTD_AMT ,
A.PROC_COND ,
case A.PROC_COND
when '02' then '1'
else '' end PROC_COND_Y,
case A.PROC_COND
when '01' then '1'
else '' end PROC_COND_N,
DECODE(A.PROC_COND, '02', '1', '') PROC_COND_Y,
DECODE(A.PROC_COND, '01', '1', '') PROC_COND_N,
A.MRGN_PYMT_YN ,
case A.MRGN_PYMT_YN
when 'Y' then A.MRGN_PYMT_AMT
else null
end MRGN_PYMT_AMT,
case A.MRGN_PYMT_YN
when 'N' then A.MRGN_PYMT_AMT
else null
end NO_MRGN_PYMT_AMT,
DECODE(A.MRGN_PYMT_YN, 'Y', A.MRGN_PYMT_AMT, '' ) MRGN_PYMT_AMT,
DECODE(A.MRGN_PYMT_YN, 'N', A.MRGN_PYMT_AMT, '' ) NO_MRGN_PYMT_AMT,
TO_CHAR(MRGN_PYMT_DATE, 'YYYY-MM-DD hh24:mi') MRGN_PYMT_DATE ,
case A.MRGN_PYMT_YN
when 'N'
then '1'
else '' end NOT_PAYMENT,
DECODE(A.MRGN_PYMT_YN, 'N', '1', '') NOT_PAYMENT,
A.SHIP_PROC_TYPE ,
case A.SHIP_PROC_TYPE
when '01' then '1'
else ''
end SHIP_PROC_TYPE_A,
case A.SHIP_PROC_TYPE
when '02' then '1'
else ''
end SHIP_PROC_TYPE_B,
case A.SHIP_PROC_TYPE
when '03' then '1'
else ''
end SHIP_PROC_TYPE_C,
case A.SHIP_PROC_TYPE
when '04' then '1'
else ''
end SHIP_PROC_TYPE_D,
case A.SHIP_PROC_TYPE
when '05' then '1'
else ''
end SHIP_PROC_TYPE_E,
DECODE(A.SHIP_PROC_TYPE, '01', '1', '') SHIP_PROC_TYPE_A,
DECODE(A.SHIP_PROC_TYPE, '02', '1', '') SHIP_PROC_TYPE_B,
DECODE(A.SHIP_PROC_TYPE, '03', '1', '') SHIP_PROC_TYPE_C,
DECODE(A.SHIP_PROC_TYPE, '04', '1', '') SHIP_PROC_TYPE_D,
DECODE(A.SHIP_PROC_TYPE, '05', '1', '') SHIP_PROC_TYPE_E,
A.SHIP_CMSN_COST,
A.DTTN_CAP_CNT ,
A.DTTN_MATE_CNT ,
@ -606,10 +566,7 @@
F.CODENM WO_DTTN_STR,
TO_CHAR(A.FIELD_ARST_DATE, 'YYYY-MM-DD hh24:mi') FIELD_ARST_DATE,
TO_CHAR(A.FIELD_RLS_DATE, 'YYYY-MM-DD hh24:mi') FIELD_RLS_DATE ,
case A.FIELD_ARST_DATE
when null then ''
else '1'
end FIELD_CNT,
DECODE(A.FIELD_ARST_DATE, NULL, '', '1') FIELD_CNT,
A.LEAD_DISTANCE ,
A.LEAD_HOUR ,
A.LEAD_MINUTE ,
@ -621,22 +578,13 @@
A.REG_DATE ,
A.REG_USER ,
A.REG_AGENCY
FROM T_CHN_ARREST_INFO A
right outer join
(select
CODE1,
CODE2,
CODENM
from
TCODE
where
CODE1 = 'C001' ) G
on G.CODE2 = A.AGENCY_GUARD,
TCODE B ,
FROM T_CHN_ARREST_INFO A,
TCODE B , -- 위반내용
(SELECT CODE, UP_CODE, CODE_NM FROM CD_CODE C WHERE GP_CODE = 'A001' ) C, -- 시군구
TCODE D ,
TCODE E ,
TCODE D , -- 선적
TCODE E , -- 선종
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'T005' ) F , -- 무혐의불구속
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'C001' ) G , --
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'T004' ) H , -- 선질
(SELECT CODE, UP_CODE, CODE_NM FROM CD_CODE C WHERE GP_CODE = 'A001' AND UP_CODE ='0000' ) I -- 특별광역시도
WHERE A.DEL_YN = 'N'
@ -645,6 +593,7 @@
AND (A.SHIP_MENT = D.CODE2 AND D.CODE1 = 'SSRR')
AND (A.SHIP_TYPE = E.CODE2 AND E.CODE1 = 'FA81')
AND A.WO_DTTN_TYPE = F.CODE2
AND G.CODE2(+) = A.AGENCY_GUARD
AND A.SHIP_QLTY = H.CODE2
AND A.ADDR_AREA = I.CODE
]]>
@ -998,12 +947,13 @@
A.VLTN_TYPE ,
B.CODENM || ' (' || A.VLTN_DTL || ')' VLTN_DTL,
A.IVSN_TYPE ,
case A.IVSN_TYPE when 'YRB2' then 1 else 0 end IVSN_TYPE1,
case A.IVSN_TYPE when 'YRD1' then 1 else 0 end IVSN_TYPE2,
case A.IVSN_TYPE when 'YRA1' then 1 else 0 end IVSN_TYPE3,
case A.IVSN_TYPE when 'YRB1' then 1 else 0 end IVSN_TYPE4,
case A.SPEC_BATL_YN when 'Y' then 1 else 0 end SPEC_BATL,
case A.NLL_YN when 'Y' then 1 else 0 end NLL,
DECODE(A.IVSN_TYPE, 'YRB2', 1, 0) IVSN_TYPE1,
DECODE(A.IVSN_TYPE, 'YRD1', 1, 0) IVSN_TYPE2,
DECODE(A.IVSN_TYPE, 'YRA1', 1, 0) IVSN_TYPE3,
DECODE(A.IVSN_TYPE, 'YRB1', 1, 0) IVSN_TYPE4,
DECODE(A.SPEC_BATL_YN , 'Y', 1, 0) SPEC_BATL,
DECODE(A.NLL_YN , 'Y', 1, 0) NLL,
A.AGENCY_TYPE ,
A.AGENCY_GUARD ,
G.CODENM AGENCY_GUARD_STR ,
@ -1024,26 +974,21 @@
A.VIO_CNT ,
A.VIO_PRTD_AMT ,
A.PROC_COND ,
case A.PROC_COND when '01' then 1 else 0 end PROC_COND1,
case A.PROC_COND when '02' then 1 else 0 end PROC_COND2,
DECODE(A.PROC_COND, '01', 1, 0) PROC_COND1,
DECODE(A.PROC_COND, '02', 1, 0) PROC_COND2,
A.MRGN_PYMT_YN ,
case MRGN_PYMT_YN
when 'Y' then MRGN_PYMT_AMT
else 0
end MRGN_PYMT_AMT,
case MRGN_PYMT_YN
when 'N' then MRGN_PYMT_AMT
else 0
end NO_MRGN_PYMT_AMT,
case A.MRGN_PYMT_YN when 'N' then 1 else 0 end PYMT_N_CNT,
DECODE(A.MRGN_PYMT_YN, 'N', 1, 0) PYMT_N_CNT,
--A.MRGN_PYMT_AMT ,
DECODE(MRGN_PYMT_YN, 'Y', MRGN_PYMT_AMT, 0) MRGN_PYMT_AMT,
DECODE(MRGN_PYMT_YN, 'N', MRGN_PYMT_AMT, 0) NO_MRGN_PYMT_AMT,
TO_CHAR(MRGN_PYMT_DATE, 'YYYY-MM-DD') MRGN_PYMT_DATE ,
A.SHIP_PROC_TYPE ,
case A.SHIP_PROC_TYPE when '01' then 1 else 0 end SHIP_PROC_TYPE_A,
case A.SHIP_PROC_TYPE when '02' then 1 else 0 end SHIP_PROC_TYPE_B,
case A.SHIP_PROC_TYPE when '03' then 1 else 0 end SHIP_PROC_TYPE_C,
case A.SHIP_PROC_TYPE when '04' then 1 else 0 end SHIP_PROC_TYPE_D,
case A.SHIP_PROC_TYPE when '05' then 1 else 0 end SHIP_PROC_TYPE_E,
DECODE(A.SHIP_PROC_TYPE, '01', 1, 0) SHIP_PROC_TYPE_A,
DECODE(A.SHIP_PROC_TYPE, '02', 1, 0) SHIP_PROC_TYPE_B,
DECODE(A.SHIP_PROC_TYPE, '03', 1, 0) SHIP_PROC_TYPE_C,
DECODE(A.SHIP_PROC_TYPE, '04', 1, 0) SHIP_PROC_TYPE_D,
DECODE(A.SHIP_PROC_TYPE, '05', 1, 0) SHIP_PROC_TYPE_E,
A.SHIP_CMSN_COST ,
A.DTTN_CAP_CNT ,
@ -1054,7 +999,7 @@
F.CODENM WO_DTTN_STR,
TO_CHAR(A.FIELD_ARST_DATE, 'YYYY-MM-DD hh24:mi') FIELD_ARST_DATE,
TO_CHAR(A.FIELD_RLS_DATE, 'YYYY-MM-DD hh24:mi') FIELD_RLS_DATE ,
case A.FIELD_ARST_DATE when NULL then 0 else 1 end FIELD_CNT,
DECODE(A.FIELD_ARST_DATE, NULL, 0, 1) FIELD_CNT,
A.LEAD_DISTANCE ,
A.LEAD_HOUR ,
A.LEAD_MINUTE ,
@ -1066,21 +1011,20 @@
A.REG_DATE ,
A.REG_USER ,
A.REG_AGENCY
FROM T_CHN_ARREST_INFO A
right outer join
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'C001' ) G on G.CODE2 = A.AGENCY_GUARD,
FROM T_CHN_ARREST_INFO A,
TCODE B , -- 위반내용
(SELECT CODE, UP_CODE, CODE_NM FROM CD_CODE C WHERE GP_CODE = 'A001' ) C, -- 시군구
TCODE D , -- 선적
TCODE E , -- 선종
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'T005' ) F -- 무혐의 불구속
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'T005' ) F, -- 무혐의 불구속
(SELECT CODE1, CODE2, CODENM FROM TCODE WHERE CODE1 = 'C001' ) G
WHERE A.DEL_YN = 'N'
AND (A.VLTN_TYPE = B.CODE2 AND B.CODE1 = 'T003')
AND (A.ADDR_CITY = C.CODE AND A.ADDR_AREA = C.UP_CODE)
AND (A.SHIP_MENT = D.CODE2 AND D.CODE1 = 'SSRR')
AND (A.SHIP_TYPE = E.CODE2 AND E.CODE1 = 'FA81')
AND A.WO_DTTN_TYPE = F.CODE2
AND G.CODE2(+) = A.AGENCY_GUARD
]]>
<if test="startDate != null and startDate != ''"><![CDATA[
AND A.ARST_DATE >= TO_DATE( #{startDate} || ' 00:00', 'YYYY-MM-DD hh24:mi')
@ -1232,7 +1176,7 @@
AND 1 = 0
</if>
<![CDATA[
) list
)
]]>
</select>
@ -1576,8 +1520,8 @@
REG_AGENCY
) VALUES (
nextval('chn_arrest_bd_seq'),
TO_DATE(#{arrestDate}, 'YYYY-MM-DD hh24:mi'),
T_CHN_ARREST_INFO_ID_SEQ.NEXTVAL,
TO_DATE(#{arrestDate}, 'YYYY-MM-DD hh24:mi'),
#{agencyType},
#{agencyGuard},
#{agencyVessel},
@ -1585,18 +1529,18 @@
#{violateType},
#{violateDetail},
#{invasionType},
COALESCE(#{specBatlYn}, 'N'),
COALESCE(#{nllYn}, 'N'),
NVL(#{specBatlYn}, 'N'),
NVL(#{nllYn}, 'N'),
#{woDetentionType},
TO_DATE(#{fieldArrestDate}, 'YYYY-MM-DD hh24:mi'),
TO_DATE(#{fieldReleaseDate}, 'YYYY-MM-DD hh24:mi'),
COALESCE(#{leadDistance}, 0),
COALESCE(#{leadHour}, '0'),
COALESCE(#{leadMinute}, '0'),
COALESCE(#{captainCount}, 0),
COALESCE(#{mateCount}, 0),
COALESCE(#{engineerCount}, 0),
COALESCE(#{crewCount}, 0),
NVL(#{leadDistance}, 0),
NVL(#{leadHour}, 0),
NVL(#{leadMinute}, 0),
NVL(#{captainCount}, 0),
NVL(#{mateCount}, 0),
NVL(#{engineerCount}, 0),
NVL(#{crewCount}, 0),
#{shipProcType},
#{commissionCost},
#{gearCast},
@ -1629,7 +1573,7 @@
TO_DATE(#{marginPaymentDate}, 'YYYY-MM-DD hh24:mi'),
#{status},
#{delYn},
NOW(),
SYSDATE,
#{regUser},
#{regAgency}
@ -1722,8 +1666,8 @@
VLTN_TYPE=#{violateType},
VLTN_DTL=#{violateDetail},
IVSN_TYPE=#{invasionType},
SPEC_BATL_YN=COALESCE(#{specBatlYn}, 'N'),
NLL_YN=COALESCE(#{nllYn}, 'N'),
SPEC_BATL_YN=NVL(#{specBatlYn}, 'N'),
NLL_YN=NVL(#{nllYn}, 'N'),
AGENCY_TYPE=#{agencyType},
AGENCY_GUARD=#{agencyGuard},
AGENCY_VESSEL=#{agencyVessel},

View File

@ -3,72 +3,84 @@
<mapper namespace="Board">
<select id="Board.selectBoardList" parameterType="boardSearchVO" resultType="boardVO">
select BD_SEQ AS SEQ,
BD_MB_ID AS USERID,
BD_GROUP_SEQ AS GROUPSEQ,
BD_CATEGORY AS CATEGORY,
BD_NAME AS USERNAME,
BD_CONTENT AS CONTENT,
BD_SUBJECT AS SUBJECT,
BD_PARENT_SEQ AS PARENTSEQ,
BD_PREV_SEQ AS PREVSEQ,
BD_NEXT_SEQ AS NEXTSEQ,
BD_STEP AS STEP,
BD_DEPTH AS DEPTH,
BD_REGDATE AS REGDATE,
BD_HIT AS HIT,
BD_RECOMMEND AS RECOMMEND,
BD_IP AS IP,
BD_NOTICE AS NOTICE,
BD_HTML AS HTML,
BD_NUM1 AS NUM1,
BD_NUM2 AS NUM2,
BD_DATA1 AS DATA1,
BD_DATA2 AS DATA2,
FILECNT
from H3_BD_${id}_LIST list
left outer join (select BF_BD_SEQ, count(*) as filecnt
from H3_BD_notice_FILE
group by BF_BD_SEQ) file
on list.bd_seq = file.bf_bd_seq
<where>
<if test='category != null and category != ""'>
AND BD_CATEGORY = #{category}
</if>
<if test="searchKeyword != null and searchKeyword != ''">
<choose>
<when test="searchCondition == 0">
AND BD_DATA1 LIKE '%' || #{searchKeyword} || '%'
</when>
<when test="searchCondition == 1">
AND BD_NAME LIKE '%' || #{searchKeyword} || '%'
</when>
<when test="searchCondition == 2">
AND BD_SUBJECT LIKE '%' || #{searchKeyword} || '%'
</when>
</choose>
</if>
</where>
ORDER BY BD_NOTICE DESC, BD_GROUP_SEQ DESC, BD_STEP asc
limit #{recordCountPerPage} offset #{firstIndex}
<![CDATA[
SELECT
BD_SEQ AS SEQ, BD_MB_ID AS USERID, BD_GROUP_SEQ AS GROUPSEQ,
BD_CATEGORY AS CATEGORY, BD_NAME AS USERNAME, BD_CONTENT AS CONTENT,
BD_SUBJECT AS SUBJECT, BD_PARENT_SEQ AS PARENTSEQ, BD_PREV_SEQ AS PREVSEQ,
BD_NEXT_SEQ AS NEXTSEQ, BD_STEP AS STEP, BD_DEPTH AS DEPTH,
BD_REGDATE AS REGDATE, BD_HIT AS HIT, BD_RECOMMEND AS RECOMMEND,
BD_IP AS IP, BD_NOTICE AS NOTICE, BD_HTML AS HTML,
BD_NUM1 AS NUM1, BD_NUM2 AS NUM2, BD_DATA1 AS DATA1, BD_DATA2 AS DATA2,
FILECNT
FROM (
SELECT
ROWNUM RNUM, ALL_LIST.*, (SELECT #{id} FROM DUAL) ID,
(SELECT COUNT(*) FROM H3_BD_${id}_FILE WHERE BF_BD_SEQ = ALL_LIST.BD_SEQ) AS FILECNT
FROM (
SELECT
*
FROM H3_BD_${id}_LIST BBS
WHERE 1 = 1
]]>
<choose>
<when test='category == " " and id == "stat_bbs"'>
</when>
<otherwise>
AND BD_CATEGORY = #{category}
</otherwise>
</choose>
<if test="searchKeyword != null and searchKeyword != ''">
<choose>
<when test="searchCondition == 0">
AND BD_DATA1 LIKE '%' || #{searchKeyword} || '%'
</when>
<when test="searchCondition == 1">
AND BD_NAME LIKE '%' || #{searchKeyword} || '%'
</when>
<when test="searchCondition == 2">
AND BD_SUBJECT LIKE '%' || #{searchKeyword} || '%'
</when>
</choose>
</if>
<![CDATA[ ORDER BY
BBS.BD_NOTICE DESC,
BBS.BD_GROUP_SEQ DESC,
BBS.BD_STEP ASC
) ALL_LIST
)
WHERE
RNUM > #{firstIndex} AND
RNUM <= #{firstIndex} + #{recordCountPerPage}
]]>
</select>
<select id="Board.selectBoardTotalCnt" parameterType="boardSearchVO" resultType="int">
<![CDATA[
SELECT
COUNT(*)
FROM
H3_BD_${id}_LIST
]]>
</select>
<select id="Board.selectBoardListTotCnt" parameterType="boardSearchVO" resultType="int">
<![CDATA[
SELECT
COUNT(*)
FROM
H3_BD_${id}_LIST
<where>
<if test='category != null and category != ""'>
AND BD_CATEGORY = #{category}
</if>
WHERE 1=1
]]>
<choose>
<when test='category == " " and id == "stat_bbs"'>
</when>
<otherwise>
AND BD_CATEGORY = #{category}
</otherwise>
</choose>
<if test="searchKeyword != null and searchKeyword != ''">
<choose>
<when test="searchCondition == 0">
@ -81,11 +93,11 @@
AND BD_SUBJECT LIKE '%' || #{searchKeyword} || '%'
</when>
</choose>
</if>
</where>
</if>
</select>
<select id="Board.selectBoard" parameterType="boardVO" resultType="boardVO">
<![CDATA[
SELECT
BBS.BD_SEQ AS SEQ, BBS.BD_MB_ID AS USERID, BBS.BD_GROUP_SEQ AS GROUPSEQ,
BBS.BD_CATEGORY AS CATEGORY, BBS.BD_NAME AS USERNAME, BBS.BD_CONTENT AS CONTENT,
@ -99,133 +111,141 @@
H3_BD_${id}_LIST BBS
WHERE
BBS.BD_SEQ = #{seq}
]]>
</select>
<insert id="Board.insertBoard" parameterType="boardVO">
INSERT INTO
H3_BD_${id}_LIST (
BD_MB_ID,
BD_CATEGORY,
BD_NAME,
BD_GROUP_SEQ,
BD_CONTENT,
BD_SUBJECT,
BD_PARENT_SEQ,
BD_PREV_SEQ,
BD_NEXT_SEQ,
BD_STEP,
BD_DEPTH,
BD_REGDATE,
BD_HIT,
BD_RECOMMEND,
BD_IP,
BD_NOTICE,
BD_HTML,
BD_NUM1,
BD_NUM2,
BD_DATA1,
BD_DATA2,
BD_PLACE1,
BD_POSITION
BD_MB_ID, BD_CATEGORY, BD_NAME, BD_GROUP_SEQ,
BD_CONTENT, BD_SUBJECT, BD_PARENT_SEQ, BD_PREV_SEQ, BD_NEXT_SEQ, BD_STEP,
BD_DEPTH, BD_REGDATE, BD_HIT, BD_RECOMMEND, BD_IP, BD_NOTICE,
BD_HTML, BD_NUM1, BD_NUM2, BD_DATA1, BD_DATA2, BD_PLACE1, BD_POSITION
) VALUES (
#{userId},
#{category},
#{userName},
#{groupSeq},
#{content},
#{subject},
#{parentSeq},
#{prevSeq},
#{nextSeq},
#{step},
#{depth},
NOW(),
${hit},
0,
#{ip,jdbcType=VARCHAR},
#{notice},
1,
0,
0,
#{data1,jdbcType=VARCHAR},
#{data2,jdbcType=VARCHAR},
#{place1,jdbcType=VARCHAR},
#{position,jdbcType=VARCHAR}
#{userId}, #{category}, #{userName}, #{groupSeq},
#{content}, #{subject}, #{parentSeq}, #{prevSeq}, #{nextSeq}, #{step},
#{depth}, SYSDATE, ${hit}, 0, #{ip,jdbcType=VARCHAR}, #{notice},
1, 0, 0, #{data1,jdbcType=VARCHAR}, #{data2,jdbcType=VARCHAR}, #{place1,jdbcType=VARCHAR}, #{position,jdbcType=VARCHAR}
)
<selectKey resultType="int" keyProperty="seq" order="AFTER">
SELECT currval(#{id}||'_bd_seq') as seq
</selectKey>
SELECT H3_BD_${id}_LIST_SEQ.CURRVAL FROM DUAL
</selectKey>
<!--
BD_SEQ, BD_MB_ID, BD_GROUP_SEQ, BD_CATEGORY, BD_NAME,
BD_CONTENT, BD_SUBJECT, BD_PARENT_SEQ, BD_PREV_SEQ, BD_NEXT_SEQ, BD_STEP,
BD_DEPTH, BD_REGDATE, BD_HIT, BD_RECOMMEND, BD_IP, BD_NOTICE,
BD_HTML, BD_NUM1, BD_NUM2, BD_DATA1, BD_DATA2, BD_PLACE1, BD_POSITION
#{bd_seq}, #{bd_mb_id}, #{bd_group_seq}, #{bd_category}, #{bd_name},
#{bd_content}, #{bd_subject}, #{bd_parent_seq}, #{bd_prev_seq}, #{bd_next_seq}, #{bd_step},
#{bd_depth}, #{bd_regdate}, #{bd_hit}, #{bd_recommend}, #{bd_ip}, #{bd_notice},
#{bd_html}, #{bd_num1}, #{bd_num2}, #{bd_data1}, #{bd_data2}, #{bd_place1}, #{bd_position}
-->
</insert>
<update id="Board.updateGrpSeq" parameterType="boardVO">
UPDATE
<![CDATA[
UPDATE
H3_BD_${id}_LIST
SET
BD_GROUP_SEQ = #{seq}
WHERE
BD_SEQ = #{seq}
]]>
</update>
<select id="Board.selectPrevBoard" parameterType="boardVO" resultType="boardVO">
SELECT BD_SEQ AS SEQ,
BD_MB_ID AS USERID,
BD_GROUP_SEQ AS GROUPSEQ,
BD_CATEGORY AS CATEGORY,
BD_NAME AS USERNAME,
BD_CONTENT AS CONTENT,
BD_SUBJECT AS SUBJECT,
BD_PARENT_SEQ AS PARENTSEQ,
BD_PREV_SEQ AS PREVSEQ,
BD_NEXT_SEQ AS NEXTSEQ,
BD_STEP AS STEP,
BD_DEPTH AS DEPTH,
BD_REGDATE AS REGDATE,
BD_HIT AS HIT,
BD_RECOMMEND AS RECOMMEND,
BD_IP AS IP,
BD_NOTICE AS NOTICE,
BD_HTML AS HTML,
BD_NUM1 AS NUM1,
BD_NUM2 AS NUM2,
BD_DATA1 AS DATA1,
BD_DATA2 AS DATA2,
#{id} ID
FROM H3_BD_${id}_LIST
<where>
<if test='seq != null and seq != 0'>
AND BD_SEQ = #{seq}
</if>
<if test='category != " " and id != "stat_bbs"'>
AND BD_CATEGORY = #{category}
</if>
</where>
order by bd_seq desc
limit 1 offset 1
</select>
<![CDATA[
SELECT
ALL_LIST.BD_SEQ AS SEQ, ALL_LIST.BD_MB_ID AS USERID, ALL_LIST.BD_GROUP_SEQ AS GROUPSEQ,
ALL_LIST.BD_CATEGORY AS CATEGORY, ALL_LIST.BD_NAME AS USERNAME, ALL_LIST.BD_CONTENT AS CONTENT,
ALL_LIST.BD_SUBJECT AS SUBJECT, ALL_LIST.BD_PARENT_SEQ AS PARENTSEQ, ALL_LIST.BD_PREV_SEQ AS PREVSEQ,
ALL_LIST.BD_NEXT_SEQ AS NEXTSEQ, ALL_LIST.BD_STEP AS STEP, ALL_LIST.BD_DEPTH AS DEPTH,
ALL_LIST.BD_REGDATE AS REGDATE, ALL_LIST.BD_HIT AS HIT, ALL_LIST.BD_RECOMMEND AS RECOMMEND,
ALL_LIST.BD_IP AS IP, ALL_LIST.BD_NOTICE AS NOTICE, ALL_LIST.BD_HTML AS HTML,
ALL_LIST.BD_NUM1 AS NUM1, ALL_LIST.BD_NUM2 AS NUM2, ALL_LIST.BD_DATA1 AS DATA1, ALL_LIST.BD_DATA2 AS DATA2,
#{id} ID
FROM
(
SELECT ROWNUM RNUM, ALL_LIST.*
FROM (
SELECT
*
FROM H3_BD_${id}_LIST
WHERE 1 = 1
]]>
<choose>
<when test='category == " " and id == "stat_bbs"'>
</when>
<otherwise>
AND BD_CATEGORY = #{category}
</otherwise>
</choose>
<![CDATA[
ORDER BY
BD_GROUP_SEQ DESC,
BD_STEP ASC
) ALL_LIST
) ALL_LIST
JOIN
(
SELECT * FROM
(
SELECT ROWNUM RNUM, BBS.*
FROM (
SELECT
*
FROM H3_BD_${id}_LIST BBS
WHERE 1 = 1
]]>
<choose>
<when test='category == " " and id == "stat_bbs"'>
</when>
<otherwise>
AND BD_CATEGORY = #{category}
</otherwise>
</choose>
<![CDATA[
ORDER BY
BBS.BD_GROUP_SEQ DESC,
BBS.BD_STEP ASC
) BBS
) BBS
WHERE BD_SEQ = #{seq}
)BBS
ON
BBS.RNUM + 1 = ALL_LIST.RNUM
]]>
</select>
<update id="Board.updateGrpStep" parameterType="boardVO">
UPDATE
<![CDATA[
UPDATE
H3_BD_${id}_LIST
SET
BD_STEP = BD_STEP + 1
WHERE
BD_GROUP_SEQ = #{seq} AND
BD_STEP > #{step}
]]>
</update>
<update id="Board.updatePrevNextSeq" parameterType="boardVO">
UPDATE
<![CDATA[
UPDATE
H3_BD_${id}_LIST
SET
BD_PREV_SEQ = #{prevSeq},
BD_NEXT_SEQ = #{nextSeq}
WHERE
BD_SEQ = #{seq}
]]>
</update>
<update id="Board.updateBoard" parameterType="boardVO">
UPDATE
<![CDATA[
UPDATE
H3_BD_${id}_LIST
SET
BD_SUBJECT = #{subject},
@ -234,13 +254,16 @@
BD_HIT = #{hit}
WHERE
BD_SEQ = #{seq}
]]>
</update>
<delete id="Board.deleteBoard" parameterType="boardVO">
DELETE
<![CDATA[
DELETE
FROM
H3_BD_${id}_LIST
WHERE
BD_SEQ = #{seq}
]]>
</delete>
</mapper>

View File

@ -46,12 +46,12 @@
<insert id="BoardComment.insertBoardComment" parameterType="boardCommentVO">
INSERT INTO
H3_BD_${id}_COMT (
BC_NAME, BC_CONTENT, BC_REGDATE, BC_BD_SEQ, BC_IP, BC_MB_ID
) VALUES (
#{userName}, #{content}, NOW(), #{parentSeq}, #{ip}, #{userId}
)
<selectKey resultType="int" keyProperty="seq" order="AFTER">
SELECT currval(#{id}||'_bc_seq') as seq
BC_SEQ, BC_NAME, BC_CONTENT, BC_REGDATE, BC_BD_SEQ, BC_IP, BC_MB_ID
) VALUES (
H3_BD_${id}_COMT_SEQ.NEXTVAL, #{userName}, #{content}, SYSDATE, #{parentSeq}, '10.123.141.123', #{userId}
)
<selectKey resultType="int" keyProperty="seq" order="AFTER">
SELECT H3_BD_${id}_COMT_SEQ.CURRVAL FROM DUAL
</selectKey>
</insert>

View File

@ -28,14 +28,14 @@
]]>
</select>
<insert id="BoardFile.insertBoardFile" parameterType="boardFileVO">
<insert id="BoardFile.insertBoardFile" parameterType="boardFileVO" useGeneratedKeys="true" keyColumn="BF_SEQ">
<![CDATA[
INSERT INTO
H3_BD_${id}_FILE (
BF_ORDER,
BF_ORG_NAME,
BF_SAVE_NAME,
BF_BD_SEQ
BF_SAVE_NAME,
BF_BD_SEQ
) VALUES (
#{orders},
#{orgName},

View File

@ -8,7 +8,7 @@
UL_USERID, UL_NAME, UL_LOCATION1, UL_LOCATION2, UL_LOCATION3, UL_REGDATE, UL_USER_IP, UL_PLACE1, UL_POSITION
)
VALUES (
#{userid}, #{name}, #{location1}, #{location2}, #{location3}, NOW(), #{userip, jdbcType=VARCHAR}, #{place1}, #{position}
#{userid}, #{name}, #{location1}, #{location2}, #{location3}, SYSDATE, #{userip, jdbcType=VARCHAR}, #{place1}, #{position}
)
]]>
</insert>
@ -19,63 +19,89 @@
IO_USERID, IO_TYPE, IO_REGDATE, IO_PLACE1, IO_POSITION, IO_NAME
)
VALUES (
#{user.userid}, #{type}, NOW(), #{user.place1}, #{user.position}, #{user.name}
#{user.userid}, #{type}, SYSDATE, #{user.place1}, #{user.position}, #{user.name}
)
]]>
</insert>
<select id="Log.selectUserLog" parameterType="logSearchVO" resultType="logVO">
select (ROW_NUMBER() OVER()) AS RNUM,
LOG_LIST.*
FROM (SELECT LOG.UL_USERID AS USERID,
LOG.UL_NAME AS NAME,
LOG.UL_LOCATION1 AS LOCATION1,
LOG.UL_LOCATION2 AS LOCATION2,
LOG.UL_LOCATION3 AS LOCATION3,
TO_CHAR(LOG.UL_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS REGDATE,
LOG.UL_USER_IP AS IP,
LOG.UL_POSITION AS POSITION_CODE,
CODE.CODENM AS POSITION
FROM H3_USER_LOG LOG
inner join TCODE CODE on LOG.UL_POSITION = CODE.CODE2 and CODE.CODE1 = 'C002'
<where>
<if test="sdate != null and sdate != '' and edate != null and edate != ''">
AND UL_REGDATE >= (#{sdate} || ' 00:00:00')::date
AND UL_REGDATE &lt;= (#{edate} || ' 23:59:59')::date
</if>
<if test="place1 != null and place1 != ''">
AND UL_PLACE1 = #{place1}
</if>
</where>
ORDER BY UL_REGDATE <if test="order != 0">DESC</if>
limit #{recordCountPerPage} offset #{firstIndex}
) LOG_LIST
<![CDATA[
SELECT
LOG_LIST.*
FROM
(
SELECT
ROWNUM RNUM, LOG_LIST.*
FROM
( SELECT
LOG.UL_USERID AS USERID, LOG.UL_NAME AS NAME, LOG.UL_LOCATION1 AS LOCATION1, LOG.UL_LOCATION2 AS LOCATION2, LOG.UL_LOCATION3 AS LOCATION3,
TO_CHAR(LOG.UL_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS REGDATE, LOG.UL_USER_IP AS IP, LOG.UL_POSITION AS POSITION_CODE, CODE.CODENM AS POSITION
FROM
H3_USER_LOG LOG, TCODE CODE
WHERE
LOG.UL_POSITION = CODE.CODE2
AND CODE.CODE1 = 'C002' ]]>
<if test="sdate != null and sdate != '' and edate != null and edate != ''"><![CDATA[
AND UL_REGDATE >= #{sdate} || ' 00:00:00'
AND UL_REGDATE <= #{edate} || ' 23:59:59' ]]>
</if>
<if test="place1 != null and place1 != ''">
AND UL_PLACE1 = #{place1}
</if>
<if test="name != null and name != ''">
AND UL_NAME LIKE '%' || #{name} || '%'
</if>
<![CDATA[ ORDER BY
UL_REGDATE ]]> <if test="order != 0">DESC</if> <![CDATA[
) LOG_LIST
WHERE ROWNUM <= #{firstIndex} + #{recordCountPerPage}
) LOG_LIST
WHERE
RNUM > #{firstIndex}
]]>
</select>
<select id="Log.selectLoginoutLog" parameterType="logSearchVO" resultType="logVO">
SELECT (ROW_NUMBER() OVER()) AS RNUM,
IO_USERID AS USERID,
IO_NAME AS NAME,
TO_CHAR(IO_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS REGDATE,
IO_POSITION AS POSITION_CODE,
IO_TYPE AS TYPE,
CODE.CODENM AS POSITION
FROM H3_LOGINOUT_LOG log
inner join TCODE CODE on log.IO_POSITION = CODE.CODE2 AND CODE.CODE1 = 'C002'
<where>
<if test="sdate != null and sdate != '' and edate != null and edate != ''">
AND TO_CHAR(log.IO_REGDATE, 'yyyy-mm-dd') >= #{sdate}
AND TO_CHAR(log.IO_REGDATE, 'yyyy-mm-dd') &lt;= #{edate}
</if>
<if test="place1 != null and place1 != ''">
AND IO_PLACE1 = #{place1}
</if>
<if test="name != null and name != ''">
AND IO_NAME LIKE '%' || #{name} || '%'
</if>
</where>
ORDER BY IO_REGDATE <if test="order != 0">DESC</if>
limit #{recordCountPerPage} offset #{firstIndex}
<![CDATA[
SELECT
LOG_LIST.*, CODE.CODENM AS POSITION
FROM
(
SELECT
ROWNUM RNUM, LOG_LIST.*
FROM
( SELECT
IO_USERID AS USERID, IO_NAME AS NAME, TO_CHAR(IO_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS REGDATE, IO_POSITION AS POSITION_CODE, IO_TYPE AS TYPE
FROM
H3_LOGINOUT_LOG
WHERE
1 = 1
]]>
<if test="sdate != null and sdate != '' and edate != null and edate != ''"><![CDATA[
AND
TO_CHAR(IO_REGDATE, 'yyyy-mm-dd') >= #{sdate} AND
TO_CHAR(IO_REGDATE, 'yyyy-mm-dd') <= #{edate} ]]>
</if>
<if test="place1 != null and place1 != ''">
AND IO_PLACE1 = #{place1}
</if>
<if test="name != null and name != ''">
AND IO_NAME LIKE '%' || #{name} || '%'
</if>
<![CDATA[ ORDER BY
IO_REGDATE ]]> <if test="order != 0">DESC</if> <![CDATA[
) LOG_LIST
) LOG_LIST,
TCODE CODE
WHERE
RNUM > #{firstIndex} AND
RNUM <= #{firstIndex} + #{recordCountPerPage} AND
LOG_LIST.POSITION_CODE = CODE.CODE2 AND
CODE.CODE1 = 'C002'
]]>
</select>
<select id="Log.selectLogListTotCnt" parameterType="logSearchVO" resultType="int">
@ -124,36 +150,18 @@
</select>
<select id="Log.selectUrlInfo" parameterType="logVO" resultType="hashmap">
with recursive menu_hierarchy (
level,
id,
name,
eng_name,
parent,
depth,
url,
menu_position,
visible,
url_group,
sub_visibel,
role_level,
url_query,
board_id,
window_target
) as (
select 1, a.*
from t_menu a
where url = #{location2}
union all
select b.level +1, a.*
from t_menu a
inner join menu_hierarchy b
on a.id = b.parent
)
select * from menu_hierarchy
order by level desc
<![CDATA[
SELECT
LEVEL AS LV, MENU.*
FROM
T_MENU MENU
START WITH
MENU.URL = #{location2}
CONNECT BY PRIOR
MENU.PARENT = MENU.ID
ORDER BY
LV DESC
]]>
</select>
<select id="Log.selectLogTotalCnt" parameterType="logSearchVO" resultType="int">

View File

@ -19,149 +19,85 @@
</resultMap>
<select id="selectListWithHigher" parameterType="menuVO" resultMap="menuResult">
with recursive subject (
id,
name,
eng_name,
parent,
depth,
url,
menu_position,
visible,
url_group,
sub_visible,
role_level,
url_query,
board_id,
window_target
) as(
select
id,
name,
eng_name,
parent,
depth,
url,
menu_position,
visible,
url_group,
sub_visible,
role_level,
url_query,
board_id,
window_target
from t_menu
where id = #{id}
union all
select
m.id,
m.name,
m.eng_name,
m.parent,
m.depth,
m.url,
m.menu_position,
m.visible,
m.url_group,
m.sub_visible,
m.role_level,
m.url_query,
m.board_id,
m.window_target
from t_menu m inner join subject s on m.id = s.parent
)
select * from subject
ORDER BY depth, ID;
<![CDATA[
SELECT
*
FROM
T_MENU
START WITH
ID = #{id}
CONNECT BY PRIOR
PARENT = ID
ORDER BY DEPTH, ID
]]>
</select>
<select id="selectListWithConnectBy" parameterType="menuVO" resultMap="menuResult">
with recursive menu(
level,
ID,
NAME,
ENG_NAME,
PARENT,
DEPTH,
MENU_POSITION,
VISIBLE,
SUB_VISIBLE,
ROLE_LEVEL,
URL_GROUP,
URL,
URL_QUERY,
BOARD_ID,
WINDOW_TARGET
) as (
select
1,
M.ID, M.NAME, M.ENG_NAME, M.PARENT, M.DEPTH,
M.MENU_POSITION, M.VISIBLE, M.SUB_VISIBLE, M.ROLE_LEVEL,
COALESCE(M.URL_GROUP, c.URL_GROUP) AS URL_GROUP,
COALESCE(M.URL, c.URL) AS URL,
COALESCE(M.URL_QUERY, c.URL_QUERY) AS URL_QUERY,
COALESCE(M.BOARD_ID, c.BOARD_ID) AS BOARD_ID,
COALESCE(M.WINDOW_TARGET, c.WINDOW_TARGET) AS WINDOW_TARGET
FROM T_MENU M left outer join (select id, parent, url_group, url, url_query, board_id, window_target
from t_menu a
where a.id in (select min(id) id
from t_menu
group by parent )) c
on m.id = c.parent
WHERE M.VISIBLE = 'Y'
AND M.ROLE_LEVEL >= COALESCE((SELECT ROLE_LEVEL FROM T_SSO_AUTH_CODE AC, TAGENT A WHERE AC.CODE_ID = A.USEGRADE AND A.USERID = #{userId}), 17)
AND M.MENU_POSITION = #{menuPosition}
AND M.DEPTH = 0
union all
select
b.level+1,
M.ID, M.NAME, M.ENG_NAME, M.PARENT, M.DEPTH,
M.MENU_POSITION, M.VISIBLE, M.SUB_VISIBLE, M.ROLE_LEVEL,
COALESCE(M.URL_GROUP, c.URL_GROUP) AS URL_GROUP,
COALESCE(M.URL, c.URL) AS URL,
COALESCE(M.URL_QUERY, c.URL_QUERY) AS URL_QUERY,
COALESCE(M.BOARD_ID, c.BOARD_ID) AS BOARD_ID,
COALESCE(M.WINDOW_TARGET, c.WINDOW_TARGET) AS WINDOW_TARGET
FROM T_MENU M inner join menu b on M.parent = b.id
left outer join (select id, parent, url_group, url, url_query, board_id, window_target
from t_menu a
where a.id in (select min(id) id
from t_menu
group by parent )) c
on m.id = c.parent
where M.VISIBLE = 'Y'
AND M.ROLE_LEVEL >= COALESCE((SELECT ROLE_LEVEL FROM T_SSO_AUTH_CODE AC, TAGENT A WHERE AC.CODE_ID = A.USEGRADE AND A.USERID = #{userId}), 17)
AND M.MENU_POSITION = #{menuPosition}
)
select *
from menu
where level &lt;= ${maxLevel}
order by level, id
<![CDATA[
SELECT
LEVEL,
M.ID, M.NAME, M.ENG_NAME, M.PARENT, M.DEPTH,
M.MENU_POSITION, M.VISIBLE, M.SUB_VISIBLE, M.ROLE_LEVEL,
NVL(M.URL_GROUP, (SELECT URL_GROUP FROM T_MENU WHERE ID = (SELECT MIN(ID) FROM T_MENU WHERE PARENT = M.ID))) AS URL_GROUP,
NVL(M.URL, (SELECT URL FROM T_MENU WHERE ID = (SELECT MIN(ID) FROM T_MENU WHERE PARENT = M.ID))) AS URL,
NVL(M.URL_QUERY, (SELECT URL_QUERY FROM T_MENU WHERE ID = (SELECT MIN(ID) FROM T_MENU WHERE PARENT = M.ID))) AS URL_QUERY,
NVL(M.BOARD_ID, (SELECT BOARD_ID FROM T_MENU WHERE ID = (SELECT MIN(ID) FROM T_MENU WHERE PARENT = M.ID))) AS BOARD_ID,
NVL(M.WINDOW_TARGET, (SELECT WINDOW_TARGET FROM T_MENU WHERE ID = (SELECT MIN(ID) FROM T_MENU WHERE PARENT = M.ID))) AS WINDOW_TARGET
FROM
T_MENU M
WHERE
M.VISIBLE = 'Y'
AND M.ROLE_LEVEL >= NVL((SELECT ROLE_LEVEL FROM T_SSO_AUTH_CODE AC, TAGENT A WHERE AC.CODE_ID = A.USEGRADE AND A.USERID = #{userId}), 17)
]]>
<if test="menuPosition != null and menuPosition != ''"><![CDATA[
AND M.MENU_POSITION = #{menuPosition}
]]></if>
<if test="depth != null"><![CDATA[
AND M.DEPTH <= #{depth}
]]></if>
<![CDATA[
START WITH
M.DEPTH = 0
CONNECT BY PRIOR
M.ID = M.PARENT
]]>
</select>
<!---->
<select id="Menu.getMenuInfo" parameterType="map" resultType="map">
SELECT *
FROM T_MENU
WHERE URL_GROUP = #{group}
AND URL = #{url}
<if test="boardId != null and boardId != ''">
AND BOARD_ID = #{boardId}
</if>
<if test="query != null and query != ''">
AND URL_QUERY = #{query}
</if>
limit 1
<![CDATA[
SELECT * FROM (
SELECT
*
FROM
T_MENU
WHERE
URL_GROUP = #{group} AND
URL = #{url}
]]>
<if test="boardId != null and boardId != ''"><![CDATA[
AND BOARD_ID = #{boardId}
]]></if>
<if test="query != null and query != ''"><![CDATA[
AND URL_QUERY = #{query}
]]></if>
<![CDATA[
) WHERE ROWNUM = 1
]]>
</select>
<select id="Menu.getMenuInfoById" parameterType="map" resultType="map">
<![CDATA[
SELECT
*
FROM
T_MENU
WHERE
ID = #{id}
]]>
</select>
<select id="Menu.getSubmenu" parameterType="hashmap" resultType="hashmap">
<![CDATA[
SELECT
A.*
FROM
@ -172,11 +108,13 @@
FROM
T_MENU
WHERE
URL_GROUP = #{url_group} AND
URL = #{url}
<if test="BOARD_ID != null and BOARD_ID != ''">
AND BOARD_ID = #{board_id}
</if>
URL_GROUP = #{URL_GROUP} AND
URL = #{URL}
]]>
<if test="BOARD_ID != null and BOARD_ID != ''"><![CDATA[
AND BOARD_ID = #{BOARD_ID}
]]></if>
<![CDATA[
) B
ON
B.MENU_POSITION = A.MENU_POSITION AND
@ -184,8 +122,9 @@
WHERE
A.VISIBLE = 'Y'
AND A.SUB_VISIBLE = 'Y'
AND A.ROLE_LEVEL >= COALESCE((SELECT ROLE_LEVEL FROM T_SSO_AUTH_CODE AC, TAGENT A WHERE AC.CODE_ID = A.USEGRADE AND A.USERID = #{userId}), 17)
AND A.ROLE_LEVEL >= NVL((SELECT ROLE_LEVEL FROM T_SSO_AUTH_CODE AC, TAGENT A WHERE AC.CODE_ID = A.USEGRADE AND A.USERID = #{userId}), 17)
ORDER BY
A.ID
]]>
</select>
</mapper>

View File

@ -39,10 +39,10 @@
)
VALUES
(
(SELECT COALESCE(MAX(ES_IDX), 0) + 1 FROM H3_EDU_STAT), #{name}, #{stdate}, #{eddate}, #{eduCourse},
(SELECT NVL(MAX(ES_IDX), 0) + 1 FROM H3_EDU_STAT), #{name}, #{stdate}, #{eddate}, #{eduCourse},
#{eduPlace}, #{userId}, #{place1}, #{place2}, #{scholarship},
#{position}, #{jobtype}, #{sdate}, #{pdate}, #{adate},
#{comment}, NOW(), NOW(), #{writer}, #{birth}
#{comment}, SYSDATE, SYSDATE, #{writer}, #{birth}
)
]]>
</insert>
@ -104,7 +104,7 @@
ES_PDATE = #{pdate},
ES_ADATE = #{adate},
ES_COMMENT = #{comment},
ES_LOGDATE = NOW(),
ES_LOGDATE = SYSDATE,
ES_WRITER = #{writer},
ES_BIRTH = #{birth}
WHERE ES_IDX = #{idx}

View File

@ -2,6 +2,10 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="Equip">
<resultMap id="resultMap" type="hashmap">
<result property="EU_DETAIL" column="EU_DETAIL" jdbcType="CLOB" javaType="java.lang.String" />
</resultMap>
<resultMap id="useStateResult" type="useStateVO">
<result property="police" column="EU_POLICE" />
<result property="policeStr" column="EU_POLICE_NM" />
@ -49,13 +53,16 @@
</resultMap>
<select id="Equip.getEquipmentList" parameterType="hashmap" resultType="hashmap">
<![CDATA[
SELECT
'계' AS EQUIP_NM, COUNT(EQ.POLICE) AS TOTAL, CAST('00' AS INT) AS ORDER_VALUE, '00' AS EQUIP,
]]>
<foreach collection="place1" item="item" separator=",">
SUM(CASE POLICE WHEN #{item.code2} THEN 1 ELSE 0 END) AS ${item.code2},
SUM(CASE POLICE WHEN 'ps18' THEN 1 ELSE 0 END) AS ps18,
SUM(CASE POLICE WHEN 'ps90' THEN 1 ELSE 0 END) AS ps90
</foreach>
<![CDATA[
FROM
TEQUIPMENT EQ
RIGHT JOIN
@ -74,11 +81,13 @@
UNION
SELECT
TD.CODENM AS EQUIP_NM, COUNT(EQ.POLICE) AS TOTAL, CAST(TD.CODE2 AS INT) AS ORDER_VALUE, TD.CODE2 AS EQUIP,
]]>
<foreach collection="place1" item="item" separator=",">
SUM(CASE POLICE WHEN #{item.code2} THEN 1 ELSE 0 END) AS ${item.code2},
SUM(CASE POLICE WHEN 'ps18' THEN 1 ELSE 0 END) AS ps18,
SUM(CASE POLICE WHEN 'ps90' THEN 1 ELSE 0 END) AS ps90
</foreach>
<![CDATA[
FROM
TEQUIPMENT EQ
RIGHT JOIN
@ -98,6 +107,7 @@
EQ.EQUIPGUBUN, TD.CODENM, TD.CODE2
ORDER BY
ORDER_VALUE
]]>
</select>
@ -105,38 +115,47 @@
<![CDATA[
SELECT
1 AS CNT, '계' AS GUBUN, '' AS CODE,
COALESCE(SUM(${type}), 0) AS TOTAL,
NVL(SUM(${type}), 0) AS TOTAL,
]]>
<foreach collection="place1" item="item" separator=",">
COALESCE(SUM(CASE EU_POLICE WHEN #{item.code2} THEN ${type} ELSE 0 END), 0) AS ${item.code2}
NVL(SUM(CASE EU_POLICE WHEN #{item.code2} THEN ${type} ELSE 0 END), 0) AS ${item.code2}
</foreach>
<![CDATA[
FROM H3_EQUIP_USE_STATE
WHERE EU_YEAR = (#{criteria.year}||'')
AND EU_QUATER = (#{criteria.quater}||'')
FROM
H3_EQUIP_USE_STATE
WHERE
EU_YEAR = #{criteria.year} AND
EU_QUATER = #{criteria.quater}
UNION
SELECT
2 AS CNT, B.CODENM AS GUBUN, B.CODE2 AS CODE,
COALESCE(SUM(${type}), 0) AS TOTAL,
NVL(SUM(${type}), 0) AS TOTAL,
]]>
<foreach collection="place1" item="item" separator=",">
COALESCE(SUM(CASE EU_POLICE WHEN #{item.code2} THEN ${type} ELSE 0 END), 0) AS ${item.code2}
NVL(SUM(CASE EU_POLICE WHEN #{item.code2} THEN ${type} ELSE 0 END), 0) AS ${item.code2}
</foreach>
<![CDATA[
FROM
(
SELECT *
FROM H3_EQUIP_USE_STATE
WHERE EU_YEAR = (#{criteria.year}||'')
AND EU_QUATER = (#{criteria.quater}||'')
SELECT
*
FROM
H3_EQUIP_USE_STATE
WHERE
EU_YEAR = #{criteria.year} AND
EU_QUATER = #{criteria.quater}
) A
RIGHT JOIN
(
SELECT CODE2, CODENM
FROM TCODE
WHERE CODE1 = 'EQUI'
AND CODE_USE_YN = 'Y'
ORDER BY CODE2
SELECT
CODE2, CODENM
FROM
TCODE
WHERE
CODE1 = 'EQUI' AND
CODE_USE_YN = 'Y'
ORDER BY
CODE2
) B
ON A.EU_CODE = B.CODE2
GROUP BY CODE2, CODENM
@ -171,34 +190,49 @@
]]>
</select>
<select id="Equip.getEquipUseStateInfo" parameterType="equipSearchVO" resultType="hashmap">
<select id="Equip.getEquipUseStateInfo" parameterType="equipSearchVO" resultMap="resultMap">
<![CDATA[
SELECT B.CODENM,
B.CODE2,
A.*
FROM (SELECT *
FROM H3_EQUIP_USE_STATE
WHERE EU_YEAR = (#{year}||'')
AND EU_QUATER = (#{quater}||'')
AND EU_POLICE = #{police}) A
RIGHT JOIN
(SELECT CODE2, CODENM
FROM TCODE
WHERE CODE1 = 'EQUI'
AND CODE_USE_YN = 'Y'
ORDER BY CODE2 ) B
ON A.EU_CODE = B.CODE2
ORDER BY B.CODE2
SELECT
B.CODENM, B.CODE2, A.*
FROM
(
SELECT
*
FROM
H3_EQUIP_USE_STATE
WHERE
EU_YEAR = #{year} AND
EU_QUATER = #{quater} AND
EU_POLICE = #{police}
) A
RIGHT JOIN
(
SELECT
CODE2, CODENM
FROM
TCODE
WHERE
CODE1 = 'EQUI' AND
CODE_USE_YN = 'Y'
ORDER BY
CODE2
) B
ON A.EU_CODE = B.CODE2
ORDER BY
B.CODE2
]]>
</select>
<select id="Equip.getEquipUseStateInfoByCode" parameterType="hashmap" resultType="hashmap">
SELECT *
FROM H3_EQUIP_USE_STATE
WHERE EU_YEAR = (#{year}||'')
AND EU_QUATER = (#{quater}||'')
AND EU_POLICE = #{police}
AND EU_CODE = #{code}
SELECT
*
FROM
H3_EQUIP_USE_STATE
WHERE
EU_YEAR = #{year} AND
EU_QUATER = #{quater} AND
EU_POLICE = #{police} AND
EU_CODE = #{code}
</select>
<insert id="Equip.insertEquipUseState" parameterType="hashmap">
@ -210,27 +244,26 @@
) VALUES (
#{police}, #{year}, #{quater},
#{code}, #{cnt}, #{detail},
#{state}, #{check}, NOW(), #{writer}
#{state}, #{check}, SYSDATE, #{writer}
)
</insert>
<update id="Equip.updateEquipUseState" parameterType="hashmap">
UPDATE H3_EQUIP_USE_STATE
SET EU_CNT = #{cnt},
EU_DETAIL = #{detail},
EU_STATE = #{state},
EU_CHECK = #{check}
WHERE EU_POLICE = #{police}
AND EU_YEAR = (#{year}||'')
AND EU_QUATER = (#{quater}||'')
AND EU_CODE = #{code}
UPDATE
H3_EQUIP_USE_STATE
SET
EU_CNT = #{cnt}, EU_DETAIL = #{detail},
EU_STATE = #{state}, EU_CHECK = #{check}
WHERE
EU_POLICE = #{police} AND EU_YEAR = #{year} AND
EU_QUATER = #{quater} AND EU_CODE = #{code}
</update>
<!-- 사용실적 결재 -->
<select id="selectStateWaitingList" parameterType="stateWaitingSearchVO" resultMap="useStateResult">
<![CDATA[
SELECT
A.*, COALESCE(ESJ_SEQ, 0) AS ESJ_SEQ, ESJ_CHECKDATE,
A.*, NVL(ESJ_SEQ, 0) AS ESJ_SEQ, ESJ_CHECKDATE,
(SELECT CODENM FROM TCODE WHERE CODE1 = 'C001' AND CODE2 = A.EU_POLICE) AS POLICE_NAME
FROM
(SELECT EU_POLICE, EU_YEAR, EU_QUATER FROM H3_EQUIP_USE_STATE GROUP BY EU_POLICE, EU_YEAR, EU_QUATER) A
@ -327,64 +360,69 @@
</select>
<insert id="Equip.insertEquipment" parameterType="equipVO">
INSERT INTO TEQUIPMENT(
NUM,
POLICE,
EQUIPGUBUN,
EQUIPNAME,
BYEAR,BMON,
BDAY,USETERM,
STANDARD,
PURPOSE,
BPLACE,
PRICE,
MADEIN,
SERIALNO,
OPERATE,
USESECTION,
BIGO,
FILENAME1,
FILENAME2,
FILENAME3,
CREADATE,
WRITER,
LOGDATE)
values (
(CASE
WHEN (SELECT MAX(NUM) FROM TEQUIPMENT WHERE POLICE = #{police}) IS NULL THEN 1
ELSE (SELECT MAX(NUM)::int + 1 FROM TEQUIPMENT WHERE POLICE = #{police})
END),
#{police},
#{equipType},
#{equipName},
#{buyYear},
#{buyMonth},
#{buyDay},
#{useTerm},
#{standard},
#{purpose},
#{buyPlace},
#{price},
#{madeIn},
#{serialNo},
#{operate},
#{useSection},
#{bigo},
#{fileName1},
#{fileName2},
#{fileName3},
TO_CHAR(NOW(), 'YYYYMMDDHH24MISS'),
#{writer},
NULL
)
<selectKey resultType="int" keyProperty="serNo" order="AFTER">
SELECT currval('tequip_seq') as seq
<![CDATA[
INSERT INTO TEQUIPMENT
( SERNO,
NUM,
POLICE,
EQUIPGUBUN,
EQUIPNAME,
BYEAR,BMON,
BDAY,USETERM,
STANDARD,
PURPOSE,
BPLACE,
PRICE,
MADEIN,
SERIALNO,
OPERATE,
USESECTION,
BIGO,
FILENAME1,
FILENAME2,
FILENAME3,
CREADATE,
WRITER,
LOGDATE)
values (
TEQUIPMENT_SERNO_SEQ.NEXTVAL,
(CASE WHEN (SELECT MAX(NUM) FROM TEQUIPMENT WHERE POLICE = #{police}) IS NULL THEN 1
ELSE (SELECT MAX(NUM) + 1 FROM TEQUIPMENT WHERE POLICE = #{police}) END),
#{police},
#{equipType},
#{equipName},
#{buyYear},
#{buyMonth},
#{buyDay},
#{useTerm},
#{standard},
#{purpose},
#{buyPlace},
#{price},
#{madeIn},
#{serialNo},
#{operate},
#{useSection},
#{bigo},
#{fileName1},
#{fileName2},
#{fileName3},
TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS'),
#{writer},
NULL
)
]]>
<selectKey resultType="String" keyProperty="serNo" order="AFTER">
SELECT TEQUIPMENT_SERNO_SEQ.CURRVAL FROM DUAL
</selectKey>
</insert>
<update id="updateEquipment" parameterType="equipVO">
UPDATE TEQUIPMENT
SET NUM = #{num},
<update id="updateEquipment" parameterType="arrestVO">
<![CDATA[
UPDATE
TEQUIPMENT
SET
NUM = #{num},
EQUIPGUBUN = #{equipType},
EQUIPNAME = #{equipName},
POLICE = #{police},
@ -404,12 +442,21 @@
FILENAME1 = #{fileName1},
FILENAME2 = #{fileName2},
FILENAME3 = #{fileName3},
LOGDATE = TO_CHAR(NOW(), 'YYYYMMDDHH24MISS')
WHERE SERNO = #{serNo}
LOGDATE = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')
WHERE
SERNO = #{serNo}
]]>
</update>
<delete id="deleteEquipment" parameterType="equipVO">
<![CDATA[
DELETE FROM TEQUIPMENT
WHERE SERNO = #{serNo}
]]>
</delete>
</mapper>

View File

@ -35,7 +35,7 @@
( ESJ_POLICE, ESJ_YEAR, ESJ_QUATER, ESJ_CHECKDATE, ESJ_PLACE1,
ESJ_POSITION, ESJ_NAME, ESJ_USERID, ESJ_PROXY_ID, ESJ_MESSAGE )
VALUES
( #{police}, #{year}, #{quater}, NOW(), #{place1Str},
( #{police}, #{year}, #{quater}, SYSDATE, #{place1Str},
#{positionStr}, #{name}, #{userId}, #{proxyId}, #{message} )
]]>
</insert>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -588,9 +588,9 @@
PLACE1 = #{place1}, PLACE2 = #{place2}, PLACE3 = #{place3},
POSITION = #{position}, DUTIES = #{duties}, JOBTYPE = #{jobtype}, INOUT = #{inout}, SCHOLARSHIP = #{scholarship},
EXCAREER = #{excareer}, EXCAREER1 = #{excareer1}, EXCAREER2 = #{excareer2}, EXCAREER3 = #{excareer3},
COMMENT_ = #{comment_}, LOGINDATE = TO_CHAR(NOW(), 'YYYY-MM-DD'),
COMMENT_ = #{comment_}, LOGINDATE = TO_CHAR(SYSDATE, 'YYYY-MM-DD'),
CHARGE = #{charge}, EXPLACE = #{explace}, USEGRADE = #{usegrade}, USERIMG = #{userimg,jdbcType=VARCHAR}, USERSIGN = #{usersign,jdbcType=VARCHAR},
CHKCNT = COALESCE(#{chkcnt}, 0)
CHKCNT = NVL(#{chkcnt}, 0)
WHERE
USERID = #{userid}
]]>
@ -616,7 +616,7 @@
</otherwise>
</choose>
<![CDATA[
#{place1}, #{place2}, #{position}, TO_CHAR(NOW(), 'YYYYMMDD'), TO_CHAR(NOW(), 'YYYYMMDD'), #{writer} )
#{place1}, #{place2}, #{position}, TO_CHAR(SYSDATE, 'YYYYMMDD'), TO_CHAR(SYSDATE, 'YYYYMMDD'), #{writer} )
]]>
</insert>
@ -634,7 +634,7 @@
PLACE1 = #{place1},
PLACE2 = #{place2},
POSITION = #{position},
CHKCNT = COALESCE(#{chkcnt}, 0)
CHKCNT = NVL(#{chkcnt}, 0)
WHERE
USERID = #{userid}
]]>
@ -674,7 +674,7 @@
</otherwise>
</choose> <![CDATA[
SET
LOGINDATE = TO_CHAR(NOW(), 'YYYY-MM-DD'),
LOGINDATE = TO_CHAR(SYSDATE, 'YYYY-MM-DD'),
PASSWD = XX1.ENC_VARCHAR2_INS(#{passwd}, 10, 'SHA256')
WHERE
USERID = #{userid}]]>
@ -690,26 +690,26 @@
FROM (
SELECT
A.PLACE1 AS PLACE,
COALESCE(A.TOT_CNT, 0) AS TOT_CNT,
COALESCE(B.CURRENT_CNT,0) AS CURRENT_CNT,
COALESCE(A.POSITION204,0) AS POSITION204, COALESCE(B.CNT_204,0) AS CNT_204,
COALESCE(A.POSITION203,0) AS POSITION203, COALESCE(B.CNT_203,0) AS CNT_203,
COALESCE(A.POSITION202,0) AS POSITION202, COALESCE(B.CNT_202,0) AS CNT_202,
COALESCE(A.POSITION201,0) AS POSITION201, COALESCE(B.CNT_201,0) AS CNT_201,
COALESCE(A.POSITION104,0) AS POSITION104, COALESCE(B.CNT_104,0) AS CNT_104,
COALESCE(A.POSITION103,0) AS POSITION103, COALESCE(B.CNT_103,0) AS CNT_103,
COALESCE(A.POSITION102,0) AS POSITION102, COALESCE(B.CNT_102,0) AS CNT_102
NVL(A.TOT_CNT, 0) AS TOT_CNT,
NVL(B.CURRENT_CNT,0) AS CURRENT_CNT,
NVL(A.POSITION204,0) AS POSITION204, NVL(B.CNT_204,0) AS CNT_204,
NVL(A.POSITION203,0) AS POSITION203, NVL(B.CNT_203,0) AS CNT_203,
NVL(A.POSITION202,0) AS POSITION202, NVL(B.CNT_202,0) AS CNT_202,
NVL(A.POSITION201,0) AS POSITION201, NVL(B.CNT_201,0) AS CNT_201,
NVL(A.POSITION104,0) AS POSITION104, NVL(B.CNT_104,0) AS CNT_104,
NVL(A.POSITION103,0) AS POSITION103, NVL(B.CNT_103,0) AS CNT_103,
NVL(A.POSITION102,0) AS POSITION102, NVL(B.CNT_102,0) AS CNT_102
FROM (
SELECT
'PS0' AS PLACE1,
SUM(COALESCE((POSITION204 + POSITION203 + POSITION202 + POSITION201 + POSITION104 + POSITION103 + POSITION102),0)) AS TOT_CNT,
SUM(COALESCE(POSITION204,0)) AS POSITION204,
SUM(COALESCE(POSITION203,0)) AS POSITION203,
SUM(COALESCE(POSITION202,0)) AS POSITION202,
SUM(COALESCE(POSITION201,0)) AS POSITION201,
SUM(COALESCE(POSITION104,0)) AS POSITION104,
SUM(COALESCE(POSITION103,0)) AS POSITION103,
SUM(COALESCE(POSITION102,0)) AS POSITION102
SUM(NVL((POSITION204 + POSITION203 + POSITION202 + POSITION201 + POSITION104 + POSITION103 + POSITION102),0)) AS TOT_CNT,
SUM(NVL(POSITION204,0)) AS POSITION204,
SUM(NVL(POSITION203,0)) AS POSITION203,
SUM(NVL(POSITION202,0)) AS POSITION202,
SUM(NVL(POSITION201,0)) AS POSITION201,
SUM(NVL(POSITION104,0)) AS POSITION104,
SUM(NVL(POSITION103,0)) AS POSITION103,
SUM(NVL(POSITION102,0)) AS POSITION102
FROM TAGENTNUM
WHERE PLACE1 <> 'PS95'
) A INNER JOIN (
@ -738,15 +738,15 @@
SELECT
A.PLACE1 AS PLACE,
COALESCE((A.POSITION204 + A.POSITION203 + A.POSITION202 + A.POSITION201 + A.POSITION104 + A.POSITION103 + A.POSITION102), 0) AS TOT_CNT,
COALESCE(B.CURRENT_CNT,0) AS CURRENT_CNT,
COALESCE(A.POSITION204,0) AS POSITION204, COALESCE(B.CNT_204,0) AS CNT_204,
COALESCE(A.POSITION203,0) AS POSITION203, COALESCE(B.CNT_203,0) AS CNT_203,
COALESCE(A.POSITION202,0) AS POSITION202, COALESCE(B.CNT_202,0) AS CNT_202,
COALESCE(A.POSITION201,0) AS POSITION201, COALESCE(B.CNT_201,0) AS CNT_201,
COALESCE(A.POSITION104,0) AS POSITION104, COALESCE(B.CNT_104,0) AS CNT_104,
COALESCE(A.POSITION103,0) AS POSITION103, COALESCE(B.CNT_103,0) AS CNT_103,
COALESCE(A.POSITION102,0) AS POSITION102, COALESCE(B.CNT_102,0) AS CNT_102
NVL((A.POSITION204 + A.POSITION203 + A.POSITION202 + A.POSITION201 + A.POSITION104 + A.POSITION103 + A.POSITION102), 0) AS TOT_CNT,
NVL(B.CURRENT_CNT,0) AS CURRENT_CNT,
NVL(A.POSITION204,0) AS POSITION204, NVL(B.CNT_204,0) AS CNT_204,
NVL(A.POSITION203,0) AS POSITION203, NVL(B.CNT_203,0) AS CNT_203,
NVL(A.POSITION202,0) AS POSITION202, NVL(B.CNT_202,0) AS CNT_202,
NVL(A.POSITION201,0) AS POSITION201, NVL(B.CNT_201,0) AS CNT_201,
NVL(A.POSITION104,0) AS POSITION104, NVL(B.CNT_104,0) AS CNT_104,
NVL(A.POSITION103,0) AS POSITION103, NVL(B.CNT_103,0) AS CNT_103,
NVL(A.POSITION102,0) AS POSITION102, NVL(B.CNT_102,0) AS CNT_102
FROM TAGENTNUM A
INNER JOIN (
SELECT
@ -777,26 +777,26 @@
SELECT
A.PLACE1 AS PLACE,
COALESCE(A.TOT_CNT, 0) AS TOT_CNT,
COALESCE(B.CURRENT_CNT,0) AS CURRENT_CNT,
COALESCE(A.POSITION204,0) AS POSITION204, COALESCE(B.CNT_204,0) AS CNT_204,
COALESCE(A.POSITION203,0) AS POSITION203, COALESCE(B.CNT_203,0) AS CNT_203,
COALESCE(A.POSITION202,0) AS POSITION202, COALESCE(B.CNT_202,0) AS CNT_202,
COALESCE(A.POSITION201,0) AS POSITION201, COALESCE(B.CNT_201,0) AS CNT_201,
COALESCE(A.POSITION104,0) AS POSITION104, COALESCE(B.CNT_104,0) AS CNT_104,
COALESCE(A.POSITION103,0) AS POSITION103, COALESCE(B.CNT_103,0) AS CNT_103,
COALESCE(A.POSITION102,0) AS POSITION102, COALESCE(B.CNT_102,0) AS CNT_102
NVL(A.TOT_CNT, 0) AS TOT_CNT,
NVL(B.CURRENT_CNT,0) AS CURRENT_CNT,
NVL(A.POSITION204,0) AS POSITION204, NVL(B.CNT_204,0) AS CNT_204,
NVL(A.POSITION203,0) AS POSITION203, NVL(B.CNT_203,0) AS CNT_203,
NVL(A.POSITION202,0) AS POSITION202, NVL(B.CNT_202,0) AS CNT_202,
NVL(A.POSITION201,0) AS POSITION201, NVL(B.CNT_201,0) AS CNT_201,
NVL(A.POSITION104,0) AS POSITION104, NVL(B.CNT_104,0) AS CNT_104,
NVL(A.POSITION103,0) AS POSITION103, NVL(B.CNT_103,0) AS CNT_103,
NVL(A.POSITION102,0) AS POSITION102, NVL(B.CNT_102,0) AS CNT_102
FROM (
SELECT
'PS001' AS PLACE1,
SUM(COALESCE((POSITION204 + POSITION203 + POSITION202 + POSITION201 + POSITION104 + POSITION103 + POSITION102),0)) AS TOT_CNT,
SUM(COALESCE(POSITION204,0)) AS POSITION204,
SUM(COALESCE(POSITION203,0)) AS POSITION203,
SUM(COALESCE(POSITION202,0)) AS POSITION202,
SUM(COALESCE(POSITION201,0)) AS POSITION201,
SUM(COALESCE(POSITION104,0)) AS POSITION104,
SUM(COALESCE(POSITION103,0)) AS POSITION103,
SUM(COALESCE(POSITION102,0)) AS POSITION102
SUM(NVL((POSITION204 + POSITION203 + POSITION202 + POSITION201 + POSITION104 + POSITION103 + POSITION102),0)) AS TOT_CNT,
SUM(NVL(POSITION204,0)) AS POSITION204,
SUM(NVL(POSITION203,0)) AS POSITION203,
SUM(NVL(POSITION202,0)) AS POSITION202,
SUM(NVL(POSITION201,0)) AS POSITION201,
SUM(NVL(POSITION104,0)) AS POSITION104,
SUM(NVL(POSITION103,0)) AS POSITION103,
SUM(NVL(POSITION102,0)) AS POSITION102
FROM
TAGENTNUM
WHERE
@ -830,15 +830,15 @@
SELECT
A.PLACE1 AS PLACE,
COALESCE((A.POSITION204 + A.POSITION203 + A.POSITION202 + A.POSITION201 + A.POSITION104 + A.POSITION103 + A.POSITION102), 0) AS TOT_CNT,
COALESCE(B.CURRENT_CNT,0) AS CURRENT_CNT,
COALESCE(A.POSITION204,0) AS POSITION204, COALESCE(B.CNT_204,0) AS CNT_204,
COALESCE(A.POSITION203,0) AS POSITION203, COALESCE(B.CNT_203,0) AS CNT_203,
COALESCE(A.POSITION202,0) AS POSITION202, COALESCE(B.CNT_202,0) AS CNT_202,
COALESCE(A.POSITION201,0) AS POSITION201, COALESCE(B.CNT_201,0) AS CNT_201,
COALESCE(A.POSITION104,0) AS POSITION104, COALESCE(B.CNT_104,0) AS CNT_104,
COALESCE(A.POSITION103,0) AS POSITION103, COALESCE(B.CNT_103,0) AS CNT_103,
COALESCE(A.POSITION102,0) AS POSITION102, COALESCE(B.CNT_102,0) AS CNT_102
NVL((A.POSITION204 + A.POSITION203 + A.POSITION202 + A.POSITION201 + A.POSITION104 + A.POSITION103 + A.POSITION102), 0) AS TOT_CNT,
NVL(B.CURRENT_CNT,0) AS CURRENT_CNT,
NVL(A.POSITION204,0) AS POSITION204, NVL(B.CNT_204,0) AS CNT_204,
NVL(A.POSITION203,0) AS POSITION203, NVL(B.CNT_203,0) AS CNT_203,
NVL(A.POSITION202,0) AS POSITION202, NVL(B.CNT_202,0) AS CNT_202,
NVL(A.POSITION201,0) AS POSITION201, NVL(B.CNT_201,0) AS CNT_201,
NVL(A.POSITION104,0) AS POSITION104, NVL(B.CNT_104,0) AS CNT_104,
NVL(A.POSITION103,0) AS POSITION103, NVL(B.CNT_103,0) AS CNT_103,
NVL(A.POSITION102,0) AS POSITION102, NVL(B.CNT_102,0) AS CNT_102
FROM
TAGENTNUM A LEFT OUTER JOIN (
SELECT
@ -887,15 +887,15 @@
SELECT 'PS' AS PLACE1
,SUM(CAREER_Y+CAREER1_Y+CAREER2_Y+CAREER3_Y) AS TOT_CNT_Y
,SUM(CAREER_M+CAREER1_M+CAREER2_M+CAREER3_M) AS TOT_CNT_M
,SUM(COALESCE(CAREER_Y, 0)) AS CAREER_Y
,SUM(COALESCE(CAREER_M, 0)) AS CAREER_M
,SUM(COALESCE(CAREER1_Y, 0)) AS CAREER1_Y
,SUM(COALESCE(CAREER1_M, 0)) AS CAREER1_M
,SUM(COALESCE(CAREER2_Y, 0)) AS CAREER2_Y
,SUM(COALESCE(CAREER2_M, 0)) AS CAREER2_M
,SUM(COALESCE(CAREER3_Y, 0)) AS CAREER3_Y
,SUM(COALESCE(CAREER3_M, 0)) AS CAREER3_M
,SUM((TO_NUMBER(TO_CHAR(NOW(), 'MM'), '99') + (TO_NUMBER(TO_CHAR(NOW(), 'YYYY'), '9999')
,SUM(NVL(CAREER_Y, 0)) AS CAREER_Y
,SUM(NVL(CAREER_M, 0)) AS CAREER_M
,SUM(NVL(CAREER1_Y, 0)) AS CAREER1_Y
,SUM(NVL(CAREER1_M, 0)) AS CAREER1_M
,SUM(NVL(CAREER2_Y, 0)) AS CAREER2_Y
,SUM(NVL(CAREER2_M, 0)) AS CAREER2_M
,SUM(NVL(CAREER3_Y, 0)) AS CAREER3_Y
,SUM(NVL(CAREER3_M, 0)) AS CAREER3_M
,SUM((TO_NUMBER(TO_CHAR(SYSDATE, 'MM'), '99') + (TO_NUMBER(TO_CHAR(SYSDATE, 'YYYY'), '9999')
- TO_NUMBER(TO_CHAR(TO_DATE(ADATE, 'YYYY-MM-DD'), 'YYYY'), '9999'))*12)
- TO_NUMBER(TO_CHAR(TO_DATE(ADATE, 'YYYY-MM-DD'), 'MM'), '99')) AS ADD_CAREER
FROM H3_CAREER_STAT
@ -903,15 +903,15 @@
SELECT 'PS00' AS PLACE1
,SUM(CAREER_Y+CAREER1_Y+CAREER2_Y+CAREER3_Y) AS TOT_CNT_Y
,SUM(CAREER_M+CAREER1_M+CAREER2_M+CAREER3_M) AS TOT_CNT_M
,SUM(COALESCE(CAREER_Y, 0)) AS CAREER_Y
,SUM(COALESCE(CAREER_M, 0)) AS CAREER_M
,SUM(COALESCE(CAREER1_Y, 0)) AS CAREER1_Y
,SUM(COALESCE(CAREER1_M, 0)) AS CAREER1_M
,SUM(COALESCE(CAREER2_Y, 0)) AS CAREER2_Y
,SUM(COALESCE(CAREER2_M, 0)) AS CAREER2_M
,SUM(COALESCE(CAREER3_Y, 0)) AS CAREER3_Y
,SUM(COALESCE(CAREER3_M, 0)) AS CAREER3_M
,SUM((TO_NUMBER(TO_CHAR(NOW(), 'MM'), '99') + (TO_NUMBER(TO_CHAR(NOW(), 'YYYY'), '9999')
,SUM(NVL(CAREER_Y, 0)) AS CAREER_Y
,SUM(NVL(CAREER_M, 0)) AS CAREER_M
,SUM(NVL(CAREER1_Y, 0)) AS CAREER1_Y
,SUM(NVL(CAREER1_M, 0)) AS CAREER1_M
,SUM(NVL(CAREER2_Y, 0)) AS CAREER2_Y
,SUM(NVL(CAREER2_M, 0)) AS CAREER2_M
,SUM(NVL(CAREER3_Y, 0)) AS CAREER3_Y
,SUM(NVL(CAREER3_M, 0)) AS CAREER3_M
,SUM((TO_NUMBER(TO_CHAR(SYSDATE, 'MM'), '99') + (TO_NUMBER(TO_CHAR(SYSDATE, 'YYYY'), '9999')
- TO_NUMBER(TO_CHAR(TO_DATE(ADATE, 'YYYY-MM-DD'), 'YYYY'), '9999'))*12)
- TO_NUMBER(TO_CHAR(TO_DATE(ADATE, 'YYYY-MM-DD'), 'MM'), '99')) AS ADD_CAREER
FROM
@ -925,15 +925,15 @@
'PS001' AS PLACE1
,SUM(CAREER_Y+CAREER1_Y+CAREER2_Y+CAREER3_Y) AS TOT_CNT_Y
,SUM(CAREER_M+CAREER1_M+CAREER2_M+CAREER3_M) AS TOT_CNT_M
,SUM(COALESCE(CAREER_Y, 0)) AS CAREER_Y
,SUM(COALESCE(CAREER_M, 0)) AS CAREER_M
,SUM(COALESCE(CAREER1_Y, 0)) AS CAREER1_Y
,SUM(COALESCE(CAREER1_M, 0)) AS CAREER1_M
,SUM(COALESCE(CAREER2_Y, 0)) AS CAREER2_Y
,SUM(COALESCE(CAREER2_M, 0)) AS CAREER2_M
,SUM(COALESCE(CAREER3_Y, 0)) AS CAREER3_Y
,SUM(COALESCE(CAREER3_M, 0)) AS CAREER3_M
,SUM((TO_NUMBER(TO_CHAR(NOW(), 'MM'), '99') + (TO_NUMBER(TO_CHAR(NOW(), 'YYYY'), '9999')
,SUM(NVL(CAREER_Y, 0)) AS CAREER_Y
,SUM(NVL(CAREER_M, 0)) AS CAREER_M
,SUM(NVL(CAREER1_Y, 0)) AS CAREER1_Y
,SUM(NVL(CAREER1_M, 0)) AS CAREER1_M
,SUM(NVL(CAREER2_Y, 0)) AS CAREER2_Y
,SUM(NVL(CAREER2_M, 0)) AS CAREER2_M
,SUM(NVL(CAREER3_Y, 0)) AS CAREER3_Y
,SUM(NVL(CAREER3_M, 0)) AS CAREER3_M
,SUM((TO_NUMBER(TO_CHAR(SYSDATE, 'MM'), '99') + (TO_NUMBER(TO_CHAR(SYSDATE, 'YYYY'), '9999')
- TO_NUMBER(TO_CHAR(TO_DATE(ADATE, 'YYYY-MM-DD'), 'YYYY'), '9999'))*12)
- TO_NUMBER(TO_CHAR(TO_DATE(ADATE, 'YYYY-MM-DD'), 'MM'), '99')) AS ADD_CAREER
FROM
@ -946,15 +946,15 @@
PLACE1
,SUM(CAREER_Y+CAREER1_Y+CAREER2_Y+CAREER3_Y) AS TOT_CNT_Y
,SUM(CAREER_M+CAREER1_M+CAREER2_M+CAREER3_M) AS TOT_CNT_M
,SUM(COALESCE(CAREER_Y, 0)) AS CAREER_Y
,SUM(COALESCE(CAREER_M, 0)) AS CAREER_M
,SUM(COALESCE(CAREER1_Y, 0)) AS CAREER1_Y
,SUM(COALESCE(CAREER1_M, 0)) AS CAREER1_M
,SUM(COALESCE(CAREER2_Y, 0)) AS CAREER2_Y
,SUM(COALESCE(CAREER2_M, 0)) AS CAREER2_M
,SUM(COALESCE(CAREER3_Y, 0)) AS CAREER3_Y
,SUM(COALESCE(CAREER3_M, 0)) AS CAREER3_M
,SUM((TO_NUMBER(TO_CHAR(NOW(), 'MM'), '99') + (TO_NUMBER(TO_CHAR(NOW(), 'YYYY'), '9999')
,SUM(NVL(CAREER_Y, 0)) AS CAREER_Y
,SUM(NVL(CAREER_M, 0)) AS CAREER_M
,SUM(NVL(CAREER1_Y, 0)) AS CAREER1_Y
,SUM(NVL(CAREER1_M, 0)) AS CAREER1_M
,SUM(NVL(CAREER2_Y, 0)) AS CAREER2_Y
,SUM(NVL(CAREER2_M, 0)) AS CAREER2_M
,SUM(NVL(CAREER3_Y, 0)) AS CAREER3_Y
,SUM(NVL(CAREER3_M, 0)) AS CAREER3_M
,SUM((TO_NUMBER(TO_CHAR(SYSDATE, 'MM'), '99') + (TO_NUMBER(TO_CHAR(SYSDATE, 'YYYY'), '9999')
- TO_NUMBER(TO_CHAR(TO_DATE(ADATE, 'YYYY-MM-DD'), 'YYYY'), '9999'))*12)
- TO_NUMBER(TO_CHAR(TO_DATE(ADATE, 'YYYY-MM-DD'), 'MM'), '99')) AS ADD_CAREER
FROM
@ -1086,7 +1086,7 @@
VALUES (
#{userid}, #{place1}, #{excareer_y}, #{excareer_m},
#{excareer1_y}, #{excareer1_m}, #{excareer2_y}, #{excareer2_m}, #{excareer3_y}, #{excareer3_m},
NOW(), NOW()
SYSDATE, SYSDATE
)
]]>
</insert>
@ -1104,7 +1104,7 @@
CAREER2_M = #{excareer2_m},
CAREER3_Y = #{excareer3_y},
CAREER3_M = #{excareer3_m},
ADATE = NOW()
ADATE = SYSDATE
WHERE
USERID = #{userid}
]]>
@ -1161,7 +1161,7 @@
<![CDATA[
#{name}, #{chnname}, #{family}, #{address}, #{email}, #{hphone}, #{ophone}, #{cphone},
#{sdate}, #{pdate}, #{adate}, #{place1}, #{place2}, #{place3}, #{position}, #{duties}, #{jobtype}, 'g',
#{scholarship}, #{excareer}, #{excareer1}, #{excareer2}, #{excareer3}, #{inout}, #{comment_}, #{userimg,jdbcType=VARCHAR}, NOW()
#{scholarship}, #{excareer}, #{excareer1}, #{excareer2}, #{excareer3}, #{inout}, #{comment_}, #{userimg,jdbcType=VARCHAR}, SYSDATE
)
]]>
</insert>
@ -1193,7 +1193,7 @@
<![CDATA[
#{name}, #{chnname}, #{family}, #{address}, #{email}, #{hphone}, #{ophone}, #{cphone},
#{sdate}, #{pdate}, #{adate}, #{place1}, #{place2}, #{place3}, #{position}, #{duties}, #{jobtype}, 'g',
#{scholarship}, #{excareer}, #{excareer1}, #{excareer2}, #{excareer3}, #{usegrade}, #{inout}, #{comment_}, #{userimg,jdbcType=VARCHAR}, NOW()
#{scholarship}, #{excareer}, #{excareer1}, #{excareer2}, #{excareer3}, #{usegrade}, #{inout}, #{comment_}, #{userimg,jdbcType=VARCHAR}, SYSDATE
)
]]>
</insert>

View File

@ -37,27 +37,82 @@
</select>
<select id="MemberAuth.getMemberListByPlace1" parameterType="memberSearchVO" resultType="loginUserVO">
select (ROW_NUMBER() OVER()) AS RNUM,
aa.*
from (select pl1.codenm place1str,
pl2.codenm PLACE2STR,
pl3.codenm PLACE3STR,
pst.codenm POSITIONSTR,
jt.codenm JOBTYPESTR,
a.*
from tagent a
inner join tcode pl1 on pl1.code1 = 'C001' and a.place1 = pl1.code2
inner join tcode pl2 on a.place1 = pl2.code1 and a.place2 = pl2.code2
inner join tcode pl3 on pl3.code1 = 'C009' and a.place3 = pl3.code2
inner join tcode pst on pst.code1 = 'C002' and a.position = pst.code2
inner join tcode jt on jt.code1 = 'C003' and a.jobtype = jt.code2
where PLACE1 =#{place1}
ORDER BY
<if test="orderkey != null and orderkey != ''">
${orderkey} <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
</if>
POSITION DESC, PLACE2, PLACE3, DUTIES, NAME
limit #{recordCountPerAuthPage} offset #{firstIndex} ) aa
<![CDATA[
SELECT
*
FROM (
SELECT
ROWNUM RNUM, MEMBER_LIST.*
FROM (
SELECT
B.CODENM AS PLACE3STR, A.*
FROM
(
SELECT
B.CODENM AS PLACE2STR, A.*
FROM
(SELECT
B.CODENM AS POSITIONSTR, A.*
FROM
(SELECT
B.CODENM AS PLACE1STR, A.*
FROM
(SELECT
B.CODENM AS DUTIESSTR, A.*
FROM
(SELECT
AGENT.USERID, AGENT.NAME, AGENT.PLACE1, AGENT.PLACE2, AGENT.PLACE3, AGENT.DUTIES, AGENT.POSITION, AGENT.USEGRADE,
PT_AUTH.AU_CODE AS AUTHCODE
FROM
( TAGENT AGENT
LEFT JOIN
RPT_AGENT_AUTH PT_AUTH
ON AGENT.USERID = PT_AUTH.AU_ID)
LEFT JOIN
H3_AGENT_AUTH ST_AUTH
ON
AGENT.USERID = ST_AUTH.AU_USERID
WHERE
PLACE1 = #{place1}
) A,
TCODE B
WHERE
B.CODE1 = 'C004' AND
A.DUTIES = B.CODE2) A,
TCODE B
WHERE
A.PLACE1 = B.CODE2 AND
B.CODE1 = 'C001' ) A,
TCODE B
WHERE
A.POSITION = B.CODE2 AND
B.CODE1 = 'C002') A,
TCODE B
WHERE
A.PLACE1 = B.CODE1(+) AND
B.CODE2(+) = A.PLACE2
ORDER BY
PLACE1,
PLACE2, PLACE3, POSITION DESC, DUTIES, NAME
) A,
TCODE B
WHERE
A.PLACE3 = B.CODE2(+) AND
CODE1(+) = 'C009'
ORDER BY]]>
<if test="orderkey != null and orderkey != ''">
${orderkey} <choose><when test="ordertype == 1">DESC</when><otherwise>ASC</otherwise></choose>,
</if>
POSITION DESC,
PLACE2, PLACE3, DUTIES, NAME
<![CDATA[) MEMBER_LIST
)
WHERE
RNUM > #{firstIndex} AND
RNUM <= #{firstIndex} + #{recordCountPerAuthPage}
ORDER BY
RNUM
]]>
</select>
<select id="MemberAuth.getMemberListByPlace1Cnt" parameterType="String" resultType="int">
<![CDATA[

File diff suppressed because it is too large Load Diff

View File

@ -19,10 +19,12 @@
</select>
<insert id="ReportFile.insertFileSeq">
<![CDATA[
INSERT INTO RPT_FILE_STORAGE (FS_FILE_COUNT) VALUES (1)
]]>
<selectKey resultType="int" keyProperty="fsSeq" order="AFTER">
SELECT currval('rpt_file_seq') as fsSeq
</selectKey>
SELECT RPT_FILE_STORAGE_FS_SEQ_SEQ.CURRVAL FROM DUAL
</selectKey>
</insert>
<update id="ReportFile.updateFileSeq" parameterType="hashMap">
@ -30,9 +32,9 @@
UPDATE
RPT_FILE_STORAGE
SET
FS_FILE_COUNT = FS_FILE_COUNT + #{cnt}::int
FS_FILE_COUNT = FS_FILE_COUNT + #{cnt}
WHERE
FS_SEQ = #{fsseq}::int
FS_SEQ = #{fsseq}
]]>
</update>

View File

@ -19,24 +19,26 @@
</resultMap>
<select id="ReportGoal.selectList" parameterType="reportSearchVO" resultMap="ReportGoalMap">
select (row_number () over()) AS rn,
t.*
from (
select
a.name,
a.userid as go_id,
coalesce(b.go_goal1, 0) AS goGoal1,
coalesce(b.go_goal2, 0) AS goGoal2,
coalesce(b.go_goal3, 0) AS goGoal3,
coalesce(b.go_goal4, 0) AS goGoal4,
coalesce(b.go_total, 0) AS goTotal
from tagent a
left outer join rpt_agent_goal b on a.userid = b.go_id
and a.place1 = #{placeGroup}
and b.go_month = ${month}
and b.go_year = ${year}
order by position desc, place2, place3, duties, name
) t
SELECT
T.*, ROWNUM AS RN
FROM
(
SELECT
A.NAME,
A.USERID AS go_id,
NVL(G.GO_GOAL1, 0) AS goGoal1,
NVL(G.GO_GOAL2, 0) AS goGoal2,
NVL(G.GO_GOAL3, 0) AS goGoal3,
NVL(G.GO_GOAL4, 0) AS goGoal4,
NVL(G.GO_TOTAL, 0) AS goTotal
FROM
(SELECT * FROM TAGENT WHERE PLACE1 = #{placeGroup}) A
LEFT OUTER JOIN
(SELECT DISTINCT * FROM RPT_AGENT_GOAL WHERE GO_MONTH = #{month} AND GO_YEAR = #{year}) G
ON G.GO_ID = A.USERID
ORDER BY
POSITION DESC, PLACE2, PLACE3, DUTIES, NAME
) T
</select>
<select id="ReportGoal.select" parameterType="reportGoalVO" resultMap="ReportGoalMap">
@ -71,86 +73,52 @@
</update>
<select id="ReportGoal.getStats" parameterType="reportSearchVO" resultType="hashMap">
select (row_number () over()) AS rn,
t.*
from (
select a.name,
a.userid as go_id,
coalesce(b.go_goal1, 0) AS goal1,
coalesce(b.go_goal2, 0) AS goal2,
coalesce(b.go_goal3, 0) AS goal3,
coalesce(b.go_goal4, 0) AS goal4,
coalesce(b.go_total, 0) AS goal_total,
coalesce(c.result1, 0) as result1,
coalesce(c.result2, 0) as result2,
coalesce(c.result3, 0) as result3,
coalesce(c.result4, 0) as result4,
coalesce(c.result_total, 0) as result_total
from tagent a
left outer join rpt_agent_goal b
on a.place1 = #{placeGroup} and b.go_year = ${year} and b.go_month = ${month} and a.userid = b.go_id
left outer join (
select in_userid,
count(1) filter (where in_category4 = '01') as result1,
count(1) filter (where in_category4 = '02') as result2,
count(1) filter (where in_category4 in ('03', '04', '05')) as result3,
count(1) filter (where in_category4 = '06') as result4,
count(1) as result_total
from rpt_info
where in_complete = '1'
and in_place_code = #{placeGroup}
and in_info_year = ${year}
and in_info_month = ${month}
group by in_userid
) c on c.in_userid = a.userid
order by position desc, place2, place3, duties, name
) t
SELECT
ROWNUM AS RN, T.*
FROM
(
SELECT
NAME,
NVL(GO_GOAL1, 0) AS GOAL1, NVL(GO_GOAL2, 0) AS GOAL2, NVL(GO_GOAL3, 0) AS GOAL3, NVL(GO_GOAL4, 0) AS GOAL4,
NVL(GO_GOAL1, 0) + NVL(GO_GOAL2, 0) + NVL(GO_GOAL3, 0) + NVL(GO_GOAL4, 0) AS GOAL_TOTAL,
(SELECT COUNT(*) FROM RPT_INFO WHERE IN_COMPLETE = 1 AND IN_USERID = A.USERID AND IN_INFO_YEAR = G.GO_YEAR AND IN_INFO_MONTH = G.GO_MONTH AND IN_CATEGORY4 = '01') AS RESULT1,
(SELECT COUNT(*) FROM RPT_INFO WHERE IN_COMPLETE = 1 AND IN_USERID = A.USERID AND IN_INFO_YEAR = G.GO_YEAR AND IN_INFO_MONTH = G.GO_MONTH AND IN_CATEGORY4 = '02') AS RESULT2,
(SELECT COUNT(*) FROM RPT_INFO WHERE IN_COMPLETE = 1 AND IN_USERID = A.USERID AND IN_INFO_YEAR = G.GO_YEAR AND IN_INFO_MONTH = G.GO_MONTH AND IN_CATEGORY4 IN ('03', '04', '05')) AS RESULT3,
(SELECT COUNT(*) FROM RPT_INFO WHERE IN_COMPLETE = 1 AND IN_USERID = A.USERID AND IN_INFO_YEAR = G.GO_YEAR AND IN_INFO_MONTH = G.GO_MONTH AND IN_CATEGORY4 = '06') AS RESULT4,
(SELECT COUNT(*) FROM RPT_INFO WHERE IN_COMPLETE = 1 AND IN_USERID = A.USERID AND IN_INFO_YEAR = G.GO_YEAR AND IN_INFO_MONTH = G.GO_MONTH) AS RESULT_TOTAL
FROM
(SELECT * FROM TAGENT WHERE PLACE1 = #{placeGroup}) A
LEFT OUTER JOIN
(SELECT DISTINCT * FROM RPT_AGENT_GOAL WHERE GO_YEAR = #{year} AND GO_MONTH = #{month}) G
ON G.GO_ID = A.USERID
ORDER BY
POSITION DESC, PLACE2, PLACE3, DUTIES, NAME
) T
</select>
<select id="ReportGoal.getStatsPlace" parameterType="reportSearchVO" resultType="hashMap">
select (row_number() over()) AS rn,
t.*
from (
SELECT p.code2 AS CODE,
p.codenm AS NAME,
coalesce(go_goal1, 0) AS GOAL1,
coalesce(go_goal2, 0) AS GOAL2,
coalesce(go_goal3, 0) AS GOAL3,
coalesce(go_goal4, 0) AS GOAL4,
coalesce(go_total, 0) AS GOAL_TOTAL,
coalesce(ri.result1, 0) AS RESULT1,
coalesce(ri.result2, 0) AS RESULT2,
coalesce(ri.result3, 0) AS RESULT3,
coalesce(ri.result4, 0) AS RESULT4,
coalesce(ri.result_total, 0) AS RESULT_TOTAL
from tcode p
left outer join (
select go_place1,
sum(go_goal1) as go_goal1,
sum(go_goal2) as go_goal2,
sum(go_goal3) as go_goal3,
sum(go_goal4) as go_goal4,
sum(go_total) as go_total
from RPT_AGENT_GOAL
where go_year = ${year}
and go_month = ${month}
group by go_place1
) G ON G.GO_PLACE1 = P.CODE2
left outer join (
select in_place_code,
count(1) filter (where in_category4 = '01') as result1,
count(1) filter (where in_category4 = '02') as result2,
count(1) filter (where in_category4 in ('03', '04', '05')) as result3,
count(1) filter (where in_category4 = '06') as result4,
count(1) as result_total
from rpt_info
where in_complete = '1'
and in_info_year = ${year}
and in_info_month = ${month}
group by in_place_code
) ri on p.code2 = ri.in_place_code
WHERE p.code1 = 'C001'
order by p.code2
) t
</select>
SELECT
ROWNUM AS RN, T.*
FROM
(
SELECT
CODE2 AS CODE, CODENM AS NAME,
SUM(NVL(GO_GOAL1, 0)) AS GOAL1, SUM(NVL(GO_GOAL2, 0)) AS GOAL2, SUM(NVL(GO_GOAL3, 0)) AS GOAL3, SUM(NVL(GO_GOAL4, 0)) AS GOAL4,
SUM(NVL(GO_GOAL1, 0)) + SUM(NVL(GO_GOAL2, 0)) + SUM(NVL(GO_GOAL3, 0)) + SUM(NVL(GO_GOAL4, 0)) AS GOAL_TOTAL,
(SELECT COUNT(*) FROM RPT_INFO WHERE IN_COMPLETE = 1 AND IN_INFO_YEAR = G.GO_YEAR AND IN_INFO_MONTH = G.GO_MONTH AND IN_CATEGORY4 = '01') AS RESULT1,
(SELECT COUNT(*) FROM RPT_INFO WHERE IN_COMPLETE = 1 AND IN_INFO_YEAR = G.GO_YEAR AND IN_INFO_MONTH = G.GO_MONTH AND IN_CATEGORY4 = '02') AS RESULT2,
(SELECT COUNT(*) FROM RPT_INFO WHERE IN_COMPLETE = 1 AND IN_INFO_YEAR = G.GO_YEAR AND IN_INFO_MONTH = G.GO_MONTH AND IN_CATEGORY4 IN ('03', '04', '05')) AS RESULT3,
(SELECT COUNT(*) FROM RPT_INFO WHERE IN_COMPLETE = 1 AND IN_INFO_YEAR = G.GO_YEAR AND IN_INFO_MONTH = G.GO_MONTH AND IN_CATEGORY4 = '06') AS RESULT4,
(SELECT COUNT(*) FROM RPT_INFO WHERE IN_COMPLETE = 1 AND IN_INFO_YEAR = G.GO_YEAR AND IN_INFO_MONTH = G.GO_MONTH) AS RESULT_TOTAL
FROM
(SELECT * FROM TCODE WHERE CODE1 = 'C001') P
LEFT OUTER JOIN
(SELECT DISTINCT * FROM RPT_AGENT_GOAL WHERE GO_YEAR = #{year} AND GO_MONTH = #{month}) G
ON G.GO_PLACE1 = P.CODE2
GROUP BY
CODE2, CODENM, GO_YEAR, GO_MONTH
ORDER BY
CODE2
) T
</select>
</mapper>

View File

@ -90,12 +90,12 @@
(JU_INSEQ, JU_GROUP_CODE, JU_CHKDATE, JU_JUDGE, JU_REPORT, JU_PLACE1, JU_PLACE2,
JU_POSITION, JU_NAME, JU_USERID, JU_PROXY_ID, JU_DUTIES_CODE, JU_MESSAGE)
VALUES
(#{juInseq}, #{juGroupCode}, NOW(), #{juJudge}, #{juReport}, #{juPlace1}, #{juPlace2},
(#{juInseq}, #{juGroupCode}, sysdate, #{juJudge}, #{juReport}, #{juPlace1}, #{juPlace2},
#{juPosition}, #{juName}, #{juUserid}, #{juProxyId}, #{juDutiesCode}, #{juMessage})
]]>
<selectKey resultType="int" keyProperty="juInseq" order="AFTER">
SELECT currval('rpt_ju_seq') as juInseq
</selectKey>
SELECT RPT_JUDGE_HISTORY_JU_SEQ_SEQ.CURRVAL FROM DUAL
</selectKey>
</insert>
<update id="ReportJudge.update" parameterType="reportJudgeVO">
@ -119,28 +119,28 @@
SELECT
]]>
<if test="categoryType.equals(1)">
<foreach collection="category1" item="cate" separator="">
MAX(CASE CATEGORYCODE WHEN #{cate} THEN TOTAL::int end) AS "${cate}",
</foreach>
<foreach collection="category1" item="cate" separator=""><![CDATA[
TO_CHAR(MAX(DECODE(CATEGORYCODE, #{cate}, TOTAL))) AS "${cate}",
]]></foreach>
</if>
<if test="categoryType.equals(2)">
<foreach collection="category2" item="cate" >
MAX(CASE CATEGORYCODE WHEN #{cate} THEN TOTAL::int end) AS "${cate}",
</foreach>
<foreach collection="category2" item="cate" ><![CDATA[
TO_CHAR(MAX(DECODE(CATEGORYCODE, #{cate}, TOTAL))) AS "${cate}",
]]></foreach>
</if>
<if test="categoryType.equals(3)">
<foreach collection="category3" item="cate" >
MAX(CASE CATEGORYCODE WHEN #{cate} THEN TOTAL::int end) AS "${cate}",
</foreach>
<foreach collection="category3" item="cate" ><![CDATA[
TO_CHAR(MAX(DECODE(CATEGORYCODE, #{cate}, TOTAL))) AS "${cate}",
]]></foreach>
</if>
<if test="categoryType.equals(4)">
<foreach collection="category4" item="cate" >
MAX(CASE CATEGORYCODE WHEN #{cate} THEN TOTAL::int end) AS "${cate}",
</foreach>
<foreach collection="category4" item="cate" ><![CDATA[
TO_CHAR(MAX(DECODE(CATEGORYCODE, #{cate}, TOTAL))) AS "${cate}",
]]></foreach>
</if>
<![CDATA[
PLACENAME, PLACECODE,
SUM(TOTAL) AS TOTAL
TO_CHAR(SUM(TOTAL)) AS TOTAL
FROM
(
SELECT
@ -164,10 +164,10 @@
</choose>
<if test="dateStart != null and dateStart != ''"><![CDATA[
AND IN_INFODATE >= #{dateStart}::date
AND IN_INFODATE >= #{dateStart}
]]></if>
<if test="dateEnd != null and dateEnd != ''"><![CDATA[
AND IN_INFODATE <= #{dateEnd}::date
AND IN_INFODATE <= #{dateEnd}
]]></if>
<if test="subject != null and subject != ''"><![CDATA[
AND IN_SUBJECT LIKE '%'||#{subject}||'%'
@ -271,213 +271,106 @@
<![CDATA[
/*ReportJudge.statsJudge*/
WITH RPT AS (
SELECT
A.IN_PLACE_CODE ,
sum(REPORT1) REPORT1,
sum(REPORT2) REPORT2,
SUM(JU1) JU1,
SUM(JU2) JU2,
SUM(JU3) JU3,
SUM(JU4) JU4,
SUM(JU5) JU5,
SUM(JU6) JU6,
SUM(JU7) JU7,
sum(JU1 + JU2) as AG,
sum(JU3 + JU4) as BG,
sum(JU5 + JU6) as CG,
sum(JU7) as DG
from (select
IN_PLACE_CODE,
SUM(case when IN_REPORT1 = 1 then 1 else 0 end) as REPORT1,
SUM(case when IN_REPORT2 = 1 then 1 else 0 end) as REPORT2,
case IN_JUDGE
when 1 then COUNT(in_seq)
else 0
end JU1,
case IN_JUDGE
when 2 then COUNT(in_seq)
else 0
end JU2,
case IN_JUDGE
when 3 then COUNT(in_seq)
else 0
end JU3,
case IN_JUDGE
when 4 then COUNT(in_seq)
else 0
end JU4,
case IN_JUDGE
when 5 then COUNT(in_seq)
else 0
end JU5,
case IN_JUDGE
when 6 then COUNT(in_seq)
else 0
end JU6,
case IN_JUDGE
when 7 then COUNT(in_seq)
else 0
end JU7
SELECT *
FROM
RPT_INFO
WHERE
IN_COMPLETE = '1'
AND IN_STATE_CODE <> '99'
AND IN_INFODATE >= #{dateStart}::date
AND IN_INFODATE <= #{dateEnd}::date
group by IN_PLACE_CODE, IN_JUDGE) A
where in_place_code <>''
group by IN_PLACE_CODE
]]>
<if test="policeType != null and policeType.length > 0">
AND IN_TYPE IN
<foreach collection="policeType" item="type" open="(" close=")" separator=",">
#{type}
</foreach>
</if>
<if test="judges != null and judges.length > 0">
AND IN_JUDGE IN
<foreach collection="judges" item="judge" open="(" close=")" separator=",">
#{judge}
</foreach>
</if>
<if test="category1 != null and category1.length > 0">
AND IN_CATEGORY1 IN
<foreach collection="category1" item="category" open="(" close=")" separator=",">
#{category}
</foreach>
</if>
<if test="category2 != null and category2.length > 0">
AND IN_CATEGORY2 IN
<foreach collection="category2" item="category" open="(" close=")" separator=",">
#{category}
</foreach>
</if>
<if test="category3 != null and category3.length > 0">
AND IN_CATEGORY3 IN
<foreach collection="category3" item="category" open="(" close=")" separator=",">
#{category}
</foreach>
</if>
<if test="category4 != null and category4.length > 0">
AND IN_CATEGORY4 IN
<foreach collection="category4" item="category" open="(" close=")" separator=",">
#{category}
</foreach>
</if>
)
select C.CODENM PLACENAME,
R.REPORT1, R.report2, r.ju1, r.ju2, r.ju3, r.ju4, r.ju5, r.ju6, r.ju7, r.ag, r.bg, r.cg, r.dg
from RPT R
inner join TCODE C
ON C.CODE1 = 'C001' AND C.CODE2 = R.IN_PLACE_CODE
<if test="places != null and places.length > 0">
AND CODE2 IN
<foreach collection="places" item="place" open="(" close=")" separator=",">
#{place}
AND IN_INFODATE >= #{dateStart}
AND IN_INFODATE <= #{dateEnd}
]]>
<if test="policeType != null and policeType.length > 0">
AND IN_TYPE IN
<foreach collection="policeType" item="type" open="(" close=")" separator=",">
#{type}
</foreach>
</if>
<!-- WITH RPT AS (-->
<!-- SELECT *-->
<!-- FROM-->
<!-- RPT_INFO-->
<!-- WHERE-->
<!-- IN_COMPLETE = '1'-->
<!-- AND IN_STATE_CODE <> '99'-->
<!-- AND IN_INFODATE >= #{dateStart}-->
<!-- AND IN_INFODATE <= #{dateEnd}-->
<!-- ]]>-->
<!-- <if test="policeType != null and policeType.length > 0">-->
<!-- AND IN_TYPE IN-->
<!-- <foreach collection="policeType" item="type" open="(" close=")" separator=",">-->
<!-- #{type}-->
<!-- </foreach>-->
<!-- </if>-->
<!-- <if test="judges != null and judges.length > 0">-->
<!-- AND IN_JUDGE IN-->
<!-- <foreach collection="judges" item="judge" open="(" close=")" separator=",">-->
<!-- #{judge}-->
<!-- </foreach>-->
<!-- </if>-->
<!-- <if test="category1 != null and category1.length > 0">-->
<!-- AND IN_CATEGORY1 IN-->
<!-- <foreach collection="category1" item="category" open="(" close=")" separator=",">-->
<!-- #{category}-->
<!-- </foreach>-->
<!-- </if>-->
<!-- <if test="category2 != null and category2.length > 0">-->
<!-- AND IN_CATEGORY2 IN-->
<!-- <foreach collection="category2" item="category" open="(" close=")" separator=",">-->
<!-- #{category}-->
<!-- </foreach>-->
<!-- </if>-->
<!-- <if test="category3 != null and category3.length > 0">-->
<!-- AND IN_CATEGORY3 IN-->
<!-- <foreach collection="category3" item="category" open="(" close=")" separator=",">-->
<!-- #{category}-->
<!-- </foreach>-->
<!-- </if>-->
<!-- <if test="category4 != null and category4.length > 0">-->
<!-- AND IN_CATEGORY4 IN-->
<!-- <foreach collection="category4" item="category" open="(" close=")" separator=",">-->
<!-- #{category}-->
<!-- </foreach>-->
<!-- </if>-->
<!-- <![CDATA[-->
<!-- )-->
<!-- SELECT-->
<!-- A.PLACENAME,-->
<!-- TO_CHAR(REPORT1) REPORT1, TO_CHAR(REPORT2) REPORT2,-->
<!-- TO_CHAR(JU1) JU1, TO_CHAR(JU2) JU2, TO_CHAR(JU3) JU3, TO_CHAR(JU4) JU4, TO_CHAR(JU5) JU5, TO_CHAR(JU6) JU6, TO_CHAR(JU7) JU7,-->
<!-- TO_CHAR((JU1 + JU2)) AS AG, TO_CHAR((JU3 + JU4)) AS BG, TO_CHAR((JU5 + JU6)) AS CG, TO_CHAR(JU7) AS DG-->
<!-- FROM-->
<!-- ((-->
<!-- SELECT-->
<!-- PLACENAME, PLACECODE, IN_JUDGE, IN_SEQ-->
<!-- FROM-->
<!-- RPT R-->
<!-- RIGHT OUTER JOIN-->
<!-- (-->
<!-- SELECT CODE2 AS PLACECODE, CODENM AS PLACENAME-->
<!-- FROM TCODE-->
<!-- WHERE CODE1 = 'C001'-->
<!-- ]]>-->
<!-- <if test="places != null and places.length > 0">-->
<!-- AND CODE2 IN-->
<!-- <foreach collection="places" item="place" open="(" close=")" separator=",">-->
<!-- #{place}-->
<!-- </foreach>-->
<!-- </if>-->
<!-- <![CDATA[-->
<!-- ) C-->
<!-- ON C.PLACECODE = R.IN_PLACE_CODE-->
<!-- ) PIVOT (COUNT(IN_SEQ) FOR IN_JUDGE IN (1 JU1, 2 JU2, 3 JU3, 4 JU4, 5 JU5, 6 JU6, 7 JU7))) A,-->
<!-- (-->
<!-- SELECT-->
<!-- PLACENAME,-->
<!-- SUM(CASE WHEN IN_REPORT1 = 1 THEN 1 ELSE 0 END) AS REPORT1,-->
<!-- SUM(CASE WHEN IN_REPORT2 = 1 THEN 1 ELSE 0 END) AS REPORT2-->
<!-- FROM-->
<!-- RPT R-->
<!-- RIGHT OUTER JOIN-->
<!-- (-->
<!-- SELECT CODE2 AS PLACECODE, CODENM AS PLACENAME-->
<!-- FROM TCODE-->
<!-- WHERE CODE1 = 'C001'-->
<!-- ]]>-->
<!-- <if test="places != null and places.length > 0">-->
<!-- AND CODE2 IN-->
<!-- <foreach collection="places" item="place" open="(" close=")" separator=",">-->
<!-- #{place}-->
<!-- </foreach>-->
<!-- </if>-->
<!-- <![CDATA[-->
<!-- ) C-->
<!-- ON C.PLACECODE = R.IN_PLACE_CODE-->
<!-- GROUP BY-->
<!-- PLACENAME, PLACECODE ) B-->
<!-- WHERE A.PLACENAME = B.PLACENAME-->
<!-- ORDER BY PLACECODE-->
<if test="judges != null and judges.length > 0">
AND IN_JUDGE IN
<foreach collection="judges" item="judge" open="(" close=")" separator=",">
#{judge}
</foreach>
</if>
<if test="category1 != null and category1.length > 0">
AND IN_CATEGORY1 IN
<foreach collection="category1" item="category" open="(" close=")" separator=",">
#{category}
</foreach>
</if>
<if test="category2 != null and category2.length > 0">
AND IN_CATEGORY2 IN
<foreach collection="category2" item="category" open="(" close=")" separator=",">
#{category}
</foreach>
</if>
<if test="category3 != null and category3.length > 0">
AND IN_CATEGORY3 IN
<foreach collection="category3" item="category" open="(" close=")" separator=",">
#{category}
</foreach>
</if>
<if test="category4 != null and category4.length > 0">
AND IN_CATEGORY4 IN
<foreach collection="category4" item="category" open="(" close=")" separator=",">
#{category}
</foreach>
</if>
<![CDATA[
)
SELECT
A.PLACENAME,
TO_CHAR(REPORT1) REPORT1, TO_CHAR(REPORT2) REPORT2,
TO_CHAR(JU1) JU1, TO_CHAR(JU2) JU2, TO_CHAR(JU3) JU3, TO_CHAR(JU4) JU4, TO_CHAR(JU5) JU5, TO_CHAR(JU6) JU6, TO_CHAR(JU7) JU7,
TO_CHAR((JU1 + JU2)) AS AG, TO_CHAR((JU3 + JU4)) AS BG, TO_CHAR((JU5 + JU6)) AS CG, TO_CHAR(JU7) AS DG
FROM
((
SELECT
PLACENAME, PLACECODE, IN_JUDGE, IN_SEQ
FROM
RPT R
RIGHT OUTER JOIN
(
SELECT CODE2 AS PLACECODE, CODENM AS PLACENAME
FROM TCODE
WHERE CODE1 = 'C001'
]]>
<if test="places != null and places.length > 0">
AND CODE2 IN
<foreach collection="places" item="place" open="(" close=")" separator=",">
#{place}
</foreach>
</if>
<![CDATA[
) C
ON C.PLACECODE = R.IN_PLACE_CODE
) PIVOT (COUNT(IN_SEQ) FOR IN_JUDGE IN (1 JU1, 2 JU2, 3 JU3, 4 JU4, 5 JU5, 6 JU6, 7 JU7))) A,
(
SELECT
PLACENAME,
SUM(CASE WHEN IN_REPORT1 = 1 THEN 1 ELSE 0 END) AS REPORT1,
SUM(CASE WHEN IN_REPORT2 = 1 THEN 1 ELSE 0 END) AS REPORT2
FROM
RPT R
RIGHT OUTER JOIN
(
SELECT CODE2 AS PLACECODE, CODENM AS PLACENAME
FROM TCODE
WHERE CODE1 = 'C001'
]]>
<if test="places != null and places.length > 0">
AND CODE2 IN
<foreach collection="places" item="place" open="(" close=")" separator=",">
#{place}
</foreach>
</if>
<![CDATA[
) C
ON C.PLACECODE = R.IN_PLACE_CODE
GROUP BY
PLACENAME, PLACECODE ) B
WHERE A.PLACENAME = B.PLACENAME
ORDER BY PLACECODE
]]>
</select>
</mapper>

View File

@ -72,14 +72,22 @@
</select>
<select id="Security.getHierarchyRoles" resultType="map">
<![CDATA[
SELECT
(ROW_NUMBER() OVER()) AS RNUM, A.CHILDREN_ROLE CHILD, A.PARENTS_ROLE PARENT
FROM
T_SSO_HIERARCHY_ROLES A
LEFT JOIN T_SSO_HIERARCHY_ROLES B
ON (A.CHILDREN_ROLE = B.PARENTS_ROLE)
order by RNUM desc
<![CDATA[
SELECT
*
FROM (
SELECT ROWNUM RNUM, ROLES_LIST.*
FROM (
SELECT
A.CHILDREN_ROLE CHILD, A.PARENTS_ROLE PARENT
FROM
T_SSO_HIERARCHY_ROLES A
LEFT JOIN T_SSO_HIERARCHY_ROLES B
ON (A.CHILDREN_ROLE = B.PARENTS_ROLE)
) ROLES_LIST
)
ORDER BY
RNUM DESC
]]>
</select>

View File

@ -62,8 +62,7 @@
<![CDATA[
SELECT *
FROM (
SELECT
(row_number() over()) as RNUM, ALL_LIST.*,
SELECT ROWNUM RNUM, ALL_LIST.*,
(SELECT COUNT(*) FROM H3_SUSA_FILE WHERE SF_SS_SEQ = ALL_LIST.SS_IDX) AS FILE_CNT,
(SELECT CODENM FROM TCODE WHERE CODE1 = 'C001' AND CODE2 = ALL_LIST.SS_PLACE1) AS PLACE1_STR
FROM (
@ -86,8 +85,8 @@
<![CDATA[
ORDER BY SS_IDX DESC
) ALL_LIST
) AS list
WHERE
)
WHERE
RNUM > #{firstIndex} AND
RNUM <= #{firstIndex} + #{recordCountPerPage}
]]>
@ -129,33 +128,20 @@
</select>
<insert id="Susa.insert" parameterType="susaVO">
insert into H3_SUSA_LIST (
SS_TYPE,
SS_AGENCY,
SS_CHARGE_NM,
SS_SDATE,
SS_REGDATE,
SS_CONTENTS,
SS_PLACE1,
SS_EDATE,
SS_TITLE,
SS_RESULT,
SS_WRITER
) values (
#{type},
#{agency},
#{chargeNm},
#{sdate},
NOW(),
#{contents},
#{place1},
#{edate},
#{title},
#{result},
#{writer}
)
INSERT INTO H3_SUSA_LIST
(
SS_TYPE, SS_AGENCY, SS_CHARGE_NM, SS_SDATE, SS_REGDATE,
SS_CONTENTS, SS_PLACE1, SS_EDATE, SS_TITLE, SS_RESULT,
SS_WRITER
)
VALUES
(
#{type}, #{agency}, #{chargeNm}, #{sdate}, SYSDATE,
#{contents}, #{place1}, #{edate}, #{title}, #{result},
#{writer}
)
<selectKey resultType="int" keyProperty="idx" order="AFTER">
SELECT currval('susa_list_seq') as idx
SELECT H3_SUSA_LIST_SS_IDX_SEQ.CURRVAL FROM DUAL
</selectKey>
</insert>

View File

@ -38,18 +38,21 @@
]]>
</select>
<insert id="SusaFile.insert" parameterType="susaVO">
INSERT INTO H3_SUSA_FILE (
SF_ORDER,
SF_ORG_NAME,
SF_SAVE_NAME,
SF_SS_SEQ
<insert id="SusaFile.insert" parameterType="susaVO" useGeneratedKeys="true" keyColumn="SF_SEQ">
<![CDATA[
INSERT INTO
H3_SUSA_FILE (
SF_ORDER,
SF_ORG_NAME,
SF_SAVE_NAME,
SF_SS_SEQ
) VALUES (
#{orders},
#{orgName},
#{saveName},
#{parentSeq}
)
)
]]>
</insert>
<delete id="SusaFile.delete" parameterType="susaVO">

View File

@ -1,171 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="Corp">
<resultMap id="corpResult" type="corpVO">
<result property="place1" column="PLACE1" />
<result property="place1str" column="CODENM" />
<result property="orgId" column="ORG_ID" />
<result property="orgNo" column="ORG_NO" />
<result property="grpNo" column="GRP_NO" />
<result property="name" column="NAME" />
<result property="location" column="LOCATION" />
<result property="ceo" column="CEO" />
<result property="jobType" column="JOBTYPE" />
<result property="tel" column="TEL" />
<result property="fax" column="FAX" />
<result property="comments" column="COMMENTS" />
<result property="partner" column="PARTNER" />
<result property="shipCnt" column="SHIPCNT" />
<result property="memberCnt" column="MEMBERCNT" />
<result property="basicYear" column="BASICYEAR" />
<result property="fund" column="FUND" />
<result property="writerPlace1" column="WRITER_PLACE1" />
<result property="writer" column="WRITER" />
<result property="credate" column="CREDATE" />
<result property="logdate" column="LOGDATE" />
</resultMap>
<select id="select" parameterType="corpVO" resultMap="corpResult">
<![CDATA[
SELECT
CP.*, C.CODENM
FROM
TCORP CP, TCODE C
WHERE
C.CODE1 = 'C001'
AND CP.PLACE1 = C.CODE2
AND CP.PLACE1 = #{place1}
AND CP.ORG_ID = #{orgId}
AND CP.ORG_NO = #{orgNo}
]]>
</select>
<select id="selectList" parameterType="corpSearchVO" resultMap="corpResult">
<![CDATA[
SELECT
CP.*, C.CODENM
FROM
TCORP CP, TCODE C
WHERE
C.CODE1 = 'C001'
AND CP.PLACE1 = C.CODE2
AND CP.ORG_ID = #{orgId}
AND CP.GRP_NO = #{grpNo}
]]>
<if test="place1 != null and place1 != ''">
AND CP.PLACE1 = #{place1}
</if>
<if test="name != null and name != ''">
AND CP.NAME LIKE '%' || #{name} || '%'
</if>
<if test="jobType != null and jobType != ''">
AND CP.JOBTYPE = #{jobType}
</if>
<![CDATA[
ORDER BY
CP.PLACE1 ASC
]]>
</select>
<select id="selectStats" parameterType="hashmap" resultType="hashmap" >
<![CDATA[
SELECT
COUNT(ORG_ID) AS TOT_CNT,
'00' AS ORG_ID,
'계' AS ORG_NM,
'00' AS GRP_NO,
]]>
<foreach collection="placeList" item="item" index="index" separator="," open="" close="">
SUM(CASE PLACE1 WHEN #{item} THEN 1 ELSE 0 END) AS ${item}_CNT
</foreach>
<![CDATA[
FROM TCORP
UNION
SELECT
COUNT(TP.ORG_ID) AS TOT_CNT,
SUBSTR(TD.CODE2,1,2) AS ORG_ID,
TD.CODENM AS ORG_NM,
SUBSTR(TD.CODE2,3,2) AS GRP_NO,
]]>
<foreach collection="placeList" item="item" index="index" separator="," open="" close="">
SUM(CASE PLACE1 WHEN #{item} THEN 1 ELSE 0 END) AS ${item}_CNT
</foreach>
<![CDATA[
FROM TCORP TP LEFT JOIN TCODE TD ON TP.ORG_ID = SUBSTR(TD.CODE2,1,2)
WHERE TD.CODE1 = 'CORP'
GROUP BY TP.ORG_ID, TD.CODENM, GRP_NO, TD.CODE2
ORDER BY ORG_ID ASC
]]>
</select>
<insert id="insert" parameterType="corpVO">
<![CDATA[
INSERT INTO TCORP
(
PLACE1, ORG_ID, ORG_NO, GRP_NO, NAME,
LOCATION, CEO, JOBTYPE, TEL, FAX,
COMMENTS, PARTNER, SHIPCNT, MEMBERCNT, BASICYEAR,
FUND, WRITER_PLACE1, WRITER, CREDATE, LOGDATE
)
VALUES
(
#{place1}, #{orgId}, #{orgNo}, #{grpNo}, #{name},
#{location}, #{ceo}, #{jobType}, #{tel}, #{fax},
#{comments}, #{partner}, #{shipCnt}, #{memberCnt}, #{basicYear},
#{fund}, #{writerPlace1}, #{writer}, TO_CHAR(NOW(), 'YYYYMMDDHH24MISS'), TO_CHAR(NOW(), 'YYYYMMDDHH24MISS')
)
]]>
</insert>
<update id="update" parameterType="corpVO">
<![CDATA[
UPDATE
TCORP
SET
GRP_NO = #{grpNo},
NAME = #{name},
LOCATION = #{location},
CEO = #{ceo},
JOBTYPE = #{jobType},
TEL = #{tel},
FAX = #{fax},
COMMENTS = #{comments},
PARTNER = #{partner},
BASICYEAR = #{basicYear},
SHIPCNT = #{shipCnt},
MEMBERCNT = #{memberCnt},
FUND = #{fund},
WRITER = #{writer},
WRITER_PLACE1 = #{writerPlace1},
LOGDATE = TO_CHAR(NOW(), 'YYYYMMDDHH24MISS')
WHERE
PLACE1 = #{place1}
AND ORG_ID = #{orgId}
AND ORG_NO = #{orgNo}
]]>
</update>
<delete id="delete" parameterType="corpVO">
<![CDATA[
DELETE
FROM
TCORP
WHERE
PLACE1 = #{place1}
AND ORG_ID = #{orgId}
AND ORG_NO = #{orgNo}
]]>
</delete>
<select id="selectMaxOrgNo" parameterType="corpVO" resultType="int">
<![CDATA[
SELECT
MAX(ORG_NO)
FROM
TCORP
WHERE
ORG_ID = #{orgId}
]]>
</select>
</mapper>

View File

@ -1,119 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="DivMng">
<resultMap id="divMngResult" type="divMngVO">
<result property="place" column="DS_PLACE" />
<result property="placeStr" column="CODENM" />
<result property="no" column="DS_NO" />
<result property="local" column="DS_LOCAL" />
<result property="gubun" column="DS_GUBUN" />
<result property="staffNum" column="DS_STAFF_NUM" />
<result property="tel" column="DS_TEL" />
<result property="condition" column="DS_CONDITION" />
<result property="equipStat" column="DS_EQUIP_STAT" />
<result property="fileImg" column="DS_FILEIMG" />
<result property="file1" column="DS_FILE1" />
<result property="file2" column="DS_FILE2" />
<result property="file3" column="DS_FILE3" />
<result property="creDate" column="DS_CREDATE" />
<result property="logDate" column="DS_LOGDATE" />
<result property="writer" column="DS_WRITER" />
</resultMap>
<select id="select" parameterType="divMngVO" resultMap="divMngResult">
<![CDATA[
SELECT
DS.*, C.CODENM
FROM
H3_DIVISION_MANAGE_STAT DS, TCODE C
WHERE
C.CODE1 = 'C001'
AND DS.DS_PLACE = C.CODE2
AND DS.DS_PLACE = #{place}
AND DS.DS_NO = #{no}
]]>
</select>
<select id="selectList" parameterType="divMngSearchVO" resultMap="divMngResult">
<![CDATA[
SELECT
DS.*, C.CODENM
FROM
H3_DIVISION_MANAGE_STAT DS, TCODE C
WHERE
C.CODE1 = 'C001'
AND DS.DS_PLACE = C.CODE2
]]>
<if test="place != null and place != ''">
AND DS.DS_PLACE = #{place}
</if>
<![CDATA[
ORDER BY
DS.DS_PLACE ASC,
DS.DS_NO ASC
]]>
</select>
<insert id="insert" parameterType="divMngVO">
<![CDATA[
INSERT INTO H3_DIVISION_MANAGE_STAT
(
DS_PLACE, DS_NO, DS_LOCAL, DS_GUBUN, DS_STAFF_NUM,
DS_TEL, DS_CONDITION, DS_EQUIP_STAT, DS_FILEIMG, DS_FILE1,
DS_FILE2, DS_FILE3, DS_CREDATE, DS_WRITER
)
VALUES
(
#{place}, #{no}, #{local}, #{gubun}, #{staffNum},
#{tel}, #{condition}, #{equipStat}, #{fileImg}, #{file1},
#{file2}, #{file3}, NOW(), #{writer}
)
]]>
</insert>
<update id="update" parameterType="divMngVO">
<![CDATA[
UPDATE
H3_DIVISION_MANAGE_STAT
SET
DS_LOCAL = #{local},
DS_GUBUN = #{gubun},
DS_STAFF_NUM = #{staffNum},
DS_TEL = #{tel},
DS_CONDITION = #{condition},
DS_EQUIP_STAT = #{equipStat},
DS_FILEIMG = #{fileImg},
DS_FILE1 = #{file1},
DS_FILE2 = #{file2},
DS_FILE3 = #{file3},
DS_LOGDATE = NOW()
WHERE
DS_PLACE = #{place}
AND DS_NO = #{no}
]]>
</update>
<delete id="delete" parameterType="divMngVO">
<![CDATA[
DELETE
FROM
H3_DIVISION_MANAGE_STAT
WHERE
DS_PLACE = #{place}
AND DS_NO = #{no}
]]>
</delete>
<select id="selectMaxNo" parameterType="divMngVO" resultType="int">
<![CDATA[
SELECT
MAX(DS_NO)
FROM
H3_DIVISION_MANAGE_STAT
WHERE
DS_PLACE = #{place}
]]>
</select>
</mapper>

View File

@ -1,124 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="Ferry">
<resultMap id="ferryResult" type="ferryVO">
<result property="serNo" column="SER_NO" />
<result property="ferryOffice" column="FERRYOFFICE" />
<result property="ferryName" column="FERRYNAME" />
<result property="ferryTon" column="FERRYTON" />
<result property="ferryRoute" column="FERRYROUTE" />
<result property="ferryTime" column="FERRYTIME" />
<result property="ferrySpeedMax" column="FERRYSPEEDMAX" />
<result property="ferrySpeedNor" column="FERRYSPEEDNOR" />
<result property="ferryGuestCnt" column="FERRYGUESTCNT" />
<result property="ferryClueCnt" column="FERRYCLUECNT" />
<result property="runTerm" column="RUNTERM" />
<result property="runCnt" column="RUNCNT" />
<result property="repreName" column="REPRENAME" />
<result property="tel" column="TEL" />
<result property="ferrySosok" column="FERRYSOSOK" />
<result property="sailingDistance" column="SAILINGDISTANCE" />
<result property="sailingDate" column="SAILINGDATE" />
<result property="cooperateNation" column="COOPERATENATION" />
<result property="writer" column="WRITER" />
<result property="creDate" column="CREDATE" />
<result property="logDate" column="LOGDATE" />
<result property="imgFile" column="IMGFILE" />
<result property="comments" column="COMMENTS" />
</resultMap>
<select id="select" parameterType="ferryVO" resultMap="ferryResult">
<![CDATA[
SELECT
*
FROM
TFERRY
WHERE
SER_NO = #{serNo}
]]>
</select>
<select id="selectList" parameterType="divMngSearchVO" resultMap="ferryResult">
<![CDATA[
SELECT
*
FROM
TFERRY
WHERE
FERRYROUTE = #{ferryRoute}
ORDER BY
SER_NO ASC
]]>
</select>
<insert id="insert" parameterType="ferryVO">
<![CDATA[
INSERT INTO TFERRY
(
SER_NO, FERRYOFFICE, FERRYNAME, FERRYTON, FERRYROUTE,
FERRYTIME, FERRYSPEEDMAX, FERRYSPEEDNOR, FERRYGUESTCNT, FERRYCLUECNT,
RUNTERM, RUNCNT, REPRENAME, TEL, FERRYSOSOK,
SAILINGDISTANCE, SAILINGDATE, COOPERATENATION, WRITER, CREDATE,
LOGDATE, IMGFILE, COMMENTS
)
VALUES
(
#{serNo}, #{ferryOffice}, #{ferryName}, #{ferryTon}, #{ferryRoute},
#{ferryTime}, #{ferrySpeedMax}, #{ferrySpeedNor}, #{ferryGuestCnt}, #{ferryClueCnt},
#{runTerm}, #{runCnt}, #{repreName}, #{tel}, #{ferrySosok},
#{sailingDistance}, #{sailingDate}, #{cooperateNation}, #{writer}, TO_CHAR(NOW(), 'YYYYMMDDHH24MISS'),
TO_CHAR(NOW(), 'YYYYMMDDHH24MISS'), #{imgFile}, #{comments}
)
]]>
</insert>
<update id="update" parameterType="ferryVO">
<![CDATA[
UPDATE
TFERRY
SET
FERRYOFFICE = #{ferryOffice},
FERRYNAME = #{ferryName},
FERRYTON = #{ferryTon},
FERRYROUTE = #{ferryRoute},
FERRYTIME = #{ferryTime},
FERRYSPEEDMAX = #{ferrySpeedMax},
FERRYSPEEDNOR = #{ferrySpeedNor},
FERRYGUESTCNT = #{ferryGuestCnt},
FERRYCLUECNT = #{ferryClueCnt},
RUNTERM = #{runTerm},
RUNCNT = #{runCnt},
REPRENAME = #{repreName},
TEL = #{tel},
FERRYSOSOK = #{ferrySosok},
SAILINGDISTANCE = #{sailingDistance},
SAILINGDATE = #{sailingDate},
COOPERATENATION = #{cooperateNation},
LOGDATE = TO_CHAR(NOW(), 'YYYYMMDDHH24MISS'),
IMGFILE = #{imgFile},
COMMENTS = #{comments}
WHERE
SER_NO = #{serNo}
]]>
</update>
<delete id="delete" parameterType="ferryVO">
<![CDATA[
DELETE
FROM
TFERRY
WHERE
SER_NO = #{serNo}
]]>
</delete>
<select id="selectMaxSerNo" parameterType="ferryVO" resultType="int">
<![CDATA[
SELECT
MAX(SER_NO)
FROM
TFERRY
]]>
</select>
</mapper>

View File

@ -1,145 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="WeakPlace">
<resultMap id="weakplaceResult" type="weakPlaceVO">
<result property="place1" column="PLACE1" />
<result property="place1str" column="CODENM" />
<result property="wpNo" column="WP_NO" />
<result property="name" column="NAME" />
<result property="location" column="LOCATION" />
<result property="comments" column="COMMENTS" />
<result property="filename1" column="FILENAME1" />
<result property="filename2" column="FILENAME2" />
<result property="writer" column="WRITER" />
<result property="credate" column="CREDATE" />
<result property="logdate" column="LOGDATE" />
</resultMap>
<select id="WeakPlace.select" parameterType="weakPlaceVO" resultMap="weakplaceResult">
<![CDATA[
SELECT
WP.*, C.CODENM
FROM
TWEAKPLACE WP, TCODE C
WHERE
UPPER(WP.PLACE1) = UPPER(C.CODE2)
AND C.CODE1 = 'C001'
AND WP.PLACE1 = #{place1}
AND WP.WP_NO = #{wpNo}
]]>
</select>
<select id="WeakPlace.selectList" parameterType="weakPlaceSearchVO" resultMap="weakplaceResult">
<![CDATA[
SELECT
WP.*, C.CODENM
FROM
TWEAKPLACE WP, TCODE C
WHERE
UPPER(WP.PLACE1) = UPPER(C.CODE2)
AND C.CODE1 = 'C001'
]]>
<if test="place1 != null and place1 != '' and place1 != 'PS00'">
AND WP.PLACE1 = #{place1}
</if>
<![CDATA[
ORDER BY
WP.PLACE1 ASC, WP.WP_NO ASC
]]>
</select>
<select id="WeakPlace.selectStatsPerPlace" parameterType="hashmap" resultType="hashmap" >
<![CDATA[
SELECT
*
FROM
(
SELECT
'0' AS PLACE1, '전체' AS CODENM_YAK, COUNT(*) AS CNT
FROM
TWEAKPLACE
UNION
SELECT
C.CODE2, C.CODENM_YAK, COUNT(WP.WP_NO) AS CNT
FROM
TCODE C LEFT JOIN TWEAKPLACE WP ON UPPER(C.CODE2) = UPPER(WP.PLACE1)
WHERE
C.CODE1 = 'C001'
AND UPPER(C.CODE2) IN
]]>
<foreach collection="placeList" item="item" index="index" separator="," open="(" close=")">
UPPER(#{item})
</foreach>
<![CDATA[
GROUP BY
C.CODE2, C.CODENM_YAK
) AS list
ORDER BY
UPPER(PLACE1) ASC
]]>
</select>
<select id="selectMaxWpNo" parameterType="String" resultType="int">
<![CDATA[
SELECT
COALESCE(WP_NO, 0)
FROM
(
SELECT
WP_NO
FROM
TWEAKPLACE
WHERE
PLACE1 = #{_parameter}
ORDER BY WP_NO DESC
) add
limit 1
]]>
</select>
<insert id="insert" parameterType="weakPlaceVO">
<![CDATA[
INSERT
INTO TWEAKPLACE
(
PLACE1, WP_NO, NAME, LOCATION, COMMENTS,
FILENAME1, FILENAME2, WRITER, CREDATE, LOGDATE
)
VALUES
(
#{place1}, #{wpNo}, #{name}, #{location}, #{comments},
#{filename1}, #{filename2}, #{writer}, TO_CHAR(NOW(), 'YYYYMMDDHH24MISS'), NULL
)
]]>
</insert>
<update id="update" parameterType="weakPlaceVO">
<![CDATA[
UPDATE
TWEAKPLACE
SET
NAME = #{name},
LOCATION = #{location},
COMMENTS = #{comments},
FILENAME1 = #{filename1},
FILENAME2 = #{filename2},
LOGDATE = TO_CHAR(NOW(), 'YYYYMMDDHH24MISS')
WHERE
PLACE1 = #{place1}
AND WP_NO = #{wpNo}
]]>
</update>
<delete id="delete" parameterType="weakPlaceVO">
<![CDATA[
DELETE
FROM
TWEAKPLACE
WHERE
PLACE1 = #{place1}
AND WP_NO = #{wpNo}
]]>
</delete>
</mapper>

View File

@ -54,15 +54,15 @@
<typeAlias alias="eduVO" type="kcg.faics.fa.vo.EduVO"/>
<typeAlias alias="eduSearchVO" type="kcg.faics.fa.vo.EduSearchVO"/>
<!-- kcg.faics.tg -->
<typeAlias alias="weakPlaceVO" type="kcg.faics.tg.vo.WeakPlaceVO"/>
<typeAlias alias="weakPlaceSearchVO" type="kcg.faics.tg.vo.WeakPlaceSearchVO" />
<typeAlias alias="corpVO" type="kcg.faics.tg.vo.CorpVO"/>
<typeAlias alias="corpSearchVO" type="kcg.faics.tg.vo.CorpSearchVO" />
<typeAlias alias="divMngVO" type="kcg.faics.tg.vo.DivMngVO"/>
<typeAlias alias="divMngSearchVO" type="kcg.faics.tg.vo.DivMngSearchVO" />
<typeAlias alias="ferryVO" type="kcg.faics.tg.vo.FerryVO"/>
<typeAlias alias="ferrySearchVO" type="kcg.faics.tg.vo.FerrySearchVO" />
<!-- kcg.faics.target -->
<typeAlias alias="weakPlaceVO" type="kcg.faics.target.vo.WeakPlaceVO"/>
<typeAlias alias="weakPlaceSearchVO" type="kcg.faics.target.vo.WeakPlaceSearchVO" />
<typeAlias alias="corpVO" type="kcg.faics.target.vo.CorpVO"/>
<typeAlias alias="corpSearchVO" type="kcg.faics.target.vo.CorpSearchVO" />
<typeAlias alias="divMngVO" type="kcg.faics.target.vo.DivMngVO"/>
<typeAlias alias="divMngSearchVO" type="kcg.faics.target.vo.DivMngSearchVO" />
<typeAlias alias="ferryVO" type="kcg.faics.target.vo.FerryVO"/>
<typeAlias alias="ferrySearchVO" type="kcg.faics.target.vo.FerrySearchVO" />
<!-- kcg.faics.admin -->
<typeAlias alias="logSearchVO" type="kcg.faics.admin.vo.LogSearchVO" />

View File

@ -44,11 +44,19 @@
<ct:pageInfo />
<ul class="right btn-style">
<li><a class="btn_excel" href="javascript:fn_goExcel();"></a></li>
<li><a href="#" class="btn_reset" onclick="location.reload();"></a></li>
<li><a class="btn_delete" href="javascript:fn_goDelete();"></a></li>
<li><a href="#" class="btn_reset" onclick="location.reload();"></a></li>
</ul>
</div>
<table class="tbl_list" width="100%" border="0" cellpadding="0" cellspacing="0">
<colgroup>
<col width="80"/>
<col width="200">
<col width="100"/>
<col width="100">
<col width="100"/>
<col width="60"/>
<col width="60"/>
</colgroup>
<thead>
<tr>
<th align="center"><spring:message code="member.view.seq" /></th>
@ -76,11 +84,8 @@
<img src="/images/cmmn/blank_1x1.png" />
</span>
</th>
<c:if test="${userVO.isSysAdmin == true or (userVO.isAdmin == true and result.place1 eq userVO.place1)}">
<th><spring:message code="button.modify"/></th>
<th><spring:message code="button.delete"/></th>
<th><input type="checkbox" id="allChk"></th>
</c:if>
<th><spring:message code="button.modify"/></th>
<th><spring:message code="button.delete"/></th>
</tr>
</thead>
<tbody>
@ -93,11 +98,18 @@
<td align="center" class="listtd"><c:out value="${result.positionStr}" /></td>
<td align="center" class="listtd"><c:out value="${result.useridStr}"/></td>
<td align="center" class="listtd"><c:out value="${result.name}" /></td>
<c:if test="${userVO.isSysAdmin == true or (userVO.isAdmin == true and result.place1 eq userVO.place1)}">
<td align="center" class="listtd"><a href="#" onclick="modifyUser('<c:out value="${result.userid}"/>', '<c:out value="${result.name}"/>', '<c:out value="${result.place3Str}"/>');"><spring:message code="button.modify" /></a></td>
<td align="center" class="listtd"><a href="#" onclick="deleteUser('<c:out value="${result.userid}"/>', '<c:out value="${result.name}"/>');"><spring:message code="button.delete" /></a></td>
<td align="center"><input type="checkbox" name="userId" class="deleteUser" value="${result.userid}"></td>
</c:if>
<td align="center" class="listtd">
<c:if test="${userVO.isSysAdmin == true or (userVO.isAdmin == true and result.place1 eq userVO.place1)}">
<a href="#" onclick="modifyUser('<c:out value="${result.userid}"/>', '<c:out value="${result.name}"/>', '<c:out value="${result.place3Str}"/>');"><spring:message code="button.modify" /></a>
</c:if>
</td>
<td align="center" class="listtd">
<c:if test="${userVO.isSysAdmin == true or (userVO.isAdmin == true and result.place1 eq userVO.place1)}">
<a href="#" onclick="deleteUser('<c:out value="${result.userid}"/>', '<c:out value="${result.name}"/>');"><spring:message code="button.delete" /></a>
</c:if>
</td>
</tr>
</c:forEach>
</c:when>
@ -186,43 +198,7 @@
}
});
});
$(document).on("change", "#allChk", function (){
$(".deleteUser").prop("checked", this.checked)
})
/* 사용자 삭제 */
function fn_goDelete() {
var checkBox = $(".deleteUser:checked")
if(checkBox.length>0){
if(confirm("사용자 정보 "+checkBox.length+"건 을 삭제하시겠습니까?")){
var userIdStr = "";
for(var i=0; i<checkBox.length; i++){
var user = checkBox[i];
userIdStr+=(user.value+"|");
}
/* ie에서 for of 반복문에서 에러 발생.
for(const user of checkBox){
userIdStr+=(user.value+"|");
}*/
$.ajax({
url: '<c:out value="/admin/cmmnMemberDelete.do"/>',
type: 'post',
dataType: 'json',
data : {userIdStr: userIdStr.slice(0, -1)},
success: function (data) {
if(data.result>0){
alert("삭제되었습니다.")
location.reload();
}
}
});
}
}else{
alert("삭제 대상을 선택해주세요.")
}
}
/* 글 목록 화면 function */
function fn_searchList() {
document.searchForm.action = "<c:url value='/admin/cmmnMemberList.do'/>";

View File

@ -8,7 +8,7 @@
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<script type="text/javaScript" defer="defer">
//<!--
<!--
$(document).ready(function(){
@ -38,12 +38,8 @@
}
});
});
$(document).on('change', '#allChk', function (){
$(".deleteUser").prop('checked', this.checked);
})
/* 글 상세 화면 function */
/* 글 상세 화면 function */
function fn_select(id) {
document.listForm.userid.value = id;
document.listForm.action = "<c:url value='/admin/faMemberInfo.do'/>";
@ -67,38 +63,7 @@
document.searchForm.action = "<c:url value='/admin/faMemberListExcel.do'/>";
document.searchForm.submit();
}
/* 사용자 삭제 */
function fn_goDelete() {
var checkBox = $(".deleteUser:checked");
if(checkBox.length>0){
if(confirm("사용자 정보 "+checkBox.length+"건 을 삭제하시겠습니까?")){
var userIdStr = "";
for(var i=0; i<checkBox.length; i++){
var user = checkBox[i];
userIdStr+=(user.value+"|");
}
/* ie에서 for of 반복문이 동작하지 않음.
for(var user of checkBox){
userIdStr+=(user.value+"|");
}*/
$.ajax({
url: '<c:out value="/admin/faMemberDelete.do"/>',
type: 'post',
dataType: 'json',
data : {userIdStr: userIdStr.slice(0, -1)},
success: function (data) {
if(data.result>0){
alert("삭제되었습니다.")
location.reload();
}
}
});
}
}else{
alert("삭제 대상을 선택해주세요.")
}
}
/* pagination 페이지 링크 function */
function fn_link_page(pageNo) {
document.searchForm.pageIndex.value = pageNo;
@ -156,22 +121,20 @@
<ct:pageInfo />
<ul class="right btn-style">
<li><a class="btn_excel" href="javascript:fn_goExcel();"></a></li>
<li><a href="#" class="btn_reset" onclick="location.reload();"></a></li>
<li><a class="btn_delete" href="javascript:fn_goDelete();"></a></li>
<li><a href="#" class="btn_reset" onclick="location.reload();"></a></li>
</ul>
</div>
<table class="tbl_list" width="100%" border="0" cellpadding="0" cellspacing="0">
<colgroup>
<col width="70" >
<col width="200" >
<col width="80" >
<col width="100" >
<col width="100" >
<col width="100" >
<col width="80" >
<col width="80" >
<col width="70" >
<col width="70" >
<col width="70" >
<col width="200" >
<col width="110" >
<col width="100" >
<col width="100" >
<col width="100" >
<col width="100" >
<col width="80" >
<col width="80" >
</colgroup>
<thead>
<tr>
@ -225,8 +188,7 @@
</span>
</th>
<c:if test="${userVO.isSysAdmin == true}">
<th align="center">수정</th>
<th><input type="checkbox" id="allChk"></th>
<th align="center">수정</th>
</c:if>
</tr>
</thead>
@ -257,7 +219,6 @@
<td align="center"><c:out value="${result.usegrade}" /></td>
<c:if test="${userVO.isSysAdmin == true}">
<td align="center"><a href="javascript:fn_modify('${result.userid}');">수정</a></td>
<td align="center"><input type="checkbox" name="userId" class="deleteUser" value="${result.userid}"></td>
</c:if>
</tr>
</c:forEach>

View File

@ -6,10 +6,8 @@
<%@ taglib prefix="ct" tagdir="/WEB-INF/tags"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<% request.setCharacterEncoding("UTF-8"); %>
<script type="text/javaScript" language="javascript" defer="defer">
<!--
/* 글 상세 화면 function */
function fn_select(id) {

View File

@ -5,7 +5,7 @@
<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<script type="text/javaScript" type="text/javascript" defer="defer">
<!--
/* 글 목록 화면 function */
function fn_selectList() {
document.menuForm.action = "<c:url value='/bbs/list.do'/>";
@ -69,6 +69,7 @@
}
});
});
-->
</script>
<div id="table">
<table class="tbl_view">

View File

@ -6,8 +6,7 @@
<div id="title" class="title-area">
<ul class="page-title">
<li>
<c:out value="${menu.name}" /> <span><c:out value="${menu.eng_name}" /></span>
<c:out value="${menu.NAME}" /> <span><c:out value="${menu.ENG_NAME}" /></span>
</li>
</ul>
</div>
@ -20,13 +19,13 @@
<c:forEach var="sub" items="${subMenu}" varStatus="status">
<li>
<c:choose>
<c:when test="${sub.url_group == 'bbs'}">
<c:set var="id" value="${fn:split(sub.url, '/')[0]}"/>
<c:set var="category" value="${fn:split(sub.url, '/')[1]}"/>
<a <c:if test="${sub.id == menu.id}">${current}</c:if> href="/<c:out value="${sub.url_group}"/>/list.do?id=${id}">${sub.name}</a>
<c:when test="${sub.URL_GROUP == 'bbs'}">
<c:set var="id" value="${fn:split(sub.URL, '/')[0]}"/>
<c:set var="category" value="${fn:split(sub.URL, '/')[1]}"/>
<a <c:if test="${sub.ID == menu.ID}">${current}</c:if> href="/<c:out value="${sub.URL_GROUP}"/>/list.do?id=${id}">${sub.NAME}</a>
</c:when>
<c:otherwise>
<a <c:if test="${sub.id == menu.id}">${current}</c:if> href="/<c:out value="${sub.url_group}"/><c:out value="${sub.url}"/>">${sub.name}</a>
<a <c:if test="${sub.ID == menu.ID}">${current}</c:if> href="/<c:out value="${sub.URL_GROUP}"/><c:out value="${sub.URL}"/>">${sub.NAME}</a>
</c:otherwise>
</c:choose>
<c:if test="${!status.last}">${isEnd}</c:if>

View File

@ -3,7 +3,7 @@
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<script type="text/javaScript" language="javascript" defer="defer">
<!-- -->
<!--
/* 화면 출력 function */
function fn_goPrint() {
var printThis = document.getElementById("table").innerHTML;
@ -36,64 +36,64 @@
<tr>
<th align="center"><spring:message code="equip.name" /></th>
<th align="center"><spring:message code="equip.total" /></th>
<th align="center"><spring:message code="equip.ps00" /></th>
<th align="center"><spring:message code="equip.ps01" /></th>
<th align="center"><spring:message code="equip.ps02" /></th>
<th align="center"><spring:message code="equip.ps03" /></th>
<th align="center"><spring:message code="equip.ps04" /></th>
<th align="center"><spring:message code="equip.ps05" /></th>
<th align="center"><spring:message code="equip.ps06" /></th>
<th align="center"><spring:message code="equip.ps07" /></th>
<th align="center"><spring:message code="equip.ps08" /></th>
<th align="center"><spring:message code="equip.ps09" /></th>
<th align="center"><spring:message code="equip.ps10" /></th>
<th align="center"><spring:message code="equip.ps11" /></th>
<th align="center"><spring:message code="equip.ps12" /></th>
<th align="center"><spring:message code="equip.ps13" /></th>
<th align="center"><spring:message code="equip.ps14" /></th>
<th align="center"><spring:message code="equip.ps15" /></th>
<th align="center"><spring:message code="equip.ps16" /></th>
<th align="center"><spring:message code="equip.ps17" /></th>
<th align="center"><spring:message code="equip.ps18" /></th>
<th align="center"><spring:message code="equip.ps19" /></th>
<th align="center"><spring:message code="equip.ps50" /></th>
<th align="center"><spring:message code="equip.ps90" /></th>
<th align="center"><spring:message code="equip.ps91" /></th>
<th align="center"><spring:message code="equip.ps92" /></th>
<th align="center"><spring:message code="equip.ps93" /></th>
<th align="center"><spring:message code="equip.ps94" /></th>
<th align="center"><spring:message code="equip.PS00" /></th>
<th align="center"><spring:message code="equip.PS01" /></th>
<th align="center"><spring:message code="equip.PS02" /></th>
<th align="center"><spring:message code="equip.PS03" /></th>
<th align="center"><spring:message code="equip.PS04" /></th>
<th align="center"><spring:message code="equip.PS05" /></th>
<th align="center"><spring:message code="equip.PS06" /></th>
<th align="center"><spring:message code="equip.PS07" /></th>
<th align="center"><spring:message code="equip.PS08" /></th>
<th align="center"><spring:message code="equip.PS09" /></th>
<th align="center"><spring:message code="equip.PS10" /></th>
<th align="center"><spring:message code="equip.PS11" /></th>
<th align="center"><spring:message code="equip.PS12" /></th>
<th align="center"><spring:message code="equip.PS13" /></th>
<th align="center"><spring:message code="equip.PS14" /></th>
<th align="center"><spring:message code="equip.PS15" /></th>
<th align="center"><spring:message code="equip.PS16" /></th>
<th align="center"><spring:message code="equip.PS17" /></th>
<th align="center"><spring:message code="equip.PS18" /></th>
<th align="center"><spring:message code="equip.PS19" /></th>
<th align="center"><spring:message code="equip.PS50" /></th>
<th align="center"><spring:message code="equip.PS90" /></th>
<th align="center"><spring:message code="equip.PS91" /></th>
<th align="center"><spring:message code="equip.PS92" /></th>
<th align="center"><spring:message code="equip.PS93" /></th>
<th align="center"><spring:message code="equip.PS94" /></th>
</tr>
</thead>
<c:forEach var="equipstatus" items="${equipStatusList}" varStatus="status">
<c:forEach var="equipStatus" items="${equipStatusList}" varStatus="status">
<tr>
<td align="center"><a href="javascript:fnEquipList('<c:out value="${equipstatus.equip }"/>')" style="color:#0000ff;"><c:out value="${equipstatus.equip_nm}" /></a></td>
<td align="center"><c:out value="${equipstatus.total}" /></td>
<td align="center"><c:out value="${equipstatus.ps00}" /></td>
<td align="center"><c:out value="${equipstatus.ps01}" /></td>
<td align="center"><c:out value="${equipstatus.ps02}" /></td>
<td align="center"><c:out value="${equipstatus.ps03}" /></td>
<td align="center"><c:out value="${equipstatus.ps04}" /></td>
<td align="center"><c:out value="${equipstatus.ps05}" /></td>
<td align="center"><c:out value="${equipstatus.ps06}" /></td>
<td align="center"><c:out value="${equipstatus.ps07}" /></td>
<td align="center"><c:out value="${equipstatus.ps08}" /></td>
<td align="center"><c:out value="${equipstatus.ps09}" /></td>
<td align="center"><c:out value="${equipstatus.ps10}" /></td>
<td align="center"><c:out value="${equipstatus.ps11}" /></td>
<td align="center"><c:out value="${equipstatus.ps12}" /></td>
<td align="center"><c:out value="${equipstatus.ps13}" /></td>
<td align="center"><c:out value="${equipstatus.ps14}" /></td>
<td align="center"><c:out value="${equipstatus.ps15}" /></td>
<td align="center"><c:out value="${equipstatus.ps16}" /></td>
<td align="center"><c:out value="${equipstatus.ps17}" /></td>
<td align="center"><c:out value="${equipstatus.ps18}" /></td>
<td align="center"><c:out value="${equipstatus.ps19}" /></td>
<td align="center"><c:out value="${equipstatus.ps50}" /></td>
<td align="center"><c:out value="${equipstatus.ps90}" /></td>
<td align="center"><c:out value="${equipstatus.ps91}" /></td>
<td align="center"><c:out value="${equipstatus.ps92}" /></td>
<td align="center"><c:out value="${equipstatus.ps93}" /></td>
<td align="center"><c:out value="${equipstatus.ps94}" /></td>
<td align="center"><a href="javascript:fnEquipList('<c:out value="${equipStatus.EQUIP }"/>')" style="color:#0000ff;"><c:out value="${equipStatus.EQUIP_NM}" /></a></td>
<td align="center"><c:out value="${equipStatus.TOTAL}" /></td>
<td align="center"><c:out value="${equipStatus.PS00}" /></td>
<td align="center"><c:out value="${equipStatus.PS01}" /></td>
<td align="center"><c:out value="${equipStatus.PS02}" /></td>
<td align="center"><c:out value="${equipStatus.PS03}" /></td>
<td align="center"><c:out value="${equipStatus.PS04}" /></td>
<td align="center"><c:out value="${equipStatus.PS05}" /></td>
<td align="center"><c:out value="${equipStatus.PS06}" /></td>
<td align="center"><c:out value="${equipStatus.PS07}" /></td>
<td align="center"><c:out value="${equipStatus.PS08}" /></td>
<td align="center"><c:out value="${equipStatus.PS09}" /></td>
<td align="center"><c:out value="${equipStatus.PS10}" /></td>
<td align="center"><c:out value="${equipStatus.PS11}" /></td>
<td align="center"><c:out value="${equipStatus.PS12}" /></td>
<td align="center"><c:out value="${equipStatus.PS13}" /></td>
<td align="center"><c:out value="${equipStatus.PS14}" /></td>
<td align="center"><c:out value="${equipStatus.PS15}" /></td>
<td align="center"><c:out value="${equipStatus.PS16}" /></td>
<td align="center"><c:out value="${equipStatus.PS17}" /></td>
<td align="center"><c:out value="${equipStatus.PS18}" /></td>
<td align="center"><c:out value="${equipStatus.PS19}" /></td>
<td align="center"><c:out value="${equipStatus.PS50}" /></td>
<td align="center"><c:out value="${equipStatus.PS90}" /></td>
<td align="center"><c:out value="${equipStatus.PS91}" /></td>
<td align="center"><c:out value="${equipStatus.PS92}" /></td>
<td align="center"><c:out value="${equipStatus.PS93}" /></td>
<td align="center"><c:out value="${equipStatus.PS94}" /></td>
</tr>
</c:forEach>
</table>

View File

@ -62,11 +62,11 @@
<tbody>
<c:forEach var="equip" items="${equipList}" varStatus="status">
<tr>
<td class="title text" ><c:out value="${equip.codenm}" /></td>
<td class="number"><input type="text" name="<c:out value="${equip.code2}" />_cnt" value="<c:out value="${equip.eu_cnt}" />"></td>
<td class="text"><textarea rows="" cols="" name="<c:out value="${equip.code2}" />_detail"><c:out value="${equip.eu_detail}" /></textarea></td>
<td class="number"><input type="text" name="<c:out value="${equip.code2}" />_check" value="<c:out value="${equip.eu_check}" />"></td>
<td class="data"><input type="text" name="<c:out value="${equip.code2}" />_state" value="<c:out value="${equip.eu_state}" />"></td>
<td class="title text" ><c:out value="${equip.CODENM}" /></td>
<td class="number"><input type="text" name="<c:out value="${equip.CODE2}" />_cnt" value="<c:out value="${equip.EU_CNT}" />"></td>
<td class="text"><textarea rows="" cols="" name="<c:out value="${equip.CODE2}" />_detail"><c:out value="${equip.EU_DETAIL}" /></textarea></td>
<td class="number"><input type="text" name="<c:out value="${equip.CODE2}" />_check" value="<c:out value="${equip.EU_CHECK}" />"></td>
<td class="data"><input type="text" name="<c:out value="${equip.CODE2}" />_state" value="<c:out value="${equip.EU_STATE}" />"></td>
</tr>
</c:forEach>
</tbody>

View File

@ -43,11 +43,11 @@
<c:when test="${fn:length(useStateList) > 0}">
<c:forEach var="result" items="${useStateList}" varStatus="status">
<tr>
<td align="center"><c:out value="${result.codenm}" /></td>
<td align="center"><c:out value="${result.eu_cnt}" /></td>
<td align="center"><c:out value="${empty fn:trim(result.eu_detail) ? '해당사항 없음.' : result.eu_detail}" /></td>
<td align="center"><c:out value="${result.eu_check}" /></td>
<td align="center"><c:out value="${empty fn:trim(result.eu_state) ? '-' : result.eu_state}" /></td>
<td align="center"><c:out value="${result.CODENM}" /></td>
<td align="center"><c:out value="${result.EU_CNT}" /></td>
<td align="center"><c:out value="${empty fn:trim(result.EU_DETAIL) ? '해당사항 없음.' : result.EU_DETAIL}" /></td>
<td align="center"><c:out value="${result.EU_CHECK}" /></td>
<td align="center"><c:out value="${empty fn:trim(result.EU_STATE) ? '-' : result.EU_STATE}" /></td>
</tr>
</c:forEach>
</c:when>

View File

@ -41,7 +41,7 @@
<li class="form_search margin-left">
<form:select path="year" cssClass="use">
<c:forEach var="item" items="${equipStatusYearList}" varStatus="status">
<form:option value="${item.uyear}" label="${item.uyear}년"/>
<form:option value="${item.UYEAR}" label="${item.UYEAR}년"/>
</c:forEach>
</form:select>
</li>
@ -85,60 +85,60 @@
<tr>
<th align="center"><spring:message code="equip.name" /></th>
<th align="center"><spring:message code="equip.total" /></th>
<th align="center"><spring:message code="equip.ps00" /></th>
<th align="center"><spring:message code="equip.ps01" /></th>
<th align="center"><spring:message code="equip.ps02" /></th>
<th align="center"><spring:message code="equip.ps03" /></th>
<th align="center"><spring:message code="equip.ps04" /></th>
<th align="center"><spring:message code="equip.ps05" /></th>
<th align="center"><spring:message code="equip.ps06" /></th>
<th align="center"><spring:message code="equip.ps07" /></th>
<th align="center"><spring:message code="equip.ps08" /></th>
<th align="center"><spring:message code="equip.ps09" /></th>
<th align="center"><spring:message code="equip.ps10" /></th>
<th align="center"><spring:message code="equip.ps11" /></th>
<th align="center"><spring:message code="equip.ps12" /></th>
<th align="center"><spring:message code="equip.ps13" /></th>
<th align="center"><spring:message code="equip.ps14" /></th>
<th align="center"><spring:message code="equip.ps15" /></th>
<th align="center"><spring:message code="equip.ps16" /></th>
<th align="center"><spring:message code="equip.ps17" /></th>
<th align="center"><spring:message code="equip.ps18" /></th>
<th align="center"><spring:message code="equip.ps90" /></th>
<th align="center"><spring:message code="equip.ps91" /></th>
<th align="center"><spring:message code="equip.ps92" /></th>
<th align="center"><spring:message code="equip.ps93" /></th>
<th align="center"><spring:message code="equip.ps94" /></th>
<th align="center"><spring:message code="equip.PS00" /></th>
<th align="center"><spring:message code="equip.PS01" /></th>
<th align="center"><spring:message code="equip.PS02" /></th>
<th align="center"><spring:message code="equip.PS03" /></th>
<th align="center"><spring:message code="equip.PS04" /></th>
<th align="center"><spring:message code="equip.PS05" /></th>
<th align="center"><spring:message code="equip.PS06" /></th>
<th align="center"><spring:message code="equip.PS07" /></th>
<th align="center"><spring:message code="equip.PS08" /></th>
<th align="center"><spring:message code="equip.PS09" /></th>
<th align="center"><spring:message code="equip.PS10" /></th>
<th align="center"><spring:message code="equip.PS11" /></th>
<th align="center"><spring:message code="equip.PS12" /></th>
<th align="center"><spring:message code="equip.PS13" /></th>
<th align="center"><spring:message code="equip.PS14" /></th>
<th align="center"><spring:message code="equip.PS15" /></th>
<th align="center"><spring:message code="equip.PS16" /></th>
<th align="center"><spring:message code="equip.PS17" /></th>
<th align="center"><spring:message code="equip.PS18" /></th>
<th align="center"><spring:message code="equip.PS90" /></th>
<th align="center"><spring:message code="equip.PS91" /></th>
<th align="center"><spring:message code="equip.PS92" /></th>
<th align="center"><spring:message code="equip.PS93" /></th>
<th align="center"><spring:message code="equip.PS94" /></th>
</tr>
</thead>
<c:forEach var="equipStatus" items="${equipStatusList}" varStatus="status">
<tr>
<td align="center"><c:out value="${equipStatus.gubun}" /></td>
<td align="center"><c:out value="${equipStatus.total}" /></td>
<td align="center"><c:out value="${equipStatus.ps00}" /></td>
<td align="center"><c:out value="${equipStatus.ps01}" /></td>
<td align="center"><c:out value="${equipStatus.ps02}" /></td>
<td align="center"><c:out value="${equipStatus.ps03}" /></td>
<td align="center"><c:out value="${equipStatus.ps04}" /></td>
<td align="center"><c:out value="${equipStatus.ps05}" /></td>
<td align="center"><c:out value="${equipStatus.ps06}" /></td>
<td align="center"><c:out value="${equipStatus.ps07}" /></td>
<td align="center"><c:out value="${equipStatus.ps08}" /></td>
<td align="center"><c:out value="${equipStatus.ps09}" /></td>
<td align="center"><c:out value="${equipStatus.ps10}" /></td>
<td align="center"><c:out value="${equipStatus.ps11}" /></td>
<td align="center"><c:out value="${equipStatus.ps12}" /></td>
<td align="center"><c:out value="${equipStatus.ps13}" /></td>
<td align="center"><c:out value="${equipStatus.ps14}" /></td>
<td align="center"><c:out value="${equipStatus.ps15}" /></td>
<td align="center"><c:out value="${equipStatus.ps16}" /></td>
<td align="center"><c:out value="${equipStatus.ps17}" /></td>
<td align="center"><c:out value="${equipStatus.ps18}" /></td>
<td align="center"><c:out value="${equipStatus.ps90}" /></td>
<td align="center"><c:out value="${equipStatus.ps91}" /></td>
<td align="center"><c:out value="${equipStatus.ps92}" /></td>
<td align="center"><c:out value="${equipStatus.ps93}" /></td>
<td align="center"><c:out value="${equipStatus.ps94}" /></td>
<td align="center"><c:out value="${equipStatus.GUBUN}" /></td>
<td align="center"><c:out value="${equipStatus.TOTAL}" /></td>
<td align="center"><c:out value="${equipStatus.PS00}" /></td>
<td align="center"><c:out value="${equipStatus.PS01}" /></td>
<td align="center"><c:out value="${equipStatus.PS02}" /></td>
<td align="center"><c:out value="${equipStatus.PS03}" /></td>
<td align="center"><c:out value="${equipStatus.PS04}" /></td>
<td align="center"><c:out value="${equipStatus.PS05}" /></td>
<td align="center"><c:out value="${equipStatus.PS06}" /></td>
<td align="center"><c:out value="${equipStatus.PS07}" /></td>
<td align="center"><c:out value="${equipStatus.PS08}" /></td>
<td align="center"><c:out value="${equipStatus.PS09}" /></td>
<td align="center"><c:out value="${equipStatus.PS10}" /></td>
<td align="center"><c:out value="${equipStatus.PS11}" /></td>
<td align="center"><c:out value="${equipStatus.PS12}" /></td>
<td align="center"><c:out value="${equipStatus.PS13}" /></td>
<td align="center"><c:out value="${equipStatus.PS14}" /></td>
<td align="center"><c:out value="${equipStatus.PS15}" /></td>
<td align="center"><c:out value="${equipStatus.PS16}" /></td>
<td align="center"><c:out value="${equipStatus.PS17}" /></td>
<td align="center"><c:out value="${equipStatus.PS18}" /></td>
<td align="center"><c:out value="${equipStatus.PS90}" /></td>
<td align="center"><c:out value="${equipStatus.PS91}" /></td>
<td align="center"><c:out value="${equipStatus.PS92}" /></td>
<td align="center"><c:out value="${equipStatus.PS93}" /></td>
<td align="center"><c:out value="${equipStatus.PS94}" /></td>
</tr>
</c:forEach>
</table>

Some files were not shown because too many files have changed in this diff Show More