Skip to content

Commit cd359f5

Browse files
authored
Merge pull request #220 from companieshouse/bug/dsnd-3300_fix_updated_at_timestamps
DSND-3300: Fix updated at
2 parents 9eddfc5 + 2307a43 commit cd359f5

File tree

5 files changed

+28
-13
lines changed

5 files changed

+28
-13
lines changed

src/main/java/uk/gov/companieshouse/pscdataapi/controller/CompanyPscController.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,8 @@ public CompanyPscController(CompanyPscService pscService) {
4141
}
4242

4343
@PutMapping("/company/{company_number}/persons-with-significant-control/{notification_id}/full_record")
44-
public ResponseEntity<Void> submitPscData(@PathVariable("company_number") final String companyNumber,
44+
public ResponseEntity<Void> submitPscData(
45+
@PathVariable("company_number") final String companyNumber,
4546
@PathVariable("notification_id") final String notificationId,
4647
@RequestBody FullRecordCompanyPSCApi request) {
4748

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,27 @@
11
package uk.gov.companieshouse.pscdataapi.models;
22

3-
import java.time.LocalDate;
3+
import java.time.LocalDateTime;
44

55
public class Updated {
66

7-
private LocalDate at;
7+
private LocalDateTime at;
8+
private String by;
89

9-
public LocalDate getAt() {
10+
public LocalDateTime getAt() {
1011
return at;
1112
}
1213

13-
public Updated setAt(LocalDate at) {
14+
public Updated at(LocalDateTime at) {
1415
this.at = at;
1516
return this;
1617
}
18+
19+
public String getBy() {
20+
return by;
21+
}
22+
23+
public Updated by(String by) {
24+
this.by = by;
25+
return this;
26+
}
1727
}

src/main/java/uk/gov/companieshouse/pscdataapi/transform/CompanyPscTransformer.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import static uk.gov.companieshouse.pscdataapi.PscDataApiApplication.APPLICATION_NAME_SPACE;
44

55
import java.time.LocalDate;
6+
import java.time.LocalDateTime;
67
import java.time.format.DateTimeFormatter;
78
import java.util.Objects;
89
import java.util.Optional;
@@ -398,8 +399,7 @@ public ListSummary transformPscDocToListSummary(PscDocument pscDocument) {
398399
* @param requestBody request payload.
399400
* @return PSC mongo Document.
400401
*/
401-
public PscDocument transformPscOnInsert(
402-
String notificationId, FullRecordCompanyPSCApi requestBody) {
402+
public PscDocument transformPscOnInsert(String notificationId, FullRecordCompanyPSCApi requestBody) {
403403
String pscStatementId = null;
404404
if (requestBody.getExternalData() != null) {
405405
final ExternalData externalData = requestBody.getExternalData();
@@ -441,8 +441,9 @@ public PscDocument transformPscOnInsert(
441441
InternalData internalData = requestBody.getInternalData();
442442
pscDocument.setDeltaAt(dateTimeFormatter.format(internalData.getDeltaAt()));
443443

444-
pscDocument.setUpdated(new Updated().setAt(LocalDate.now()));
445-
pscDocument.setUpdatedBy(internalData.getUpdatedBy());
444+
pscDocument.setUpdated(new Updated()
445+
.at(LocalDateTime.now())
446+
.by(internalData.getUpdatedBy()));
446447
}
447448
return pscDocument;
448449
}

src/test/java/uk/gov/companieshouse/pscdataapi/transform/CompanyPscTransformerTest.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
package uk.gov.companieshouse.pscdataapi.transform;
22

33
import static org.hamcrest.MatcherAssert.assertThat;
4+
import static org.hamcrest.Matchers.instanceOf;
45
import static org.hamcrest.Matchers.is;
56

67
import java.time.LocalDate;
8+
import java.time.LocalDateTime;
79
import org.junit.jupiter.api.Assertions;
810
import org.junit.jupiter.api.Test;
911
import org.junit.jupiter.api.extension.ExtendWith;
@@ -258,7 +260,7 @@ private static void pscInsertAssertions(PscDocument expectedDocument, PscDocumen
258260

259261
assertThat(result.getDeltaAt(), is(expectedDocument.getDeltaAt()));
260262
assertThat(result.getUpdatedBy(), is(expectedDocument.getUpdatedBy()));
261-
assertThat(result.getUpdated().getAt(), is(expectedDocument.getUpdated().getAt()));
263+
assertThat(result.getUpdated().getAt(), instanceOf(LocalDateTime.class));
262264

263265
result.setUpdated(expectedDocument.getUpdated()); // Updated objects would be different objects
264266
assertThat(result, is(expectedDocument));

src/test/java/uk/gov/companieshouse/pscdataapi/util/TestHelper.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -246,8 +246,9 @@ public static PscDocument buildPscDocument(String kind, boolean showFullDateOfBi
246246
output.setPscId(PSC_ID);
247247
output.setCompanyNumber(COMPANY_NUMBER);
248248
output.setDeltaAt("20220112000000000000");
249-
output.setUpdated(new Updated().setAt(LocalDate.now()));
250-
output.setUpdatedBy("user");
249+
output.setUpdated(new Updated()
250+
.at(LocalDateTime.now())
251+
.by("user"));
251252

252253
pscData.setKind(kind);
253254
pscData.setCeasedOn(LocalDate.of(2012, 12, 12));
@@ -365,7 +366,7 @@ public static PscDocument buildPscDocument(String kind, boolean showFullDateOfBi
365366

366367
public static PscDocument buildBasicDocument() {
367368
PscDocument document = new PscDocument();
368-
document.setUpdated(new Updated().setAt(LocalDate.now()));
369+
document.setUpdated(new Updated().at(LocalDateTime.now()));
369370
document.setCompanyNumber(COMPANY_NUMBER);
370371
document.setPscId(PSC_ID);
371372
document.setNotificationId(COMPANY_NUMBER);

0 commit comments

Comments
 (0)