Browse Source

pet API addon

master
Thaqi2021 2 years ago
parent
commit
f7c81e5bab
  1. 4
      src/main/java/com/gcc/erppostdata/communityhall/CHPostData.java
  2. 9
      src/main/java/com/gcc/erppostdata/communityhall/CmhQueryBank.java
  3. 4
      src/main/java/com/gcc/erppostdata/communityhall/CmhScheduler.java
  4. 2
      src/main/java/com/gcc/erppostdata/config/AppConfig.java
  5. 7
      src/main/java/com/gcc/erppostdata/controller/APIController.java
  6. 10
      src/main/java/com/gcc/erppostdata/petregistration/PetQueryBank.java
  7. 6
      src/main/java/com/gcc/erppostdata/petregistration/PetScheduler.java
  8. 5
      src/main/java/com/gcc/erppostdata/repo/CommunityHallLogRepo.java
  9. 5
      src/main/java/com/gcc/erppostdata/repo/PetLogRepo.java
  10. 2
      src/main/resources/application.properties

4
src/main/java/com/gcc/erppostdata/communityhall/CHPostData.java

@ -124,13 +124,13 @@ public class CHPostData {
public void postDataToERP(List<Map<String, Object>> chlist,String id) {
System.out.println("ERP URL before request: " + appConfig.getErpUrl());
String erpBaseUrl = "http://coc-staging.egovernments.org:9980/pgr/external/mobileservice?";
// String erpBaseUrl = "http://coc-staging.egovernments.org:9980/pgr/external/mobileservice?";
for (Map<String, Object> data : chlist) {
StringBuilder response = new StringBuilder();
System.out.println("Sending Data: " + data);
StringBuilder encodedUrl = new StringBuilder(erpBaseUrl);
StringBuilder encodedUrl = new StringBuilder(appConfig.getErpUrl());
try {
boolean firstParam = true;

9
src/main/java/com/gcc/erppostdata/communityhall/CmhQueryBank.java

@ -8,7 +8,7 @@ public class CmhQueryBank {
@Autowired
CHPostData chPostData;
public void hourlyPushData() {
public void hourlyPushData(int bookingId) {
String hourlysql = "SELECT " +
" tr.txansaction_id, " +
" tr.tpsl_txn_id, " +
@ -27,10 +27,11 @@ public class CmhQueryBank {
"INNER JOIN booking_details bk ON bk.booking_id = tr.booking_id " +
"WHERE tr.status_code = '0300' " +
// "AND bk.booking_status IN ('APPROVED', 'CANCELED', 'COMPLETED', 'GCC_BLOCKED') " +
"AND STR_TO_DATE(tr.date, '%d-%m-%Y %H:%i:%s') >= NOW() - INTERVAL 2 HOUR"
+ " AND STR_TO_DATE(tr.date, '%d-%m-%Y %H:%i:%s') >= NOW() - INTERVAL 1 HOUR"
// "AND STR_TO_DATE(tr.date, '%d-%m-%Y %H:%i:%s') >= NOW() - INTERVAL 2 HOUR"
" AND STR_TO_DATE(tr.date, '%d-%m-%Y %H:%i:%s') <= NOW() - INTERVAL 1 HOUR" +
" AND bk.booking_id >'"+bookingId+"' LIMIT 1000"
;
System.out.println(hourlysql);
chPostData.fetchChData(hourlysql,null,null);
}

4
src/main/java/com/gcc/erppostdata/communityhall/CmhScheduler.java

@ -22,7 +22,9 @@ public class CmhScheduler {
@Scheduled(fixedRate = 3600000) // Runs every 1 hour (3600000 milliseconds)
public void oneHouseScheduledMethod() {
queryBank.hourlyPushData();
int lastBookingIdInserted = communityHallLogRepo.getLastBookingIdInserted();
System.out.println("community Hall lastBookingIdInserted:---->"+lastBookingIdInserted);
queryBank.hourlyPushData( lastBookingIdInserted);
}
@Scheduled(fixedRate = 10800000)

2
src/main/java/com/gcc/erppostdata/config/AppConfig.java

@ -1,9 +1,11 @@
package com.gcc.erppostdata.config;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
@Configuration
@ConfigurationProperties(prefix = "app")
public class AppConfig {
private String erpUrl;

7
src/main/java/com/gcc/erppostdata/controller/APIController.java

@ -4,6 +4,7 @@ package com.gcc.erppostdata.controller;
import com.gcc.erppostdata.communityhall.CHPostData;
import com.gcc.erppostdata.communityhall.CmhQueryBank;
import com.gcc.erppostdata.petregistration.PRPostData;
import com.gcc.erppostdata.petregistration.PetQueryBank;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
@ -14,7 +15,7 @@ import org.springframework.web.bind.annotation.GetMapping;
public class APIController {
@Autowired
private PRPostData prPostData;
private PetQueryBank prPostData;
@Autowired
private CmhQueryBank chPostData;
@ -23,7 +24,7 @@ public class APIController {
@GetMapping("/peterpdata")
public ResponseEntity<String> peterpdata() {
try {
// prPostData.fetpetData();
prPostData.PushAllData();
return ResponseEntity.ok("Pet data fetched and sent successfully.");
} catch (Exception e) {
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
@ -35,7 +36,7 @@ public class APIController {
public ResponseEntity<String> cherpdata() {
try {
chPostData.hourlyPushData();
chPostData.PushAllData();
return ResponseEntity.ok("Communityhall data fetched and sent successfully.");
} catch (Exception e) {

10
src/main/java/com/gcc/erppostdata/petregistration/PetQueryBank.java

@ -32,7 +32,7 @@ public class PetQueryBank {
prPostData.fetpetData(sql);
}
public void hourlyPushData() {
public void hourlyPushData(int uniqueId) {
String sql = "SELECT " +
" p.uniqueid, " +
" p.status, " +
@ -50,9 +50,11 @@ public class PetQueryBank {
"INNER JOIN payment pay ON p.uniqueid = pay.uniqueid " +
"INNER JOIN pet_license l ON p.uniqueid = l.uniqueid " +
"INNER JOIN pet_owner o ON p.mobilenum = o.phone " +
"WHERE p.status = 2 AND pay.paymentdate >= NOW() - INTERVAL 2 HOUR"
+ " AND pay.paymentdate >= NOW() - INTERVAL 1 HOUR"
;
"WHERE p.status = 2 " +
" AND pay.paymentdate <= NOW() - INTERVAL 1 HOUR" +
" AND p.uniqueid > '"+uniqueId+"' LIMIT 1000";
System.out.println(sql);
prPostData.fetpetData(sql);
}

6
src/main/java/com/gcc/erppostdata/petregistration/PetScheduler.java

@ -24,9 +24,9 @@ public class PetScheduler {
@Scheduled(fixedRate = 3600000) // Runs every 1 hour (3600000 milliseconds)
public void oneHouseScheduledMethod() {
System.out.println("Executing one house scheduled method");
petQueryBank.hourlyPushData();
int lastUniqueIdInserted = petLogRepo.getLastUniqueIdInserted();
System.out.println("Pet License lastUniqueIdInserted:--->"+lastUniqueIdInserted);
petQueryBank.hourlyPushData(lastUniqueIdInserted);
}
@Scheduled(fixedRate = 10800000)
public void threeHouseScheduledMethod() {

5
src/main/java/com/gcc/erppostdata/repo/CommunityHallLogRepo.java

@ -37,4 +37,9 @@ public class CommunityHallLogRepo {
String sql = "UPDATE comm_post_data SET status = ?, response = ? WHERE id = ?";
return jdbcTemplate.update(sql, status,response,id);
}
public int getLastBookingIdInserted() {
String sql = "SELECT bookingId FROM comm_post_data ORDER BY id DESC LIMIT 1";
return jdbcTemplate.queryForObject(sql, Integer.class);
}
}

5
src/main/java/com/gcc/erppostdata/repo/PetLogRepo.java

@ -36,4 +36,9 @@ public class PetLogRepo {
String sql = "UPDATE pet_post_data SET status = ?, response = ? WHERE id = ?";
return jdbcTemplate.update(sql, status,response,id);
}
public int getLastUniqueIdInserted() {
String sql = "SELECT uniqueId FROM pet_post_data ORDER BY id DESC LIMIT 1";
return jdbcTemplate.queryForObject(sql, Integer.class);
}
}

2
src/main/resources/application.properties

@ -7,3 +7,5 @@ spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.database-platform=org.hibernate.dialect.MySQL8Dialect
spring.jpa.hibernate.ddl-auto=update
spring.profiles.active=dev
Loading…
Cancel
Save