1. 렌트업무 - 임대기업과 사용자 매핑 관련 소스 추가.

2. 렌트업무 - 임대기업 관련 소스 수정.
main
jjh 4 months ago
parent 963850f8df
commit ad0d2770b0

@ -40,7 +40,7 @@ import cokr.xit.foundation.data.DataObject;
* </pre>
*/
@Controller
@RequestMapping(name="부과제외 관리", value=Excl01Controller.CLASS_URL)
@RequestMapping(name = "부과제외 관리", value=Excl01Controller.CLASS_URL)
public class Excl01Controller extends ApplicationController {
public static final String CLASS_URL = "/excl/excl01";
@ -68,7 +68,7 @@ public class Excl01Controller extends ApplicationController {
*
* @return /fims/excl/excl01010
*/
@RequestMapping(name="부과제외 관리 메인", value=METHOD_URL.levyExclusionMain)
@RequestMapping(name = "부과제외 관리 메인", value=METHOD_URL.levyExclusionMain)
public ModelAndView levyExclusionMain() {
ModelAndView mav = new ModelAndView("fims/excl/excl01010-main");
@ -103,7 +103,7 @@ public class Excl01Controller extends ApplicationController {
* }</code></pre>
*/
@Task
@RequestMapping(name="부과제외 대장 목록 조회", value=METHOD_URL.getLevyExclusionList)
@RequestMapping(name = "부과제외 대장 목록 조회", value=METHOD_URL.getLevyExclusionList)
public ModelAndView getLevyExclusionList(LevyExclQuery req) {
if (!"xls".equals(req.getDownload())) {
List<?> result = levyExclService.getLevyExclList(setFetchSize(req));
@ -175,7 +175,7 @@ public class Excl01Controller extends ApplicationController {
* }</pre>
*/
@Task
@RequestMapping(name="부과제외 정보 상세 조회", value=METHOD_URL.getLevyExclusionInfo)
@RequestMapping(name = "부과제외 정보 상세 조회", value=METHOD_URL.getLevyExclusionInfo)
public ModelAndView getLevyExclusionInfo(HttpServletRequest hReq, LevyExclQuery req) {
DataObject info = levyExclService.getLevyExclInfo(req);
@ -219,7 +219,7 @@ public class Excl01Controller extends ApplicationController {
* }</code></pre>
*/
@Task
@RequestMapping(name="부과제외 대장 등록", value=METHOD_URL.createLevyExclusion)
@RequestMapping(name = "부과제외 대장 등록", value=METHOD_URL.createLevyExclusion)
public ModelAndView createLevyExclusion(LevyExcl levyExcl) {
boolean saved = false;
String rtnMsg = levyExclService.createLevyExcl(levyExcl);
@ -243,7 +243,7 @@ public class Excl01Controller extends ApplicationController {
* }</code></pre>
*/
@Task
@RequestMapping(name="부과제외 대장 수정", value=METHOD_URL.updateLevyExclusion)
@RequestMapping(name = "부과제외 대장 수정", value=METHOD_URL.updateLevyExclusion)
public ModelAndView updateLevyExclusion(LevyExcl levyExcl) {
boolean saved = false;
String rtnMsg = levyExclService.updateLevyExcl(levyExcl);
@ -268,7 +268,7 @@ public class Excl01Controller extends ApplicationController {
* }</code></pre>
*/
@Task
@RequestMapping(name="부과제외 대장 삭제", value=METHOD_URL.removeLevyExclusion)
@RequestMapping(name = "부과제외 대장 삭제", value=METHOD_URL.removeLevyExclusion)
public ModelAndView removeLevyExclusion(LevyExcl levyExcl) {
boolean saved = false;
String rtnMsg = "";

@ -19,10 +19,15 @@ public class RentQuery extends CmmnQuery {
// ID
private String crdnId; // 단속 ID
private String userId; // 사용자 ID
private String[] entIds; // 기업 Ids
private String entId; // 기업 ID
private String hirerId; // 임차인 ID
private String lsctId; // 임대차계약 ID
// ETC
private String callPurpose; // infoDialog 호출 용도(view 조회(편집불가), create 등록, update 수정, refresh 재조회).
private String delRsn; // 삭제 사유
public String getCrdnId() {
return ifEmpty(crdnId, () -> null);
}
@ -41,6 +46,15 @@ public class RentQuery extends CmmnQuery {
return self();
}
public String[] getEntIds() {
return ifEmpty(entIds, () -> null);
}
public <T extends RentQuery> T setEntIds(String... entIds) {
this.entIds = entIds;
return self();
}
public String getEntId() {
return ifEmpty(entId, () -> null);
}
@ -68,4 +82,24 @@ public class RentQuery extends CmmnQuery {
return self();
}
// ETC /////////////////////////////////////////////////////////////////////
public String getCallPurpose() {
return ifEmpty(callPurpose, () -> null);
}
public <T extends RentQuery> T setCallPurpose(String callPurpose) {
this.callPurpose = callPurpose;
return self();
}
public String getDelRsn() {
return ifEmpty(delRsn, () -> null);
}
public <T extends RentQuery> T setDelRsn(String delRsn) {
this.delRsn = delRsn;
return self();
}
// ETC /////////////////////////////////////////////////////////////////////
}

@ -0,0 +1,30 @@
package cokr.xit.fims.rent;
import cokr.xit.foundation.AbstractEntity;
import lombok.Getter;
import lombok.Setter;
/**
*
* @author JoJH
*/
@Getter
@Setter
public class UserRentEntMpng extends AbstractEntity {
/**
* ID
*/
private String userId;
/**
* ID
*/
private String entId;
/**
*
*/
private String delYn;
}

@ -1,14 +1,13 @@
package cokr.xit.fims.rent.dao;
import java.util.List;
import java.util.Map;
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
import cokr.xit.foundation.component.AbstractMapper;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.rent.RentEnt;
import cokr.xit.fims.rent.RentQuery;
import cokr.xit.foundation.component.AbstractMapper;
import cokr.xit.foundation.data.DataObject;
/** DAO
*
@ -32,7 +31,22 @@ public interface RentEntMapper extends AbstractMapper {
* @param req
* @return
*/
List<RentEnt> selectRentEnts(RentQuery req);
List<DataObject> selectRentEnts(RentQuery req);
default DataObject selectRentEntInfo(RentQuery req) {
// 삭제 여부 확인
if (req.getDelYn() == null) {
req.setDelYn("N");
}
// 기본 정렬
if (req.getOrderBy() == null) {
req.setOrderBy("RE.ENT_ID DESC");
}
List<DataObject> rentEnts = selectRentEnts(req);
return !rentEnts.isEmpty() ? rentEnts.get(0) : null;
}
/** .
* @param params
@ -41,18 +55,7 @@ public interface RentEntMapper extends AbstractMapper {
* </ul>
* @return
*/
int insertRentEnt(Map<String, Object> params);
/** .
* @param rentEnt
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean insert(RentEnt rentEnt) {
return rentEnt != null && insertRentEnt(params().set("rentEnt", rentEnt)) == 1;
}
int insertRentEnt(RentEnt rentEnt);
/** .
* @param params
@ -61,18 +64,7 @@ public interface RentEntMapper extends AbstractMapper {
* </ul>
* @return
*/
int updateRentEnt(Map<String, Object> params);
/** .
* @param rentEnt
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean update(RentEnt rentEnt) {
return rentEnt != null && updateRentEnt(params().set("rentEnt", rentEnt)) == 1;
}
int updateRentEnt(RentEnt rentEnt);
/** .
* @param params
@ -81,17 +73,6 @@ public interface RentEntMapper extends AbstractMapper {
* </ul>
* @return
*/
int deleteRentEnt(Map<String, ?> params);
/** .
* @param rentEnt
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean delete(RentEnt rentEnt) {
return rentEnt != null && deleteRentEnt(params().set("rentEnt", rentEnt)) == 1;
}
int deleteRentEnt(RentEnt rentEnt);
}

@ -0,0 +1,64 @@
package cokr.xit.fims.rent.dao;
import java.util.List;
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
import cokr.xit.fims.rent.RentQuery;
import cokr.xit.fims.rent.UserRentEntMpng;
import cokr.xit.foundation.component.AbstractMapper;
import cokr.xit.foundation.data.DataObject;
/** DAO
*
* <p> :
*
* <pre>
* ============ ============
* 2024-07-24 JoJH
* ================================
* </pre>
*/
@Mapper("userRentEntMpngMapper")
public interface UserRentEntMpngMapper extends AbstractMapper {
/** .<br />
* @param req
* @return
*/
List<DataObject> selectUserRentEntMpngList(RentQuery req);
/** .
* @param req
* @return
*/
List<DataObject> selectUserRentEntMpngs(RentQuery req);
/** .
* @param params
* <ul><li>"userRentEntMpng" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int insertUserRentEntMpng(UserRentEntMpng userRentEntMpng);
/** .
* @param params
* <ul><li>"userRentEntMpng" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int updateUserRentEntMpng(UserRentEntMpng userRentEntMpng);
/** .
* @param params
* <ul><li>"userRentEntMpng" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int deleteUserRentEntMpng(UserRentEntMpng userRentEntMpng);
}

@ -2,9 +2,9 @@ package cokr.xit.fims.rent.service;
import java.util.List;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.rent.RentEnt;
import cokr.xit.fims.rent.RentQuery;
import cokr.xit.foundation.data.DataObject;
/** .
*
@ -12,7 +12,7 @@ import cokr.xit.fims.rent.RentQuery;
*
* <pre>
* ============ ============
* 2024-07-24 mjkhan
* 2024-07-24 JoJH
* ================================
* </pre>
*/
@ -28,7 +28,13 @@ public interface RentEntService {
* @param req
* @return
*/
List<RentEnt> getRentEnts(RentQuery req);
List<DataObject> getRentEnts(RentQuery req);
/** .
* @param req
* @return
*/
DataObject getRentEntInfo(RentQuery req);
/** .
* @param rentEnt
@ -37,7 +43,7 @@ public interface RentEntService {
* <li> false</li>
* </ul>
*/
boolean create(RentEnt rentEnt);
String createRentEnt(RentEnt rentEnt);
/** .
* @param rentEnt
@ -46,7 +52,7 @@ public interface RentEntService {
* <li> false</li>
* </ul>
*/
boolean update(RentEnt rentEnt);
String updateRentEnt(RentEnt rentEnt);
/** .
* @param rentEnt
@ -55,6 +61,6 @@ public interface RentEntService {
* <li> false</li>
* </ul>
*/
boolean remove(RentEnt rentEnt);
String removeRentEnt(RentEnt rentEnt);
}

@ -6,11 +6,11 @@ import javax.annotation.Resource;
import org.springframework.stereotype.Component;
import cokr.xit.foundation.component.AbstractBean;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.rent.RentEnt;
import cokr.xit.fims.rent.RentQuery;
import cokr.xit.fims.rent.dao.RentEntMapper;
import cokr.xit.foundation.component.AbstractBean;
import cokr.xit.foundation.data.DataObject;
/** Bean
*
@ -41,10 +41,18 @@ public class RentEntBean extends AbstractBean {
* @param req
* @return
*/
public List<RentEnt> getRentEnts(RentQuery req) {
public List<DataObject> getRentEnts(RentQuery req) {
return rentEntMapper.selectRentEnts(req);
}
/** .
* @param req
* @return
*/
public DataObject getRentEntInfo(RentQuery req) {
return rentEntMapper.selectRentEntInfo(req);
}
/** .
* @param rentEnt
* @return
@ -52,8 +60,14 @@ public class RentEntBean extends AbstractBean {
* <li> false</li>
* </ul>
*/
public boolean create(RentEnt rentEnt) {
return rentEntMapper.insert(rentEnt);
public String createRentEnt(RentEnt rentEnt) {
// 임대기업(TB_RENT_ENT) 대장을 등록한다.
int rtnNocs = rentEntMapper.insertRentEnt(rentEnt);
if (rtnNocs != 1) {
throw new RuntimeException("임대기업 정보 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
return "[S] 작업이 정상 처리 되었습니다.";
}
/** .
@ -63,8 +77,14 @@ public class RentEntBean extends AbstractBean {
* <li> false</li>
* </ul>
*/
public boolean update(RentEnt rentEnt) {
return rentEntMapper.update(rentEnt);
public String updateRentEnt(RentEnt rentEnt) {
// 임대기업(TB_RENT_ENT) 대장을 등록한다.
int rtnNocs = rentEntMapper.updateRentEnt(rentEnt);
if (rtnNocs != 1) {
throw new RuntimeException("임대기업 정보 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
return "[S] 작업이 정상 처리 되었습니다.";
}
/** .
@ -74,8 +94,14 @@ public class RentEntBean extends AbstractBean {
* <li> false</li>
* </ul>
*/
public boolean remove(RentEnt rentEnt) {
return rentEntMapper.delete(rentEnt);
public String removeRentEnt(RentEnt rentEnt) {
// 임대기업(TB_RENT_ENT) 대장을 등록한다.
int rtnNocs = rentEntMapper.deleteRentEnt(rentEnt);
if (rtnNocs != 1) {
throw new RuntimeException("임대기업 정보 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
return "[S] 작업이 정상 처리 되었습니다.";
}
}

@ -6,11 +6,11 @@ import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.rent.RentEnt;
import cokr.xit.fims.rent.RentQuery;
import cokr.xit.fims.rent.service.RentEntService;
import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
/** .
*
@ -35,23 +35,28 @@ public class RentEntServiceBean extends AbstractServiceBean implements RentEntSe
}
@Override
public List<RentEnt> getRentEnts(RentQuery req) {
public List<DataObject> getRentEnts(RentQuery req) {
return rentEntBean.getRentEnts(req);
}
@Override
public boolean create(RentEnt rentEnt) {
return rentEntBean.create(rentEnt);
public DataObject getRentEntInfo(RentQuery req) {
return rentEntBean.getRentEntInfo(req);
}
@Override
public String createRentEnt(RentEnt rentEnt) {
return rentEntBean.createRentEnt(rentEnt);
}
@Override
public boolean update(RentEnt rentEnt) {
return rentEntBean.update(rentEnt);
public String updateRentEnt(RentEnt rentEnt) {
return rentEntBean.updateRentEnt(rentEnt);
}
@Override
public boolean remove(RentEnt rentEnt) {
return rentEntBean.remove(rentEnt);
public String removeRentEnt(RentEnt rentEnt) {
return rentEntBean.removeRentEnt(rentEnt);
}
}

@ -0,0 +1,82 @@
package cokr.xit.fims.rent.service.bean;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Component;
import cokr.xit.fims.rent.RentQuery;
import cokr.xit.fims.rent.UserRentEntMpng;
import cokr.xit.fims.rent.dao.UserRentEntMpngMapper;
import cokr.xit.foundation.component.AbstractBean;
import cokr.xit.foundation.data.DataObject;
/** Bean
*
* <p> :
*
* <pre>
* ============ ============
* 2024-07-24 JoJH
* ================================
* </pre>
*/
@Component("userRentEntMpngBean")
public class UserRentEntMpngBean extends AbstractBean {
/** 사용자 임대 기업 매핑 정보 DAO */
@Resource(name = "userRentEntMpngMapper")
private UserRentEntMpngMapper userRentEntMpngMapper;
/** .
* @param req
* @return
*/
public List<DataObject> getUserRentEntMpngList(RentQuery req) {
return userRentEntMpngMapper.selectUserRentEntMpngList(req);
}
/** .
* @param req
* @return
*/
public List<DataObject> getUserRentEntMpngs(RentQuery req) {
return userRentEntMpngMapper.selectUserRentEntMpngs(req);
}
/** .
* @param userRentEntMpng
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public int createUserRentEntMpng(UserRentEntMpng userRentEntMpng) {
return userRentEntMpngMapper.insertUserRentEntMpng(userRentEntMpng);
}
/** .
* @param userRentEntMpng
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public int updateUserRentEntMpng(UserRentEntMpng userRentEntMpng) {
return userRentEntMpngMapper.updateUserRentEntMpng(userRentEntMpng);
}
/** .
* @param userRentEntMpng
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public int removeUserRentEntMpng(UserRentEntMpng userRentEntMpng) {
return userRentEntMpngMapper.deleteUserRentEntMpng(userRentEntMpng);
}
}

@ -1,19 +1,33 @@
package cokr.xit.fims.rent.web;
import java.text.SimpleDateFormat;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.poi.ss.usermodel.CellStyle;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import cokr.xit.base.code.CommonCode;
import cokr.xit.base.docs.xls.CellDef;
import cokr.xit.base.docs.xls.Format;
import cokr.xit.base.docs.xls.Style;
import cokr.xit.base.docs.xls.XLSWriter;
import cokr.xit.base.web.ApplicationController;
import cokr.xit.fims.base.FimsUser;
import cokr.xit.fims.cmmn.service.bean.StngBean;
import cokr.xit.fims.cmmn.xls.FormatMaker;
import cokr.xit.fims.cmmn.xls.StyleMaker;
import cokr.xit.fims.rent.RentEnt;
import cokr.xit.fims.rent.RentQuery;
import cokr.xit.fims.rent.service.RentEntService;
import cokr.xit.fims.task.Task;
import cokr.xit.foundation.data.DataObject;
/**
*
@ -26,7 +40,7 @@ import cokr.xit.fims.rent.service.RentEntService;
* </pre>
*/
@Controller
@RequestMapping(name="임대차량 관리", value=Rent01Controller.CLASS_URL)
@RequestMapping(name="임대 기업 관리", value=Rent01Controller.CLASS_URL)
public class Rent01Controller extends ApplicationController {
public static final String CLASS_URL = "/rent/rent01";
@ -34,11 +48,11 @@ public class Rent01Controller extends ApplicationController {
public class METHOD_URL {
public static final String
rentEnterpriseMain = "/010/main.do" // 임대 기업 관리 메인 화면
, getrentEnterpriseList = "/010/list.do" // 임대 기업 대장 목록 조회
, removerentEnterprise = "/010/remove.do" // 임대 기업 대장 삭제
, getrentEnterpriseInfo = "/020/info.do" // 임대 기업 대장 상세 조회
, createrentEnterprise = "/020/create.do" // 임대 기업 대장 등록
, updaterentEnterprise = "/020/update.do" // 임대 기업 대장 수정
, getRentEnterpriseList = "/010/list.do" // 임대 기업 대장 목록 조회
, removeRentEnterprise = "/010/remove.do" // 임대 기업 대장 삭제
, getRentEnterpriseInfo = "/020/info.do" // 임대 기업 대장 상세 조회
, createRentEnterprise = "/020/create.do" // 임대 기업 대장 등록
, updateRentEnterprise = "/020/update.do" // 임대 기업 대장 수정
;
}
@ -46,15 +60,31 @@ public class Rent01Controller extends ApplicationController {
@Resource(name = "rentEntService")
private RentEntService rentEntService;
/**설정 정보 Bean */
@Resource(name = "stngBean")
private StngBean stngBean;
/** (rentEnt/rentEnt-main) .
* {@link #getRentEntList(RentEntQuery) } .
* @return /rentEnt/rentEnt-main
*/
@GetMapping(name = "임대 기업 대장 메인", value = "/main.do")
public ModelAndView main() {
ModelAndView mav = getRentEntList(new RentQuery().setPageNum(1));
mav.setViewName("/rentEnt/rentEnt-main");
return mav.addObject("rentEntList", toJson(mav.getModel().get("rentEntList")));
@RequestMapping(name = "임대기업 대장 메인", value=METHOD_URL.rentEnterpriseMain)
public ModelAndView rentEnterpriseMain() {
ModelAndView mav = new ModelAndView("fims/rent/rent01010-main");
// 사용자 정보
FimsUser fimsUser = (FimsUser)currentUser().getUser();
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM054");
return mav
.addObject("pageName", "excl01010") // View(jsp)에서 사용할 id 뒤에 붙일 suffix
.addObject("infoPrefix", "levyExcl") // prefix
.addObject("infoPrefixUrl", CLASS_URL) // prefixUrl
.addObject("sggCd", fimsUser.getOrgID()) // 시군구 코드(SGG_CD)
.addObject("taskListForSgg", stngBean.filterTaskSectionCodeForSgg(commonCodes.get("FIM054"))) // 업무 구분 코드(TASK_SE_CD)
;
}
/** .<br />
@ -68,10 +98,92 @@ public class Rent01Controller extends ApplicationController {
* "rentEntTotal":
* }</code></pre>
*/
@RequestMapping(name = "임대 기업 대장 조회", value = "/list.do")
public ModelAndView getRentEntList(RentQuery req) {
@Task
@RequestMapping(name = "임대기업 대장 조회", value=METHOD_URL.getRentEnterpriseList)
public ModelAndView getRentEnterpriseList(RentQuery req) {
if (!"xls".equals(req.getDownload())) {
List<?> result = rentEntService.getRentEntList(setFetchSize(req));
return setCollectionInfo(new ModelAndView("jsonView"), result, "rentEnt");
} else {
// 현재 날짜 구하기
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String dateTime = dateFormat.format(System.currentTimeMillis());
List<CellDef> cellDefs = fromJson(req.getCellDefs(), CellDef.listType());
XLSWriter xlsx = new XLSWriter().worksheet(0);
Format format = new Format(xlsx);
CellStyle center = format.cellStyle(Style.CENTER);
CellStyle numeric = format.n_nn0();
CellStyle dateYMD = format.yyyy_mm_dd();
CellStyle dateDT = format.yyyy_mm_dd_hh_mm_ss();
List<DataObject> list = rentEntService.getRentEntList(req.setFetchSize(0));
Map<String,Object> valueMap = new HashMap<String,Object>();
valueMap.put("업무구분", format.of("TASK_SE_NM").style(center));
valueMap.put("부과제외일자", FormatMaker.yyyy_mm_dd(format, "LEVY_EXCL_YMD").style(dateYMD));
valueMap.put("부과제외구분", format.of("LEVY_EXCL_SE_NM").style(center));
valueMap.put("부과제외사유", format.of("LEVY_EXCL_RSN_NM"));
valueMap.put("기타내용", format.of("ETC_CN"));
valueMap.put("민원신청번호", format.of("CVLCPT_APLY_NO").style(center));
valueMap.put("민원접수번호", format.of("CVLCPT_RCPT_NO").style(center));
valueMap.put("민원접수일자", FormatMaker.yyyy_mm_dd(format, "CVLCPT_RCPT_YMD").style(dateYMD));
valueMap.put("단속일시", FormatMaker.yyyy_mm_dd_hh_mm_ss(format, "CRDN_YMD_TM").style(dateDT));
valueMap.put("차량번호", format.of("VHRNO"));
valueMap.put("납부자구분", format.of("RTPYR_SE_NM").style(center));
valueMap.put("납부자번호", format.of("RTPYR_NO").style(center));
valueMap.put("납부자명", format.of("RTPYR_NM"));
valueMap.put("단속법정동", format.of("CRDN_STDG_NM").style(center));
valueMap.put("단속장소", format.of("CRDN_PLC"));
valueMap.put("상세단속장소", format.of("DTL_CRDN_PLC"));
valueMap.put("위반항목", format.of("VLTN_ARTCL"));
valueMap.put("단속원금", format.of("FFNLG_CRDN_AMT").style(numeric));
valueMap.put("처리상태", format.of("CRDN_STTS_NM"));
valueMap.put("단속특별구역", format.of("CRDN_SPAREA_NM").style(center));
valueMap.put("사용연료", format.of("USE_FUEL_NM").style(center));
valueMap.put("주차가능여부", format.of("PRK_PSBLTY_RSLT_NM").style(center));
valueMap.put("우편번호", format.of("ZIP").style(center));
valueMap.put("주소", format.of("ADDR"));
valueMap.put("상세주소", format.of("DTL_ADDR"));
valueMap.put("등록일시", FormatMaker.yyyy_mm_dd_hh_mm_ss(format, "REG_DT").style(dateDT));
valueMap.put("등록사용자", format.of("RGTR_NM").style(center));
valueMap.put("수정일시", FormatMaker.yyyy_mm_dd_hh_mm_ss(format, "MDFCN_DT").style(dateDT));
valueMap.put("수정사용자", format.of("MDFR_NM").style(center));
CellDef.setValues(cellDefs, valueMap);
xlsx.cell(0, 0).value("부과제외").value(center).merge(0, cellDefs.size() - 1)
.cell(3, 0).rowValues(CellDef.header(cellDefs, () -> StyleMaker.headerStyle(xlsx)))
.cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> {if(i.getValue() instanceof Format) {i.setField(null);}; return i;}).toList()));
return new ModelAndView("downloadView")
.addObject("download", xlsx.getDownloadable().setFilename("부과제외" + "_목록_" + dateTime + ".xlsx"));
}
}
/** (/rent/rent01020-info) .
* {@link #getRentEntList(RentEntQuery) } .
* @return /rentEnt/rentEnt-main
*/
@RequestMapping(name = "임대기업 정보 상세 조회", value=METHOD_URL.getRentEnterpriseInfo)
public ModelAndView getRentEnterpriseInfo(HttpServletRequest hReq, RentQuery req) {
DataObject info = rentEntService.getRentEntInfo(req);
boolean json = jsonResponse();
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/rent/rent01020-info");
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM054");
return mav
.addObject("openerPageName", hReq.getParameter("openerPageName")) // 호출한 Jsp PageName
.addObject("callPurpose", req.getCallPurpose()) // 호출 용도
.addObject("pageName", "rent01020") // jsp pageName
.addObject("infoPrefix", "rentEnt") // prefix
.addObject("infoPrefixUrl", CLASS_URL) // prefixUrl
.addObject("rentEntInfo", json ? info : toJson(info)) // 임대기업 정보
;
}
/** .
@ -81,11 +193,21 @@ public class Rent01Controller extends ApplicationController {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name = "임대 기업 대장 등록", value = "/create.do")
public ModelAndView create(RentEnt rentEnt) {
boolean saved = rentEntService.create(rentEnt);
@Task
@RequestMapping(name = "임대기업 대장 등록", value=METHOD_URL.createRentEnterprise)
public ModelAndView createRentEnterprise(RentEnt rentEnt) {
boolean saved = false;
String rtnMsg = rentEntService.createRentEnt(rentEnt);
if (rtnMsg.contains("[S]")) {
saved = true;
} else {
saved = false;
}
return new ModelAndView("jsonView")
.addObject("saved", saved);
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
/** .
@ -95,11 +217,21 @@ public class Rent01Controller extends ApplicationController {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name = "임대 기업 대장 수정", value = "/update.do")
public ModelAndView update(RentEnt rentEnt) {
boolean saved = rentEntService.update(rentEnt);
@Task
@RequestMapping(name = "임대기업 대장 수정", value=METHOD_URL.updateRentEnterprise)
public ModelAndView updateRentEnterprise(RentEnt rentEnt) {
boolean saved = false;
String rtnMsg = rentEntService.updateRentEnt(rentEnt);
if (rtnMsg.contains("[S]")) {
saved = true;
} else {
saved = false;
}
return new ModelAndView("jsonView")
.addObject("saved", saved);
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
/** .
@ -110,11 +242,21 @@ public class Rent01Controller extends ApplicationController {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name = "임대 기업 대장 제거", value = "/remove.do")
public ModelAndView remove(RentEnt rentEnt) {
boolean saved = rentEntService.remove(rentEnt);
@Task
@RequestMapping(name = "임대기업 대장 제거", value=METHOD_URL.removeRentEnterprise)
public ModelAndView removeRentEnterprise(RentEnt rentEnt) {
boolean saved = false;
String rtnMsg = rentEntService.removeRentEnt(rentEnt);
if (rtnMsg.contains("[S]")) {
saved = true;
} else {
saved = false;
}
return new ModelAndView("jsonView")
.addObject("saved", saved);
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
}

@ -7,7 +7,7 @@
2024-07-24 JoJH 최초 작성
============================ -->
<resultMap id="rentEntRow" type="cokr.xit.fims.rent.RentEnt"> <!-- 임대 기업 대장 -->
<resultMap id="rentEntRow" type="cokr.xit.fims.rent.RentEnt"> <!-- 임대 기업 대장 -->
<result property="entId" column="ENT_ID" /> <!-- 기업 ID -->
<result property="entSeCd" column="ENT_SE_CD" /> <!-- 기업 구분 코드 -->
<result property="entNm" column="ENT_NM" /> <!-- 기업 명 -->
@ -26,9 +26,10 @@
<result property="removedAt" column="DEL_DT" /> <!-- 삭제 일시 -->
<result property="removedBy" column="DLTR" /> <!-- 삭제자 -->
<result property="delRsn" column="DEL_RSN" /> <!-- 삭제 사유 -->
</resultMap>
</resultMap>
<sql id="select">SELECT ENT_ID <!-- 기업 ID -->
<sql id="select">
SELECT ENT_ID <!-- 기업 ID -->
, ENT_SE_CD <!-- 기업 구분 코드 -->
, ENT_NM <!-- 기업 명 -->
, ENT_NO <!-- 기업 번호 -->
@ -46,22 +47,26 @@
, DEL_DT <!-- 삭제 일시 -->
, DLTR <!-- 삭제자 -->
, DEL_RSN <!-- 삭제 사유 -->
FROM TB_RENT_ENT</sql>
FROM TB_RENT_ENT
</sql>
<select id="selectRentEntList" parameterType="map" resultType="dataobject">/* 임대 기업 대장 목록 조회(rentEntMapper.selectRentEntList) */
<include refid="utility.paging-prefix" />
<include refid="select" />
<where></where>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" /></select>
<select id="selectRentEntList" parameterType="map" resultType="dataobject">/* 임대 기업 대장 목록 조회(rentEntMapper.selectRentEntList) */
<include refid="utility.paging-prefix" />
<include refid="select" />
<where></where>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" />
</select>
<select id="selectRentEnts" parameterType="map" resultMap="rentEntRow">/* 임대 기업 대장 객체 가져오기(rentEntMapper.selectRentEnts) */
<include refid="select" />
<where></where>
<include refid="utility.orderBy" /></select>
<select id="selectRentEnts" parameterType="map" resultType="dataobject">/* 임대 기업 대장 객체 가져오기(rentEntMapper.selectRentEnts) */
<include refid="select" />
<where></where>
<include refid="utility.orderBy" />
</select>
<insert id="insertRentEnt" parameterType="map">/* 임대 기업 대장 등록(rentEntMapper.insertRentEnt) */
INSERT INTO TB_RENT_ENT (
<insert id="insertRentEnt" parameterType="cokr.xit.fims.rent.RentEnt">/* 임대 기업 대장 등록(rentEntMapper.insertRentEnt) */
INSERT
INTO TB_RENT_ENT (
ENT_ID <!-- 기업 ID -->
, ENT_SE_CD <!-- 기업 구분 코드 -->
, ENT_NM <!-- 기업 명 -->
@ -80,51 +85,51 @@ INSERT INTO TB_RENT_ENT (
, DEL_DT <!-- 삭제 일시 -->
, DLTR <!-- 삭제자 -->
, DEL_RSN <!-- 삭제 사유 -->
) VALUES (
#{rentEnt.entId} <!-- 기업 ID -->
, #{rentEnt.entSeCd} <!-- 기업 구분 코드 -->
, #{rentEnt.entNm} <!-- 기업 명 -->
, #{rentEnt.entNo} <!-- 기업 번호 -->
, #{rentEnt.entTelno} <!-- 기업 전화번호 -->
, #{rentEnt.entFxno} <!-- 기업 팩스번호 -->
, #{rentEnt.entEmlAddr} <!-- 기업 이메일 주소 -->
, #{rentEnt.entZip} <!-- 기업 우편번호 -->
, #{rentEnt.entAddr} <!-- 기업 주소 -->
, #{rentEnt.entDtlAddr} <!-- 기업 상세 주소 -->
, #{rentEnt.delYn} <!-- 삭제 여부 -->
)
VALUES (
#{entId} <!-- 기업 ID -->
, #{entSeCd} <!-- 기업 구분 코드 -->
, #{entNm} <!-- 기업 명 -->
, #{entNo} <!-- 기업 번호 -->
, #{entTelno} <!-- 기업 전화번호 -->
, #{entFxno} <!-- 기업 팩스번호 -->
, #{entEmlAddr} <!-- 기업 이메일 주소 -->
, #{entZip} <!-- 기업 우편번호 -->
, #{entAddr} <!-- 기업 주소 -->
, #{entDtlAddr} <!-- 기업 상세 주소 -->
, 'N' <!-- 삭제 여부 -->
, <include refid="utility.now" /> <!-- 등록 일시 -->
, #{currentUser.id} <!-- 등록자 -->
, #{createdBy} <!-- 등록자 -->
, <include refid="utility.now" /> <!-- 수정 일시 -->
, #{currentUser.id} <!-- 수정자 -->
, #{rentEnt.removedAt} <!-- 삭제 일시 -->
, #{rentEnt.removedBy} <!-- 삭제자 -->
, #{rentEnt.delRsn} <!-- 삭제 사유 -->
)</insert>
, #{modifiedBy} <!-- 수정자 -->
)
</insert>
<update id="updateRentEnt" parameterType="map">/* 임대 기업 대장 수정(rentEntMapper.updateRentEnt) */
UPDATE TB_RENT_ENT SET
ENT_SE_CD = #{rentEnt.entSeCd} <!-- 기업 구분 코드 -->
, ENT_NM = #{rentEnt.entNm} <!-- 기업 명 -->
, ENT_NO = #{rentEnt.entNo} <!-- 기업 번호 -->
, ENT_TELNO = #{rentEnt.entTelno} <!-- 기업 전화번호 -->
, ENT_FXNO = #{rentEnt.entFxno} <!-- 기업 팩스번호 -->
, ENT_EML_ADDR = #{rentEnt.entEmlAddr} <!-- 기업 이메일 주소 -->
, ENT_ZIP = #{rentEnt.entZip} <!-- 기업 우편번호 -->
, ENT_ADDR = #{rentEnt.entAddr} <!-- 기업 주소 -->
, ENT_DTL_ADDR = #{rentEnt.entDtlAddr} <!-- 기업 상세 주소 -->
, DEL_YN = #{rentEnt.delYn} <!-- 삭제 여부 -->
<update id="updateRentEnt" parameterType="cokr.xit.fims.rent.RentEnt">/* 임대 기업 대장 수정(rentEntMapper.updateRentEnt) */
UPDATE TB_RENT_ENT
SET ENT_SE_CD = #{entSeCd} <!-- 기업 구분 코드 -->
, ENT_NM = #{entNm} <!-- 기업 명 -->
, ENT_NO = #{entNo} <!-- 기업 번호 -->
, ENT_TELNO = #{entTelno} <!-- 기업 전화번호 -->
, ENT_FXNO = #{entFxno} <!-- 기업 팩스번호 -->
, ENT_EML_ADDR = #{entEmlAddr} <!-- 기업 이메일 주소 -->
, ENT_ZIP = #{entZip} <!-- 기업 우편번호 -->
, ENT_ADDR = #{entAddr} <!-- 기업 주소 -->
, ENT_DTL_ADDR = #{entDtlAddr} <!-- 기업 상세 주소 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{currentUser.id} <!-- 수정자 -->
, DEL_DT = #{rentEnt.removedAt} <!-- 삭제 일시 -->
, DLTR = #{rentEnt.removedBy} <!-- 삭제자 -->
, DEL_RSN = #{rentEnt.delRsn} <!-- 삭제 사유 -->
WHERE ENT_ID = #{rentEnt.entId}</update>
, MDFR = #{modifiedBy} <!-- 수정자 -->
WHERE ENT_ID = #{entId} <!-- 기업 ID -->
AND DEL_YN = 'N'
</update>
<update id="deleteRentEnt" parameterType="map">/* 임대 기업 대장 삭제(rentEntMapper.deleteRentEnt) */
UPDATE TB_RENT_ENT SET
USE_YN = 'N'
, MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
WHERE ENT_ID = #{rentEnt.entId}</update>
<update id="deleteRentEnt" parameterType="cokr.xit.fims.rent.RentEnt">/* 임대 기업 대장 삭제(rentEntMapper.deleteRentEnt) */
UPDATE TB_RENT_ENT
SET DEL_YN = 'Y'
, DEL_DT = <include refid="utility.now" /> <!-- 삭제 일시 -->
, DLTR = #{modifiedBy} <!-- 삭제자 -->
, DEL_RSN = #{delRsn} <!-- 삭제 사유 -->
WHERE ENT_ID = #{entId} <!-- 기업 ID -->
AND DEL_YN = 'N'
</update>
</mapper>

@ -0,0 +1,89 @@
<?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="cokr.xit.fims.rent.dao.UserRentEntMpngMapper">
<!-- 사용자 임대 기업 매핑 정보 매퍼
========== 변경 이력 ==========
2024-07-24 JoJH 최초 작성
============================ -->
<resultMap id="userRentEntMpngRow" type="cokr.xit.fims.rent.UserRentEntMpng"> <!-- 사용자 임대 기업 매핑 -->
<result property="userId" column="USER_ID" /> <!-- 사용자 ID -->
<result property="entId" column="ENT_ID" /> <!-- 기업 ID -->
<result property="delYn" column="DEL_YN" /> <!-- 삭제 여부 -->
<result property="createdAt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="createdBy" column="RGTR" /> <!-- 등록자 -->
<result property="lastModified" column="MDFCN_DT" /> <!-- 수정 일시 -->
<result property="modifiedBy" column="MDFR" /> <!-- 수정자 -->
<result property="removedAt" column="DEL_DT" /> <!-- 삭제 일시 -->
<result property="removedBy" column="DLTR" /> <!-- 삭제자 -->
</resultMap>
<sql id="select">
SELECT USER_ID <!-- 사용자 ID -->
, ENT_ID <!-- 기업 ID -->
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, MDFCN_DT <!-- 수정 일시 -->
, MDFR <!-- 수정자 -->
FROM TB_USER_RENT_ENT_MPNG
</sql>
<select id="selectUserRentEntMpngList" parameterType="map" resultType="dataobject">/* 사용자 임대 기업 매핑 목록 조회(userRentEntMpngMapper.selectUserRentEntMpngList) */
<include refid="utility.paging-prefix" />
<include refid="select" />
<where></where>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" />
</select>
<select id="selectUserRentEntMpngs" parameterType="map" resultType="dataobject">/* 사용자 임대 기업 매핑 객체 가져오기(userRentEntMpngMapper.selectUserRentEntMpngs) */
<include refid="select" />
<where></where>
<include refid="utility.orderBy" />
</select>
<insert id="insertUserRentEntMpng" parameterType="cokr.xit.fims.rent.UserRentEntMpng">/* 사용자 임대 기업 매핑 등록(userRentEntMpngMapper.insertUserRentEntMpng) */
INSERT
INTO TB_USER_RENT_ENT_MPNG (
USER_ID <!-- 사용자 ID -->
, ENT_ID <!-- 기업 ID -->
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, MDFCN_DT <!-- 수정 일시 -->
, MDFR <!-- 수정자 -->
)
VALUES (
#{userId} <!-- 사용자 ID -->
, #{entId} <!-- 기업 ID -->
, 'N' <!-- 삭제 여부 -->
, <include refid="utility.now" /> <!-- 등록 일시 -->
, #{createdBy} <!-- 등록자 -->
, <include refid="utility.now" /> <!-- 수정 일시 -->
, #{modifiedBy} <!-- 수정자 -->
)
</insert>
<update id="updateUserRentEntMpng" parameterType="cokr.xit.fims.rent.UserRentEntMpng">/* 사용자 임대 기업 매핑 수정(userRentEntMpngMapper.updateUserRentEntMpng) */
UPDATE TB_USER_RENT_ENT_MPNG
SET DEL_YN = #{delYn} <!-- 삭제 여부 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{modifiedBy} <!-- 수정자 -->
WHERE USER_ID = #{userId} <!-- 사용자 ID -->
AND ENT_ID = #{entId} <!-- 기업 ID -->
AND DEL_YN = 'N'
</update>
<update id="deleteUserRentEntMpng" parameterType="cokr.xit.fims.rent.UserRentEntMpng">/* 사용자 임대 기업 매핑 삭제(userRentEntMpngMapper.deleteUserRentEntMpng) */
UPDATE TB_USER_RENT_ENT_MPNG
SET DEL_YN = 'Y'
, DEL_DT = <include refid="utility.now" /> <!-- 삭제 일시 -->
, DLTR = #{modifiedBy} <!-- 삭제자 -->
WHERE USER_ID = #{userId} <!-- 사용자 ID -->
AND ENT_ID = #{entId} <!-- 기업 ID -->
AND DEL_YN = 'N'
</update>
</mapper>
Loading…
Cancel
Save