Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- USE [SRO_VT_ACCOUNT]
- GO
- /****** Object: StoredProcedure [dbo].[_WebPurchaseSilk] ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- /**
- version : 1
- author : Syloxx
- created date: 2017-19-03
- description : add silk to user after purchase.
- return value :
- 0 = No Errors
- 100 = Unknown Error
- **/
- ALTER PROCEDURE [dbo].[_WebPurchaseSilk]
- @UserJID INT
- , @PurchasedSilk INT
- AS
- SET NOCOUNT ON
- SET XACT_ABORT ON
- DECLARE @ReturnValue INT
- , @NewSilkQuantity INT
- /**_# Rollback and return if inside an uncommittable transaction.*/
- IF XACT_STATE() = -1
- BEGIN
- SET @ReturnValue = 1
- GOTO ErrorHandler
- END
- BEGIN TRY
- BEGIN TRANSACTION
- IF NOT EXISTS (SELECT * FROM SK_Silk WHERE JID = @UserJID)
- BEGIN
- INSERT SK_Silk
- VALUES (@UserJID, @PurchasedSilk, 0, 0)
- SET @NewSilkQuantity = @PurchasedSilk
- END
- ELSE
- BEGIN
- UPDATE SK_Silk
- SET silk_own += @PurchasedSilk
- WHERE JID = @UserJID
- SELECT @NewSilkQuantity = silk_own + @PurchasedSilk
- FROM SK_Silk
- WHERE JID = @UserJID
- END
- INSERT SK_SilkChange_BY_Web
- VALUES (@UserJID, @NewSilkQuantity, @PurchasedSilk, 0, 0)
- COMMIT TRANSACTION
- END TRY
- BEGIN CATCH
- SET @ReturnValue = 100
- GOTO ErrorHandler
- END CATCH
- RETURN 0
- ErrorHandler:
- IF XACT_STATE() <> 0
- ROLLBACK TRANSACTION
- RETURN @ReturnValue
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement