server: minor, improve exception handling on update
This commit is contained in:
parent
920c90e4ac
commit
5fc71e50db
14
server.rb
14
server.rb
|
@ -252,12 +252,12 @@ def add_part(part)
|
|||
if part["id"] then
|
||||
# ensure part to update exists
|
||||
statement = @db.prepare("SELECT id FROM part WHERE id = ?")
|
||||
raise StandardError.new("id not valid") if statement.execute(part["id"]).to_a.empty?
|
||||
raise ScriptError.new("id not valid") if statement.execute(part["id"]).to_a.empty?
|
||||
else
|
||||
# add new part
|
||||
raise StandardError.new("name required") unless part["name"] and part["name"].length > 0
|
||||
raise ScriptError.new("name required") unless part["name"] and part["name"].length > 0
|
||||
statement = @db.prepare("SELECT id FROM part WHERE name = ?")
|
||||
raise StandardError.new("name already existing") unless statement.execute(part["name"]).to_a.empty?
|
||||
raise ScriptError.new("name already existing") unless statement.execute(part["name"]).to_a.empty?
|
||||
insert = @db.prepare("INSERT INTO part (name) VALUES (?)");
|
||||
insert.execute(part["name"])
|
||||
part["id"] = statement.execute(part["name"]).to_a[0]["id"]
|
||||
|
@ -273,7 +273,7 @@ def add_part(part)
|
|||
else
|
||||
statement = @db.prepare("SELECT id FROM part WHERE name = ?")
|
||||
family = statement.execute(part[field]).to_a
|
||||
raise StandardError.new("family not existing") if family.empty?
|
||||
raise ScriptError.new("family not existing") if family.empty?
|
||||
update = @db.prepare("UPDATE part SET #{field} = ? WHERE id = ?")
|
||||
update.execute(family[0]["id"], part["id"])
|
||||
family = get_part_by_id(family[0]["id"])
|
||||
|
@ -384,7 +384,7 @@ def add_part(part)
|
|||
next unless row["quantity"]
|
||||
statement = @db.prepare("SELECT id FROM part WHERE LOWER(name) = ?")
|
||||
ref = statement.execute(row["name"].downcase).to_a[0]
|
||||
#raise StandardError.new("component #{name} does not exist") unless ref
|
||||
#raise ScriptError.new("component #{name} does not exist") unless ref
|
||||
next unless ref
|
||||
row["quantity"] ||= 0
|
||||
insert = @db.prepare("INSERT INTO assembly (assembled,component,quantity) VALUES (?,?,?)");
|
||||
|
@ -409,7 +409,7 @@ post '/part' do
|
|||
puts part if DEBUG
|
||||
begin
|
||||
add_part(part)
|
||||
rescue StandardError => e
|
||||
rescue ScriptError => e
|
||||
halt 401, e.message
|
||||
end
|
||||
return 200
|
||||
|
@ -438,7 +438,7 @@ get '/import/lcsc/:lcsc' do
|
|||
halt 401, "part #{part['name']} already exists" if existing
|
||||
begin
|
||||
add_part(part)
|
||||
rescue StandardError => e
|
||||
rescue ScriptError => e
|
||||
halt 401, e.message
|
||||
end
|
||||
i = 0
|
||||
|
|
Loading…
Reference in New Issue