From 62928e1f551ca810361b1c2eb0d9d8b90ffd1c4d Mon Sep 17 00:00:00 2001 From: nugroho Date: Tue, 1 Jul 2025 00:13:53 +0700 Subject: [PATCH] worked up to evaluation --- APIHandler.cs | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/APIHandler.cs b/APIHandler.cs index 6c8c137..bad2d87 100644 --- a/APIHandler.cs +++ b/APIHandler.cs @@ -610,11 +610,30 @@ public static partial class APIHandler await runner.WriteJsonResponse(StatusCodes.Status201Created, "Proker evidence accepted. Journal created successfully."); }); }) - .Map("/evalproker", proker=> + .Map("/eval", proker=> { proker.Run(async runner => { - await runner.WriteJsonResponse(StatusCodes.Status501NotImplemented, "Not yet finished."); + if (!await runner.RequestValidated(1, "POST", true) || !Auth.TryGetUser(runner, out SafeUser CurrUser) || + await runner.TryGetBodyJsonAsync(["prokerid", "notes"], CTS.Token) is not Dictionary InElement) return; + if ( + InElement["prokerid"].GetString() is not string ProkerID || ProkerID.Equals(string.Empty) || + InElement["notes"].GetString() is not string Notes || Notes.Equals(string.Empty) + ) + { + await runner.WriteJsonResponse(StatusCodes.Status400BadRequest, "Required property values is invalid or out of allowed range."); + return; + } + await RunNonQueryAsync(CS, "INSERT INTO [proker_journal] VALUES (@pjid, @pkid, @owid, 8, @nots, null, @tstp)", Query => + { + DateTime Now = DateTime.Now; + Query.Parameters.AddWithValue("@pjid", GenerateUuidV7(Now)); + Query.Parameters.AddWithValue("@pkid", ProkerID); + Query.Parameters.AddWithValue("@owid", CurrUser.AgentID); + Query.Parameters.AddWithValue("@nots", Notes); + Query.Parameters.AddWithValue("@tstp", Now); + }, CTS.Token); + await runner.WriteJsonResponse(StatusCodes.Status201Created, "Proker evaluation accepted. Journal created successfully."); }); }) ;