forked from kimhyungsik/ax_hub_mcp_tool
소스 수정 완료
This commit is contained in:
@@ -229,7 +229,7 @@ public class ToolScaffolder {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @package %s.%s.dto
|
* @package %s.%s.dto
|
||||||
* @className %sMciReqDto
|
* @className %sLegacyReq
|
||||||
* @description AX HUB 시스템 처리 클래스
|
* @description AX HUB 시스템 처리 클래스
|
||||||
* @author %s
|
* @author %s
|
||||||
* @create %s
|
* @create %s
|
||||||
@@ -242,11 +242,11 @@ public class ToolScaffolder {
|
|||||||
* </pre>
|
* </pre>
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class %sMciReqDto {
|
public class %sLegacyReq {
|
||||||
// TODO: Add legacy request fields here
|
// TODO: Add legacy request fields here
|
||||||
}
|
}
|
||||||
""".formatted(BASE_PACKAGE, shortName, BASE_PACKAGE, shortName, baseName, author, createDate, createDate, author, baseName);
|
""".formatted(BASE_PACKAGE, shortName, BASE_PACKAGE, shortName, baseName, author, createDate, createDate, author, baseName);
|
||||||
Files.writeString(legacyDtoDir.resolve(baseName + "MciReqDto.java"), legacyReqContent);
|
Files.writeString(legacyDtoDir.resolve(baseName + "LegacyReq.java"), legacyReqContent);
|
||||||
|
|
||||||
// Generate Legacy Res DTO
|
// Generate Legacy Res DTO
|
||||||
String legacyResContent = """
|
String legacyResContent = """
|
||||||
@@ -256,7 +256,7 @@ public class ToolScaffolder {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @package %s.%s.dto
|
* @package %s.%s.dto
|
||||||
* @className %sMciResDto
|
* @className %sLegacyRes
|
||||||
* @description AX HUB 시스템 처리 클래스
|
* @description AX HUB 시스템 처리 클래스
|
||||||
* @author %s
|
* @author %s
|
||||||
* @create %s
|
* @create %s
|
||||||
@@ -269,27 +269,27 @@ public class ToolScaffolder {
|
|||||||
* </pre>
|
* </pre>
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class %sMciResDto {
|
public class %sLegacyRes {
|
||||||
// TODO: Add legacy response fields here
|
// TODO: Add legacy response fields here
|
||||||
}
|
}
|
||||||
""".formatted(BASE_PACKAGE, shortName, BASE_PACKAGE, shortName, baseName, author, createDate, createDate, author, baseName);
|
""".formatted(BASE_PACKAGE, shortName, BASE_PACKAGE, shortName, baseName, author, createDate, createDate, author, baseName);
|
||||||
Files.writeString(legacyDtoDir.resolve(baseName + "MciResDto.java"), legacyResContent);
|
Files.writeString(legacyDtoDir.resolve(baseName + "LegacyRes.java"), legacyResContent);
|
||||||
|
|
||||||
// Generate MCI Converter
|
// Generate Legacy Converter
|
||||||
String converterContent = """
|
String converterContent = """
|
||||||
package %s.%s.converter;
|
package %s.%s.converter;
|
||||||
|
|
||||||
import %s.dto.%sReq;
|
import %s.dto.%sReq;
|
||||||
import %s.dto.%sRes;
|
import %s.dto.%sRes;
|
||||||
import %s.%s.dto.%sMciReqDto;
|
import %s.%s.dto.%sLegacyReq;
|
||||||
import %s.%s.dto.%sMciResDto;
|
import %s.%s.dto.%sLegacyRes;
|
||||||
import org.mapstruct.Mapper;
|
import org.mapstruct.Mapper;
|
||||||
import org.mapstruct.Mapping;
|
import org.mapstruct.Mapping;
|
||||||
import org.mapstruct.factory.Mappers;
|
import org.mapstruct.factory.Mappers;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package %s.%s.converter
|
* @package %s.%s.converter
|
||||||
* @className %sMciConverter
|
* @className %sLegacyConverter
|
||||||
* @description AX HUB 시스템 처리 클래스
|
* @description AX HUB 시스템 처리 클래스
|
||||||
* @author %s
|
* @author %s
|
||||||
* @create %s
|
* @create %s
|
||||||
@@ -302,14 +302,14 @@ public class ToolScaffolder {
|
|||||||
* </pre>
|
* </pre>
|
||||||
*/
|
*/
|
||||||
@Mapper(componentModel = "spring")
|
@Mapper(componentModel = "spring")
|
||||||
public interface %sMciConverter {
|
public interface %sLegacyConverter {
|
||||||
|
|
||||||
%sMciConverter INSTANCE = Mappers.getMapper(%sMciConverter.class);
|
%sLegacyConverter INSTANCE = Mappers.getMapper(%sLegacyConverter.class);
|
||||||
|
|
||||||
// @Mapping(source = "sourceField", target = "targetField")
|
// @Mapping(source = "sourceField", target = "targetField")
|
||||||
%sMciReqDto toMciReq(%sReq req);
|
%sLegacyReq toLegacyReq(%sReq req);
|
||||||
|
|
||||||
%sRes toRes(%sMciResDto mciRes);
|
%sRes toRes(%sLegacyRes legacyRes);
|
||||||
}
|
}
|
||||||
""".formatted(
|
""".formatted(
|
||||||
BASE_PACKAGE, shortName,
|
BASE_PACKAGE, shortName,
|
||||||
@@ -320,7 +320,7 @@ public class ToolScaffolder {
|
|||||||
BASE_PACKAGE, shortName, baseName, author, createDate, createDate, author,
|
BASE_PACKAGE, shortName, baseName, author, createDate, createDate, author,
|
||||||
baseName, baseName, baseName, baseName, baseName, baseName, baseName
|
baseName, baseName, baseName, baseName, baseName, baseName, baseName
|
||||||
);
|
);
|
||||||
Files.writeString(converterDir.resolve(baseName + "MciConverter.java"), converterContent);
|
Files.writeString(converterDir.resolve(baseName + "LegacyConverter.java"), converterContent);
|
||||||
|
|
||||||
log.append("\n=========================================\n");
|
log.append("\n=========================================\n");
|
||||||
log.append(" Scaffolding Complete!\n");
|
log.append(" Scaffolding Complete!\n");
|
||||||
@@ -328,9 +328,9 @@ public class ToolScaffolder {
|
|||||||
log.append("[Service] ").append(serviceDir.resolve(baseName + "Service.java")).append("\n");
|
log.append("[Service] ").append(serviceDir.resolve(baseName + "Service.java")).append("\n");
|
||||||
log.append("[Req DTO] ").append(dtoDir.resolve(baseName + "Req.java")).append("\n");
|
log.append("[Req DTO] ").append(dtoDir.resolve(baseName + "Req.java")).append("\n");
|
||||||
log.append("[Res DTO] ").append(dtoDir.resolve(baseName + "Res.java")).append("\n");
|
log.append("[Res DTO] ").append(dtoDir.resolve(baseName + "Res.java")).append("\n");
|
||||||
log.append("[MCI Req DTO] ").append(legacyDtoDir.resolve(baseName + "MciReqDto.java")).append("\n");
|
log.append("[Legacy Req DTO] ").append(legacyDtoDir.resolve(baseName + "LegacyReq.java")).append("\n");
|
||||||
log.append("[MCI Res DTO] ").append(legacyDtoDir.resolve(baseName + "MciResDto.java")).append("\n");
|
log.append("[Legacy Res DTO] ").append(legacyDtoDir.resolve(baseName + "LegacyRes.java")).append("\n");
|
||||||
log.append("[MCI Converter] ").append(converterDir.resolve(baseName + "MciConverter.java")).append("\n");
|
log.append("[Legacy Converter] ").append(converterDir.resolve(baseName + "LegacyConverter.java")).append("\n");
|
||||||
log.append("\n Tip: ").append(interfaceId).append(" 목업 데이터를 mock-responses.json에 추가하세요.\n");
|
log.append("\n Tip: ").append(interfaceId).append(" 목업 데이터를 mock-responses.json에 추가하세요.\n");
|
||||||
|
|
||||||
return log.toString();
|
return log.toString();
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package io.shinhanlife.axhub.biz.mcp.tool.sms.converter;
|
package io.shinhanlife.axhub.biz.mcp.tool.sms.converter;
|
||||||
|
|
||||||
import io.shinhanlife.axhub.biz.mcp.tool.dto.SmsSendReq;
|
import io.shinhanlife.axhub.biz.mcp.tool.dto.SmsSendReq;
|
||||||
import io.shinhanlife.axhub.biz.mcp.tool.sms.dto.SmsMciReqDto;
|
import io.shinhanlife.axhub.biz.mcp.tool.sms.dto.SmsLegacyReqDto;
|
||||||
import org.mapstruct.Mapper;
|
import org.mapstruct.Mapper;
|
||||||
import org.mapstruct.Mapping;
|
import org.mapstruct.Mapping;
|
||||||
import org.mapstruct.factory.Mappers;
|
import org.mapstruct.factory.Mappers;
|
||||||
@@ -13,5 +13,5 @@ public interface SmsMciConverter {
|
|||||||
|
|
||||||
@Mapping(source = "phoneNumber", target = "phone")
|
@Mapping(source = "phoneNumber", target = "phone")
|
||||||
@Mapping(source = "message", target = "content")
|
@Mapping(source = "message", target = "content")
|
||||||
SmsMciReqDto toMciReq(SmsSendReq req);
|
SmsLegacyReqDto toMciReq(SmsSendReq req);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import lombok.Getter;
|
|||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Builder
|
@Builder
|
||||||
public class SmsMciReqDto {
|
public class SmsLegacyReqDto {
|
||||||
/**
|
/**
|
||||||
* EAI 시스템이 요구하는 수신자 번호 파라미터명
|
* EAI 시스템이 요구하는 수신자 번호 파라미터명
|
||||||
*/
|
*/
|
||||||
@@ -4,8 +4,8 @@ import io.shinhanlife.axhub.biz.mcp.tool.annotation.McpFunction;
|
|||||||
import io.shinhanlife.axhub.biz.mcp.tool.annotation.McpTool;
|
import io.shinhanlife.axhub.biz.mcp.tool.annotation.McpTool;
|
||||||
import io.shinhanlife.axhub.biz.mcp.tool.dto.SmsSendReq;
|
import io.shinhanlife.axhub.biz.mcp.tool.dto.SmsSendReq;
|
||||||
import io.shinhanlife.axhub.biz.mcp.tool.service.AbstractMcpToolService;
|
import io.shinhanlife.axhub.biz.mcp.tool.service.AbstractMcpToolService;
|
||||||
import io.shinhanlife.axhub.biz.mcp.tool.sms.dto.SmsMciReqDto;
|
|
||||||
import io.shinhanlife.axhub.biz.mcp.tool.sms.converter.SmsMciConverter;
|
import io.shinhanlife.axhub.biz.mcp.tool.sms.converter.SmsMciConverter;
|
||||||
|
import io.shinhanlife.axhub.biz.mcp.tool.sms.dto.SmsLegacyReqDto;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -33,7 +33,7 @@ public class SmsToolService extends AbstractMcpToolService {
|
|||||||
log.info("[SMS] SMS 발송 요청 수신. 수신자: {}", req.getPhoneNumber());
|
log.info("[SMS] SMS 발송 요청 수신. 수신자: {}", req.getPhoneNumber());
|
||||||
|
|
||||||
// MapStruct를 이용한 자동 매핑 (AI DTO -> MCI DTO)
|
// MapStruct를 이용한 자동 매핑 (AI DTO -> MCI DTO)
|
||||||
SmsMciReqDto mciReq = SmsMciConverter.INSTANCE.toMciReq(req);
|
SmsLegacyReqDto mciReq = SmsMciConverter.INSTANCE.toMciReq(req);
|
||||||
|
|
||||||
// 레거시 시스템 연동 (EAI) - DTO 객체를 그대로 넘김
|
// 레거시 시스템 연동 (EAI) - DTO 객체를 그대로 넘김
|
||||||
Map<String, Object> result = executeLegacy("EAI", "SMS_SEND_001", mciReq);
|
Map<String, Object> result = executeLegacy("EAI", "SMS_SEND_001", mciReq);
|
||||||
|
|||||||
Reference in New Issue
Block a user