Commit 85b76af0 authored by akbar fauzi's avatar akbar fauzi

service /dgi-api/v1/pinb/read

parent fa371995
This diff is collapsed.
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>ddms-gigr-module-h3-slave</name>
<comment>NO_M2ECLIPSE_SUPPORT: Project files created with the maven-eclipse-plugin are not supported in M2Eclipse.</comment>
<projects/>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
\ No newline at end of file
#Fri Feb 21 16:52:35 ICT 2025
org.eclipse.jdt.core.compiler.codegen.targetPlatform=16
org.eclipse.jdt.core.compiler.source=16
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.compliance=16
This diff is collapsed.
......@@ -80,6 +80,41 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>org.projectlombok</groupId>-->
<!-- <artifactId>lombok</artifactId>-->
<!-- <version>1.18.30</version>-->
<!-- <scope>provided</scope>-->
<!-- </dependency>-->
<!-- <dependency>-->
<!-- <groupId>org.slf4j</groupId>-->
<!-- <artifactId>slf4j-api</artifactId>-->
<!-- <version>1.7.21</version>-->
<!-- </dependency>-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.30</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.eksad.ddms</groupId>
<artifactId>ddms-common</artifactId>
<version>1.0-SNAPSHOT</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>com.eksad.ddms</groupId>
<artifactId>ddms-gigr-h3-domain</artifactId>
<version>1.0-SNAPSHOT</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>com.eksad.ddms</groupId>
<artifactId>ddms-gigr-h3-dto</artifactId>
<version>1.0-SNAPSHOT</version>
<type>jar</type>
</dependency>
</dependencies>
<build>
......
package com.eksad.masterdata.controller;
import com.eksad.ddms.common.h3.dto.managepartinbounds.PartsManageInboundParamDTO;
import com.eksad.ddms.common.h3.dto.managepartinbounds.ReceivingManagePartsInboundDTO;
import com.eksad.ddms.common.h3.dto.managepartinbounds.ResponseManagePartsInboundDTO;
import com.eksad.ddms.gigr.h3.domain.common.CreationalSpecification;
import com.eksad.ddms.gigr.h3.domain.partmanageinbound.partManageInboundParamJSON;
import com.eksad.ddms.gigr.h3.domain.repository.apigateway.partmanageinbound.partManageInboundRepository;
import com.eksad.ddms.gigr.h3.dto.receiving.DealerCodeDTO;
import com.eksad.ddms.gigr.h3.repository.apigateway.ManagePartsInbounRepository;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.http.*;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
@RestController
@Slf4j
//@ComponentScan(basePackages = {"com.eksad.ddms.gigr.h3.domain.repository.apigateway.partmanageinbound", "com.eksad.ddms.gigr.h3.repository.apigateway"})
public class ManagePartsInboundRestController {
public String URL_AHM_GET_DEALER = "/get.dealer.by.ahm.dealer.code/{ahmDealerCode}";
private static final String md_url = "http://api-cbr.daya-dms.id/masterdata";
@Autowired
partManageInboundRepository inboundRepository;
@Autowired
ManagePartsInbounRepository managePartsInboundRepository;
@RequestMapping(value = "/dgi-api/v1/pinb/read",
method = RequestMethod.POST,
produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<ResponseManagePartsInboundDTO> getPartManageInbound(@RequestBody PartsManageInboundParamDTO dto) throws ParseException, JsonProcessingException {
ObjectMapper mapper = new ObjectMapper();
System.out.println("param ManagePartsInboundRestController = " + mapper.writeValueAsString(dto));
inboundRepository.save(dtoTODomain(dto));
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String fromDateString = "";
String toDateString = "";
Date startDate = null;
Date toDate = null;
String ahassCode = null;
String dealerKodeSite = null ;
ResponseManagePartsInboundDTO managePartsInboundDTO = new ResponseManagePartsInboundDTO();
List<ReceivingManagePartsInboundDTO> receivingManagePartsInboundDTO = new ArrayList<>();
final Calendar calendarToTime = Calendar.getInstance();
final Calendar calendarFromTime = Calendar.getInstance();
try {
if (!dto.getFromTime().isEmpty()) {
startDate = dateFormat.parse(dto.getFromTime());
fromDateString = dateFormat.format(startDate);
if (dto.getToTime().isEmpty()) {
dto.setToTime(getNextWeek());
toDateString = dto.getToTime();
}
calendarFromTime.setTime(startDate);
calendarFromTime.add(Calendar.DAY_OF_YEAR, 7);
}
if (!dto.getToTime().isEmpty()) {
toDate = dateFormat.parse(dto.getToTime());
calendarToTime.setTime(toDate);
toDateString = dateFormat.format(calendarToTime.getTime());
}
if (calendarToTime.after(calendarFromTime)) {
managePartsInboundDTO.setMessage("Tenggat waktu hanya diperbolehkan 7 hari");
managePartsInboundDTO.setStatus(0);
return new ResponseEntity<>(managePartsInboundDTO, HttpStatus.ACCEPTED);
}
if (dto.getDealerId() == null || dto.getDealerId().equalsIgnoreCase("")) {
managePartsInboundDTO.setMessage("Harap isi parameter dealerID");
managePartsInboundDTO.setStatus(0);
return new ResponseEntity<>(managePartsInboundDTO, HttpStatus.ACCEPTED);
}
ahassCode = findAhassIDtoAhassCode(dto.getDealerId());
if (ahassCode == null || ahassCode.equalsIgnoreCase("")) {
managePartsInboundDTO.setMessage("Data DealerID " + dto.getDealerId() + " Tidak ditemukan di DDMS");
managePartsInboundDTO.setStatus(0);
return new ResponseEntity<>(managePartsInboundDTO, HttpStatus.ACCEPTED);
}
// dealerKodeSite = dealerSiteRepository.getDealerSiteByAhassCodeDDMS(ahassCode).getKodedealersite();
if (!dto.getNoPO().isEmpty() && !dto.getFromTime().isEmpty() && !dto.getToTime().isEmpty()) {
managePartsInboundDTO = managePartsInboundRepository.getInboundByRangeDateWithPONumber(dto.getDealerId(),dto.getNoPO(), ahassCode, fromDateString, toDateString);
} else if (!dto.getFromTime().isEmpty() && !dto.getToTime().isEmpty()) {
managePartsInboundDTO = managePartsInboundRepository.getInboundByRangeDate(dto.getDealerId(),fromDateString, toDateString, ahassCode);
}
} catch (Exception e) {
managePartsInboundDTO.setStatus(0);
managePartsInboundDTO.setMessage("Terjadi kesalahan");
return new ResponseEntity<>(managePartsInboundDTO, HttpStatus.ACCEPTED);
}
return new ResponseEntity<>(managePartsInboundDTO, HttpStatus.OK);
}
public partManageInboundParamJSON dtoTODomain(PartsManageInboundParamDTO dto) throws JsonProcessingException {
ObjectMapper mapper = new ObjectMapper();
CreationalSpecification creationalSpecification = new CreationalSpecification();
creationalSpecification.setCreatedAt(new Date());
creationalSpecification.setCreatedBy("SYSTEM");
partManageInboundParamJSON partInboundParamJSON = new partManageInboundParamJSON();
partInboundParamJSON.setCreationalSpecification(creationalSpecification);
partInboundParamJSON.setJson(mapper.writeValueAsString(dto));
return partInboundParamJSON;
}
public static String getNextWeek() throws ParseException {
final SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return format.format(new Date());
}
public String findAhassIDtoAhassCode(String ahmDealerCode) {
String ahassCode = "";
ObjectMapper mapper = new ObjectMapper();
try {
Map<String, String> params = new HashMap<String, String>();
String url = md_url + URL_AHM_GET_DEALER;
System.out.println(url);
params.put("ahmDealerCode", ahmDealerCode);
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<DealerCodeDTO> result = restTemplate.exchange(url, HttpMethod.GET, new HttpEntity<>(createHeaders()), DealerCodeDTO.class, params);
System.out.println("GetAHMDealer" + mapper.writeValueAsString(result.getBody()));
return ahassCode = result.getBody().getAdditionalProperties().get("dealerCode").toString();
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
private HttpHeaders createHeaders() {
return new HttpHeaders() {
{
String TOKEN = "Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiJ9.5BG9SEVOGo_xRhtT8IkyoSy60kPg8HM9Vpvb0TdNew4";
set("Authorization", TOKEN);
}
};
}
}
server.port=8081
spring.datasource.url = jdbc:postgresql://localhost:5432/postgres
spring.datasource.username = postgres
spring.datasource.password = password.1
spring.jpa.generate-ddl=false
spring.jpa.hibernate.ddl-auto = none
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
spring.jpa.properties.hibernate.format_sql=true
logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE
ddms.auth.token=Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiJ9.5BG9SEVOGo_xRhtT8IkyoSy60kPg8HM9Vpvb0TdNew4
#Kafka Config
#-----------------------------------------------------------------------
# Kafka Bootstrap Server
spring.kafka.bootstrap-servers=localhost:9092
# Kafka Producer Configuration
spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer
spring.kafka.producer.value-serializer=org.apache.kafka.common.serialization.StringSerializer
# Kafka Consumer Configuration
spring.kafka.consumer.group-id=my-group
spring.kafka.consumer.auto-offset-reset=earliest
spring.kafka.consumer.key-deserializer=org.apache.kafka.common.serialization.StringDeserializer
spring.kafka.consumer.value-deserializer=org.apache.kafka.common.serialization.StringDeserializer
# Kafka Topic Name
kafka.topic.name=pipeline-topic
\ No newline at end of file
server.port=8081
spring.datasource.url = jdbc:postgresql://localhost:5432/postgres
spring.datasource.username = postgres
spring.datasource.password = password.1
spring.jpa.generate-ddl=false
spring.jpa.hibernate.ddl-auto = none
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
spring.jpa.properties.hibernate.format_sql=true
logging.level.org.hibernate.SQL=ERROR
#logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE
#please define with dev-prod for profiles below
spring.profiles.active=dev
artifactId=ddms-gigr-module-h3-slave
groupId=com.eksad
version=0.0.1-SNAPSHOT
com\eksad\masterdata\domain\MstWo.class
com\eksad\masterdata\model\Role.class
com\eksad\masterdata\controller\ManagePartsInboundRestController$1.class
com\eksad\masterdata\controller\ManagePartsInboundRestController.class
com\eksad\masterdata\common\LogResponseDTO.class
com\eksad\masterdata\controller\SampleGigrController.class
com\eksad\masterdata\WebApplication.class
com\eksad\masterdata\service\UserDetailsServiceImp.class
com\eksad\masterdata\event\KafkaEvent.class
com\eksad\masterdata\common\LogOpsDTO.class
com\eksad\masterdata\service\ProcessHelperService.class
com\eksad\masterdata\service\WOService.class
com\eksad\masterdata\model\User.class
com\eksad\masterdata\common\ResponseStatus.class
com\eksad\masterdata\common\Constants$Login.class
com\eksad\masterdata\common\StringUtil.class
com\eksad\masterdata\common\LogOpsUtil.class
com\eksad\masterdata\repository\BizparRepository.class
com\eksad\masterdata\domain\TrxBizpar.class
com\eksad\masterdata\common\ProjectType.class
com\eksad\masterdata\config\SecurityConfig.class
com\eksad\masterdata\common\GenericResponseDTO.class
com\eksad\masterdata\repository\WoRepository.class
com\eksad\masterdata\common\Constants.class
com\eksad\masterdata\common\DateUtils.class
com\eksad\masterdata\config\JwtAuthenticationFilter.class
com\eksad\masterdata\service\KafkaProducerService.class
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\common\Constants.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\common\DateUtils.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\common\GenericResponseDTO.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\common\LogOpsDTO.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\common\LogOpsUtil.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\common\LogResponseDTO.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\common\ProjectType.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\common\ResponseStatus.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\common\StringUtil.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\config\JwtAuthenticationFilter.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\config\SecurityConfig.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\controller\ManagePartsInboundRestController.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\controller\SampleGigrController.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\domain\MstWo.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\domain\TrxBizpar.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\event\KafkaEvent.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\model\Role.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\model\User.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\repository\BizparRepository.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\repository\WoRepository.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\service\KafkaProducerService.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\service\ProcessHelperService.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\service\UserDetailsServiceImp.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\service\WOService.java
C:\Users\eksad\Documents\kantor\DDMS SLAVE\ddms-gigr-module-h3-slave\src\main\java\com\eksad\masterdata\WebApplication.java
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment