Skip to content

Commit

Permalink
Transaction
Browse files Browse the repository at this point in the history
  • Loading branch information
ursm committed Jun 27, 2024
1 parent 4594317 commit 22956e0
Showing 1 changed file with 44 additions and 35 deletions.
79 changes: 44 additions & 35 deletions api/app/models/database/dra.rb
Original file line number Diff line number Diff line change
Expand Up @@ -52,41 +52,50 @@ class Submitter
def submit(submission)
db = Sequel.connect(ENV.fetch('DRA_DATABASE_URL'))

user_id = 42
submitter_id = '42'
serial = (db[:submission].where(submitter_id:).max(:serial) || 0) + 1
submission_id = "#{submitter_id}-#{serial.to_s.rjust(4, '0')}"

sub_id = db[:submission].insert(
usr_id: user_id,
submitter_id: ,
serial: ,
create_date: Date.current
)

db[:status_history].insert(
sub_id: ,
status: 100 # SubmissionStatus.NEW
)

db[:operation_history].insert(
type: 3, # LogLevel.INFO
summary: 'Status update to new',
usr_id: user_id,
serial: ,
submitter_id:
)

ext_id = db[:ext_entity].insert(
acc_type: 'DRA',
ref_name: submission_id,
status: 0 # ExtStatus.INPUTTING
)

db[:ext_permit].insert(
ext_id: ,
submitter_id:
)
user_id = 42
submitter_id = '42'

db.transaction auto_savepoint: true do
serial = nil
sub_id = nil

db.transaction isolation: :serializable do
serial = (db[:submission].where(submitter_id:).max(:serial) || 0) + 1

sub_id = db[:submission].insert(
usr_id: user_id,
submitter_id: ,
serial: ,
create_date: Date.current
)
end

submission_id = "#{submitter_id}-#{serial.to_s.rjust(4, '0')}"

db[:status_history].insert(
sub_id: ,
status: 100 # SubmissionStatus.NEW
)

db[:operation_history].insert(
type: 3, # LogLevel.INFO
summary: 'Status update to new',
usr_id: user_id,
serial: ,
submitter_id:
)

ext_id = db[:ext_entity].insert(
acc_type: 'DRA',
ref_name: submission_id,
status: 0 # ExtStatus.INPUTTING
)

db[:ext_permit].insert(
ext_id: ,
submitter_id:
)
end
end
end
end

0 comments on commit 22956e0

Please sign in to comment.