@@ -310,7 +310,7 @@ export class AdminService {
310310 return updatedSubmission ;
311311 }
312312
313- async quickApproveSubmission ( submissionId : number , adminUserId : number , providedJustification ?: string , userFeedback ?: string ) {
313+ async quickApproveSubmission ( submissionId : number , adminUserId : number , providedJustification ?: string , userFeedback ?: string , providedApprovedHours ?: number ) {
314314 const submission = await this . prisma . submission . findUnique ( {
315315 where : { submissionId } ,
316316 include : {
@@ -326,13 +326,17 @@ export class AdminService {
326326 throw new NotFoundException ( 'Submission not found' ) ;
327327 }
328328
329+ // Use provided approved hours if available, otherwise fall back to hackatime hours
329330 const hackatimeHours = submission . project . nowHackatimeHours || 0 ;
330- const autoJustification = `Quick approved with ${ hackatimeHours . toFixed ( 1 ) } Hackatime hours tracked on Midnight project.` ;
331+ const approvedHours = providedApprovedHours !== undefined && providedApprovedHours !== null
332+ ? providedApprovedHours
333+ : hackatimeHours ;
334+ const autoJustification = `Quick approved with ${ approvedHours . toFixed ( 1 ) } hours.` ;
331335 const adminHoursJustification = providedJustification || autoJustification ;
332336
333337 const updateData : any = {
334338 approvalStatus : 'approved' ,
335- approvedHours : hackatimeHours ,
339+ approvedHours : approvedHours ,
336340 hoursJustification : userFeedback || '' ,
337341 reviewedBy : adminUserId . toString ( ) ,
338342 reviewedAt : new Date ( ) ,
@@ -360,7 +364,7 @@ export class AdminService {
360364 await this . prisma . project . update ( {
361365 where : { projectId : submission . projectId } ,
362366 data : {
363- approvedHours : hackatimeHours ,
367+ approvedHours : approvedHours ,
364368 hoursJustification : adminHoursJustification ,
365369 playableUrl : submission . playableUrl ,
366370 repoUrl : submission . repoUrl ,
@@ -399,7 +403,7 @@ export class AdminService {
399403 playableUrl : playableUrl ,
400404 repoUrl : repoUrl ,
401405 screenshotUrl : submission . screenshotUrl || submission . project . screenshotUrl || '' ,
402- approvedHours : hackatimeHours ,
406+ approvedHours : approvedHours ,
403407 hoursJustification : adminHoursJustification ,
404408 description : submission . description || submission . project . description || undefined ,
405409 } ,
@@ -431,7 +435,7 @@ export class AdminService {
431435 repoUrl : submission . repoUrl || undefined ,
432436 screenshotUrl : submission . screenshotUrl || undefined ,
433437 description : submission . description || undefined ,
434- approvedHours : hackatimeHours ,
438+ approvedHours : approvedHours ,
435439 hoursJustification : adminHoursJustification ,
436440 } ) ;
437441 } catch ( error ) {
0 commit comments