refactor: 패키지 구조 개선 (api/internal, api/external)

VO 중복 해결 및 패키지 구조 명확화

## 주요 변경사항

### 패키지 구조 재구성
- `go.kr.project.vmis` → `go.kr.project.api.internal`
- `go.kr.project.externalApi` → `go.kr.project.api.external`
- 공통 모델: `go.kr.project.api.model`
- 공통 VO: `go.kr.project.api.vo`
- 공통 설정: `go.kr.project.api.config`

### 새로운 구조
```
go.kr.project.api/
  ├── model/              # 공통 모델
  │   ├── basic/          (BasicRequest, BasicResponse)
  │   ├── ledger/         (LedgerRequest, LedgerResponse)
  │   └── common/         (Envelope)
  ├── vo/                 # 공통 API 응답 VO
  │   ├── VehicleApiResponseVO
  │   ├── VehicleBasicInfoVO
  │   └── VehicleLedgerVO 등
  ├── config/             # 공통 설정
  │   ├── properties/     (VmisProperties)
  │   ├── ApiConstant
  │   ├── VmisIntegrationConfig
  │   └── DatabaseConfig
  ├── VehicleInfoService  # 공통 인터페이스
  ├── internal/           # 내부 모드 (기존 vmis)
  │   ├── client/
  │   ├── config/
  │   ├── controller/
  │   ├── gpki/
  │   ├── mapper/
  │   ├── model/          # 내부 전용 DB VO
  │   ├── service/
  │   └── util/
  └── external/           # 외부 모드 (기존 externalApi)
      └── service/
```

### VO 중복 제거
-  history 패키지와 api.internal 패키지의 VO 명확히 구분
-  공통 모델은 api.model에서 공유
-  Bean 충돌 완전 해결

### MyBatis 업데이트
- mapper 디렉토리: `mybatis/mapper/vmis` → `mybatis/mapper/api-internal`
- namespace: `go.kr.project.vmis` → `go.kr.project.api.internal`

### application.yml 업데이트
- mapper-locations: `api-internal/**/*_maria.xml`

## 장점
 패키지 구조 명확화 (internal/external 구분)
 공통 모델 공유로 중복 제거
 더 나은 아키텍처
 모드별 책임 명확

## 빌드 성공 확인 

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
internalApi
박성영 1 month ago
parent eb61cd9817
commit c3c8bbb024

@ -1,6 +1,6 @@
package go.kr.project.common.service;
package go.kr.project.api;
import go.kr.project.externalApi.vo.VehicleApiResponseVO;
import go.kr.project.api.vo.VehicleApiResponseVO;
import java.util.List;

@ -1,4 +1,4 @@
package go.kr.project.vmis.config;
package go.kr.project.api.config;
/**
*

@ -1,4 +1,4 @@
package go.kr.project.vmis.config;
package go.kr.project.api.config;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;

@ -1,7 +1,7 @@
package go.kr.project.vmis.config;
package go.kr.project.api.config;
import go.kr.project.common.service.VehicleInfoService;
import go.kr.project.vmis.config.properties.VmisProperties;
import go.kr.project.api.VehicleInfoService;
import go.kr.project.api.config.properties.VmisProperties;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.CommandLineRunner;

@ -1,4 +1,4 @@
package go.kr.project.vmis.config.properties;
package go.kr.project.api.config.properties;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

@ -1,6 +1,6 @@
package go.kr.project.externalApi.service;
package go.kr.project.api.external.service;
import go.kr.project.externalApi.vo.*;
import go.kr.project.api.vo.*;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.core.ParameterizedTypeReference;

@ -1,7 +1,7 @@
package go.kr.project.externalApi.service;
package go.kr.project.api.external.service;
import go.kr.project.common.service.VehicleInfoService;
import go.kr.project.externalApi.vo.VehicleApiResponseVO;
import go.kr.project.api.VehicleInfoService;
import go.kr.project.api.vo.VehicleApiResponseVO;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;

@ -1,10 +1,10 @@
package go.kr.project.vmis.client;
package go.kr.project.api.internal.client;
import go.kr.project.vmis.model.basic.BasicRequest;
import go.kr.project.vmis.model.basic.BasicResponse;
import go.kr.project.vmis.model.common.Envelope;
import go.kr.project.vmis.model.ledger.LedgerRequest;
import go.kr.project.vmis.model.ledger.LedgerResponse;
import go.kr.project.api.model.basic.BasicRequest;
import go.kr.project.api.model.basic.BasicResponse;
import go.kr.project.api.model.common.Envelope;
import go.kr.project.api.model.ledger.LedgerRequest;
import go.kr.project.api.model.ledger.LedgerResponse;
import org.springframework.http.ResponseEntity;
/**

@ -1,15 +1,15 @@
package go.kr.project.vmis.client;
package go.kr.project.api.internal.client;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import go.kr.project.vmis.config.properties.VmisProperties;
import go.kr.project.vmis.gpki.GpkiService;
import go.kr.project.vmis.model.basic.BasicRequest;
import go.kr.project.vmis.model.basic.BasicResponse;
import go.kr.project.vmis.model.common.Envelope;
import go.kr.project.vmis.model.ledger.LedgerRequest;
import go.kr.project.vmis.model.ledger.LedgerResponse;
import go.kr.project.vmis.util.TxIdUtil;
import go.kr.project.api.config.properties.VmisProperties;
import go.kr.project.api.internal.gpki.GpkiService;
import go.kr.project.api.model.basic.BasicRequest;
import go.kr.project.api.model.basic.BasicResponse;
import go.kr.project.api.model.common.Envelope;
import go.kr.project.api.model.ledger.LedgerRequest;
import go.kr.project.api.model.ledger.LedgerResponse;
import go.kr.project.api.internal.util.TxIdUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.http.*;

@ -1,4 +1,4 @@
package go.kr.project.vmis.config;
package go.kr.project.api.config;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

@ -1,9 +1,9 @@
package go.kr.project.vmis.config;
package go.kr.project.api.config;
import go.kr.project.vmis.config.properties.VmisProperties;
import go.kr.project.vmis.gpki.GpkiService;
import go.kr.project.vmis.gpki.NoopGpkiService;
import go.kr.project.vmis.gpki.RealGpkiService;
import go.kr.project.api.config.properties.VmisProperties;
import go.kr.project.api.internal.gpki.GpkiService;
import go.kr.project.api.internal.gpki.NoopGpkiService;
import go.kr.project.api.internal.gpki.RealGpkiService;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@ -1,6 +1,6 @@
package go.kr.project.vmis.config;
package go.kr.project.api.config;
import go.kr.project.vmis.config.properties.VmisProperties;
import go.kr.project.api.config.properties.VmisProperties;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder;

@ -1,4 +1,4 @@
package go.kr.project.vmis.config;
package go.kr.project.api.config;
import io.swagger.v3.oas.models.ExternalDocumentation;
import io.swagger.v3.oas.models.OpenAPI;

@ -1,6 +1,6 @@
package go.kr.project.vmis.config;
package go.kr.project.api.config;
import go.kr.project.vmis.config.properties.VmisProperties;
import go.kr.project.api.config.properties.VmisProperties;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Configuration;

@ -1,12 +1,12 @@
package go.kr.project.vmis.controller;
package go.kr.project.api.internal.controller;
import go.kr.project.vmis.model.basic.BasicRequest;
import go.kr.project.vmis.model.basic.BasicResponse;
import go.kr.project.vmis.model.common.Envelope;
import go.kr.project.vmis.model.ledger.LedgerRequest;
import go.kr.project.vmis.model.ledger.LedgerResponse;
import go.kr.project.vmis.service.VmisCarBassMatterInqireService;
import go.kr.project.vmis.service.VmisCarLedgerFrmbkService;
import go.kr.project.api.model.basic.BasicRequest;
import go.kr.project.api.model.basic.BasicResponse;
import go.kr.project.api.model.common.Envelope;
import go.kr.project.api.model.ledger.LedgerRequest;
import go.kr.project.api.model.ledger.LedgerResponse;
import go.kr.project.api.internal.service.VmisCarBassMatterInqireService;
import go.kr.project.api.internal.service.VmisCarLedgerFrmbkService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.media.Content;
import io.swagger.v3.oas.annotations.media.ExampleObject;

@ -1,4 +1,4 @@
package go.kr.project.vmis.gpki;
package go.kr.project.api.internal.gpki;
public interface GpkiService {
String encrypt(String plain) throws Exception;

@ -1,4 +1,4 @@
package go.kr.project.vmis.gpki;
package go.kr.project.api.internal.gpki;
public class NoopGpkiService implements GpkiService {
@Override

@ -1,7 +1,7 @@
package go.kr.project.vmis.gpki;
package go.kr.project.api.internal.gpki;
import go.kr.project.vmis.config.properties.VmisProperties;
import go.kr.project.vmis.util.GpkiCryptoUtil;
import go.kr.project.api.config.properties.VmisProperties;
import go.kr.project.api.internal.util.GpkiCryptoUtil;
/**
* Real GPKI service backed by native GPKI JNI via legacy NewGpkiUtil wrapper.

@ -1,6 +1,6 @@
package go.kr.project.vmis.mapper;
package go.kr.project.api.internal.mapper;
import go.kr.project.vmis.model.basic.VmisCarBassMatterInqireVO;
import go.kr.project.api.model.basic.VmisCarBassMatterInqireVO;
import org.apache.ibatis.annotations.Mapper;
/**

@ -1,7 +1,7 @@
package go.kr.project.vmis.mapper;
package go.kr.project.api.internal.mapper;
import go.kr.project.vmis.model.ledger.VmisCarLedgerFrmbkDtlVO;
import go.kr.project.vmis.model.ledger.VmisCarLedgerFrmbkVO;
import go.kr.project.api.model.ledger.VmisCarLedgerFrmbkDtlVO;
import go.kr.project.api.model.ledger.VmisCarLedgerFrmbkVO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;

@ -1,7 +1,7 @@
package go.kr.project.vmis.model.basic;
package go.kr.project.api.model.basic;
import go.kr.project.vmis.config.ApiConstant;
import go.kr.project.vmis.model.common.Envelope;
import go.kr.project.api.config.ApiConstant;
import go.kr.project.api.model.common.Envelope;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;

@ -1,6 +1,6 @@
package go.kr.project.vmis.model.ledger;
package go.kr.project.api.model.ledger;
import go.kr.project.vmis.config.ApiConstant;
import go.kr.project.api.config.ApiConstant;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;

@ -1,6 +1,6 @@
package go.kr.project.vmis.model.ledger;
package go.kr.project.api.model.ledger;
import go.kr.project.vmis.config.ApiConstant;
import go.kr.project.api.config.ApiConstant;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
@ -18,7 +18,7 @@ import lombok.NoArgsConstructor;
public class VmisCarLedgerFrmbkVO {
// ==== Static factory/mapping methods (moved from Service) ====
public static VmisCarLedgerFrmbkVO fromRequest(go.kr.project.vmis.model.ledger.LedgerRequest request) {
public static VmisCarLedgerFrmbkVO fromRequest(go.kr.project.api.model.ledger.LedgerRequest request) {
return VmisCarLedgerFrmbkVO.builder()
.infoSysId(request.getInfoSysId())
.infoSysIp(request.getInfoSysIp())
@ -32,7 +32,7 @@ public class VmisCarLedgerFrmbkVO {
.build();
}
public static VmisCarLedgerFrmbkVO fromResponseMaster(String id, go.kr.project.vmis.model.ledger.LedgerResponse res) {
public static VmisCarLedgerFrmbkVO fromResponseMaster(String id, go.kr.project.api.model.ledger.LedgerResponse res) {
return VmisCarLedgerFrmbkVO.builder()
.carLedgerFrmbkId(id) // 등록원부 ID
.cntcResultCode(res.getCntcResultCode()) // 연계 결과 코드

@ -1,15 +1,15 @@
package go.kr.project.vmis.service;
import go.kr.project.common.service.VehicleInfoService;
import go.kr.project.externalApi.vo.VehicleApiResponseVO;
import go.kr.project.externalApi.vo.VehicleBasicInfoVO;
import go.kr.project.externalApi.vo.VehicleLedgerVO;
import go.kr.project.vmis.model.basic.BasicRequest;
import go.kr.project.vmis.model.basic.BasicResponse;
import go.kr.project.vmis.model.common.Envelope;
import go.kr.project.vmis.model.ledger.LedgerRequest;
import go.kr.project.vmis.model.ledger.LedgerResponse;
import go.kr.project.vmis.util.VehicleResponseMapper;
package go.kr.project.api.internal.service;
import go.kr.project.api.VehicleInfoService;
import go.kr.project.api.vo.VehicleApiResponseVO;
import go.kr.project.api.vo.VehicleBasicInfoVO;
import go.kr.project.api.vo.VehicleLedgerVO;
import go.kr.project.api.model.basic.BasicRequest;
import go.kr.project.api.model.basic.BasicResponse;
import go.kr.project.api.model.common.Envelope;
import go.kr.project.api.model.ledger.LedgerRequest;
import go.kr.project.api.model.ledger.LedgerResponse;
import go.kr.project.api.internal.util.VehicleResponseMapper;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;

@ -1,7 +1,7 @@
package go.kr.project.vmis.service;
package go.kr.project.api.internal.service;
import go.kr.project.vmis.mapper.VmisCarBassMatterInqireMapper;
import go.kr.project.vmis.model.basic.VmisCarBassMatterInqireVO;
import go.kr.project.api.internal.mapper.VmisCarBassMatterInqireMapper;
import go.kr.project.api.model.basic.VmisCarBassMatterInqireVO;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

@ -1,12 +1,12 @@
package go.kr.project.vmis.service;
package go.kr.project.api.internal.service;
import go.kr.project.vmis.client.GovernmentApi;
import go.kr.project.vmis.config.ApiConstant;
import go.kr.project.vmis.util.ExceptionDetailUtil;
import go.kr.project.vmis.model.basic.BasicRequest;
import go.kr.project.vmis.model.basic.BasicResponse;
import go.kr.project.vmis.model.basic.VmisCarBassMatterInqireVO;
import go.kr.project.vmis.model.common.Envelope;
import go.kr.project.api.internal.client.GovernmentApi;
import go.kr.project.api.config.ApiConstant;
import go.kr.project.api.internal.util.ExceptionDetailUtil;
import go.kr.project.api.model.basic.BasicRequest;
import go.kr.project.api.model.basic.BasicResponse;
import go.kr.project.api.model.basic.VmisCarBassMatterInqireVO;
import go.kr.project.api.model.common.Envelope;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.ResponseEntity;

@ -1,8 +1,8 @@
package go.kr.project.vmis.service;
package go.kr.project.api.internal.service;
import go.kr.project.vmis.mapper.VmisCarLedgerFrmbkMapper;
import go.kr.project.vmis.model.ledger.VmisCarLedgerFrmbkDtlVO;
import go.kr.project.vmis.model.ledger.VmisCarLedgerFrmbkVO;
import go.kr.project.api.internal.mapper.VmisCarLedgerFrmbkMapper;
import go.kr.project.api.model.ledger.VmisCarLedgerFrmbkDtlVO;
import go.kr.project.api.model.ledger.VmisCarLedgerFrmbkVO;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

@ -1,13 +1,13 @@
package go.kr.project.vmis.service;
package go.kr.project.api.internal.service;
import go.kr.project.vmis.client.GovernmentApi;
import go.kr.project.vmis.config.ApiConstant;
import go.kr.project.vmis.model.common.Envelope;
import go.kr.project.vmis.model.ledger.VmisCarLedgerFrmbkDtlVO;
import go.kr.project.vmis.model.ledger.VmisCarLedgerFrmbkVO;
import go.kr.project.vmis.model.ledger.LedgerRequest;
import go.kr.project.vmis.model.ledger.LedgerResponse;
import go.kr.project.vmis.util.ExceptionDetailUtil;
import go.kr.project.api.internal.client.GovernmentApi;
import go.kr.project.api.config.ApiConstant;
import go.kr.project.api.model.common.Envelope;
import go.kr.project.api.model.ledger.VmisCarLedgerFrmbkDtlVO;
import go.kr.project.api.model.ledger.VmisCarLedgerFrmbkVO;
import go.kr.project.api.model.ledger.LedgerRequest;
import go.kr.project.api.model.ledger.LedgerResponse;
import go.kr.project.api.internal.util.ExceptionDetailUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.ResponseEntity;

@ -1,9 +1,9 @@
package go.kr.project.vmis.service;
package go.kr.project.api.internal.service;
import go.kr.project.vmis.config.properties.VmisProperties;
import go.kr.project.vmis.model.basic.BasicRequest;
import go.kr.project.vmis.model.common.Envelope;
import go.kr.project.vmis.model.ledger.LedgerRequest;
import go.kr.project.api.config.properties.VmisProperties;
import go.kr.project.api.model.basic.BasicRequest;
import go.kr.project.api.model.common.Envelope;
import go.kr.project.api.model.ledger.LedgerRequest;
import org.springframework.stereotype.Component;
import lombok.extern.slf4j.Slf4j;

@ -1,4 +1,4 @@
package go.kr.project.vmis.util;
package go.kr.project.api.internal.util;
/**
* Common helper to extract root-cause message and truncate to DB column limit (default 4000 chars).

@ -1,6 +1,6 @@
package go.kr.project.vmis.util;
package go.kr.project.api.internal.util;
import go.kr.project.vmis.config.properties.VmisProperties;
import go.kr.project.api.config.properties.VmisProperties;
import lombok.Getter;
import lombok.Setter;

@ -1,4 +1,4 @@
package go.kr.project.vmis.util;
package go.kr.project.api.internal.util;
import java.io.File;
import java.util.HashMap;

@ -1,4 +1,4 @@
package go.kr.project.vmis.util;
package go.kr.project.api.internal.util;
import java.text.SimpleDateFormat;
import java.util.Date;

@ -1,9 +1,9 @@
package go.kr.project.vmis.util;
package go.kr.project.api.internal.util;
import go.kr.project.externalApi.vo.VehicleBasicInfoVO;
import go.kr.project.externalApi.vo.VehicleLedgerVO;
import go.kr.project.vmis.model.basic.BasicResponse;
import go.kr.project.vmis.model.ledger.LedgerResponse;
import go.kr.project.api.vo.VehicleBasicInfoVO;
import go.kr.project.api.vo.VehicleLedgerVO;
import go.kr.project.api.model.basic.BasicResponse;
import go.kr.project.api.model.ledger.LedgerResponse;
import java.util.ArrayList;
import java.util.Collections;

@ -1,4 +1,4 @@
package go.kr.project.vmis.model.basic;
package go.kr.project.api.model.basic;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;

@ -1,4 +1,4 @@
package go.kr.project.vmis.model.basic;
package go.kr.project.api.model.basic;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;

@ -1,4 +1,4 @@
package go.kr.project.vmis.model.common;
package go.kr.project.api.model.common;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;

@ -1,4 +1,4 @@
package go.kr.project.vmis.model.ledger;
package go.kr.project.api.model.ledger;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;

@ -1,4 +1,4 @@
package go.kr.project.vmis.model.ledger;
package go.kr.project.api.model.ledger;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;

@ -1,4 +1,4 @@
package go.kr.project.externalApi.vo;
package go.kr.project.api.vo;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;

@ -1,4 +1,4 @@
package go.kr.project.externalApi.vo;
package go.kr.project.api.vo;
import lombok.AllArgsConstructor;
import lombok.Builder;

@ -1,4 +1,4 @@
package go.kr.project.externalApi.vo;
package go.kr.project.api.vo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;

@ -1,4 +1,4 @@
package go.kr.project.externalApi.vo;
package go.kr.project.api.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Builder;

@ -1,4 +1,4 @@
package go.kr.project.externalApi.vo;
package go.kr.project.api.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Builder;

@ -1,4 +1,4 @@
package go.kr.project.externalApi.vo;
package go.kr.project.api.vo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;

@ -2,8 +2,8 @@ package go.kr.project.carInspectionPenalty.search.Controller;
import egovframework.constant.TilesConstants;
import egovframework.util.ApiResponseUtil;
import go.kr.project.externalApi.service.ExternalVehicleApiService;
import go.kr.project.externalApi.vo.VehicleApiResponseVO;
import go.kr.project.api.external.service.ExternalVehicleApiService;
import go.kr.project.api.vo.VehicleApiResponseVO;
import go.kr.project.common.service.CommonCodeService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;

@ -31,7 +31,7 @@ mybatis:
config-location: classpath:mybatis/mybatis-config.xml
mapper-locations:
- classpath:mybatis/mapper/**/*_${Globals.DbType}.xml
- classpath:mybatis/mapper/vmis/**/*_${Globals.DbType}.xml
- classpath:mybatis/mapper/api-internal/**/*_${Globals.DbType}.xml
type-aliases-package: go.kr.project.**.model,egovframework.**.model
# Springdoc OpenAPI 설정

@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="go.kr.project.vmis.mapper.VmisCarBassMatterInqireMapper">
<mapper namespace="go.kr.project.api.internal.mapper.VmisCarBassMatterInqireMapper">
<!-- 시퀀스로 새로운 ID 생성 -->
<select id="selectNextCarBassMatterInqireId" resultType="String">

@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="go.kr.project.vmis.mapper.VmisCarLedgerFrmbkMapper">
<mapper namespace="go.kr.project.api.internal.mapper.VmisCarLedgerFrmbkMapper">
<!-- 시퀀스로 새로운 마스터/상세 ID 생성 -->
<select id="selectNextCarLedgerFrmbkId" resultType="String">
Loading…
Cancel
Save