From 0629923f29554a7c52f8382fd1ee9e1b97ff83d8 Mon Sep 17 00:00:00 2001 From: won503 Date: Mon, 27 Mar 2023 08:35:59 +0900 Subject: [PATCH] =?UTF-8?q?admin=5Fchrg=20=EC=83=81=EC=84=B8=EC=A1=B0?= =?UTF-8?q?=ED=9A=8C=20=EC=88=98=EC=A0=95=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/modules/custMgt/service/custMgtApi.js | 6 +++++ .../src/modules/custMgt/views/ChrgList.vue | 12 +++++++++- .../ez/api/custMgt/CustMgtController.java | 23 +++++++++++++++++++ .../uplus/ez/api/custMgt/CustMgtMapper.java | 11 +++++---- .../uplus/ez/api/custMgt/CustMgtService.java | 20 ++++++++++++++++ .../mapper/mysql/custMgt/custMgt-mapper.xml | 5 ++++ 6 files changed, 72 insertions(+), 5 deletions(-) diff --git a/frontend/src/modules/custMgt/service/custMgtApi.js b/frontend/src/modules/custMgt/service/custMgtApi.js index 6059a41..b02e539 100644 --- a/frontend/src/modules/custMgt/service/custMgtApi.js +++ b/frontend/src/modules/custMgt/service/custMgtApi.js @@ -93,6 +93,11 @@ const insertChrg = (params) => { return httpClient.post('/api/v1/bo/custMgt/insertChrg', params); } +// 충전금 수정 +const updateChrg = (params) => { + return httpClient.post('/api/v1/bo/custMgt/updateChrg', params); +} + const getExcelHeader = category => { // 엑셀에 출력할 Header 정보를 Mockup 데이터로 관리한다. return new Promise(function(resolve, reject) { @@ -135,4 +140,5 @@ export default { duplicateCheckUserId, chrgList, insertChrg, + updateChrg, } diff --git a/frontend/src/modules/custMgt/views/ChrgList.vue b/frontend/src/modules/custMgt/views/ChrgList.vue index c757d76..4e3d0b2 100644 --- a/frontend/src/modules/custMgt/views/ChrgList.vue +++ b/frontend/src/modules/custMgt/views/ChrgList.vue @@ -96,6 +96,7 @@ > + @@ -105,6 +106,7 @@ import customGrid from '@/components/CustomGrid'; import moment from 'moment'; import InsertChrgModal from '../components/InsertChrgModal'; +import chrgDetailPop from '../components/ChrgDetailPop.vue'; class CustomATagRenderer { constructor(props) { @@ -167,7 +169,10 @@ export default { columns:[ {name: 'no', header: 'No', align: 'center', width: 60}, - {name: 'custNm', header: '고객사명', align: 'center', width: 130}, + { + name: 'custNm', header: '고객사명', align: 'center', width: 130, + renderer: {type: CustomATagRenderer, options: {callback: this.inDetailPop}} + }, {name: 'userId', header: '고객명', align: 'center', width: 130}, {name: 'chrgDiv', header: '충전구분', align: 'center', width: 130}, {name: 'chrgDate', header: '기간', align: 'center', width: 130}, @@ -187,6 +192,7 @@ export default { customGrid: customGrid, vuejsDatepicker, InsertChrgModal, + chrgDetailPop, }, created() { this.setPeriodDay(0); @@ -257,6 +263,10 @@ export default { const getCondition = this.$store.getters['searchcondition/getSearchCondition']; }, + + inDetailPop(props){ + this.$refs.chrgDetailPop.ChrgDetailModalOpen(props); + }, //달력 셋팅 setPeriodDay(day) { diff --git a/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtController.java b/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtController.java index aa3218f..abd828c 100644 --- a/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtController.java +++ b/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtController.java @@ -29,6 +29,8 @@ import kr.co.uplus.ez.api.custMgt.dto.AllMemoListReqDto; import kr.co.uplus.ez.api.custMgt.dto.AllMemoListResDto; import kr.co.uplus.ez.api.custMgt.dto.CarryOverListReqDto; import kr.co.uplus.ez.api.custMgt.dto.CarryOverListResDto; +import kr.co.uplus.ez.api.custMgt.dto.ChrgDetailReqDto; +import kr.co.uplus.ez.api.custMgt.dto.ChrgDetailResDto; import kr.co.uplus.ez.api.custMgt.dto.ChrgListReqDto; import kr.co.uplus.ez.api.custMgt.dto.ChrgListResDto; import kr.co.uplus.ez.api.custMgt.dto.DeleteChrgReqDto; @@ -511,6 +513,27 @@ public class CustMgtController { return custService.chrgList(chrgListReqDto); } + /** + * date : 2023. 3. 15. + * auth : won + * desc : 충전관리 상세 조회 + * @param ChrgDetailReqDto + * @return ChrgDetailResDto + * @ + */ + @ApiOperation(value="chrgDetail", notes = "충전관리 목록 조회") + @ApiResponses({ + @ApiResponse(code = HttpServletResponse.SC_OK, message = "SUCESS") + }) + @RequestMapping(value="/chrgDetail", method = {RequestMethod.POST}) + @ResponseBody + public ChrgDetailResDto chrgDetail(@RequestBody @Valid ChrgDetailReqDto chrgDetailReqDto, BindingResult bindingResult) { + if(validComponents.validParameter(bindingResult)) { + return new ChrgDetailResDto(ApiResponseCode.CM_PARAMETER_ERROR); + } + return custService.chrgDetail(chrgDetailReqDto); + } + /** * date : 2023. 3. 15. * auth : won diff --git a/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtMapper.java b/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtMapper.java index 96b6671..92dbaee 100644 --- a/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtMapper.java +++ b/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtMapper.java @@ -113,17 +113,20 @@ public interface CustMgtMapper { /**충전관리 목록 조회*/ List selectChrgList(ChrgListReqDto chrgListReqDto); - + /** 충전관리 상세 조회 */ + ChrgDetail selectChrgDetail(ChrgDetailReqDto chrgDetailReqDto); /**이용자 충전번호 */ String getChrgSeq(); /**충전관리 등록 */ void insertChrgInfo(ChrgInfo chrgInfo); /**충전관리 수정 */ - void updateChrg(@Valid UpdateChrgReqDto updateChrgReqDto); + void updateChrg(UpdateChrgReqDto updateChrgReqDto); /**충전관리 수정후 등록 */ - void addChrg(@Valid ChrgInfo chrgInfo); + void addChrg(ChrgInfo chrgInfo); /**충전관리 삭제 */ - void deleteChrg(@Valid DeleteChrgReqDto deleteChrgReqDto); + void deleteChrg(DeleteChrgReqDto deleteChrgReqDto); + + //2023-03-07 add request 부분 diff --git a/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtService.java b/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtService.java index a3ce88f..c7bb264 100644 --- a/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtService.java +++ b/src/main/java/kr/co/uplus/ez/api/custMgt/CustMgtService.java @@ -1151,6 +1151,26 @@ public class CustMgtService { custMgtMapper.deleteChrg(deleteChrgReqDto); return new DeleteChrgResDto(ApiResponseCode.SUCCESS); } + + /** + * date : 2023. 3. 15. + * auth : won + * desc : 충전관리 상세 조회 + * @param ChrgDetailReqDto + * @return ChrgDetailResDto + */ + public ChrgDetailResDto chrgDetail(@Valid ChrgDetailReqDto chrgDetailReqDto) { + CustMgtMapper custMgtMapper = sqlSessionSlave.getMapper(CustMgtMapper.class); + + ChrgDetail chrgDetail = custMgtMapper.selectChrgDetail(chrgDetailReqDto); + + if (chrgDetail == null) { + return new ChrgDetailResDto(ApiResponseCode.CM_NOT_FOUND); + } + + // 성공 응답. + return new ChrgDetailResDto(ApiResponseCode.SUCCESS, chrgDetail); + } /* 2023-03-07 add request 부분 * date : 2023. 1. 1. diff --git a/src/main/resources/mapper/mysql/custMgt/custMgt-mapper.xml b/src/main/resources/mapper/mysql/custMgt/custMgt-mapper.xml index e778788..cf438ea 100644 --- a/src/main/resources/mapper/mysql/custMgt/custMgt-mapper.xml +++ b/src/main/resources/mapper/mysql/custMgt/custMgt-mapper.xml @@ -1187,6 +1187,11 @@ ( SELECT @ROWNUM := #{page} ) AS R + + +