diff --git a/http/change-password.http b/http/change-password.http
new file mode 100644
index 0000000..66f47d2
--- /dev/null
+++ b/http/change-password.http
@@ -0,0 +1,45 @@
+### Register User
+POST http://localhost:8080/api/v1/auth/register
+Content-Type: application/json
+
+{
+ "firstname": "Ali",
+ "lastname": "Bouali",
+ "email": "alibou@mail.com",
+ "password": "password",
+ "role": "ADMIN"
+}
+
+> {% client.global.set("auth-token", response.body.access_token); %}
+
+### Query the Demo endpoint
+GET http://localhost:8080/api/v1/demo-controller
+Authorization: Bearer {{auth-token}}
+
+
+### Change the password
+PATCH http://localhost:8080/api/v1/users
+Content-Type: application/json
+Authorization: Bearer {{auth-token}}
+
+{
+ "currentPassword": "password",
+ "newPassword": "newPassword",
+ "confirmationPassword": "newPassword"
+}
+
+### Login again and update the token
+POST http://localhost:8080/api/v1/auth/authenticate
+Content-Type: application/json
+
+{
+ "email": "alibou@mail.com",
+ "password": "newPassword"
+}
+
+> {% client.global.set("new-auth-token", response.body.access_token); %}
+
+
+### Query the Demo endpoint after password change
+GET http://localhost:8080/api/v1/demo-controller
+Authorization: Bearer {{new-auth-token}}
diff --git a/http/http-test.http b/http/http-test.http
new file mode 100644
index 0000000..918cb2e
--- /dev/null
+++ b/http/http-test.http
@@ -0,0 +1,17 @@
+### Register User
+POST http://localhost:8080/api/v1/auth/register
+Content-Type: application/json
+
+{
+ "firstname": "Ali",
+ "lastname": "Bouali",
+ "email": "alibou21@mail.com",
+ "password": "password",
+ "role": "ADMIN"
+}
+
+> {% client.global.set("auth-token", response.body.access_token); %}
+
+### Query the Demo endpoint
+GET http://localhost:8080/api/v1/demo-controller
+Authorization: Bearer {{auth-token}}
diff --git a/http/jpa-auditing.http b/http/jpa-auditing.http
new file mode 100644
index 0000000..a8245bb
--- /dev/null
+++ b/http/jpa-auditing.http
@@ -0,0 +1,44 @@
+### Register User
+POST http://localhost:8080/api/v1/auth/register
+Content-Type: application/json
+
+{
+ "firstname": "Ali",
+ "lastname": "Bouali",
+ "email": "alibou@mail.com",
+ "password": "password",
+ "role": "ADMIN"
+}
+
+> {% client.global.set("auth-token", response.body.access_token); %}
+
+
+###Create a new book
+POST http://localhost:8080/api/v1/books
+Authorization: Bearer {{auth-token}}
+Content-Type: application/json
+
+{
+ "author": "Alibou",
+ "isbn": "12345"
+}
+
+### Query Books
+GET http://localhost:8080/api/v1/books
+Authorization: Bearer {{auth-token}}
+
+### Update one book
+POST http://localhost:8080/api/v1/books
+Authorization: Bearer {{auth-token}}
+Content-Type: application/json
+
+{
+ "id": 1,
+ "author": "Alibou 2",
+ "isbn": "12345"
+}
+
+
+### Query the Books one more time
+GET http://localhost:8080/api/v1/books
+Authorization: Bearer {{auth-token}}
diff --git a/jwt-security.drawio b/jwt-security.drawio
new file mode 100644
index 0000000..75c044a
--- /dev/null
+++ b/jwt-security.drawio
@@ -0,0 +1,517 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/logs/integration-service.log b/logs/integration-service.log
new file mode 100644
index 0000000..02a4341
--- /dev/null
+++ b/logs/integration-service.log
@@ -0,0 +1,25 @@
+2026-05-20T08:25:45.241-04:00 INFO 5596 --- [main] com.goi.erp.SecurityApplication : Starting SecurityApplication using Java 17.0.16 with PID 5596 (D:\workspace-eclipse\crm-rest-api\target\classes started by Hyojin Ahn in D:\workspace-eclipse\crm-rest-api)
+2026-05-20T08:25:45.246-04:00 INFO 5596 --- [main] com.goi.erp.SecurityApplication : The following 1 profile is active: "default"
+2026-05-20T08:25:45.694-04:00 INFO 5596 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
+2026-05-20T08:25:45.786-04:00 INFO 5596 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 87 ms. Found 3 JPA repository interfaces.
+2026-05-20T08:25:46.383-04:00 INFO 5596 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8082 (http)
+2026-05-20T08:25:46.389-04:00 INFO 5596 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
+2026-05-20T08:25:46.389-04:00 INFO 5596 --- [main] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.13]
+2026-05-20T08:25:46.457-04:00 INFO 5596 --- [main] o.a.c.c.C.[.[localhost].[/crm-rest-api] : Initializing Spring embedded WebApplicationContext
+2026-05-20T08:25:46.457-04:00 INFO 5596 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1173 ms
+2026-05-20T08:25:46.602-04:00 INFO 5596 --- [main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]
+2026-05-20T08:25:46.632-04:00 INFO 5596 --- [main] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.2.9.Final
+2026-05-20T08:25:46.635-04:00 INFO 5596 --- [main] org.hibernate.cfg.Environment : HHH000406: Using bytecode reflection optimizer
+2026-05-20T08:25:46.716-04:00 INFO 5596 --- [main] o.h.b.i.BytecodeProviderInitiator : HHH000021: Bytecode provider name : bytebuddy
+2026-05-20T08:25:46.783-04:00 INFO 5596 --- [main] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer
+2026-05-20T08:25:46.793-04:00 INFO 5596 --- [main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
+2026-05-20T08:25:46.891-04:00 INFO 5596 --- [main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@674e4c82
+2026-05-20T08:25:46.892-04:00 INFO 5596 --- [main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
+2026-05-20T08:25:47.044-04:00 INFO 5596 --- [main] o.h.b.i.BytecodeProviderInitiator : HHH000021: Bytecode provider name : bytebuddy
+2026-05-20T08:25:47.499-04:00 INFO 5596 --- [main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
+2026-05-20T08:25:47.549-04:00 INFO 5596 --- [main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
+2026-05-20T08:25:47.931-04:00 WARN 5596 --- [main] JpaBaseConfiguration$JpaWebConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning
+2026-05-20T08:25:48.177-04:00 INFO 5596 --- [main] o.s.b.a.e.web.EndpointLinksResolver : Exposing 1 endpoint(s) beneath base path '/actuator'
+2026-05-20T08:25:48.210-04:00 INFO 5596 --- [main] o.s.s.web.DefaultSecurityFilterChain : Will secure any request with [org.springframework.security.web.session.DisableEncodeUrlFilter@466fd19b, org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@348d1a5e, org.springframework.security.web.context.SecurityContextHolderFilter@3fc92211, org.springframework.security.web.header.HeaderWriterFilter@227ae4e4, org.springframework.security.web.authentication.logout.LogoutFilter@3ae5cbb9, org.springframework.web.filter.CorsFilter@7f746160, com.goi.erp.config.JwtAuthenticationFilter@16ea0f22, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@117bfeb8, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@31aec04a, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@17524c36, org.springframework.security.web.session.SessionManagementFilter@440309c5, org.springframework.security.web.access.ExceptionTranslationFilter@1b2213b2, org.springframework.security.web.access.intercept.AuthorizationFilter@24e0bdb]
+2026-05-20T08:25:48.496-04:00 INFO 5596 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8082 (http) with context path '/crm-rest-api'
+2026-05-20T08:25:48.505-04:00 INFO 5596 --- [main] com.goi.erp.SecurityApplication : Started SecurityApplication in 3.548 seconds (process running for 3.992)
diff --git a/logs/integration-service.log.2026-03-19.0.gz b/logs/integration-service.log.2026-03-19.0.gz
new file mode 100644
index 0000000..7e30c44
Binary files /dev/null and b/logs/integration-service.log.2026-03-19.0.gz differ
diff --git a/logs/integration-service.log.2026-03-30.0.gz b/logs/integration-service.log.2026-03-30.0.gz
new file mode 100644
index 0000000..0364b6b
Binary files /dev/null and b/logs/integration-service.log.2026-03-30.0.gz differ
diff --git a/src/main/java/com/goi/erp/dto/CustomerDailyOrderRequestDto.java b/src/main/java/com/goi/erp/dto/CustomerDailyOrderRequestDto.java
index 0be5933..2e7c670 100644
--- a/src/main/java/com/goi/erp/dto/CustomerDailyOrderRequestDto.java
+++ b/src/main/java/com/goi/erp/dto/CustomerDailyOrderRequestDto.java
@@ -16,6 +16,7 @@ public class CustomerDailyOrderRequestDto {
private String cdoOrderType; // 주문 타입 ('N' 등)
private String cdoRequestNote; // 주문 요청 메모
private String cdoExternalDriverId; // MIS 에서 driverId 로 호출해서 employee_external_map 참조해야함
+ private String cdoExternalCreatedBy; // MIS 에서 memberId 로 호출해서 employee_external_map 참조해야함
private Long cdoDriverId; // 배정된 driver id
private UUID cdoDriverUuid; // ERP 에서는 uuid 로 호출
private Long cdoCustomerId; // 고객 ID
diff --git a/src/main/java/com/goi/erp/dto/CustomerRegionRequestDto.java b/src/main/java/com/goi/erp/dto/CustomerRegionRequestDto.java
new file mode 100644
index 0000000..a9b7c37
--- /dev/null
+++ b/src/main/java/com/goi/erp/dto/CustomerRegionRequestDto.java
@@ -0,0 +1,16 @@
+package com.goi.erp.dto;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+public class CustomerRegionRequestDto {
+
+ private String creName;
+ private String creStatus;
+}
\ No newline at end of file
diff --git a/src/main/java/com/goi/erp/dto/CustomerRegionResponseDto.java b/src/main/java/com/goi/erp/dto/CustomerRegionResponseDto.java
new file mode 100644
index 0000000..bf68521
--- /dev/null
+++ b/src/main/java/com/goi/erp/dto/CustomerRegionResponseDto.java
@@ -0,0 +1,17 @@
+package com.goi.erp.dto;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+public class CustomerRegionResponseDto {
+
+ private Long creId;
+ private String creName;
+ private String creStatus;
+}
\ No newline at end of file
diff --git a/src/main/java/com/goi/erp/dto/CustomerRequestDto.java b/src/main/java/com/goi/erp/dto/CustomerRequestDto.java
index d353e55..35d6307 100644
--- a/src/main/java/com/goi/erp/dto/CustomerRequestDto.java
+++ b/src/main/java/com/goi/erp/dto/CustomerRequestDto.java
@@ -13,7 +13,8 @@ public class CustomerRequestDto {
private String cusNo; // c_accountno
private String cusName; // c_name
private String cusStatus; // c_status → ('A', 'I', 'D' 등)
- private Long cusAreaId; // region / area mapping
+ private Long cusRegionId; // region / area mapping
+ private Long cusAreaId; // area mapping
private String cusAddress1; // c_address
private String cusAddress2; // c_mailingaddr or c_location
private String cusPostalCode; // c_postal
diff --git a/src/main/java/com/goi/erp/dto/CustomerResponseDto.java b/src/main/java/com/goi/erp/dto/CustomerResponseDto.java
index 7c56517..d848601 100644
--- a/src/main/java/com/goi/erp/dto/CustomerResponseDto.java
+++ b/src/main/java/com/goi/erp/dto/CustomerResponseDto.java
@@ -18,6 +18,7 @@ public class CustomerResponseDto {
private String cusNo;
private String cusName;
private String cusStatus;
+ private String cusRegionId;
private String cusAddress1;
private String cusAddress2;
private String cusCity;
diff --git a/src/main/java/com/goi/erp/entity/Customer.java b/src/main/java/com/goi/erp/entity/Customer.java
index c1a1afd..95b9690 100644
--- a/src/main/java/com/goi/erp/entity/Customer.java
+++ b/src/main/java/com/goi/erp/entity/Customer.java
@@ -22,7 +22,7 @@ import org.springframework.data.annotation.LastModifiedBy;
import org.springframework.data.jpa.domain.support.AuditingEntityListener;
@Entity
-@Table(name = "customer")
+@Table(schema="crm", name = "customer")
@Data
@NoArgsConstructor
@AllArgsConstructor
@@ -46,6 +46,7 @@ public class Customer {
@Column(length = 1)
private String cusStatus;
+ private Long cusRegionId;
private Long cusAreaId;
private String cusAddress1;
private String cusAddress2;
diff --git a/src/main/java/com/goi/erp/entity/CustomerDailyOrder.java b/src/main/java/com/goi/erp/entity/CustomerDailyOrder.java
index 54cf2d1..6c4fd8e 100644
--- a/src/main/java/com/goi/erp/entity/CustomerDailyOrder.java
+++ b/src/main/java/com/goi/erp/entity/CustomerDailyOrder.java
@@ -24,7 +24,7 @@ import jakarta.persistence.Id;
import jakarta.persistence.Table;
@Entity
-@Table(name = "customer_daily_order")
+@Table(schema="crm", name = "customer_daily_order")
@Data
@NoArgsConstructor
@AllArgsConstructor
diff --git a/src/main/java/com/goi/erp/entity/Employee.java b/src/main/java/com/goi/erp/entity/CustomerRegion.java
similarity index 52%
rename from src/main/java/com/goi/erp/entity/Employee.java
rename to src/main/java/com/goi/erp/entity/CustomerRegion.java
index 0d0c7d4..43e7494 100644
--- a/src/main/java/com/goi/erp/entity/Employee.java
+++ b/src/main/java/com/goi/erp/entity/CustomerRegion.java
@@ -6,7 +6,6 @@ import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
-import java.util.UUID;
import lombok.AllArgsConstructor;
import lombok.Builder;
@@ -14,24 +13,21 @@ import lombok.Data;
import lombok.NoArgsConstructor;
@Entity
-@Table(name = "employee")
+@Table(schema = "crm", name = "customer_region")
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
-public class Employee {
- @Id
+public class CustomerRegion {
+
+ @Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
- @Column(name = "emp_id")
- private Long empId; // 내부 PK, 외부 노출 X
+ @Column(name = "cre_id")
+ private Long creId;
- @Column(name = "emp_uuid", unique = true, nullable = false)
- private UUID empUuid; // 외부 키로 사용
-
- @Column(name = "emp_first_name")
- private String empFirstName;
-
- @Column(name = "emp_last_name")
- private String empLastName;
-}
+ @Column(name = "cre_name", nullable = false, length = 255)
+ private String creName;
+ @Column(name = "cre_status", length = 1)
+ private String creStatus;
+}
\ No newline at end of file
diff --git a/src/main/java/com/goi/erp/entity/EntityChangeLog.java b/src/main/java/com/goi/erp/entity/EntityChangeLog.java
index f7239bd..ba89570 100644
--- a/src/main/java/com/goi/erp/entity/EntityChangeLog.java
+++ b/src/main/java/com/goi/erp/entity/EntityChangeLog.java
@@ -19,7 +19,7 @@ import lombok.Data;
import lombok.NoArgsConstructor;
@Entity
-@Table(name = "entity_change_log")
+@Table(schema="sys", name = "entity_change_log")
@Data
@NoArgsConstructor
@AllArgsConstructor
diff --git a/src/main/java/com/goi/erp/service/CustomerDailyOrderService.java b/src/main/java/com/goi/erp/service/CustomerDailyOrderService.java
index bd799e9..1e9cb27 100644
--- a/src/main/java/com/goi/erp/service/CustomerDailyOrderService.java
+++ b/src/main/java/com/goi/erp/service/CustomerDailyOrderService.java
@@ -16,6 +16,7 @@ import org.springframework.stereotype.Service;
import java.time.LocalDate;
import java.time.LocalDateTime;
+import java.util.Map;
import java.util.UUID;
@Service
@@ -36,6 +37,9 @@ public class CustomerDailyOrderService {
// driver id (employee id)
Long driverId = resolveDriverId(dto);
+
+ // created by (employee no)
+ String createdBy = resolveCreatedBy(dto);
CustomerDailyOrder order = CustomerDailyOrder.builder()
.cdoUuid(UUID.randomUUID())
@@ -48,7 +52,7 @@ public class CustomerDailyOrderService {
.cdoPaymentType(dto.getCdoPaymentType())
.cdoCycle(dto.getCdoCycle())
.cdoRate(dto.getCdoRate())
- .cdoCreatedBy(dto.getCdoLoginUser())
+ .cdoCreatedBy(createdBy)
.cdoStatus(dto.getCdoStatus())
.cdoVisitFlag(dto.getCdoVisitFlag())
.cdoEstimatedQty(dto.getCdoEstimatedQty())
@@ -256,12 +260,72 @@ public class CustomerDailyOrderService {
}
// 2. MIS -> externalId (문자열 email or id)
if (dto.getCdoExternalDriverId() != null) {
- return hcmEmployeeClient.getEmpIdFromExternalId( dto.getCdoExternalDriverId() );
+ Map body = hcmEmployeeClient.getEmpFromExternalId( "MIS_DRIVER", dto.getCdoExternalCreatedBy() );
+ if (body != null && body.get("eexEmpId") != null) {
+
+ Object raw = body.get("eexEmpId");
+
+ if (raw instanceof Number) {
+ return ((Number) raw).longValue();
+ }
+
+ // 예상 밖 타입일 경우
+ }
}
// 3. ERP 내부 요청 (driverUuid 방식)
if (dto.getCdoDriverUuid() != null) {
- return hcmEmployeeClient.getEmpIdFromUuid(dto.getCdoDriverUuid());
+
+ Map body = hcmEmployeeClient.getEmpFromUuid(dto.getCdoDriverUuid());
+ if (body != null && body.get("empId") != null) {
+
+ Object raw = body.get("empId");
+
+ if (raw instanceof Number) {
+ return ((Number) raw).longValue(); // 🔥 모든 숫자를 Long 변환
+ }
+
+ // 예상 밖 타입일 경우
+ }
+ }
+
+ return null;
+ }
+
+ private String resolveCreatedBy(CustomerDailyOrderRequestDto dto) {
+
+ // 1. driver id
+ if (dto.getCdoLoginUser() != null) {
+ return dto.getCdoLoginUser();
+ }
+ // 2. MIS -> externalId (id to empNo)
+ if (dto.getCdoExternalCreatedBy() != null) {
+ Map body = hcmEmployeeClient.getEmpFromExternalId( "MIS_MEMBER", dto.getCdoExternalCreatedBy() );
+ if (body != null && body.get("eexEmpNo") != null) {
+
+ Object raw = body.get("eexEmpNo");
+
+ if (raw instanceof String) {
+ return ((String) raw);
+ }
+
+ // 예상 밖 타입일 경우
+ }
+ }
+
+ // 3. ERP 내부 요청 (driverUuid 방식)
+ if (dto.getCdoDriverUuid() != null) {
+ Map body = hcmEmployeeClient.getEmpFromUuid(dto.getCdoDriverUuid());
+ if (body != null && body.get("empNo") != null) {
+
+ Object raw = body.get("empNo");
+
+ if (raw instanceof String) {
+ return ((String) raw);
+ }
+
+ // 예상 밖 타입일 경우
+ }
}
return null;
diff --git a/src/main/java/com/goi/erp/service/CustomerService.java b/src/main/java/com/goi/erp/service/CustomerService.java
index 06a7739..18b66f3 100644
--- a/src/main/java/com/goi/erp/service/CustomerService.java
+++ b/src/main/java/com/goi/erp/service/CustomerService.java
@@ -36,6 +36,7 @@ public class CustomerService {
.cusNo(dto.getCusNo())
.cusName(dto.getCusName())
.cusStatus(dto.getCusStatus())
+ .cusRegionId(dto.getCusRegionId())
.cusAreaId(dto.getCusAreaId())
.cusAddress1(dto.getCusAddress1())
.cusAddress2(dto.getCusAddress2())
@@ -102,6 +103,7 @@ public class CustomerService {
if (dto.getCusName() != null) customer.setCusName(dto.getCusName());
if (dto.getCusStatus() != null) customer.setCusStatus(dto.getCusStatus());
if (dto.getCusNo() != null) customer.setCusNo(dto.getCusNo());
+ if (dto.getCusRegionId() != null) customer.setCusRegionId(dto.getCusRegionId());
if (dto.getCusAreaId() != null) customer.setCusAreaId(dto.getCusAreaId());
if (dto.getCusAddress1() != null) customer.setCusAddress1(dto.getCusAddress1());
if (dto.getCusAddress2() != null) customer.setCusAddress2(dto.getCusAddress2());
diff --git a/src/main/java/com/goi/erp/service/HcmEmployeeClient.java b/src/main/java/com/goi/erp/service/HcmEmployeeClient.java
index d07adb7..5c36f63 100644
--- a/src/main/java/com/goi/erp/service/HcmEmployeeClient.java
+++ b/src/main/java/com/goi/erp/service/HcmEmployeeClient.java
@@ -25,9 +25,9 @@ public class HcmEmployeeClient {
@Value("${hcm.api.base-url}")
private String hcmBaseUrl;
- public Long getEmpIdFromExternalId(String externalId) {
+ public Map getEmpFromExternalId(String solutionType, String externalId) {
- String url = hcmBaseUrl + "/employee/external" + "?solutionType=MIS&externalId=" + externalId;
+ String url = hcmBaseUrl + "/employee/external" + "?solutionType=" + solutionType + "&externalId=" + externalId;
try {
// set token in header
@@ -45,21 +45,7 @@ public class HcmEmployeeClient {
new ParameterizedTypeReference