Added saving conifg to databse
This commit is contained in:
parent
f08e7cf1e5
commit
0cee454356
94
buisnesslogic/src/main/java/com/plannaplan/entities/AppConfig.java
Executable file
94
buisnesslogic/src/main/java/com/plannaplan/entities/AppConfig.java
Executable file
@ -0,0 +1,94 @@
|
|||||||
|
package com.plannaplan.entities;
|
||||||
|
|
||||||
|
import java.sql.Date;
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
import javax.persistence.Entity;
|
||||||
|
import javax.persistence.GeneratedValue;
|
||||||
|
import javax.persistence.GenerationType;
|
||||||
|
import javax.persistence.Id;
|
||||||
|
|
||||||
|
import com.plannaplan.models.TourData;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* entity that keeps app configurations
|
||||||
|
*/
|
||||||
|
@Entity
|
||||||
|
public class AppConfig {
|
||||||
|
|
||||||
|
@Id
|
||||||
|
@GeneratedValue(strategy = GenerationType.AUTO)
|
||||||
|
private Long id;
|
||||||
|
private Date firstTourStart;
|
||||||
|
private Date firstTourEnd;
|
||||||
|
private Date secondTourStart;
|
||||||
|
private Date secondTourEnd;
|
||||||
|
private Timestamp configDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* no parameter construcotor
|
||||||
|
*/
|
||||||
|
public AppConfig() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* constructor
|
||||||
|
*
|
||||||
|
* @param firstTour first TourData instacne
|
||||||
|
* @param scondTour second TourData instacne
|
||||||
|
*/
|
||||||
|
public AppConfig(TourData firstTour, TourData scondTour) {
|
||||||
|
this.firstTourStart = firstTour.getStart();
|
||||||
|
this.firstTourEnd = firstTour.getEnd();
|
||||||
|
this.secondTourStart = scondTour.getStart();
|
||||||
|
this.secondTourEnd = scondTour.getEnd();
|
||||||
|
this.configDate = new Timestamp(System.currentTimeMillis());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* second tour end getter
|
||||||
|
*
|
||||||
|
* @return Date inforamtion when second tour ends
|
||||||
|
*/
|
||||||
|
public Date getSecondTourEnd() {
|
||||||
|
return secondTourEnd;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* first second start getter
|
||||||
|
*
|
||||||
|
* @return Date inforamtion when second tour start
|
||||||
|
*/
|
||||||
|
public Date getSecondTourStart() {
|
||||||
|
return secondTourStart;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* first tour end getter
|
||||||
|
*
|
||||||
|
* @return Date inforamtion when first tour end
|
||||||
|
*/
|
||||||
|
public Date getFirstTourEnd() {
|
||||||
|
return firstTourEnd;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* first tour start getter
|
||||||
|
*
|
||||||
|
* @return Date inforamtion when first tour start
|
||||||
|
*/
|
||||||
|
public Date getFirstTourStart() {
|
||||||
|
return firstTourStart;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* config date getter
|
||||||
|
*
|
||||||
|
* @return Timestamp when configuration took place
|
||||||
|
*/
|
||||||
|
public Timestamp getConfigDate() {
|
||||||
|
return configDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,9 @@
|
|||||||
|
package com.plannaplan.repositories;
|
||||||
|
|
||||||
|
import com.plannaplan.entities.AppConfig;
|
||||||
|
|
||||||
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
|
||||||
|
public interface AppConfigRepository extends JpaRepository<AppConfig, Long> {
|
||||||
|
|
||||||
|
}
|
26
buisnesslogic/src/main/java/com/plannaplan/services/AppConfigService.java
Executable file
26
buisnesslogic/src/main/java/com/plannaplan/services/AppConfigService.java
Executable file
@ -0,0 +1,26 @@
|
|||||||
|
package com.plannaplan.services;
|
||||||
|
|
||||||
|
import com.plannaplan.entities.AppConfig;
|
||||||
|
import com.plannaplan.repositories.AppConfigRepository;
|
||||||
|
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class AppConfigService {
|
||||||
|
@Autowired
|
||||||
|
private AppConfigRepository repo;
|
||||||
|
|
||||||
|
public AppConfigService() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* saves config instance to dadabase
|
||||||
|
*
|
||||||
|
* @param appConfig AppConfig instance with correct dates
|
||||||
|
* @return AppConfig with id from databse after save
|
||||||
|
*/
|
||||||
|
public AppConfig save(AppConfig appConfig) {
|
||||||
|
return this.repo.save(appConfig);
|
||||||
|
}
|
||||||
|
}
|
@ -7,6 +7,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import com.plannaplan.configutils.*;
|
import com.plannaplan.configutils.*;
|
||||||
|
import com.plannaplan.entities.AppConfig;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* FileReader is used for reading xls file from input stream.
|
* FileReader is used for reading xls file from input stream.
|
||||||
@ -16,13 +17,21 @@ public class ConfiguratorService {
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private FileToDatabaseMigrator migrator;
|
private FileToDatabaseMigrator migrator;
|
||||||
|
@Autowired
|
||||||
|
private AppConfigService configService;
|
||||||
|
|
||||||
public ConfiguratorService() {
|
public ConfiguratorService() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* methoid to config system
|
||||||
|
*
|
||||||
|
* @param data ConfigData containng system congis
|
||||||
|
*/
|
||||||
public void config(ConfigData data) {
|
public void config(ConfigData data) {
|
||||||
FileReader reader = new FileReader(data.getFilestream());
|
FileReader reader = new FileReader(data.getFilestream());
|
||||||
FileData coursesData = reader.read();
|
FileData coursesData = reader.read();
|
||||||
|
this.configService.save(new AppConfig(data.getFirstTour(), data.getSecondTour()));
|
||||||
migrator.migrate(coursesData);
|
migrator.migrate(coursesData);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,8 +1,10 @@
|
|||||||
package com.plannaplan;
|
package com.plannaplan;
|
||||||
|
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
import java.sql.Date;
|
||||||
|
|
||||||
import com.plannaplan.models.ConfigData;
|
import com.plannaplan.models.ConfigData;
|
||||||
|
import com.plannaplan.models.TourData;
|
||||||
import com.plannaplan.entities.User;
|
import com.plannaplan.entities.User;
|
||||||
import com.plannaplan.services.UserService;
|
import com.plannaplan.services.UserService;
|
||||||
import com.plannaplan.types.UserRoles;
|
import com.plannaplan.types.UserRoles;
|
||||||
@ -44,7 +46,12 @@ public class App {
|
|||||||
|
|
||||||
if (this.isDev) {
|
if (this.isDev) {
|
||||||
InputStream inputStream = getClass().getClassLoader().getResourceAsStream("Zajecia.xlsx");
|
InputStream inputStream = getClass().getClassLoader().getResourceAsStream("Zajecia.xlsx");
|
||||||
ConfigData data = new ConfigData(null, null, inputStream);
|
ConfigData data = new ConfigData(
|
||||||
|
new TourData(new Date(System.currentTimeMillis()),
|
||||||
|
new Date(System.currentTimeMillis())),
|
||||||
|
new TourData(new Date(System.currentTimeMillis()),
|
||||||
|
new Date(System.currentTimeMillis())),
|
||||||
|
inputStream);
|
||||||
this.contrl.config(data);
|
this.contrl.config(data);
|
||||||
|
|
||||||
User newuser = new User();
|
User newuser = new User();
|
||||||
|
Loading…
Reference in New Issue
Block a user