24 lines
1.2 KiB
JavaScript
24 lines
1.2 KiB
JavaScript
import { dateStringToInteger, dateToInteger, dateToTimeInteger, timeStringToInteger } from '@cityssm/utils-datetime';
|
|
import sqlite from 'better-sqlite3';
|
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
|
export default function completeWorkOrderMilestone(milestoneForm, user) {
|
|
const rightNow = new Date();
|
|
const database = sqlite(sunriseDB);
|
|
const completionDate = (milestoneForm.workOrderMilestoneCompletionDateString ?? '') === ''
|
|
? dateToInteger(rightNow)
|
|
: dateStringToInteger(milestoneForm.workOrderMilestoneCompletionDateString);
|
|
const completionTime = (milestoneForm.workOrderMilestoneCompletionTimeString ?? '') === ''
|
|
? dateToTimeInteger(rightNow)
|
|
: timeStringToInteger(milestoneForm.workOrderMilestoneCompletionTimeString);
|
|
const result = database
|
|
.prepare(`update WorkOrderMilestones
|
|
set workOrderMilestoneCompletionDate = ?,
|
|
workOrderMilestoneCompletionTime = ?,
|
|
recordUpdate_userName = ?,
|
|
recordUpdate_timeMillis = ?
|
|
where workOrderMilestoneId = ?`)
|
|
.run(completionDate, completionTime, user.userName, rightNow.getTime(), milestoneForm.workOrderMilestoneId);
|
|
database.close();
|
|
return result.changes > 0;
|
|
}
|