Skip to content

Commit 302475f

Browse files
Merge pull request #2 from alamgir-ahosain/dev
complete implement & testing
2 parents 4ebe5b4 + 730126f commit 302475f

30 files changed

+1778
-3
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package csembstu.alamgir.server.controller;
2+
3+
import org.springframework.beans.factory.annotation.Autowired;
4+
import org.springframework.web.bind.annotation.PostMapping;
5+
import org.springframework.web.bind.annotation.RequestBody;
6+
import org.springframework.web.bind.annotation.RestController;
7+
8+
import csembstu.alamgir.server.dto.request.DateRequestValidation;
9+
import csembstu.alamgir.server.dto.response.FullLogisticsValidationResponse;
10+
import csembstu.alamgir.server.service.ValidationApiService2;
11+
12+
@RestController
13+
public class ValidationApiController2 {
14+
15+
@Autowired
16+
private ValidationApiService2 validationApiService2;
17+
18+
@PostMapping("/full-logistics-validation")
19+
public FullLogisticsValidationResponse validateCap(@RequestBody DateRequestValidation request) {
20+
return validationApiService2.fullLogisticsValidation(request);
21+
}
22+
}

server/src/main/java/csembstu/alamgir/server/dto/request/CreateDemandRequest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
import jakarta.validation.constraints.NotBlank;
44
import jakarta.validation.constraints.NotNull;
55
import lombok.Data;
6+
import lombok.experimental.Accessors;
67

78
@Data
9+
@Accessors(chain = true)
810
public class CreateDemandRequest {
911

1012
@NotBlank(message = "Location ID is required")

server/src/main/java/csembstu/alamgir/server/dto/request/CreateLocationRequest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
import csembstu.alamgir.server.dto.LocationType;
44
import jakarta.validation.constraints.*;
55
import lombok.Data;
6+
import lombok.experimental.Accessors;
67

78
@Data
9+
@Accessors(chain = true)
810
public class CreateLocationRequest {
911

1012
@NotBlank(message = "Name is required") private String name;

server/src/main/java/csembstu/alamgir/server/dto/request/CreateProductRequest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
import jakarta.validation.constraints.NotBlank;
44
import jakarta.validation.constraints.NotNull;
55
import lombok.Data;
6+
import lombok.experimental.Accessors;
67

78
@Data
9+
@Accessors(chain = true)
810
public class CreateProductRequest {
911

1012
@NotBlank(message = "Product name is required")

server/src/main/java/csembstu/alamgir/server/dto/request/CreateRouteRequest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
import jakarta.validation.constraints.NotBlank;
44
import jakarta.validation.constraints.NotNull;
55
import lombok.Data;
6+
import lombok.experimental.Accessors;
67

78
@Data
9+
@Accessors(chain = true)
810
public class CreateRouteRequest {
911

1012
@NotBlank(message = "fromLocationId is required")

server/src/main/java/csembstu/alamgir/server/dto/request/CreateStorageUnitRequest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
import jakarta.validation.constraints.NotBlank;
44
import jakarta.validation.constraints.NotNull;
55
import lombok.Data;
6+
import lombok.experimental.Accessors;
67

78
@Data
9+
@Accessors(chain = true)
810
public class CreateStorageUnitRequest {
911

1012
@NotBlank(message = "Location ID is required")

server/src/main/java/csembstu/alamgir/server/dto/request/DateRequestValidation.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@
22

33
import jakarta.validation.constraints.NotBlank;
44
import lombok.Data;
5+
import lombok.experimental.Accessors;
56

67
@Data
8+
@Accessors(chain = true)
79
public class DateRequestValidation {
810

911
@NotBlank(message = "capacity is required")
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package csembstu.alamgir.server.dto.response;
2+
3+
import lombok.Data;
4+
import lombok.experimental.Accessors;
5+
6+
@Data
7+
@Accessors(chain = true)
8+
public class CapacityViolation {
9+
private String violation;
10+
private String from;
11+
private String to;
12+
private int used_capacity; // demand maxQuantity
13+
private int capacity; // route capacity
14+
15+
public CapacityViolation(String violation, String from, String to, int used_capacity, int capacity) {
16+
this.violation = violation;
17+
this.from = from;
18+
this.to = to;
19+
this.used_capacity = used_capacity;
20+
this.capacity = capacity;
21+
}
22+
23+
}

server/src/main/java/csembstu/alamgir/server/dto/response/CreateLocationResponse.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@
22

33
import csembstu.alamgir.server.dto.LocationType;
44
import lombok.Data;
5+
import lombok.experimental.Accessors;
56

67
@Data
8+
@Accessors(chain = true)
79
public class CreateLocationResponse {
810

911
private String id;
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
package csembstu.alamgir.server.dto.response;
2+
3+
import java.util.ArrayList;
4+
import java.util.List;
5+
import lombok.Data;
6+
import lombok.experimental.Accessors;
7+
8+
@Data
9+
@Accessors(chain = true)
10+
public class FullLogisticsValidationResponse {
11+
private List<String> temperature_incompatible_demands;
12+
private List<CapacityViolation> capacity_violations;
13+
private List<StorageCapacityViolation> storage_capacity_violations;
14+
15+
public FullLogisticsValidationResponse() {
16+
this.temperature_incompatible_demands = new ArrayList<>();
17+
this.capacity_violations = new ArrayList<>();
18+
this.storage_capacity_violations = new ArrayList<>();
19+
}
20+
}

0 commit comments

Comments
 (0)