缴费
This commit is contained in:
+23
-9
@@ -57,7 +57,7 @@ function buildSeedOperations(state) {
|
||||
const nullable = value => value == null || value === '' ? null : value;
|
||||
|
||||
add(
|
||||
'UPDATE schema_metadata SET schema_version = 14, app_version = ?, self_registration_enabled = ?, created_at = ? WHERE id = 1',
|
||||
'UPDATE schema_metadata SET schema_version = 15, app_version = ?, self_registration_enabled = ?, created_at = ? WHERE id = 1',
|
||||
Number(state.meta?.version || 1), state.settings?.selfRegistrationEnabled ? 1 : 0,
|
||||
state.meta?.createdAt || new Date().toISOString()
|
||||
);
|
||||
@@ -147,11 +147,12 @@ function buildSeedOperations(state) {
|
||||
for (const registration of state.registrations) {
|
||||
add(
|
||||
`INSERT INTO registrations (
|
||||
id, user_id, exam_id, status, payment_status, created_at, reviewed_at, review_note,
|
||||
id, user_id, exam_id, status, payment_status, paid_at, paid_by, created_at, reviewed_at, review_note,
|
||||
registration_number, number_rule_id
|
||||
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,
|
||||
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,
|
||||
registration.id, registration.userId, registration.examId, registration.status,
|
||||
registration.paymentStatus, registration.createdAt, nullable(registration.reviewedAt), nullable(registration.reviewNote),
|
||||
registration.paymentStatus, nullable(registration.paidAt), nullable(registration.paidBy), registration.createdAt,
|
||||
nullable(registration.reviewedAt), nullable(registration.reviewNote),
|
||||
nullable(registration.registrationNumber), nullable(registration.numberRuleId)
|
||||
);
|
||||
for (const subjectId of registration.subjectIds) {
|
||||
@@ -546,6 +547,8 @@ function stateFromRows(rows) {
|
||||
subjectIds: registrationSubjects.get(row.id) || [],
|
||||
status: row.status,
|
||||
paymentStatus: row.payment_status,
|
||||
paidAt: row.paid_at || null,
|
||||
paidBy: row.paid_by || null,
|
||||
createdAt: row.created_at,
|
||||
reviewedAt: row.reviewed_at,
|
||||
reviewNote: row.review_note || '',
|
||||
@@ -957,11 +960,12 @@ function createRepository({ client, location, read, transaction, close }) {
|
||||
async createRegistration(registration, instance, action) {
|
||||
const operations = [operation(
|
||||
`INSERT INTO registrations (
|
||||
id, user_id, exam_id, status, payment_status, created_at, reviewed_at, review_note,
|
||||
id, user_id, exam_id, status, payment_status, paid_at, paid_by, created_at, reviewed_at, review_note,
|
||||
registration_number, number_rule_id
|
||||
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,
|
||||
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,
|
||||
registration.id, registration.userId, registration.examId, registration.status,
|
||||
registration.paymentStatus, registration.createdAt, optional(registration.reviewedAt), optional(registration.reviewNote),
|
||||
registration.paymentStatus, optional(registration.paidAt), optional(registration.paidBy), registration.createdAt,
|
||||
optional(registration.reviewedAt), optional(registration.reviewNote),
|
||||
optional(registration.registrationNumber), optional(registration.numberRuleId)
|
||||
)];
|
||||
for (const subjectId of registration.subjectIds) {
|
||||
@@ -992,6 +996,15 @@ function createRepository({ client, location, read, transaction, close }) {
|
||||
auditOperation(log)
|
||||
]);
|
||||
},
|
||||
async updateRegistrationPayment(registration, log) {
|
||||
await transaction([
|
||||
operation(
|
||||
'UPDATE registrations SET payment_status = ?, paid_at = ?, paid_by = ? WHERE id = ?',
|
||||
registration.paymentStatus, optional(registration.paidAt), optional(registration.paidBy), registration.id
|
||||
),
|
||||
auditOperation(log)
|
||||
]);
|
||||
},
|
||||
async processWorkflow(instance, action, business, log) {
|
||||
const operations = [
|
||||
operation(
|
||||
@@ -1012,9 +1025,10 @@ function createRepository({ client, location, read, transaction, close }) {
|
||||
} else if (instance.businessType === 'registration_review') {
|
||||
operations.push(operation(
|
||||
`UPDATE registrations SET
|
||||
status = ?, payment_status = ?, reviewed_at = ?, review_note = ?,
|
||||
status = ?, payment_status = ?, paid_at = ?, paid_by = ?, reviewed_at = ?, review_note = ?,
|
||||
registration_number = ?, number_rule_id = ? WHERE id = ?`,
|
||||
business.status, business.paymentStatus, optional(business.reviewedAt), optional(business.reviewNote),
|
||||
business.status, business.paymentStatus, optional(business.paidAt), optional(business.paidBy),
|
||||
optional(business.reviewedAt), optional(business.reviewNote),
|
||||
optional(business.registrationNumber), optional(business.numberRuleId), business.id
|
||||
));
|
||||
} else if (instance.businessType === 'center_change') {
|
||||
|
||||
Reference in New Issue
Block a user