dateConvert
parent
36f8490e85
commit
bb924bd10f
|
|
@ -0,0 +1,38 @@
|
|||
package com.nttdata.calender;
|
||||
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.time.format.DateTimeParseException;
|
||||
import java.util.TimeZone;
|
||||
|
||||
import com.bmc.arsys.api.Timestamp;
|
||||
import com.nttdata.calender.errorhandling.ErrorTypes.ValidationError;
|
||||
|
||||
public class DateConverter {
|
||||
|
||||
final String DATEFORMAT = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'";
|
||||
|
||||
public LocalDate convertDateTime(String timestamp) throws ValidationError {
|
||||
try {
|
||||
System.out.println(timestamp);
|
||||
LocalDate date = LocalDate.parse(timestamp, DateTimeFormatter.ofPattern(DATEFORMAT));
|
||||
return date;
|
||||
} catch (DateTimeParseException e) {
|
||||
throw new ValidationError("Incorrect dateformat in request");
|
||||
}
|
||||
}
|
||||
|
||||
public Timestamp convertTimestamp(String timestamp) throws ValidationError {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat(DATEFORMAT);
|
||||
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
|
||||
try {
|
||||
Timestamp ts = new Timestamp(sdf.parse(timestamp));
|
||||
return ts;
|
||||
} catch (ParseException e) {
|
||||
throw new ValidationError("Incorrect dateformat in request");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -14,6 +14,7 @@ import com.bmc.arsys.api.Entry;
|
|||
import com.bmc.arsys.api.SortInfo;
|
||||
import com.bmc.arsys.api.Timestamp;
|
||||
import com.bmc.arsys.api.Value;
|
||||
import com.nttdata.calender.DateConverter;
|
||||
import com.nttdata.calender.api.Query;
|
||||
import com.nttdata.calender.api.RemedyJavaAPI;
|
||||
import com.nttdata.calender.changes.query.FilterElement;
|
||||
|
|
@ -360,30 +361,24 @@ public class Change {
|
|||
public void modifyTimestamp(ChangeUpdateRequest request) throws ARException, ValidationError {
|
||||
String entryId = request.getResourceId();
|
||||
String d2 = request.getD2();
|
||||
var dateConverter = new DateConverter();
|
||||
int state = request.getState();
|
||||
String changeNr = request.getChangeNr();
|
||||
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSS'Z'");
|
||||
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
|
||||
var ts = dateConverter.convertTimestamp(d2);
|
||||
if (state == 0) {
|
||||
Query query = new Query.QueryBuilder("ASF:WI_TAS_Paket")
|
||||
.addFieldValue("d2", 1000000350, new Value(ts)).build();
|
||||
api.modifyEntry(entryId, query);
|
||||
} else {
|
||||
Query queryInfrastructureChange = new Query.QueryBuilder("CHG:Infrastructure Change")
|
||||
.addFieldValue("d2", 1000000350, new Value(ts)).build();
|
||||
|
||||
try {
|
||||
Timestamp ts = new Timestamp(sdf.parse(d2));
|
||||
if (state == 0) {
|
||||
Query query = new Query.QueryBuilder("ASF:WI_TAS_Paket")
|
||||
.addFieldValue("d2", 1000000350, new Value(ts)).build();
|
||||
api.modifyEntry(entryId, query);
|
||||
} else {
|
||||
Query queryInfrastructureChange = new Query.QueryBuilder("CHG:Infrastructure Change")
|
||||
.addFieldValue("d2", 1000000350, new Value(ts)).build();
|
||||
var change = api.queryFieldsById("\'Infrastructure Change ID\' = \"" + changeNr + "\"",
|
||||
queryInfrastructureChange.getFieldIds(),
|
||||
queryInfrastructureChange.getFormName(), null, 0, 0);
|
||||
|
||||
var change = api.queryFieldsById("\'Infrastructure Change ID\' = \"" + changeNr + "\"",
|
||||
queryInfrastructureChange.getFieldIds(),
|
||||
queryInfrastructureChange.getFormName(), null, 0, 0);
|
||||
|
||||
api.modifyEntry(change.get(0).getEntryId(), queryInfrastructureChange);
|
||||
}
|
||||
} catch (ParseException e) {
|
||||
throw new ValidationError("Incorrect dateformat in request");
|
||||
api.modifyEntry(change.get(0).getEntryId(), queryInfrastructureChange);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ import java.util.Objects;
|
|||
|
||||
import com.bmc.arsys.api.ARException;
|
||||
import com.bmc.thirdparty.org.springframework.cglib.core.Local;
|
||||
import com.nttdata.calender.DateConverter;
|
||||
import com.nttdata.calender.api.Query;
|
||||
import com.nttdata.calender.api.RemedyJavaAPI;
|
||||
import com.nttdata.calender.changes.ChangeItem;
|
||||
|
|
@ -29,9 +30,10 @@ public class PlanTimes {
|
|||
}
|
||||
|
||||
public void setPlanTimes(PlanTimesRequest req) throws ARException, ValidationError {
|
||||
var dateConverter = new DateConverter();
|
||||
var startDate = dateConverter.convertDateTime(req.getRenderStartDate());
|
||||
var endDate = dateConverter.convertDateTime(req.getRenderEndDate());
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy");
|
||||
LocalDate startDate = LocalDate.parse(req.getRenderStartDate(), formatter);
|
||||
LocalDate endDate = LocalDate.parse(req.getRenderEndDate(), formatter);
|
||||
|
||||
var queryChanges = new Query.QueryBuilder(formName).addFieldId("D2", 1000000350)
|
||||
.addFieldId("ChangeNr", 1000000182).addFieldId("PlanTimeHours", 666000009)
|
||||
|
|
|
|||
Loading…
Reference in New Issue