diff --git a/src/main/front/src/components/SearchParameterDto.js b/src/main/front/src/components/SearchParameterDto.js new file mode 100644 index 0000000..1b6247e --- /dev/null +++ b/src/main/front/src/components/SearchParameterDto.js @@ -0,0 +1,40 @@ +function SearchParameterDto() { + this.page = 1 + this.itemCountPerPage = 20 + this.totalItemCount = 0 + this.pageList = [1] + this.parameters = {} +} + +SearchParameterDto.prototype.calculatePageList = function (currentPage, currentItemCountPerPage = 20, currentTotalItemCount) { + this.itemCountPerPage = currentItemCountPerPage + this.totalItemCount = currentTotalItemCount + if (this.totalItemCount > 0) { + let pageSize = Math.floor(this.totalItemCount / this.itemCountPerPage) + 1 + this.page = currentPage >= 1 && currentPage <= pageSize ? currentPage : 1 + let startPage = Math.floor((this.page - 1) / 10) * 10 + 1 + let lastPage = Math.max(startPage + 10, pageSize) + let pageArray = [] + for (let i = startPage; i <= lastPage; i++) { + pageArray.push(i) + } + this.pageList = pageArray + } else { + this.pageList = [1] + this.page = 1 + } +} + +SearchParameterDto.prototype.setParameter = function (key, value) { + this.parameters[key] = value +} + +SearchParameterDto.prototype.getParameter = function (key) { + return this.parameters[key] +} + +SearchParameterDto.prototype.clearParameter = function () { + this.parameters = {} +} + +export default SearchParameterDto diff --git a/src/main/front/src/views/MessageHistoryView.vue b/src/main/front/src/views/MessageHistoryView.vue index 0a090f3..3e1eda2 100644 --- a/src/main/front/src/views/MessageHistoryView.vue +++ b/src/main/front/src/views/MessageHistoryView.vue @@ -2,22 +2,27 @@ import '@/assets/main.css' import { useApiClient } from '@/main' import { onMounted, ref } from 'vue' +import SearchParameterDto from '@/components/SearchParameterDto' const apiClient = useApiClient() -async function getAgentMessageDtoList() { - const response = await apiClient.post('/app-api/agent/getAgentMessageDtoList') - return response.data -} +const dfxAgentMessageDtoList = ref([]) +const searchParameterDto = ref(new SearchParameterDto()) -let dfxAgentMessageDtoList = ref([]) +async function retrieveDataList(pageIndex) { + const totalCountResponse = await apiClient.post('/app-api/agent/getAgentMessageDtoListTotalCount', searchParameterDto.value) + const totalCount = totalCountResponse.data + searchParameterDto.value.calculatePageList(pageIndex, searchParameterDto.value.itemCountPerPage, totalCount) + const response = await apiClient.post('/app-api/agent/getAgentMessageDtoList', searchParameterDto.value) + dfxAgentMessageDtoList.value = response.data +} function setDfaAgentInfoDto(dfxAgentMessageDto) { alert(dfxAgentMessageDto) } onMounted(async () => { - dfxAgentMessageDtoList.value = await getAgentMessageDtoList() + await retrieveDataList(1) }) @@ -25,44 +30,83 @@ onMounted(async () => {
-

Dashboard

+

송수신 메시지 목록

-
송수신 메시지 목록
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Message UUIDSender (Postman)Recipient (Dropbox)SendReceiveStatusData countData
{{ dfxAgentMessageDto.messageUuid }}{{ dfxAgentMessageDto.senderAgentId }}({{ dfxAgentMessageDto.senderPostmanId }}){{ dfxAgentMessageDto.recipientAgentId }}({{ dfxAgentMessageDto.receipientDropboxId }}){{ dfxAgentMessageDto.senderTimeString }}{{ dfxAgentMessageDto.recipientTimeString }}{{ dfxAgentMessageDto.processStatusCode }}{{ dfxAgentMessageDto.messageDateCount }}
no datas.
+
+
+ +
+
+ +
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Message UUIDSender (Postman)Recipient (Dropbox)SendReceiveStatusData countData
{{ dfxAgentMessageDto.messageUuid }}{{ dfxAgentMessageDto.senderAgentId }}({{ dfxAgentMessageDto.senderPostmanId }}){{ dfxAgentMessageDto.recipientAgentId }}({{ dfxAgentMessageDto.recipientDropboxId }}){{ dfxAgentMessageDto.senderTimeString }}{{ dfxAgentMessageDto.recipientTimeString }}{{ dfxAgentMessageDto.processStatusCode }}{{ dfxAgentMessageDto.messageDataCount }}
no datas.
+
+
+
- + diff --git a/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/DfxAgentInfoController.java b/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/DfxAgentInfoController.java index 585bbab..1366f09 100644 --- a/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/DfxAgentInfoController.java +++ b/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/DfxAgentInfoController.java @@ -47,6 +47,12 @@ public class DfxAgentInfoController { } } + @PostMapping("/app-api/agent/getAgentMessageDtoListTotalCount") + public ResponseEntity getAgentMessageDtoListTotalCount() { + int totalCount = dfxAgentMessageHistoryService.selectDfxAgentMessageDtoListTotalCount(); + return ResponseEntity.ok().body(totalCount); + } + @PostMapping("/app-api/agent/getAgentMessageDtoList") public ResponseEntity> getAgentMessageDtoList() { List dfxAgentMessageDtoList = dfxAgentMessageHistoryService.selectDfxAgentMessageDtoList(); diff --git a/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/service/DfxAgentMessageHistoryMapper.java b/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/service/DfxAgentMessageHistoryMapper.java index 47df379..5e643eb 100644 --- a/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/service/DfxAgentMessageHistoryMapper.java +++ b/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/service/DfxAgentMessageHistoryMapper.java @@ -7,6 +7,7 @@ import java.util.List; @Mapper public interface DfxAgentMessageHistoryMapper { List selectDfxAgentMessageList(); + int selectDfxAgentMessageListTotalCount(); DfxAgentMessageDto selectDfxAgentMessageBySenderAgentIdAndMessageUuid(DfxAgentMessageDto dfxAgentMessageDto); void insertDfxAgentMessage(DfxAgentMessageDto dfxAgentMessageDto); List selectDfxAgentMessageHistoryList(); diff --git a/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/service/DfxAgentMessageHistoryService.java b/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/service/DfxAgentMessageHistoryService.java index 04dcd3b..9a185ef 100644 --- a/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/service/DfxAgentMessageHistoryService.java +++ b/src/main/java/com/bsmlab/dfx/dfxconsole/app/agent/service/DfxAgentMessageHistoryService.java @@ -23,6 +23,11 @@ public class DfxAgentMessageHistoryService { return dfxAgentMessageDtoList; } + public int selectDfxAgentMessageDtoListTotalCount() { + int totalCount = dfxAgentMessageHistoryMapper.selectDfxAgentMessageListTotalCount(); + return totalCount; + } + public List> selectDfxAgentMessageData(DfxAgentMessageDto inputDfxAgentMessageDto) throws JsonProcessingException { DfxAgentMessageDto dfxAgentMessageDto = dfxAgentMessageHistoryMapper.selectDfxAgentMessageBySenderAgentIdAndMessageUuid(inputDfxAgentMessageDto); ObjectMapper objectMapper = new ObjectMapper(); diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 0b76167..ae5e0c5 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -66,7 +66,7 @@ logging: jdbc: audit: OFF resultset: OFF - resultsettable: INFO #SQL 결과 데이터 Table을 로그로 남긴다. + resultsettable: OFF #SQL 결과 데이터 Table을 로그로 남긴다. sqlonly: OFF #SQL만 로그로 남긴다. sqltiming: DEBUG #SQL과 소요시간을 표기한다. connection : OFF # 커넥션 확인가능 diff --git a/src/main/resources/mapper/app/dfx-agent-message-history.xml b/src/main/resources/mapper/app/dfx-agent-message-history.xml index c5d388d..b807ac8 100644 --- a/src/main/resources/mapper/app/dfx-agent-message-history.xml +++ b/src/main/resources/mapper/app/dfx-agent-message-history.xml @@ -24,8 +24,20 @@ JOIN TB_DFX_AGENT_INFO B ON (A.SENDER_AGENT_ID = B.AGENT_ID) JOIN TB_DFX_AGENT_INFO C ON (A.RECIPIENT_AGENT_ID = C.AGENT_ID) WHERE 1 = 1 - AND A.SENDER_AGENT_ID = #{senderAgentId} - AND A.MESSAGE_UUID = #{messageUuid} + ]]> + + +