bumped to spring boot 2
This commit is contained in:
@@ -11,7 +11,7 @@
|
||||
<parent>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>1.5.8.RELEASE</version>
|
||||
<version>2.0.0.RELEASE</version>
|
||||
</parent>
|
||||
|
||||
<dependencies>
|
||||
|
||||
@@ -9,7 +9,7 @@ public interface CommandRepository<T, ID extends Serializable> extends CrudRepos
|
||||
|
||||
@Override
|
||||
@RestResource(exported = false)
|
||||
void delete(ID id);
|
||||
void deleteById(ID id);
|
||||
|
||||
@Override
|
||||
@RestResource(exported = false)
|
||||
@@ -17,7 +17,7 @@ public interface CommandRepository<T, ID extends Serializable> extends CrudRepos
|
||||
|
||||
@Override
|
||||
@RestResource(exported = false)
|
||||
void delete(Iterable<? extends T> entities);
|
||||
void deleteAll(Iterable<? extends T> entities);
|
||||
|
||||
@Override
|
||||
@RestResource(exported = false)
|
||||
|
||||
@@ -13,11 +13,11 @@ public interface ProjectionRepository<T, ID extends Serializable> extends CrudRe
|
||||
|
||||
@Override
|
||||
@RestResource(exported = false)
|
||||
<S extends T> Iterable<S> save(Iterable<S> entities);
|
||||
<S extends T> Iterable<S> saveAll(Iterable<S> entities);
|
||||
|
||||
@Override
|
||||
@RestResource(exported = false)
|
||||
void delete(ID id);
|
||||
void deleteById(ID id);
|
||||
|
||||
@Override
|
||||
@RestResource(exported = false)
|
||||
@@ -25,7 +25,7 @@ public interface ProjectionRepository<T, ID extends Serializable> extends CrudRe
|
||||
|
||||
@Override
|
||||
@RestResource(exported = false)
|
||||
void delete(Iterable<? extends T> entities);
|
||||
void deleteAll(Iterable<? extends T> entities);
|
||||
|
||||
@Override
|
||||
@RestResource(exported = false)
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<parent>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>1.5.8.RELEASE</version>
|
||||
<version>2.0.0.RELEASE</version>
|
||||
</parent>
|
||||
|
||||
<dependencies>
|
||||
|
||||
@@ -34,7 +34,7 @@ class DemandEventsPropagation implements DemandEvents {
|
||||
@Override
|
||||
public void emit(ReviewRequired event) {
|
||||
Instant timestamp = Instant.now(clock);
|
||||
demandReviews.save(event.getReviews().stream()
|
||||
demandReviews.saveAll(event.getReviews().stream()
|
||||
.map(r -> new RequiredReviewEntity(timestamp, r))
|
||||
.collect(Collectors.toList())
|
||||
);
|
||||
|
||||
@@ -27,6 +27,6 @@ public class ProductDescriptionEventsPropagation {
|
||||
|
||||
@HandleAfterDelete
|
||||
public void handleDelete(ProductDescriptionEntity entity) {
|
||||
stockForecasts.delete(entity.getRefNo());
|
||||
stockForecasts.deleteById(entity.getRefNo());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,6 @@ spring.datasource.url=jdbc:postgresql://localhost:5432/postgres
|
||||
spring.datasource.username=postgres
|
||||
spring.datasource.password=postgres
|
||||
spring.datasource.driver-class-name=org.postgresql.Driver
|
||||
liquibase.change-log=classpath:/schema/db.changelog.xml
|
||||
spring.liquibase.change-log=classpath:/schema/db.changelog.xml
|
||||
logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n
|
||||
logging.level.=error
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<parent>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>1.5.8.RELEASE</version>
|
||||
<version>2.0.0.RELEASE</version>
|
||||
</parent>
|
||||
|
||||
<dependencies>
|
||||
|
||||
@@ -17,7 +17,7 @@ public class DeliveryAutoPlannerORMRepository {
|
||||
|
||||
public DeliveryAutoPlanner get(String refNo) {
|
||||
return new DeliveryAutoPlanner(refNo,
|
||||
ofNullable(dao.findOne(refNo))
|
||||
dao.findById(refNo)
|
||||
.map(DeliveryPlannerDefinitionEntity::getDefinition)
|
||||
.map(x -> x.map(DeliveriesSuggestion::timesAndFractions))
|
||||
.orElse(Collections.emptyMap()));
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package pl.com.bottega.factory.demand.forecasting;
|
||||
package pl.com.bottega.factory.demand.forecasting;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
@@ -59,7 +59,7 @@ class ProductDemandORMRepository implements ProductDemandRepository {
|
||||
|
||||
@Override
|
||||
public void save(ProductDemand model) {
|
||||
ProductDemandEntity root = rootDao.findOne(TechnicalId.get(model.id));
|
||||
ProductDemandEntity root = rootDao.getOne(TechnicalId.get(model.id));
|
||||
if (model.updates.size() > 0) {
|
||||
em.lock(root, LockModeType.OPTIMISTIC_FORCE_INCREMENT);
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ import pl.com.bottega.tools.ProjectionRepository;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@Repository
|
||||
@RepositoryRestResource(path = "demand-forecasts",
|
||||
@@ -19,5 +20,5 @@ public interface CurrentDemandDao extends ProjectionRepository<CurrentDemandEnti
|
||||
List<CurrentDemandEntity> findByRefNoAndDateGreaterThanEqual(@Param("refNo") String refNo, @Param("date") @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) LocalDate date);
|
||||
|
||||
@RestResource(exported = false)
|
||||
void deleteByRefNoAndDate(String refNo, LocalDate date);
|
||||
Optional<CurrentDemandEntity> findByRefNoAndDate(String refNo, LocalDate date);
|
||||
}
|
||||
|
||||
@@ -29,4 +29,9 @@ public class CurrentDemandEntity implements Serializable {
|
||||
this.level = level;
|
||||
this.schema = schema;
|
||||
}
|
||||
|
||||
void changeLevelTo(long level, Demand.Schema schema) {
|
||||
this.level = level;
|
||||
this.schema = schema;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package pl.com.bottega.factory.demand.forecasting.projection;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
import pl.com.bottega.factory.demand.forecasting.DailyId;
|
||||
import pl.com.bottega.factory.demand.forecasting.DemandedLevelsChanged;
|
||||
|
||||
@Component
|
||||
@@ -12,16 +13,21 @@ public class CurrentDemandProjection {
|
||||
|
||||
public void applyDemandedLevelsChanged(DemandedLevelsChanged event) {
|
||||
event.getResults().forEach((daily, change) -> {
|
||||
demandDao.deleteByRefNoAndDate(
|
||||
daily.getRefNo(),
|
||||
daily.getDate());
|
||||
demandDao.save(new CurrentDemandEntity(
|
||||
daily.getRefNo(),
|
||||
daily.getDate(),
|
||||
change.getCurrent().getLevel(),
|
||||
change.getCurrent().getSchema())
|
||||
);
|
||||
createOrUpdateDemand(daily, change);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
private void createOrUpdateDemand(DailyId daily, DemandedLevelsChanged.Change change) {
|
||||
CurrentDemandEntity currentDemandEntity = demandDao.findByRefNoAndDate(
|
||||
daily.getRefNo(),
|
||||
daily.getDate())
|
||||
.orElseGet(() -> new CurrentDemandEntity(
|
||||
daily.getRefNo(),
|
||||
daily.getDate(),
|
||||
change.getCurrent().getLevel(),
|
||||
change.getCurrent().getSchema()));
|
||||
currentDemandEntity.changeLevelTo(change.getCurrent().getLevel(), change.getCurrent().getSchema());
|
||||
demandDao.save(currentDemandEntity);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<parent>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>1.5.8.RELEASE</version>
|
||||
<version>2.0.0.RELEASE</version>
|
||||
</parent>
|
||||
|
||||
<dependencies>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<parent>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>1.5.8.RELEASE</version>
|
||||
<version>2.0.0.RELEASE</version>
|
||||
</parent>
|
||||
|
||||
<dependencies>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<parent>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>1.5.8.RELEASE</version>
|
||||
<version>2.0.0.RELEASE</version>
|
||||
</parent>
|
||||
|
||||
<dependencies>
|
||||
|
||||
@@ -10,6 +10,7 @@ import pl.com.bottega.factory.shortages.prediction.monitoring.persistence.Shorta
|
||||
import pl.com.bottega.tools.TechnicalId;
|
||||
|
||||
import java.util.Optional;
|
||||
import java.util.function.Function;
|
||||
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
@@ -39,15 +40,16 @@ class ShortagePredictionProcessORMRepository implements ShortagePredictionProces
|
||||
|
||||
private void save(NewShortage event) {
|
||||
RefNoId refNo = event.getRefNo();
|
||||
Function<Long, Optional<ShortagesEntity>> findById = dao::findById;
|
||||
ShortagesEntity entity = TechnicalId.findOrDefault(
|
||||
refNo, dao::findOne,
|
||||
refNo, findById.andThen(Optional::get),
|
||||
() -> dao.save(new ShortagesEntity(refNo.getRefNo())));
|
||||
entity.setShortage(event.getShortage());
|
||||
events.emit(event);
|
||||
}
|
||||
|
||||
private void delete(ShortageSolved event) {
|
||||
dao.delete(TechnicalId.get(event.getRefNo()));
|
||||
dao.deleteById(TechnicalId.get(event.getRefNo()));
|
||||
events.emit(event);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user