Use existing achievement row for new achievements
This commit is contained in:
		
							parent
							
								
									3203842249
								
							
						
					
					
						commit
						52e263bb90
					
				@ -98,9 +98,9 @@ let addAchievement connStr (did : uint64) (achievement : string) =
 | 
				
			|||||||
        [ ( "did" , Sql.string (string did) )
 | 
					        [ ( "did" , Sql.string (string did) )
 | 
				
			||||||
          ( "symbol", Sql.string achievement ) ]
 | 
					          ( "symbol", Sql.string achievement ) ]
 | 
				
			||||||
    |> Sql.query """
 | 
					    |> Sql.query """
 | 
				
			||||||
           WITH ach AS (INSERT INTO achievement (symbol) VALUES (@symbol) RETURNING id),
 | 
					            WITH ach AS (SELECT id FROM achievement WHERE symbol = @symbol),
 | 
				
			||||||
                 usr AS (SELECT id FROM "user" WHERE discord_id = @did)
 | 
					                 usr AS (SELECT id FROM "user" WHERE discord_id = @did)
 | 
				
			||||||
           INSERT INTO user_achievements_achievement (user_id, achievement_id) SELECT usr.id, ach.id FROM usr, ach
 | 
					            INSERT INTO user_achievements_achievement (user_id, achievement_id) SELECT usr.id, ach.id FROM usr, ach;
 | 
				
			||||||
       """
 | 
					       """
 | 
				
			||||||
    |> Sql.executeNonQueryAsync
 | 
					    |> Sql.executeNonQueryAsync
 | 
				
			||||||
    |> Async.AwaitTask
 | 
					    |> Async.AwaitTask
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user