From c2928d95d11211c4c64f33b3945d2c61668a3bf2 Mon Sep 17 00:00:00 2001 From: nhj Date: Thu, 18 Dec 2025 19:49:16 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9D=B8=EC=8A=A4=EB=8D=98=ED=8A=B8=20?= =?UTF-8?q?=EC=8B=A0=EC=B2=AD=20=EA=B8=B0=EB=8A=A5=20=ED=99=95=EC=9E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../config/egov/EgovConfigAppIdGen.java | 18 + .../controller/ResourceManagerController.java | 3 + .../srm/controller/ReportOtherController.java | 33 ++ .../srm/controller/SvcDeskController.java | 72 +++- .../srm/controller/SvcDeskReqController.java | 366 ++++++++++++++++++ .../itmsapi/srm/dao/ReportOtherDao.java | 4 +- .../urpsys/itmsapi/srm/dao/SvcDeskDao.java | 6 +- .../urpsys/itmsapi/srm/dao/SvcDeskReqDao.java | 56 +++ .../srm/service/ReportOtherService.java | 7 +- .../srm/service/SvcDeskReqService.java | 158 ++++++++ .../itmsapi/srm/service/SvcDeskService.java | 151 +++++++- .../PrsnlPortletManageController.java | 62 ++- .../sys/dao/PrsnlPortletManageDao.java | 3 + .../service/PrsnlPortletManageService.java | 23 ++ .../sqlmap/itms/srm/ReportOtherMapper.xml | 24 +- .../sqlmap/itms/srm/SvcDeskMapper.xml | 52 ++- .../sqlmap/itms/srm/SvcDeskReqMapper.xml | 216 +++++++++++ .../itms/sys/PrsnlPortletManageMapper.xml | 48 ++- 18 files changed, 1261 insertions(+), 41 deletions(-) create mode 100644 src/main/java/com/urpsys/itmsapi/srm/controller/SvcDeskReqController.java create mode 100644 src/main/java/com/urpsys/itmsapi/srm/dao/SvcDeskReqDao.java create mode 100644 src/main/java/com/urpsys/itmsapi/srm/service/SvcDeskReqService.java create mode 100644 src/main/resources/mapper/primarydb/sqlmap/itms/srm/SvcDeskReqMapper.xml diff --git a/src/main/java/com/urpsys/baseapi/config/egov/EgovConfigAppIdGen.java b/src/main/java/com/urpsys/baseapi/config/egov/EgovConfigAppIdGen.java index aecd22d3..c05657b4 100644 --- a/src/main/java/com/urpsys/baseapi/config/egov/EgovConfigAppIdGen.java +++ b/src/main/java/com/urpsys/baseapi/config/egov/EgovConfigAppIdGen.java @@ -1938,6 +1938,24 @@ public class EgovConfigAppIdGen .build(); } + /** 서비스데스크 인스던트ID Generation Config + * @return + */ + @Bean(destroyMethod = "destroy") + public EgovTableIdGnrServiceImpl egovReqIncientIdGnrService() + { + return new EgovIdGnrBuilder().setDataSource(egovDataSource) + .setEgovIdGnrStrategyImpl(new EgovIdGnrStrategyImpl()) + .setBlockSize(10) + .setTable("COMTECOPSEQ") + .setTableName("INCI_REQ_ID") + .setPreFix("INC_REQ_") + .setCipers(6) + .setFillChar('0') + .build(); + } + + diff --git a/src/main/java/com/urpsys/itmsapi/rem/controller/ResourceManagerController.java b/src/main/java/com/urpsys/itmsapi/rem/controller/ResourceManagerController.java index 4872d628..b20b0ebc 100644 --- a/src/main/java/com/urpsys/itmsapi/rem/controller/ResourceManagerController.java +++ b/src/main/java/com/urpsys/itmsapi/rem/controller/ResourceManagerController.java @@ -74,6 +74,9 @@ public class ResourceManagerController log.info("strRole [{}]" , strRole); log.info("순서 [{}]" , strRole.indexOf("ROLE_ADMIN")); + // 2025.12.08 나혁제 그룹 null인 영우 빈값으로 처리 + if(strGrpId == null) strGrpId = "X"; + // 본사그룹 혹은 관리자 가 아닌경우 해당그룹자산만 조회 가능 if(!strGrpId.equals("GROUP_00000000000000") && strRole.indexOf("ROLE_ADMIN")<0) { diff --git a/src/main/java/com/urpsys/itmsapi/srm/controller/ReportOtherController.java b/src/main/java/com/urpsys/itmsapi/srm/controller/ReportOtherController.java index 88fad6c2..6d9e990f 100644 --- a/src/main/java/com/urpsys/itmsapi/srm/controller/ReportOtherController.java +++ b/src/main/java/com/urpsys/itmsapi/srm/controller/ReportOtherController.java @@ -621,6 +621,39 @@ public class ReportOtherController return ResultData.ok(resBody); } + /** + * 월별 보고서 만족도 현황 조회 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.12.09 + */ + @ResponseBody + @RequestMapping(value="/srm/getReportStsfdgRate.do") + public ResponseEntity getReportStsfdgRate( @RequestBody LinkedHashMap requestMap + , HttpServletRequest request + , HttpServletResponse response + ) throws Exception + { + log.info("\n\n\n\n\n"); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /srm/getReportStsfdgRate.do <<<<<<<<<<<<<<<<<<<<<<<<<"); + log.info("getRequestURI [{}]", request.getRequestURI() ); + log.info("입력값 확인 requestMap [{}]", requestMap.toString() ); + + LinkedHashMap resBody = new LinkedHashMap(); + + String strSearchMon = (String)requestMap.get("strSearchMon"); + + log.info("strSearchMon [{}]", strSearchMon ); + + // 월별 보고서 현황 조회 + List> resultList = reportOtherService.getReportStsfdgRate(strSearchMon); + + resBody.put("resultList", resultList ); + + log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /srm/getReportStsfdgRate.do >>>>>>>>>>>>>>>>>>>>>>>>>"); + + return ResultData.ok(resBody); + } + diff --git a/src/main/java/com/urpsys/itmsapi/srm/controller/SvcDeskController.java b/src/main/java/com/urpsys/itmsapi/srm/controller/SvcDeskController.java index 960a6644..0c279c24 100644 --- a/src/main/java/com/urpsys/itmsapi/srm/controller/SvcDeskController.java +++ b/src/main/java/com/urpsys/itmsapi/srm/controller/SvcDeskController.java @@ -270,7 +270,7 @@ public class SvcDeskController ) throws Exception { log.info("\n\n\n\n\n"); - log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /rem/addForm.do <<<<<<<<<<<<<<<<<<<<<<<<<"); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /srm/addIncident.do <<<<<<<<<<<<<<<<<<<<<<<<<"); log.info("getRequestURI [{}]", request.getRequestURI() ); log.info("입력값 확인 requestMap [{}]", requestMap.toString() ); @@ -299,7 +299,7 @@ public class SvcDeskController resBody.put("inIncidentSeq" , -1 ); } - log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /rem/addForm.do >>>>>>>>>>>>>>>>>>>>>>>>>"); + log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /srm/addIncident.do >>>>>>>>>>>>>>>>>>>>>>>>>"); return ResultData.ok(resBody); } @@ -654,6 +654,74 @@ public class SvcDeskController return ResultData.ok(resBody); } + /** + * 월별 SR 처리준수율 조회 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.12.09 + */ + @ResponseBody + @RequestMapping(value="/srm/getSrProPromiseRate.do") + public ResponseEntity getSrProPromiseRate( @RequestBody LinkedHashMap requestMap + , HttpServletRequest request + , HttpServletResponse response + ) throws Exception + { + log.info("\n\n\n\n\n"); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /srm/getSrProPromiseRate.do <<<<<<<<<<<<<<<<<<<<<<<<<"); + log.info("getRequestURI [{}]", request.getRequestURI() ); + log.info("입력값 확인 requestMap [{}]", requestMap.toString() ); + + LinkedHashMap resBody = new LinkedHashMap(); + + String strSearchMon = (String)requestMap.get("strSearchMon"); + + log.info("strSearchMon [{}]", strSearchMon ); + + // 월별 SR 처리준수율 조회 + List> resultList = svcDeskService.getSrProPromiseRate(strSearchMon); + + resBody.put("resultList", resultList ); + + log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /srm/getSrProPromiseRate.do >>>>>>>>>>>>>>>>>>>>>>>>>"); + + return ResultData.ok(resBody); + } + + /** + * 월별 SR 만족율 조회 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.12.09 + */ + @ResponseBody + @RequestMapping(value="/srm/getSrStsfdgRate.do") + public ResponseEntity getSrStsfdgRate( @RequestBody LinkedHashMap requestMap + , HttpServletRequest request + , HttpServletResponse response + ) throws Exception + { + log.info("\n\n\n\n\n"); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /srm/getSrStsfgdRate.do <<<<<<<<<<<<<<<<<<<<<<<<<"); + log.info("getRequestURI [{}]", request.getRequestURI() ); + log.info("입력값 확인 requestMap [{}]", requestMap.toString() ); + + LinkedHashMap resBody = new LinkedHashMap(); + + String strSearchMon = (String)requestMap.get("strSearchMon"); + + log.info("strSearchMon [{}]", strSearchMon ); + + // 월별 SR 만족율 조회 + List> resultList = svcDeskService.getSrStsfdgRate(strSearchMon); + + resBody.put("resultList", resultList ); + + log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /srm/getSrStsfgdRate.do >>>>>>>>>>>>>>>>>>>>>>>>>"); + + return ResultData.ok(resBody); + } + + + diff --git a/src/main/java/com/urpsys/itmsapi/srm/controller/SvcDeskReqController.java b/src/main/java/com/urpsys/itmsapi/srm/controller/SvcDeskReqController.java new file mode 100644 index 00000000..28347f9e --- /dev/null +++ b/src/main/java/com/urpsys/itmsapi/srm/controller/SvcDeskReqController.java @@ -0,0 +1,366 @@ +package com.urpsys.itmsapi.srm.controller; + +import java.util.LinkedHashMap; +import java.util.List; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.RestController; + +import com.urpsys.baseapi.common.util.CommonUtil; +import com.urpsys.baseapi.common.util.ResultData; +import com.urpsys.baseapi.domain.TokenInfo; +import com.urpsys.itmsapi.bbs.service.ArticleCommentService; +import com.urpsys.itmsapi.rem.service.AdminServiceService; +import com.urpsys.itmsapi.srm.service.SvcDeskReqService; +import com.urpsys.itmsapi.srm.service.SvcDeskService; + +import lombok.extern.slf4j.Slf4j; + +/** + * 서비스데스크을 처리하는 API Controller 클래스 + * @author URP 인프라본부 나혁제 + * @since 2025.12.15 + * @version 1.0 + * @see + * + *
+ * << 개정이력(Modification Information) >>
+ *
+ *  수정일          수정자           수정내용
+ *  ----------   --------   ---------------------------
+ *  2025.12.15    나혁제        최초 생성
+ *
+ *  
+ */ + +@Slf4j +@RestController +public class SvcDeskReqController +{ + @Autowired + SvcDeskReqService svcDeskReqService; // 서비스데스크 관리 서비스 + + @Autowired + AdminServiceService adminServiceService; // 서비스정보 관리 서비스 + + @Autowired + ArticleCommentService articleCommentService; // 2025.04.01 나혁제 댓글 정보 + + /** + * 서비스데스크 신청 목록 조회 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.12.15 + */ + @ResponseBody + @RequestMapping(value="/srm/searchReqIncident.do") + public ResponseEntity searchReqIncident( @RequestBody LinkedHashMap requestMap + , HttpServletRequest request + , HttpServletResponse response + ) throws Exception + { + log.info("\n\n\n\n\n"); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /srm/searchReqIncident.do <<<<<<<<<<<<<<<<<<<<<<<<<"); + log.info("getRequestURI [{}]", request.getRequestURI() ); + log.info("입력값 확인 requestMap [{}]", requestMap.toString() ); + + LinkedHashMap resBody = new LinkedHashMap(); + + // 토큰정보 획득 + TokenInfo tokenInfo = CommonUtil.getAccessTokenInfo(request); + + log.info("tokenInfo [{}]", tokenInfo.toString() ); + log.info("tokenInfo [{}]", tokenInfo.getAuthorities() ); + + + requestMap.put("reqUser", tokenInfo.getStrESNTL_ID()); + // requestMap.put("reqUser", "0"); + + // 서비스데스크 조회 + List> resultList = svcDeskReqService.searchReqIncident(requestMap); + + // count 조회 + int totCnt = svcDeskReqService.searchReqIncidentCnt(requestMap); + + resBody.put("resultList", resultList ); + resBody.put("totCnt" , totCnt ); + + log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /srm/searchReqIncident.do >>>>>>>>>>>>>>>>>>>>>>>>>"); + + return ResultData.ok(resBody); + } + + /** + * 서비스데스크 인스던트 정보 상세조회 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.02.13 + */ + @ResponseBody + @RequestMapping(value="/srm/getReqIncidentBySeq.do") + public ResponseEntity getReqIncidentBySeq ( @RequestBody LinkedHashMap requestMap + , HttpServletRequest request + , HttpServletResponse response + ) throws Exception + { + log.info("\n\n\n\n\n"); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /srm/getReqIncidentBySeq.do <<<<<<<<<<<<<<<<<<<<<<<<<"); + log.info("getRequestURI [{}]", request.getRequestURI() ); + log.info("입력값 확인 requestMap [{}]", requestMap.toString() ); + + LinkedHashMap resBody = new LinkedHashMap(); + + // 토큰정보 획득 + TokenInfo tokenInfo = CommonUtil.getAccessTokenInfo(request); + + String vcReqIncidentNum = (String)requestMap.get("vcReqIncidentNum"); + + // 인스턴트 정보 상세조회 + LinkedHashMap resultReqIncident = svcDeskReqService.getReqIncidentBySeq(vcReqIncidentNum); + + String strRole = tokenInfo.getAuthorities(); + String sessUserSeq = tokenInfo.getUniqId(); + + String inIncidentSeq = CommonUtil.nvl(resultReqIncident.get("inIncidentSeq")); + String inReqUser = CommonUtil.nvl(resultReqIncident.get("inReqUser")); + String vcCompleted = CommonUtil.nvl(resultReqIncident.get("vcCompleted")); + + // 수정권한 + String strChangeYn = "N"; + if(inIncidentSeq.equals("") && inReqUser.equals(sessUserSeq)) + { + strChangeYn="Y"; + } + + // 처리만족도 권한 + String strCompletedYn = "N"; + if( vcCompleted.equals("처리완료") && inReqUser.equals(sessUserSeq)) + { + strCompletedYn="Y"; + } + + resBody.put("strChangeYn" , strChangeYn ); // String + resBody.put("strCompletedYn" , strCompletedYn ); // int + + resBody.put("resultReqIncident" , resultReqIncident ); // Map 기본정보 + + log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /srm/getReqIncidentBySeq.do >>>>>>>>>>>>>>>>>>>>>>>>>"); + + return ResultData.ok(resBody); + } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + /** + * 서비스데스크 인스던트 신청 등록 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.02.13 + */ + @ResponseBody + @RequestMapping(value="/srm/addReqIncident.do") + public ResponseEntity addReqIncident( @RequestBody LinkedHashMap requestMap + , HttpServletRequest request + , HttpServletResponse response + ) throws Exception + { + log.info("\n\n\n\n\n"); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /srm/addReqIncident.do <<<<<<<<<<<<<<<<<<<<<<<<<"); + log.info("getRequestURI [{}]", request.getRequestURI() ); + log.info("입력값 확인 requestMap [{}]", requestMap.toString() ); + + LinkedHashMap resBody = new LinkedHashMap(); + + LinkedHashMap incidentReqVoMap = (LinkedHashMap)requestMap.get("incidentReqVo" ); // 인스던트 기본정보 + List> fileList = (List>)requestMap.get("fileList" ); // 인스던트 첨부파일 + + // 서비스 인스던트 신청 등록 + LinkedHashMap returnMap = svcDeskReqService.addReqIncident(incidentReqVoMap, fileList); + + int iSucc = (int)returnMap.get("iSucc"); + + if(iSucc > 0) + { + resBody.put("resultCd" , "0" ); + resBody.put("resultMsg" , "정상적으로 등록되었습니다." ); + resBody.put("inIncidentSeq" , returnMap.get("inIncidentSeq") ); + } + else + { + resBody.put("resultCd" , "-1" ); + resBody.put("resultMsg" , "서비스 등록중 오류가 발생 하였습니다." ); + resBody.put("inIncidentSeq" , -1 ); + } + + log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /srm/addReqIncident.do >>>>>>>>>>>>>>>>>>>>>>>>>"); + + return ResultData.ok(resBody); + } + + /** + * 서비스데스크 인스던트 신청 변경 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.12.17 + */ + @ResponseBody + @RequestMapping(value="/srm/updateReqIncident.do") + public ResponseEntity updateReqIncident( @RequestBody LinkedHashMap requestMap + , HttpServletRequest request + , HttpServletResponse response + ) throws Exception + { + log.info("\n\n\n\n\n"); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /srm/updateReqIncident.do <<<<<<<<<<<<<<<<<<<<<<<<<"); + log.info("getRequestURI [{}]", request.getRequestURI() ); + log.info("입력값 확인 requestMap [{}]", requestMap.toString() ); + + LinkedHashMap resBody = new LinkedHashMap(); + + LinkedHashMap incidentReqVoMap = (LinkedHashMap)requestMap.get("incidentReqVo" ); // 인스던트 정보 + List> fileList = (List>)requestMap.get("fileList" ); // 인스던트 첨부파일 정보 + + // 서비스데스크 인스던트 정보 변경 + int iSucc = svcDeskReqService.updateReqIncident(incidentReqVoMap, fileList); + + if(iSucc > 0) + { + resBody.put("resultCd" , "0" ); + resBody.put("resultMsg", "정상적으로 수정되었습니다." ); + } + else + { + resBody.put("resultCd" , "-1" ); + resBody.put("resultMsg", "인스던트 신청정보 수정중 오류가 발생 하였습니다." ); + } + + log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /srm/updateReqIncident.do >>>>>>>>>>>>>>>>>>>>>>>>>"); + + return ResultData.ok(resBody); + } + + /** + * 서비스데스크 인스던트 신청정보 삭제처리 + * @author URP 인프라본부 나혁제 + * 작성일 : 2025.12.18 + */ + @ResponseBody + @RequestMapping(value="/srm/deleteReqIncident.do") + public ResponseEntity deleteReqIncident( @RequestBody LinkedHashMap requestMap + , HttpServletRequest request + , HttpServletResponse response + ) throws Exception + { + log.info("\n\n\n\n\n"); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /srm/deleteReqIncident.do <<<<<<<<<<<<<<<<<<<<<<<<<"); + log.info("getRequestURI [{}]", request.getRequestURI() ); + log.info("입력값 확인 requestMap [{}]", requestMap.toString() ); + + LinkedHashMap resBody = new LinkedHashMap(); + + LinkedHashMap incidentReqVoMap = (LinkedHashMap)requestMap.get("incidentReqVo" ); // 인스던트 신청 정보 + + String vcReqIncidentNum = CommonUtil.nvl(incidentReqVoMap.get("vcReqIncidentNum") ); + + // 서비스데스크 인스던트 정보 삭제 + int iSucc = svcDeskReqService.deleteReqIncident(vcReqIncidentNum); + + if(iSucc > 0) + { + resBody.put("resultCd" , "0" ); + resBody.put("resultMsg", "정상적으로 삭제되었습니다." ); + } + else + { + resBody.put("resultCd" , "-1" ); + resBody.put("resultMsg", "인스던트 신청정보 삭제중 오류가 발생 하였습니다." ); + } + + log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /srm/deleteReqIncident.do >>>>>>>>>>>>>>>>>>>>>>>>>"); + + return ResultData.ok(resBody); + } + + /** + * 인스던트 신청정보 반려 처리 + * @author URP 인프라본부 나혁제 + * 작성일 : 2025.12.18 + */ + @ResponseBody + @RequestMapping(value="/srm/rejectReqIncident.do") + public ResponseEntity rejectReqIncident( @RequestBody LinkedHashMap requestMap + , HttpServletRequest request + , HttpServletResponse response + ) throws Exception + { + log.info("\n\n\n\n\n"); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /srm/rejectReqIncident.do <<<<<<<<<<<<<<<<<<<<<<<<<"); + log.info("getRequestURI [{}]", request.getRequestURI() ); + log.info("입력값 확인 requestMap [{}]", requestMap.toString() ); + + LinkedHashMap resBody = new LinkedHashMap(); + + // 서비스데스크 인스던트 승인 + int iSucc = svcDeskReqService.updateReqStatusIncident( (String)requestMap.get("vcReqIncidentNum") + , "2" + , (String)requestMap.get("reqRptRejTxComment") + ); + + if(iSucc > 0) + { + resBody.put("resultCd" , "0" ); + resBody.put("resultMsg", "정상적으로 반려 되었습니다." ); + } + else + { + resBody.put("resultCd" , "-1" ); + resBody.put("resultMsg", "인스던트 신청정보 반려중 오류가 발생 하였습니다." ); + } + + log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /srm/rejectReqIncident.do >>>>>>>>>>>>>>>>>>>>>>>>>"); + + return ResultData.ok(resBody); + } + + + + + + + + +} diff --git a/src/main/java/com/urpsys/itmsapi/srm/dao/ReportOtherDao.java b/src/main/java/com/urpsys/itmsapi/srm/dao/ReportOtherDao.java index 733233bd..f1b67a69 100644 --- a/src/main/java/com/urpsys/itmsapi/srm/dao/ReportOtherDao.java +++ b/src/main/java/com/urpsys/itmsapi/srm/dao/ReportOtherDao.java @@ -114,7 +114,7 @@ public interface ReportOtherDao // 2025.11.14 나혁제 월별 보고서 현황 public List> getReportMonStatus(String strSearchMon) throws Exception; - - + // 2025.12.09 나혁제 월별 보고서 만족율 현황 + public List> getReportStsfdgRate(String strSearchMon) throws Exception; } diff --git a/src/main/java/com/urpsys/itmsapi/srm/dao/SvcDeskDao.java b/src/main/java/com/urpsys/itmsapi/srm/dao/SvcDeskDao.java index bee186a7..292f20eb 100644 --- a/src/main/java/com/urpsys/itmsapi/srm/dao/SvcDeskDao.java +++ b/src/main/java/com/urpsys/itmsapi/srm/dao/SvcDeskDao.java @@ -112,7 +112,11 @@ public interface SvcDeskDao // 2025.11.13 나혁제 월별 SR 현황 public List> getIncidentMonStatus(String strSearchMon) throws Exception; - + // 2025.12.09 나혁제 월별 SR 처리준수율 + public List> getSrProPromiseRate(String strSearchMon) throws Exception; + + // 2025.12.09 나혁제 월별 SR 만족율 + public List> getSrStsfdgRate(String strSearchMon) throws Exception; diff --git a/src/main/java/com/urpsys/itmsapi/srm/dao/SvcDeskReqDao.java b/src/main/java/com/urpsys/itmsapi/srm/dao/SvcDeskReqDao.java new file mode 100644 index 00000000..d469346e --- /dev/null +++ b/src/main/java/com/urpsys/itmsapi/srm/dao/SvcDeskReqDao.java @@ -0,0 +1,56 @@ +package com.urpsys.itmsapi.srm.dao; + +import java.util.LinkedHashMap; +import java.util.List; + +import org.apache.ibatis.annotations.Mapper; +import org.springframework.stereotype.Repository; + +/** + * 서비스 데스크 신청 관리에 대한 DAO 클래스를 정의 + * + * @author URP 인프라본부 나혁제 + * @since 2025.12.15 + * @version 1.0.0 + * @see + * + *
+ *
+ * << 개정이력(Modification information) >>
+ *
+ *   수정일        수정자            수정내용
+ * -----------  ---------    ------------------------
+ * 2025.12.15    나혁제          최초작성
+ *
+ *      
+ */ +@Mapper +@Repository +public interface SvcDeskReqDao +{ + // 서비스데스크신청 목록 조회 + public List> searchReqIncident(LinkedHashMap inMap) throws Exception; + + // 서비스데스크신청 목록 건수 조회 + public int searchReqIncidentCnt(LinkedHashMap inMap) throws Exception; + + // 서비스데스크 인스던트 신청정보 상세조회 + public LinkedHashMap getReqIncidentBySeq(String inStr) throws Exception; + + + + + + // 서비스데스크 인스던트 신청 등록처리 + public int addReqIncident(LinkedHashMap inMap) throws Exception; + + // 서비스데스크 인스던트 신청 변경처리 + public int updateReqIncident(LinkedHashMap inMap) throws Exception; + + // 서비스데스크 인스던트 신청 삭제처리 + public int deleteReqIncident(String strIn) throws Exception; + + // 서비스데스크 인스던트 신청 진행상태변경 + public int updateReqStatusIncident(LinkedHashMap inMap) throws Exception; + +} diff --git a/src/main/java/com/urpsys/itmsapi/srm/service/ReportOtherService.java b/src/main/java/com/urpsys/itmsapi/srm/service/ReportOtherService.java index 32f88e7c..1990b6a4 100644 --- a/src/main/java/com/urpsys/itmsapi/srm/service/ReportOtherService.java +++ b/src/main/java/com/urpsys/itmsapi/srm/service/ReportOtherService.java @@ -314,7 +314,12 @@ public class ReportOtherService { return reportOtherDao.getReportMonStatus(strSearchMon); } - + + // 2025.12.09 나혁제 월별 보고서 만족율 현황 + public List> getReportStsfdgRate(String strSearchMon) throws Exception + { + return reportOtherDao.getReportStsfdgRate(strSearchMon); + } diff --git a/src/main/java/com/urpsys/itmsapi/srm/service/SvcDeskReqService.java b/src/main/java/com/urpsys/itmsapi/srm/service/SvcDeskReqService.java new file mode 100644 index 00000000..bd66f280 --- /dev/null +++ b/src/main/java/com/urpsys/itmsapi/srm/service/SvcDeskReqService.java @@ -0,0 +1,158 @@ +package com.urpsys.itmsapi.srm.service; + +import java.util.LinkedHashMap; +import java.util.List; + +import javax.annotation.Resource; + +import org.egovframe.rte.fdl.idgnr.EgovIdGnrService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.urpsys.baseapi.common.util.CommonUtil; +import com.urpsys.itmsapi.cmm.service.FileManageService; +import com.urpsys.itmsapi.srm.dao.SvcDeskReqDao; + +import lombok.extern.slf4j.Slf4j; + +/** + * 서비스데스크 신청 정보에 관한 비즈니스 구현 클래스를 정의 + * + * @author URP 인프라본부 나혁제 + * @since 2025.12.15 + * @version 1.0.0 + * @see + * + *
+ *
+ * << 개정이력(Modification information) >>
+ *
+ *   수정일       수정자      수정내용
+ * -----------  ---------    ------------------------
+ * 2025.12.15   나혁제      최초작성
+ *
+ *      
+ */ + +@Slf4j +@Service +@Transactional +public class SvcDeskReqService +{ + @Autowired + SvcDeskReqDao svcDeskReqDao; + + @Autowired + FileManageService fileManageService; // 파일처리 + + /** 인스턴스ID 추출 */ + @Resource(name="egovReqIncientIdGnrService") + private EgovIdGnrService egovReqIncientIdGnrService; + + // 서비스데스크 목록 조회 + public List> searchReqIncident(LinkedHashMap inMap) throws Exception + { + return svcDeskReqDao.searchReqIncident(inMap); + } + + // 서비스데스크 목록 조회 건수 + public int searchReqIncidentCnt(LinkedHashMap inMap) throws Exception + { + return svcDeskReqDao.searchReqIncidentCnt(inMap); + } + + // 서비스데스크 인스던트 정보 상세조회 + public LinkedHashMap getReqIncidentBySeq(String inStr) throws Exception + { + return svcDeskReqDao.getReqIncidentBySeq(inStr); + } + + + + + // 서비스데스크 인스던트 신청 등록처리 + public LinkedHashMap addReqIncident( LinkedHashMap incidentReqMap + , List> fileList + ) throws Exception + { + String strReqIncidentNum = generateReqIncidentId(); + incidentReqMap.put("vcReqIncidentNum", strReqIncidentNum); + + LinkedHashMap returnMap = new LinkedHashMap(); + + int iSucc = svcDeskReqDao.addReqIncident(incidentReqMap); + + // 파일정보저장 + if( fileList != null + && fileList.size()>0) + { + fileManageService.insertFileInfs(fileList); + } + + returnMap.put("vcReqIncidentNum" , incidentReqMap.get("vcReqIncidentNum")); + returnMap.put("iSucc" , iSucc ); + + return returnMap; + } + + // 서비스데스크 인스던트 변경처리 + public int updateReqIncident( LinkedHashMap incidentMap + , List> fileList + ) throws Exception + { + int iSucc = svcDeskReqDao.updateReqIncident(incidentMap); + + // 파일정보저장 + if( fileList != null && fileList.size()>0) + { + if(incidentMap.get("atchFileInUpGb").equals("U")) + { + // 상세 정보만 입력 + fileManageService.updateFileInfs(fileList); + } + else + { + // 마스터+상세 정보 입력 처리 + fileManageService.insertFileInfs(fileList); + } + } + + return iSucc; + } + + // 서비스데스크 인스던트 신청 삭제처리 + public int deleteReqIncident(String strIn) throws Exception + { + int iSucc = svcDeskReqDao.deleteReqIncident(strIn); + return iSucc; + } + + + public int updateReqStatusIncident( String strReqIncidentNum + , String strReqStatus + , String strRptRejTxComment) throws Exception + { + LinkedHashMap inMap = new LinkedHashMap(); + + inMap.put("vcReqIncidentNum" , strReqIncidentNum); + inMap.put("inReqStatus" , strReqStatus ); + inMap.put("reqRptRejTxComment" , strRptRejTxComment ); + + return svcDeskReqDao.updateReqStatusIncident(inMap); + } + + + + private String generateReqIncidentId() throws Exception + { + String strIncidentId = CommonUtil.getKST("YY-MMdd-") + egovReqIncientIdGnrService.getNextStringId(); + return strIncidentId; + } + + + + + + +} diff --git a/src/main/java/com/urpsys/itmsapi/srm/service/SvcDeskService.java b/src/main/java/com/urpsys/itmsapi/srm/service/SvcDeskService.java index b893aec6..96487496 100644 --- a/src/main/java/com/urpsys/itmsapi/srm/service/SvcDeskService.java +++ b/src/main/java/com/urpsys/itmsapi/srm/service/SvcDeskService.java @@ -1,5 +1,6 @@ package com.urpsys.itmsapi.srm.service; +import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; @@ -47,13 +48,18 @@ public class SvcDeskService HomeService homeService; @Autowired - FileManageService fileManageService; // 파일처리 + FileManageService fileManageService; // 2025.12.17 나혁제 파일처리 + + @Autowired + SvcDeskReqService svcDeskReqService; // 2025.12.17 나혁제 인스던트 신청 정보 /** 인스턴스ID 추출 */ @Resource(name="egovIncientIdGnrService") private EgovIdGnrService egovIncientIdGnrService; - + /** fileID 추출 */ + @Resource(name = "egovFileIdGnrService") + private EgovIdGnrService egovFileIdGnrService; // 서비스데스크 목록 조회 @@ -146,11 +152,82 @@ public class SvcDeskService } } + boolean bReceiptFile = false; // 파일정보저장 if( fileList != null && fileList.size()>0) { fileManageService.insertFileInfs(fileList); + bReceiptFile=true; + } + + LinkedHashMap inMap = new LinkedHashMap(); + + // 2025.12.17 나혁제 신청파일이 있는경우 새로 새성 + if(!incidentMap.get("reqAtchFileId").equals("")) + { + inMap = new LinkedHashMap(); + inMap.put("atchFileId", incidentMap.get("reqAtchFileId")); + + // 신청시 파일 정보을 추출 + List> reqFileList = fileManageService.selectFileInfs(inMap); + + String strNewAtchFileId = ""; + + // 접수시 파일정보가 있는경우 저장 + if(bReceiptFile) + { + strNewAtchFileId = (String)fileList.get(0).get("atchFileId"); + } + // 접수시 파일정보가 없는경우 file ID 새롭게 부여 + else + { + strNewAtchFileId = egovFileIdGnrService.getNextStringId(); + } + + if (reqFileList != null ) + { + List> reqInFileList = new ArrayList(); + + for(int i=0; i < reqFileList.size(); i++) + { + LinkedHashMap fileMap = reqFileList.get(i); + + fileMap.put("atchFileId", strNewAtchFileId); + if(bReceiptFile) + { + fileMap.put("fileSn", fileManageService.getMaxFileSN(fileList.get(0))); + } + else + { + fileMap.put("fileSn", i); + } + + reqInFileList.add(fileMap); + } + + // 접수시 파일이 있는경우 update 로 + if(reqFileList.size()>0) + { + if(bReceiptFile) + { + fileManageService.updateFileInfs(reqInFileList); + } + else + { + fileManageService.insertFileInfs(reqInFileList); + } + + } + } + } + + // 2025.12.17 나혁제 신청정보가 았는경우 진행상태 갱신 + if(!incidentMap.get("vcReqIncidentNum").equals("")) + { + svcDeskReqService.updateReqStatusIncident( (String)incidentMap.get("vcReqIncidentNum") + , "0" + , (String)incidentMap.get("reqRptRejTxComment") ); } // 승인요청 처리 @@ -241,6 +318,16 @@ public class SvcDeskService // 인스던트 삭제처리 public int deleteIncident(int inInt) throws Exception { + LinkedHashMap incidentMap = svcDeskDao.getIncidentBySeq(inInt); + + // 2025.12.17 나혁제 신청정보가 았는경우 진행상태 갱신 + if(!incidentMap.get("vcReqIncidentNum").equals("")) + { + svcDeskReqService.updateReqStatusIncident( (String)incidentMap.get("vcReqIncidentNum") + , "-1" + , "" ); + } + // 인스던트 기본 삭제 int iSucc = svcDeskDao.deleteIncident(inInt); @@ -259,13 +346,40 @@ public class SvcDeskService // 서비스데스크 인스던트 승인요청 public int procApprovalIncident(LinkedHashMap inMap) throws Exception { - return svcDeskDao.procApprovalIncident(inMap); + int iSucc = svcDeskDao.procApprovalIncident(inMap); + + // 2025.12.17 나혁제 신청정보가 았는경우 진행상태 갱신 + String strIncidentSeq = inMap.get("inIncidentSeq")+""; + int inIncidentSeq = CommonUtil.stoi(strIncidentSeq); + LinkedHashMap incidentMap = svcDeskDao.getIncidentBySeq(inIncidentSeq); + if(incidentMap.get("vcReqIncidentNum") !=null && !incidentMap.get("vcReqIncidentNum").equals("")) + { + // 진행중 + svcDeskReqService.updateReqStatusIncident( (String)incidentMap.get("vcReqIncidentNum") + , "1" + , "" ); + } + + return iSucc; } // 인스던트 처리완료 처리 public int completedIncident(LinkedHashMap inMap) throws Exception { - return svcDeskDao.completedIncident(inMap); + int iSucc = svcDeskDao.completedIncident(inMap); + + // 2025.12.17 나혁제 신청정보가 았는경우 진행상태 갱신 + int inIncidentSeq = CommonUtil.stoi((String)inMap.get("inIncidentSeq")); + LinkedHashMap incidentMap = svcDeskDao.getIncidentBySeq(inIncidentSeq); + if(incidentMap.get("vcReqIncidentNum") !=null && !incidentMap.get("vcReqIncidentNum").equals("")) + { + // 처리완료 + svcDeskReqService.updateReqStatusIncident( (String)incidentMap.get("vcReqIncidentNum") + , "3" + , "" ); + } + + return iSucc; } // 인스던트 승인처리 @@ -277,7 +391,20 @@ public class SvcDeskService // 인스던트 반려처리 public int rejectIncident(LinkedHashMap inMap) throws Exception { - return svcDeskDao.rejectIncident(inMap); + int iSucc = svcDeskDao.rejectIncident(inMap); + + // 2025.12.17 나혁제 신청정보가 았는경우 진행상태 갱신 + int inIncidentSeq = CommonUtil.stoi((String)inMap.get("inIncidentSeq")); + LinkedHashMap incidentMap = svcDeskDao.getIncidentBySeq(inIncidentSeq); + if(incidentMap.get("vcReqIncidentNum") !=null && !incidentMap.get("vcReqIncidentNum").equals("")) + { + // 반려처리 + svcDeskReqService.updateReqStatusIncident( (String)incidentMap.get("vcReqIncidentNum") + , "2" + , "" ); + } + + return iSucc; } @@ -294,6 +421,20 @@ public class SvcDeskService { return svcDeskDao.getIncidentMonStatus(strSearchMon); } + + // 2025.12.09 나혁제 월별 SR 처리준수율 + public List> getSrProPromiseRate(String strSearchMon) throws Exception + { + return svcDeskDao.getSrProPromiseRate(strSearchMon); + } + + // 2025.12.09 나혁제 월별 SR 만족율 + public List> getSrStsfdgRate(String strSearchMon) throws Exception + { + return svcDeskDao.getSrStsfdgRate(strSearchMon); + } + + diff --git a/src/main/java/com/urpsys/itmsapi/sys/controller/PrsnlPortletManageController.java b/src/main/java/com/urpsys/itmsapi/sys/controller/PrsnlPortletManageController.java index ceb050dd..d4c591f9 100644 --- a/src/main/java/com/urpsys/itmsapi/sys/controller/PrsnlPortletManageController.java +++ b/src/main/java/com/urpsys/itmsapi/sys/controller/PrsnlPortletManageController.java @@ -46,8 +46,8 @@ public class PrsnlPortletManageController /** * 개인화메뉴 목록을 조회한다. - * @author 정보기술연구소 권오제 - * 작성일 : 2022.12.19 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.03.06 */ @RequestMapping(value = "/sys/selectPortletManageList.do") @ResponseBody @@ -79,8 +79,8 @@ public class PrsnlPortletManageController /** * 개인화메뉴를 등록한다. - * @author 정보기술연구소 권오제 - * 작성일 : 2022.12.19 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.03.06 */ @RequestMapping(value = "/sys/insertPrsnlPortlet.do") @ResponseBody @@ -108,8 +108,8 @@ public class PrsnlPortletManageController /** * 개인화메뉴 정보를 조회한다. - * @author 정보기술연구소 권오제 - * 작성일 : 2022.12.19 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.03.06 */ @RequestMapping(value = "/sys/inqirePrsnlPortlet.do") @ResponseBody @@ -137,8 +137,8 @@ public class PrsnlPortletManageController /** * 개인화메뉴 정보를 수정한다. - * @author 정보기술연구소 권오제 - * 작성일 : 2022.12.19 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.03.06 */ @RequestMapping(value = "/sys/updatePrsnlPortlet.do") @ResponseBody @@ -166,8 +166,8 @@ public class PrsnlPortletManageController /** * 개인화메뉴 정보를 삭제한다. - * @author 정보기술연구소 권오제 - * 작성일 : 2022.12.19 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.03.06 */ @RequestMapping(value = "/sys/deletePrsnlPortlet.do") @ResponseBody @@ -195,8 +195,8 @@ public class PrsnlPortletManageController /** * 개인화메뉴 정보를 멀티 삭제한다. - * @author 정보기술연구소 권오제 - * 작성일 : 2022.12.19 + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.03.06 */ @RequestMapping(value = "/sys/deletePrsnlPortletMulti.do") @ResponseBody @@ -223,4 +223,42 @@ public class PrsnlPortletManageController return ResultData.ok(resBody); } + + /** + * 개인화메뉴 정보를 멀티 상태변경 처리한다. + * @author urp 인프라본부 나혁제 + * 작성일 : 2025.12.08 + */ + @RequestMapping(value = "/sys/updateStatusPrsnlPortletMulti.do") + @ResponseBody + public ResponseEntity updateStatusPrsnlPortletMulti(@RequestBody LinkedHashMap requestMap + , HttpServletRequest request + , HttpServletResponse response) throws Exception + { + log.info("\n\n\n\n\n"); + log.info(">>>>>>>>>>>>>>>>>>>>>>>>> /sys/updateStatusPrsnlPortletMulti.do <<<<<<<<<<<<<<<<<<<<<<<<<"); + log.info("getRequestURI [{}]", request.getRequestURI()); + log.info("입력값 확인 requestMap [{}]", requestMap.toString()); + + + LinkedHashMap resBody = new LinkedHashMap(); + + String checkedPrsnlIdForDel = (String) requestMap.get("checkedPrsnlIdForDel"); + String checkUseAts = (String) requestMap.get("checkUseAts"); + + int iResult = prsnlPortletManageService.updateStatusPrsnlPortletMulti(checkedPrsnlIdForDel, checkUseAts); + + resBody.put("iResult", iResult); + + + log.info("<<<<<<<<<<<<<<<<<<<<<<<<< /sys/updateStatusPrsnlPortletMulti.do >>>>>>>>>>>>>>>>>>>>>>>>>"); + + return ResultData.ok(resBody); + } + + + + + + } diff --git a/src/main/java/com/urpsys/itmsapi/sys/dao/PrsnlPortletManageDao.java b/src/main/java/com/urpsys/itmsapi/sys/dao/PrsnlPortletManageDao.java index eaa0b0e2..bbf11726 100644 --- a/src/main/java/com/urpsys/itmsapi/sys/dao/PrsnlPortletManageDao.java +++ b/src/main/java/com/urpsys/itmsapi/sys/dao/PrsnlPortletManageDao.java @@ -48,5 +48,8 @@ public interface PrsnlPortletManageDao /** 개인화메뉴 삭제 */ int deletePrsnlPortlet(LinkedHashMap requestMap); + + /** 개인화메뉴 상태변경 */ + int updateStatusPrsnlPortlet(LinkedHashMap requestMap); } diff --git a/src/main/java/com/urpsys/itmsapi/sys/service/PrsnlPortletManageService.java b/src/main/java/com/urpsys/itmsapi/sys/service/PrsnlPortletManageService.java index 69091bd6..03371c8f 100644 --- a/src/main/java/com/urpsys/itmsapi/sys/service/PrsnlPortletManageService.java +++ b/src/main/java/com/urpsys/itmsapi/sys/service/PrsnlPortletManageService.java @@ -106,5 +106,28 @@ public class PrsnlPortletManageService return iProcResult; } + + /** 2025.12.08 나혁제 */ + /** 개인화메뉴 멀티 상태변경 */ + public int updateStatusPrsnlPortletMulti(String checkedPrsnlIdForDel, String checkUseAts) + { + LinkedHashMap inMap = new LinkedHashMap(); + + String[] srUupdPrsnlId = checkedPrsnlIdForDel.split(","); + String[] srUseAt = checkUseAts.split(","); + + int iProcResult = 0; + + for (int i=0; i - - + + diff --git a/src/main/resources/mapper/primarydb/sqlmap/itms/srm/SvcDeskMapper.xml b/src/main/resources/mapper/primarydb/sqlmap/itms/srm/SvcDeskMapper.xml index cf7a28fc..5fba03e8 100644 --- a/src/main/resources/mapper/primarydb/sqlmap/itms/srm/SvcDeskMapper.xml +++ b/src/main/resources/mapper/primarydb/sqlmap/itms/srm/SvcDeskMapper.xml @@ -41,6 +41,7 @@ + @@ -73,6 +74,7 @@ + @@ -157,6 +159,7 @@ , A.VC_REQ_APPROVAL_USER , A.IN_DIFFICULTY , A.IN_SATISFACTION + , A.VC_REQ_INCIDENT_NUM FROM CM_INCIDENT A , CM_SERVICE B WHERE A.IN_SERVICE_CODE=B.IN_SERVICE_CODE @@ -262,6 +265,7 @@ , A.IN_DIFFICULTY , A.IN_SATISFACTION , A.ATCH_FILE_ID + , A.VC_REQ_INCIDENT_NUM FROM CM_INCIDENT A , CM_SERVICE B WHERE A.IN_SERVICE_CODE=B.IN_SERVICE_CODE @@ -353,7 +357,7 @@ - + /* SvcDeskDao.addIncident */ INSERT INTO CM_INCIDENT @@ -377,6 +381,7 @@ , IN_REG_USER , VC_REG_USER , ATCH_FILE_ID + , VC_REQ_INCIDENT_NUM ) VALUES ( @@ -399,6 +404,7 @@ , #{inRegUser} , "${vcRegUser}" , #{atchFileId} + , #{vcReqIncidentNum} ) @@ -709,7 +715,49 @@ ORDER BY STATUS_1 - + + + + + diff --git a/src/main/resources/mapper/primarydb/sqlmap/itms/srm/SvcDeskReqMapper.xml b/src/main/resources/mapper/primarydb/sqlmap/itms/srm/SvcDeskReqMapper.xml new file mode 100644 index 00000000..8761c3a9 --- /dev/null +++ b/src/main/resources/mapper/primarydb/sqlmap/itms/srm/SvcDeskReqMapper.xml @@ -0,0 +1,216 @@ + + + + + + + + LIMIT #{recordCountPerPage} OFFSET #{firstIndex} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + /* SvcReqDeskDao.addReqIncident */ + INSERT INTO CM_INCIDENT_APL_INFO + ( + VC_REQ_INCIDENT_NUM + , IN_SERVICE_CODE + , VC_INCIDENT_TITLE + , TX_INCIDENT_BODY + , IN_REQ_USER + , VC_REQ_USER + , IN_CHARGE_USER + , VC_CHARGE_USER + , DT_REQ_DATETIME + , DT_COMPLETE_REQ_DATETIME + , ATCH_FILE_ID + , IN_REQ_STATUS + ) + VALUES + ( + #{vcReqIncidentNum} + , #{inServiceCode} + , #{vcIncidentTitle} + , #{txIncidentBody} + , #{inReqUser} + , #{vcReqUser} + , #{inChargeUser} + , #{vcChargeUser} + , #{dtReqDateTime} + , #{dtCompleteReqDateTime} + , #{atchFileId} + , -1 + ) + + + + /* SvcReqDeskDao.updateReqIncident */ + UPDATE CM_INCIDENT_APL_INFO + SET + IN_SERVICE_CODE = #{inServiceCode} + , VC_INCIDENT_TITLE = #{vcIncidentTitle} + , TX_INCIDENT_BODY = #{txIncidentBody} + , IN_REQ_USER = #{inReqUser} + , VC_REQ_USER = #{vcReqUser} + , IN_CHARGE_USER = #{inChargeUser} + , VC_CHARGE_USER = #{vcChargeUser} + , DT_REQ_DATETIME = #{dtReqDateTime} + , DT_COMPLETE_REQ_DATETIME = #{dtCompleteReqDateTime} + , ATCH_FILE_ID = #{atchFileId} + WHERE VC_REQ_INCIDENT_NUM=#{vcReqIncidentNum} + + + + DELETE FROM CM_INCIDENT_APL_INFO + WHERE VC_REQ_INCIDENT_NUM=#{value} + + + + + /* SvcReqDeskDao.updateReqStatusIncident */ + UPDATE CM_INCIDENT_APL_INFO + SET + IN_REQ_STATUS = #{inReqStatus} + + , RCVD_OPIN = #{reqRptRejTxComment} + + WHERE VC_REQ_INCIDENT_NUM=#{vcReqIncidentNum} + + + + + + + diff --git a/src/main/resources/mapper/primarydb/sqlmap/itms/sys/PrsnlPortletManageMapper.xml b/src/main/resources/mapper/primarydb/sqlmap/itms/sys/PrsnlPortletManageMapper.xml index 4cd4358a..01b480b7 100644 --- a/src/main/resources/mapper/primarydb/sqlmap/itms/sys/PrsnlPortletManageMapper.xml +++ b/src/main/resources/mapper/primarydb/sqlmap/itms/sys/PrsnlPortletManageMapper.xml @@ -7,19 +7,21 @@ + /* PrsnlPortletManageDao.selectPrsnlPortletListCnt */ SELECT COUNT(*) FROM @@ -55,6 +58,7 @@