How to update the user level when ever user report any tweet in sql

 


ALTER PROCEDURE [dbo].[SP_UPDATEUSERLEVEL]

@Userid INT

AS

BEGIN

Declare @CountOfUserReportedTweets INT

Declare @LevelBadgeId INT

SET @CountOfUserReportedTweets=(select count(*) from OnGoingReports where UserId=@Userid)


--CHECKS WHETHER THE LEVEL EXIST OR NOT

IF EXISTS(select Top 1 * from LevelBadge where NoofTweets<=@CountOfUserReportedTweets order by NoofTweets desc)

BEGIN

--IF LEVEL EXISTS UPDATE OR INSERT WITH THAT LEVEL ID

SET @LevelBadgeId=(select Top 1 Id from LevelBadge where NoofTweets<=@CountOfUserReportedTweets order by NoofTweets desc)

IF EXISTS(select * from UserLevel where UserId=@Userid)

BEGIN

UPDATE UserLevel SET LevelBadgeId=@LevelBadgeId

WHERE UserId=@Userid

END

ELSE

BEGIN

INSERT INTO UserLevel(UserId,LevelBadgeId) VALUES (@Userid,@LevelBadgeId)

END

END

ELSE

BEGIN

--IF NO LEVEL EXISTS THEN INSERTING DEFAULT LEVEL

IF EXISTS(select * from UserLevel where UserId=@Userid)

BEGIN

UPDATE UserLevel SET LevelBadgeId=1

WHERE UserId=@Userid

END

ELSE

BEGIN

INSERT INTO UserLevel(UserId,LevelBadgeId) VALUES (@Userid,1)

END

END

END

Comments

Popular posts from this blog

How to get the user details, user current level, next level, Rank in sql server

Implement virtualisation in kendo drop down list using jquery ajax in mvc, aspx page