/*********************************** * ·Î±×Àνà °ú±Ýüũ ºÎºÐ ***********************************/ USE RYLBillingDB GO if exists (select * from dbo.sysobjects where id = object_id(N'[USPCheckTimeOutUser]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure USPCheckTimeOutUser GO -- °³ÀÎÁ¤·® ¹× Á¤¾×ÀÌ °ÔÀÓÁß ¸¸·áµÇ¾úÀ»¶§ ¼­¹ö¿¡¼­ ³Ñ°ÜÁØ ¾ÆÀ̵𸦠±âÁØÀ¸·Î -- ´Ù½Ã Çѹø´õ °ú±Ýüũ¸¦ ÇØ¼­ ´Ù½Ã ¼­¹öÂÊ¿¡ ²÷±è¿©ºÎ¸¦ ¾Ë·ÁÁØ´Ù. CREATE PROC USPCheckTimeOutUser AS SET NOCOUNT ON DECLARE @ITABLE TABLE ( nRowID INT IDENTITY(1,1) PRIMARY KEY , strClientID VARCHAR(20) , UID INT , strBillingType CHAR(2) , firstLoginTime SMALLDATETIME , tinyServerID TINYINT ) DECLARE @TblReturn TABLE ( UID INT , nServerID INT , RemainMin INT , BillingType CHAR(2) , EndTime INT --³¯Â¥À϶§´Â 20030202 , ½Ã°£À϶§´Â ºÐÀ¸·Î Àü´ÞÇÑ´Ù. , intCrmIndex INT ) DECLARE @ROWID INT DECLARE @strClientID VARCHAR(20) DECLARE @UID INT DECLARE @strBillingType CHAR(2) DECLARE @firstLoginTime SMALLDATETIME DECLARE @tinyServerID TINYINT DECLARE @nUID INT DECLARE @FreeTime INT DECLARE @DiffDate INT DECLARE @DiffTime INT DECLARE @EndTime INT DECLARE @RealDiffTime INT -- »õ·ÎÀÔ·ÂµÈ µ¥ÀÌÅ͸¸ °¡Á®¿Â´Ù. INSERT INTO @ITABLE (strClientID,UID,strBillingType,firstLoginTime,tinyServerID) SELECT strClientID,UID,strBillingType,firstLoginTime,tinyServerID FROM TblCurrentUser WHERE intCRMIndex = 0 SET @ROWID = @@ROWCOUNT WHILE @ROWID > 0 BEGIN SELECT @strClientID = strClientID,@UID = UID,@strBillingType=strBillingType,@firstLoginTime=firstLoginTime,@tinyServerID = tinyServerID FROM @ITABLE WHERE nRowID = @ROWID SET @nUID = 0 --ÃʱâÈ­ÇÑ´Ù. SET @DiffDate = NULL SET @EndTime = NULL SET @DiffTime = NULL SET @FreeTime = NULL SET @RealDiffTime = NULL IF (@strBillingType = 'N') BEGIN -- ¹«·á°èÁ¤ÀÎÁö ¾Æ´ÑÁö üũÇÑ´Ù SELECT @FreeTime = DATEDIFF(minute,GETDATE(),RegLoginTime),@EndTime = CAST(CONVERT(VARCHAR(8),RegLoginTime,112) AS INT) FROM TBLPERSONINFO WHERE UID = @UID IF (@FreeTime <= 5) BEGIN IF (@FreeTime < 0 ) BEGIN SET @FreeTime = 0 END INSERT INTO @TblReturn (UID,nServerID,RemainMIN,BillingType,EndTime,intCrmIndex) VALUES (@UID,@tinyServerID,@FreeTime,'F',@EndTime,0) END END ELSE BEGIN -- °ú±ÝÀ» ´Ù½Ã üũÇÑ´Ù. SELECT @nUID = UID,@DiffDate = DATEDIFF(minute,GETDATE(),dateEndTime), @EndTime = CAST(CONVERT(VARCHAR(8),dateEndTime,112) AS INT),@DiffTime = (intServiceTime - intUsingTime) FROM TblPersonBillingInfo WHERE strClientID = @strClientID IF (@nUID > 0) -- °ú±Ýµî·ÏÀ¯ÀúÀÓ BEGIN IF (@strBillingType = 'D') BEGIN IF (@DiffDate <= 5) BEGIN IF (@DiffDate < 0 ) BEGIN SET @DiffDate = 0 END INSERT INTO @TblReturn (UID,nServerID,RemainMIN,BillingType,EndTime,intCrmIndex) VALUES (@UID,@tinyServerID,@DiffDate,'E',@EndTime,0) END END ELSE IF (@strBillingType = 'T') BEGIN SET @RealDiffTime = @DiffTime - DATEDIFF(minute,@firstLoginTime,GETDATE()) IF (@RealDiffTime <= 5) BEGIN IF (@RealDiffTime < 0 ) BEGIN SET @RealDiffTime = 0 END INSERT INTO @TblReturn (UID,nServerID,RemainMIN,BillingType,EndTime,intCrmIndex) VALUES (@UID,@tinyServerID,@RealDiffTime,'T',@RealDiffTime,0) END END END END SET @ROWID = @ROWID - 1 END SELECT UID,nServerID,RemainMIN,BillingType,EndTime,intCrmIndex FROM @TblReturn GO if exists (select * from dbo.sysobjects where id = object_id(N'[USPCheckBilling_Person_Post]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure USPCheckBilling_Person_Post GO -- CHECK PERSONALBILLING CREATE PROC USPCheckBilling_Person_Post @strClientid VARCHAR(20),@strBillingType CHAR(1) OUTPUT,@PlayTime INT OUTPUT AS SET NOCOUNT ON DECLARE @RETURN INT -- 0:SUCCESS,1:ERROR DECLARE @dateEndTime SMALLDATETIME -- ÇöÀç °ú±ÝÀÌ µî·ÏµÈ »óÅÂÀÎ À¯Àú¶ó°íÇϸé IF EXISTS (SELECT strClientID FROM TblPersonBillingInfo WHERE strClientid =@strClientid) BEGIN SELECT @dateEndTime = dateEndTime,@PlayTime = (intServiceTime - intUsingTime) FROM TblPersonBillingInfo WHERE strClientid = @strClientID -- ¸ÕÀú °ú±ÝŸÀÔ Áß Á¤¾×Á¦°¡ Àû¿ëµÇ´ÂÁö ¾Ë¾Æº»´Ù. -- EXPIRED PERIOD TIME IF ((GETDATE() >= @dateEndTime) OR (@dateEndTime IS NULL)) BEGIN -- Á¤·®Á¦°¡ Àû¿ëµÇ´ÂÁö ¾Ë¾Æº»´Ù. IF (@PlayTime <= 0) BEGIN SET @strBillingType = 'N' -- °ú±Ý Àü»óÅ·Π¼¼ÆÃÇÑ´Ù. SET @RETURN = 3 --ERROR RETURN @RETURN END ELSE BEGIN SET @strBillingType = 'T' -- Á¤·®Á¦ °ú±ÝÀ¸·Î OUTPUTÇÑ´Ù. SET @RETURN = 0 --SUCCESS RETURN @RETURN END END -- CAN PLAY ELSE BEGIN SET @strBillingType = 'D' -- Á¤¾×Á¦ °ú±ÝÀ¸·Î OUTPUTÇÑ´Ù. --SET @PlayTime = DATEDIFF(DAY,GETDATE(),@dateEndTime) SET @PlayTime =CAST(CONVERT(VARCHAR(8),@dateEndTime,112) AS INT) SET @RETURN = 0 --SUCCESS RETURN @RETURN END END ELSE BEGIN -- NOT EXISTS SET @strBillingType = 'N' -- °ú±Ý Àü»óÅ·Π¼¼ÆÃÇÑ´Ù. SET @PlayTime = 0 -- °ú±Ý Àü»óÅ·Π¼¼ÆÃÇÑ´Ù. SET @RETURN = 1 --ERROR RETURN @RETURN END GO if exists (select * from dbo.sysobjects where id = object_id(N'[USPCheckBilling_GameRoom_Date_Post]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure USPCheckBilling_GameRoom_Date_Post GO CREATE PROC USPCheckBilling_GameRoom_Date_Post @intCRMIndex INT,@BillingType CHAR(1) OUTPUT,@CanUseTime INT OUTPUT AS SET NOCOUNT ON DECLARE @tinyServiceIpNum TINYINT -- ÃÑ Á¢¼Ó °¡´ÉÇÑ ¾ÆÀÌÇǼö DECLARE @tinyUsedIpNum TINYINT --ÇöÀç Á¢¼ÓµÈ ¾ÆÀÌÇǼö DECLARE @dateEndTime SMALLDATETIME -- Á¤¾×Á¦ Á¾·áÀÏÀÚ DECLARE @strRegProcess CHAR(1) --°¡»ó°èÁÂ,ºñ°¡»ó°èÁ DECLARE @strClosed CHAR(1) -- ÇöÀç ÇØÁö»óÅÂÀÎÁö ÆÄ¾Ç SET @tinyServiceIpNum = 0 SET @tinyUsedIpNum = 0 SET @strRegProcess = 'N' -- ÇöÀç Á¤¾×Á¦ ¾ÆÀÌÇÇ Çã¿ë°¹¼ö¸¦ °¡Á®¿Â´Ù. SELECT @strRegProcess = strRegProcess,@tinyServiceIpNum = tinyServiceIpNum, @dateEndTime = dateEndTime,@tinyUsedIpNum = tinyUsedIpNum,@strClosed = strClosed FROM TblPCRoomBilling_Date WHERE intCRMIndex = @intCRMIndex -- ÇöÀç ÇØÁöµÈ ÇǽùæÀÎÁö üũÇÑ´Ù. IF @strClosed = 'Y' BEGIN SET @BillingType = 'N' SET @canUseTime = 0 RETURN 1 --ERROR END IF @strRegProcess = 'N' -- ¾ÆÀÌÇǰ¡ Á¸ÀçÇÏÁö ¾ÊÀ½ BEGIN SET @BillingType = 'N' SET @canUseTime = 0 RETURN 1 --ERROR END ELSE -- ¾ÆÀÌÇǰ¡ Á¸ÀçÇÔ BEGIN -- Çã¿ëµÈ ¾ÆÀÌÇÇ °¹¼ö°¡ Ãʰú µÇ¾ú´ÂÁö È®ÀÎÇÑ´Ù. --1. Çã¿ëµÈ ¾ÆÀÌÇǼö º¸´Ù ÇöÀç ¸¹ÀÌ »ç¿ëÇϰí ÀÖ´Ù¸é IF @tinyUsedIpNum >= @tinyServiceIpNum BEGIN SET @BillingType = 'D' SET @CanUseTime = 0 RETURN 2 --ERROR END --2. Çã¿ëµÈ ¾ÆÀÌÇǼö°¡ ÇöÀç »ç¿ëµÈ ¾ÆÀÌÇǼöº¸´Ù ´õ ¸¹´Ù°í Çϸé ELSE IF (@tinyUsedIpNum < @tinyServiceIpNum) BEGIN -- °¡»ó°èÁ À̹ǷΠÇöÀç ³¯Â¥¸¦ °ËÅäÇÑ´Ù. IF @strRegProcess = 'z' BEGIN -- EXPIRED DATE IF (GETDATE() >= @dateEndTime) BEGIN SET @BillingType ='D' SET @CanUseTime = 0 RETURN 3 --ERROR END ELSE BEGIN SET @BillingType = 'D' -- ÇöÀç ³²¾ÆÀÖ´Â ³¯Â¥¸¦ ¸®ÅÏÇÑ´Ù. --SET @CanUseTime = DATEDIFF(DAY,GETDATE(),@dateEndTime) SET @CanUseTime = CAST(CONVERT(VARCHAR(8),@dateEndTime,112) AS INT) RETURN 0 --SUCCESS END END -- ºñ°¡»ó°èÁÂÀ̹ǷΠ¹«Á¶°Ç ½Ã°£ÀÌ Áö³ªµµ ¼º°ø¸®ÅÏÇÑ´Ù. ELSE IF @strRegProcess = 'm' BEGIN SET @BillingType = 'D' -- ÇöÀç ³²¾ÆÀÖ´Â ³¯Â¥¸¦ ¸®ÅÏÇÑ´Ù. --SET @CanUseTime = DATEDIFF(DAY,GETDATE(),@dateEndTime) SET @CanUseTime = CAST(CONVERT(VARCHAR(8),@dateEndTime,112) AS INT) RETURN 0 --SUCCESS END END END GO if exists (select * from dbo.sysobjects where id = object_id(N'[USPCheckBilling_GameRoom_Post]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure USPCheckBilling_GameRoom_Post GO -- °ÔÀÓ¹æ °ú±Ý üũ -- ÁÖÀÇ : @IPTypeÀ» ÀÎÀÚ·Î ¹ÞÀ»¶§ Ŭ¶óÀÌ¾ðÆ® ¾ÆÀÌÇǰ¡ Á¤¾×+Á¤·® Àΰæ¿ì´Â C¹®ÀÚ·Î ÅëÀÏÇØ¼­ ¹Þ´Â´Ù. CREATE PROC USPCheckBilling_GameRoom_Post @intCRMIndex INT,@intCRMIndex2 INT,@IPType CHAR(1), @OutCRMIndex INT OUTPUT,@BillingType CHAR(1) OUTPUT,@canUseTime INT OUTPUT AS SET NOCOUNT ON DECLARE @RETURN INT -- ÇØ´ç ¾ÆÀÌÇÇÀÇ °ú±Ý ¹æ½ÄÀÌ Á¤·®Á¦¸¸ Àû¿ëµÈ ¹æ½ÄÀ̶ó°í Çϸé IF @IPType = 'T' BEGIN -- IF @RETURN = 1 ERROR ELSE SUCCESS EXEC @RETURN = USPCheckBilling_GameRoom_Time @intCRMIndex,@BillingType OUTPUT,@CanUseTime OUTPUT IF @RETURN <> 0 BEGIN RETURN 1 --ERROR END ELSE BEGIN SET @OutCRMIndex = @intCRMIndex RETURN 0 --SUCCESS END END -- Á¤¾×Á¦ ¾ÆÀÌÇǸ¸ Àû¿ëµÈ ¾ÆÀÌÇǶó°í Çϸé ELSE IF @IPTYPE = 'D' BEGIN EXEC @RETURN = USPCheckBilling_GameRoom_Date_Post @intCRMIndex,@BillingType OUTPUT,@CanUseTime OUTPUT IF @RETURN <> 0 BEGIN RETURN 2 --ERROR END ELSE BEGIN SET @OutCRMIndex = @intCRMIndex RETURN 0 --SUCCESS END END -- Á¤¾×Á¦ Á¤·®Á¦ ¾ÆÀÌÇÇ ¸ðµÎ¸¦ Çã¿ëµÈ ¾ÆÀÌÇǶó°í Çϸé ELSE IF @IPTYPE = 'C' BEGIN -- ù¹øÂ° Á¤¾×Á¦ üũ EXEC @RETURN = USPCheckBilling_GameRoom_Date_Post @intCRMIndex,@BillingType OUTPUT,@CanUseTime OUTPUT IF @RETURN <> 0 BEGIN --RETURN 3 --ERROR SET @BillingType ='N' SET @CanUseTime = 0 -- µÎ¹øÂ° Á¤¾×üũÇÔ. EXEC @RETURN = USPCheckBilling_GameRoom_Date_Post @intCRMIndex2,@BillingType OUTPUT,@CanUseTime OUTPUT IF @RETURN <> 0 BEGIN SET @BillingType = 'N' SET @CanUseTime = 0 -- ù¹øÂ° Á¤·®Á¦ üũÇÔ. EXEC @RETURN = USPCheckBilling_GameRoom_Time @intCRMIndex,@BillingType OUTPUT,@CanUseTime OUTPUT IF @RETURN <> 0 BEGIN -- µÎ¹øÂ° Á¤·®Á¦ üũÇÔ. -- Á¤·®Á¦ üũÇÔ. EXEC @RETURN = USPCheckBilling_GameRoom_Time @intCRMIndex2,@BillingType OUTPUT,@CanUseTime OUTPUT IF @RETURN <> 0 BEGIN RETURN 3 --ERROR END ELSE BEGIN SET @OutCRMIndex = @intCRMIndex2 RETURN 0 --SUCCESS END END ELSE BEGIN SET @OutCRMIndex = @intCRMIndex RETURN 0 --SUCCESS END END ELSE BEGIN SET @OutCRMIndex = @intCRMIndex2 RETURN 0 --SUCCESS END END ELSE BEGIN SET @OutCRMIndex = @intCRMIndex RETURN 0 --SUCCESS END END GO if exists (select * from dbo.sysobjects where id = object_id(N'[USPCheckBilling_Login_Post]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure USPCheckBilling_Login_Post GO -- ij¸¯ÅÍ ¼±ÅÃâ °¡±â Àü¿¡ °ú±Ý ¿©ºÎ¸¦ üũÇÑ´Ù. -- ij¸¯ÅÍ ¼±ÅÃâ¿¡¼­ ´Ù½Ã ½ÇÇàÇÑ´Ù. CREATE PROC USPCheckBilling_Login_Post @strClientID VARCHAR(20),@UID INT, @Check Int,@ClientIP VARCHAR(15),@ServerID TINYINT AS SET NOCOUNT ON --DECLARE @RegLogInTime DECLARE @strBillingType CHAR(1) --D,T DECLARE @strBillingType2 CHAR(2) DECLARE @PlayTime INT --³²Àº½Ã°£(ºÐ),³²ÀºÀÏÀÚ DECLARE @CanUseTime INT DECLARE @FLAG INT DECLARE @EndDate VARCHAR(8) SET @strBillingType = 'N' SET @PlayTime = 0 SET @CanUseTime = 0 SET @FLAG = -1 DECLARE @IPType CHAR(1) --D,T DECLARE @intCRMIndex1 INT DECLARE @intCRMIndex2 INT SET @intCRMIndex1 =0 SET @intCRMIndex2 =0 DECLARE @BillingDate CHAR(1) DECLARE @BillingTime CHAR(1) SET @BillingDate = 'D' SET @BillingTime = 'T' -- ÇǽùæÁß Á¤·®Á¦¿Í Á¤¾×Á¦¸¦ °°ÀÌ »ç¿ëÇÏ´Â °æ¿ì ÇØ´ç °ú±ÝÀÇ ÇǽùæÀ妽º¸¦ ¾ò¾î¿Í¾ßÇÑ´Ù. DECLARE @OutCRMIndex INT DECLARE @tinyServerID INT SET @tinyServerID = -1 DECLARE @FreeTime INT /*************************************** ÀÓ½ÃÀû¿ëºÎºÐ ***************************************/ EXEC USPInsertPerson @strClientID,@UID -- ÇöÀç ·Î±×ÀÎ µÈ »ç¿ëÀÚ ÀÎÁö ¾Æ´ÑÁö üũÇÑ´Ù. SELECT @tinyServerID = tinyServerID FROM TblCurrentUser_Temp WHERE strClientid = @strClientID IF @tinyServerID > -1 BEGIN SET @FLAG = 1 --Áߺ¹µÈ À¯ÀúÀÓ. SET @intCRMIndex1 = @tinyServerID SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType,@PlayTime as PlayTime,@intCRMIndex1 as ServerID RETURN END -- ÇöÀç ·Î±×ÀÎ µÈ »ç¿ëÀÚ ÀÎÁö ¾Æ´ÑÁö üũÇÑ´Ù. SELECT @tinyServerID = tinyServerID FROM TblCurrentUser WHERE strClientid = @strClientID IF @tinyServerID > -1 BEGIN SET @FLAG = 1 --Áߺ¹µÈ À¯ÀúÀÓ. SET @intCRMIndex1 = @tinyServerID SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType,@PlayTime as PlayTime,@intCRMIndex1 as ServerID RETURN END -- ¹«·á°èÁ¤ ¿©ºÎ üũ -- ³ªÁß¿¡ ¼öÁ¤ÇؾßÇÔ. IF (@Check = 1) --¹«·á°èÁ¤ BEGIN SET @FLAG = 0 -- ÀÓ½ÃÅ×À̺í TblCurrentUser_Temp¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser_Temp (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@intCRMIndex1,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END -- ¹èƲ·ÎÇÑ ¼­¹ö¿¡ Á¢¼Ó : Ç÷¹ÀÌ ½ÃÀÛÇÒ¼öÀÖÀ½. IF (@ServerID = 7) --¹«·á°èÁ¤ BEGIN SET @FLAG = 0 -- ÀÓ½ÃÅ×À̺í TblCurrentUser_Temp¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser_Temp (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@intCRMIndex1,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END -- ¹«·á°èÁ¤ÀÎÁö ¾Æ´ÑÁö üũÇÑ´Ù SELECT @FreeTime = DATEDIFF(DAY,GETDATE(),RegLoginTime),@EndDate = CONVERT(VARCHAR(8),GETDATE(),112) FROM TBLPERSONINFO WHERE UID = @UID -- ½ÇÁ¦ ¹«·á °èÁ¤ÀÓÀ» ³ªÅ¸³¿. IF (@FreeTime >= 0) BEGIN SET @FLAG = 0 -- ÀÓ½ÃÅ×À̺í TblCurrentUser_Temp¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser_Temp (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@intCRMIndex1,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = 'F' SELECT @FLAG as FLAG,@strBillingType2 as BillingType, CAST(@EndDate AS INT),@intCRMIndex1 as CRMIndex RETURN END /************************************************* * @FLAG = 0,@strBillingType ='D',@PlayTime = ³²ÀºÀÏÀÚ --°³ÀÎÁ¤¾×Á¦ ¼º°ø * @FLAG = 0,@strBillingType ='T',@PlayTime = ³²Àº½Ã°£ --°³ÀÎÁ¤·®Á¦ ¼º°ø * @FLAG = 1,@strBillingType ='N',@PlayTime = 0 --°ú±Ýµî·ÏÀÌ µÇ¾îÀÖÁö ¾ÊÀ½ * @FLAG = 2,@strBillingType ='D',@PlayTime = 0 --°³ÀÎÁ¤¾×Á¦ °ú±ÝÀÌ Á¾·áµÈ °æ¿ì * @FLAG = 3,@strBillingType ='T',@PlayTime = 0 --°³ÀÎÁ¤·®Á¦ °ú±ÝÀÌ Á¾·áµÈ °æ¿ì **************************************************/ EXEC @FLAG = USPCheckBilling_Person_Post @strClientID,@strBillingType OUTPUT,@PlayTime OUTPUT -- °³Àΰú±ÝÀÌ ¼º°øÀûÀΰæ¿ì IF (@FLAG = 0) BEGIN -- Á¤¾×Á¦ °³ÀÎ À¯ÀúÀΰæ¿ì IF (@strBillingType =@BillingDate) BEGIN -- ÀÓ½ÃÅ×À̺í TblCurrentUser_Temp¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser_Temp (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@intCRMIndex1,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = 'E' SELECT @FLAG as FLAG,@strBillingType2 as BillingType,@PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END -- Á¤·®Á¦ °³ÀÎ À¯ÀúÀΰæ¿ì ELSE IF (@strBillingType =@BillingTime) BEGIN SET @FLAG = -1 --AGAIN CHECK ClientIP /********************************************* * @FLAG = 0,@intCRMIndex1 = ¼ýÀÚ,@intCRMIndex2 = ¼ýÀÚ -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ Á¤¾×°ú Á¤·® ¸ðµÎ¸¦ »ç¿ëÇÔ * @FLAG = 0,@intCRMIndex1 = ¼ýÀÚ,@intCRMIndex2 = 0 -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ Á¤¾× ¶Ç´Â Á¤·®Áß Çϳª ÀÓ * @FLAG = 1,@intCRMIndex1 = 0,@intCRMIndex2 = 0 -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ ¾Æ´Ô *********************************************/ EXEC @FLAG = USPCheckBilling_ClientIP @ClientIP,@intCRMIndex1 OUTPUT,@intCRMIndex2 OUTPUT -- PC¹æÀÌ ¾Æ´Ñ°æ¿ì IF @FLAG <> 0 BEGIN /************************ ¼öÁ¤ ÈÄ ********************* * °³ÀÎÁ¤·®À¸·Î °¡ÁöÀü....... * * ÅëÇÕºô¸µ ½Ã½ºÅÛÀ¸·Î ³Ñ¾î°¡¼­ ÇØ´ç ¾ÆÀÌÇǰ¡ ÅëÇÕºô¸µ¿¡ µî·ÏµÇ¾îÀÖ´Â ¾ÆÀÌÇÇÀÎÁö °Ë»öÇÑ´Ù. *****************************************************/ SET @FLAG = 3 SET @intCRMIndex1 = 0 SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END -- PC¹æ ¾ÆÀÌÇÇÀΰæ¿ì ELSE IF @FLAG = 0 BEGIN -- ÇØ´ç ¾ÆÀÌÇÇÀÇ °ú±Ý ¹æ½Ä °¡Á®¿À±â IF (@intCRMIndex1 <> 0 AND @intCRMIndex2 = 0) -- ÇϳªÀÇ °ú±Ý ¹æ½Ä¸¸ µû¸¥´Ù. BEGIN SELECT @IPType = strBillingType FROM TblPCRoomBillingInfo WHERE intCRMIndex = @intCRMIndex1 END ELSE IF (@intCRMIndex1 <> 0 AND @intCRMIndex2 <> 0) -- µÎ°³ÀÇ °ú±Ý ¹æ½ÄÀ» µû¸¥´Ù. BEGIN SET @IPType = 'C' END -- PC¹æ °ú±ÝÁ¾·ù¸¦ üũÇÑ´Ù. -- T:Á¤·®Á¦,D:Á¤¾×Á¦ EXEC @FLAG = USPCheckBilling_GameRoom_Post @intCRMIndex1,@intCRMIndex2,@IPType,@OutCRMIndex OUTPUT,@strBillingType OUTPUT,@canUseTime OUTPUT IF @FLAG <> 0 --ERROR BEGIN -- PC¹æ °ú±ÝÀÌ Á¾·áµÈ °æ¿ìÀ̹ǷΠ´Ù½Ã °³ÀÎÁ¤·®Á¦·Î °ú±ÝÀ» Àû¿ë½ÃŲ´Ù. /************************ ¼öÁ¤ ÈÄ ********************* * °³ÀÎÁ¤·®À¸·Î °¡ÁöÀü....... * * ÅëÇÕºô¸µ ½Ã½ºÅÛÀ¸·Î ³Ñ¾î°¡¼­ ÇØ´ç ¾ÆÀÌÇǰ¡ ÅëÇÕºô¸µ¿¡ µî·ÏµÇ¾îÀÖ´Â ¾ÆÀÌÇÇÀÎÁö °Ë»öÇÑ´Ù. *****************************************************/ SET @FLAG = 3 SET @strBillingType2 = 'T' SET @intCRMIndex1 = 0 SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END ELSE BEGIN IF @strBillingType = 'D' -- Á¤¾×Á¦ BEGIN -- ¾ÆÀÌÇÇ Çϳª¸¦ »ç¿ëÇØ¼­ Ä«¿îÆ®¸¦ 1 ´õÇϱâ ÇÑ´Ù. EXEC USPCheckBilling_UpIPCount @OutCRMIndex -- ÀÓ½ÃÅ×À̺í TblCurrentUser_Temp¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser_Temp (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@OutCRMIndex,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = 'E' SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @canUseTime as PlayTime,@OutCRMIndex as CRMIndex RETURN END ELSE IF @strBillingType = 'T' -- Á¤¾×Á¦ BEGIN -- ÀÓ½ÃÅ×À̺í TblCurrentUser_Temp¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser_Temp (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@OutCRMIndex,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @canUseTime as PlayTime,@OutCRMIndex as CRMIndex RETURN END END END END END -- °³Àΰú±ÝÀÌ ½ÇÆÐµÈ °æ¿ì ´Ù½Ã °ú±Ýµî·ÏµÈ ÇǽùæÀÎÁö ¾Æ´ÑÁö üũÇÑ´Ù. ELSE BEGIN --AGAIN CHECK ClientIP /********************************************* * @FLAG = 0,@intCRMIndex1 = ¼ýÀÚ,@intCRMIndex2 = ¼ýÀÚ -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ Á¤¾×°ú Á¤·® ¸ðµÎ¸¦ »ç¿ëÇÔ * @FLAG = 0,@intCRMIndex1 = ¼ýÀÚ,@intCRMIndex2 = 0 -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ Á¤¾× ¶Ç´Â Á¤·®Áß Çϳª ÀÓ * @FLAG = 1,@intCRMIndex1 = 0,@intCRMIndex2 = 0 -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ ¾Æ´Ô *********************************************/ EXEC @FLAG = USPCheckBilling_ClientIP @ClientIP,@intCRMIndex1 OUTPUT,@intCRMIndex2 OUTPUT -- PC¹æÀÌ ¾Æ´Ñ°æ¿ì IF @FLAG <> 0 BEGIN /*********Àӽà Àû¿ë ºÎºÐ *********** SET @FLAG = 0 SET @intCRMIndex1 = 0 SET @strBillingType = 'N' --Á¢¼ÓÅ×ÀÌºí¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser_temp(strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@intCRMIndex1,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType,@PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN ********Àӽà Àû¿ë ºÎºÐ ³¡ ************/ -- ¿¡·¯¸®ÅÏÇÑ´Ù SET @FLAG = 2 SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END ELSE IF @FLAG = 0 BEGIN -- ÇØ´ç ¾ÆÀÌÇÇÀÇ °ú±Ý ¹æ½Ä °¡Á®¿À±â IF (@intCRMIndex1 <> 0 AND @intCRMIndex2 = 0) -- ÇϳªÀÇ °ú±Ý ¹æ½Ä¸¸ µû¸¥´Ù. BEGIN SELECT @IPType = strBillingType FROM TblPCRoomBillingInfo WHERE intCRMIndex = @intCRMIndex1 END ELSE IF (@intCRMIndex1 <> 0 AND @intCRMIndex2 <> 0) -- µÎ°³ÀÇ °ú±Ý ¹æ½ÄÀ» µû¸¥´Ù. BEGIN SET @IPType = 'C' END -- PC¹æ °ú±ÝÁ¾·ù¸¦ üũÇÑ´Ù. -- T:Á¤·®Á¦,D:Á¤¾×Á¦ EXEC @FLAG = USPCheckBilling_GameRoom_Post @intCRMIndex1,@intCRMIndex2,@IPType,@OutCRMIndex OUTPUT,@strBillingType OUTPUT,@canUseTime OUTPUT IF @FLAG <> 0 --ERROR BEGIN SET @FLAG = 2 SET @strBillingType = 'N' -- PC¹æ °ú±ÝÀÌ Á¾·áµÈ ¿¡·¯¸¦ ¸®ÅÏÇÑ´Ù. SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END ELSE -- SUCCESS BEGIN IF @strBillingType = 'D' -- Á¤¾×Á¦ BEGIN -- ¾ÆÀÌÇÇ Çϳª¸¦ »ç¿ëÇØ¼­ Ä«¿îÆ®¸¦ 1 ´õÇϱâ ÇÑ´Ù. EXEC USPCheckBilling_UpIPCount @OutCRMIndex -- ÀÓ½ÃÅ×À̺í TblCurrentUser_Temp¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser_Temp (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@OutCRMIndex,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = 'E' SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @canUseTime as PlayTime,@OutCRMIndex as CRMIndex RETURN END ELSE IF @strBillingType = 'T' -- Á¤¾×Á¦ BEGIN -- ÀÓ½ÃÅ×À̺í TblCurrentUser_Temp¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser_Temp (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@OutCRMIndex,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @canUseTime as PlayTime,@OutCRMIndex as CRMIndex RETURN END END END END GO if exists (select * from dbo.sysobjects where id = object_id(N'[USPCheckBilling_CharIDLogin_Post]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure USPCheckBilling_CharIDLogin_Post GO -- ij¸¯ÅÍ ¼±ÅÃâ °¡±â Àü¿¡ °ú±Ý ¿©ºÎ¸¦ üũÇÑ´Ù. -- ij¸¯ÅÍ ¼±ÅÃâ¿¡¼­ ´Ù½Ã ½ÇÇàÇÑ´Ù. -- Ãß°¡»çÇ× : ºí·°µÈ ij¸¯ÅÍÀÎÁö ¾Æ´ÑÁö¸¦ °¡·Á¾ßÇÑ´Ù. CREATE PROC USPCheckBilling_CharIDLogin_Post @strClientID VARCHAR(20),@UID INT,@check TINYINT,@ClientIP VARCHAR(15),@ServerID TINYINT AS SET NOCOUNT ON DECLARE @strBillingType CHAR(1) --D,T DECLARE @strBillingType2 CHAR(2) -- RETURN VALUES DECLARE @PlayTime INT --³²Àº½Ã°£(ºÐ),³²ÀºÀÏÀÚ DECLARE @CanUseTime INT DECLARE @FLAG INT DECLARE @EndDate VARCHAR(8) SET @strBillingType = 'N' SET @PlayTime = 0 SET @CanUseTime = 0 SET @FLAG = -1 DECLARE @IPType CHAR(1) --D,T DECLARE @intCRMIndex1 INT DECLARE @intCRMIndex2 INT SET @intCRMIndex1 =0 SET @intCRMIndex2 =0 DECLARE @BillingDate CHAR(1) DECLARE @BillingTime CHAR(1) SET @BillingDate = 'D' SET @BillingTime = 'T' -- ÇǽùæÁß Á¤·®Á¦¿Í Á¤¾×Á¦¸¦ °°ÀÌ »ç¿ëÇÏ´Â °æ¿ì ÇØ´ç °ú±ÝÀÇ ÇǽùæÀ妽º¸¦ ¾ò¾î¿Í¾ßÇÑ´Ù. DECLARE @OutCRMIndex INT DECLARE @tinyServerID INT SET @tinyServerID = -1 DECLARE @FreeTime INT -- ÇöÀç ·Î±×ÀÎ µÈ »ç¿ëÀÚ ÀÎÁö ¾Æ´ÑÁö üũÇÑ´Ù. SELECT @tinyServerID = tinyServerID FROM TblCurrentUser WHERE strClientid = @strClientID IF @tinyServerID > -1 BEGIN SET @FLAG = 1 --Áߺ¹µÈ À¯ÀúÀÓ. SET @intCRMIndex1 = @tinyServerID SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType,@PlayTime as PlayTime,@intCRMIndex1 as ServerID RETURN END -- ¹«·á°èÁ¤ ¿©ºÎ üũ IF (@Check = 1) --¹«·á°èÁ¤ BEGIN SET @FLAG = 0 --Á¢¼ÓÅ×ÀÌºí¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser(strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@intCRMIndex1,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END -- ¹èƲ·ÎÇÑ ·Î±×ÀÎÇϱâ IF (@ServerID = 7) --¹«·á°èÁ¤ BEGIN SET @FLAG = 0 --Á¢¼ÓÅ×ÀÌºí¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser(strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@intCRMIndex1,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END -- ¹«·á°èÁ¤ÀÎÁö ¾Æ´ÑÁö üũÇÑ´Ù SELECT @FreeTime = DATEDIFF(DAY,GETDATE(),RegLoginTime),@EndDate = CONVERT(VARCHAR(8),GETDATE(),112) FROM TBLPERSONINFO WHERE UID = @UID -- ½ÇÁ¦ ¹«·á °èÁ¤ÀÓÀ» ³ªÅ¸³¿. IF (@FreeTime >= 0) BEGIN SET @FLAG = 0 -- ÀÓ½ÃÅ×À̺í TblCurrentUser¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@intCRMIndex1,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = 'F' SELECT @FLAG as FLAG,@strBillingType2 as BillingType, CAST(@EndDate AS INT),@intCRMIndex1 as CRMIndex RETURN END /************************************************* * @FLAG = 0,@strBillingType ='D',@PlayTime = ³²ÀºÀÏÀÚ --°³ÀÎÁ¤¾×Á¦ ¼º°ø * @FLAG = 0,@strBillingType ='T',@PlayTime = ³²Àº½Ã°£ --°³ÀÎÁ¤·®Á¦ ¼º°ø * @FLAG = 1,@strBillingType ='N',@PlayTime = 0 --°ú±Ýµî·ÏÀÌ µÇ¾îÀÖÁö ¾ÊÀ½ * @FLAG = 2,@strBillingType ='D',@PlayTime = 0 --°³ÀÎÁ¤¾×Á¦ °ú±ÝÀÌ Á¾·áµÈ °æ¿ì * @FLAG = 3,@strBillingType ='T',@PlayTime = 0 --°³ÀÎÁ¤·®Á¦ °ú±ÝÀÌ Á¾·áµÈ °æ¿ì **************************************************/ EXEC @FLAG = USPCheckBilling_Person_Post @strClientID,@strBillingType OUTPUT,@PlayTime OUTPUT -- °³Àΰú±ÝÀÌ ¼º°øÀûÀΰæ¿ì IF (@FLAG = 0) BEGIN -- Á¤¾×Á¦ °³ÀÎ À¯ÀúÀΰæ¿ì IF (@strBillingType =@BillingDate) BEGIN --Á¢¼ÓÅ×ÀÌºí¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser(strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@intCRMIndex1,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = 'E' SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END -- Á¤·®Á¦ °³ÀÎ À¯ÀúÀΰæ¿ì ELSE IF (@strBillingType =@BillingTime) BEGIN SET @FLAG = -1 --AGAIN CHECK ClientIP /********************************************* * @FLAG = 0,@intCRMIndex1 = ¼ýÀÚ,@intCRMIndex2 = ¼ýÀÚ -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ Á¤¾×°ú Á¤·® ¸ðµÎ¸¦ »ç¿ëÇÔ * @FLAG = 0,@intCRMIndex1 = ¼ýÀÚ,@intCRMIndex2 = 0 -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ Á¤¾× ¶Ç´Â Á¤·®Áß Çϳª ÀÓ * @FLAG = 1,@intCRMIndex1 = 0,@intCRMIndex2 = 0 -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ ¾Æ´Ô *********************************************/ EXEC @FLAG = USPCheckBilling_ClientIP @ClientIP,@intCRMIndex1 OUTPUT,@intCRMIndex2 OUTPUT -- PC¹æÀÌ ¾Æ´Ñ°æ¿ì IF @FLAG <> 0 BEGIN /************************ ¼öÁ¤ ÈÄ ********************* * °³ÀÎÁ¤·®À¸·Î °¡ÁöÀü....... * * ÅëÇÕºô¸µ ½Ã½ºÅÛÀ¸·Î ³Ñ¾î°¡¼­ ÇØ´ç ¾ÆÀÌÇǰ¡ ÅëÇÕºô¸µ¿¡ µî·ÏµÇ¾îÀÖ´Â ¾ÆÀÌÇÇÀÎÁö °Ë»öÇÑ´Ù. *****************************************************/ SET @FLAG = 3 SET @intCRMIndex1 = 0 SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END -- PC¹æ ¾ÆÀÌÇÇÀΰæ¿ì ELSE IF @FLAG = 0 BEGIN -- ÇØ´ç ¾ÆÀÌÇÇÀÇ °ú±Ý ¹æ½Ä °¡Á®¿À±â IF (@intCRMIndex1 <> 0 AND @intCRMIndex2 = 0) -- ÇϳªÀÇ °ú±Ý ¹æ½Ä¸¸ µû¸¥´Ù. BEGIN SELECT @IPType = strBillingType FROM TblPCRoomBillingInfo WHERE intCRMIndex = @intCRMIndex1 END ELSE IF (@intCRMIndex1 <> 0 AND @intCRMIndex2 <> 0) -- µÎ°³ÀÇ °ú±Ý ¹æ½ÄÀ» µû¸¥´Ù. BEGIN SET @IPType = 'C' END -- PC¹æ °ú±ÝÁ¾·ù¸¦ üũÇÑ´Ù. -- T:Á¤·®Á¦,D:Á¤¾×Á¦ EXEC @FLAG = USPCheckBilling_GameRoom_Post @intCRMIndex1,@intCRMIndex2,@IPType,@OutCRMIndex OUTPUT,@strBillingType OUTPUT,@canUseTime OUTPUT IF @FLAG <> 0 --ERROR BEGIN -- PC¹æ °ú±ÝÀÌ Á¾·áµÈ °æ¿ìÀ̹ǷΠ´Ù½Ã °³ÀÎÁ¤·®Á¦·Î °ú±ÝÀ» Àû¿ë½ÃŲ´Ù. /************************ ¼öÁ¤ ÈÄ ********************* * °³ÀÎÁ¤·®À¸·Î °¡ÁöÀü....... * * ÅëÇÕºô¸µ ½Ã½ºÅÛÀ¸·Î ³Ñ¾î°¡¼­ ÇØ´ç ¾ÆÀÌÇǰ¡ ÅëÇÕºô¸µ¿¡ µî·ÏµÇ¾îÀÖ´Â ¾ÆÀÌÇÇÀÎÁö °Ë»öÇÑ´Ù. *****************************************************/ SET @FLAG = 3 SET @strBillingType = @BillingTime SET @strBillingType2 = @strBillingType SET @intCRMIndex1 = 0 SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END ELSE BEGIN IF @strBillingType = 'D' -- Á¤¾×Á¦ BEGIN -- ¾ÆÀÌÇÇ Çϳª¸¦ »ç¿ëÇØ¼­ Ä«¿îÆ®¸¦ 1 ´õÇϱâ ÇÑ´Ù. EXEC USPCheckBilling_UpIPCount @OutCRMIndex --Á¢¼ÓÅ×ÀÌºí¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@OutCRMIndex,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = 'E' SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @canUseTime as PlayTime,@OutCRMIndex as CRMIndex RETURN END ELSE IF @strBillingType = 'T' -- Á¤¾×Á¦ BEGIN --Á¢¼ÓÅ×ÀÌºí¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@OutCRMIndex,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @canUseTime as PlayTime,@OutCRMIndex as CRMIndex RETURN END END END END END -- °³Àΰú±ÝÀÌ ½ÇÆÐµÈ °æ¿ì ´Ù½Ã °ú±Ýµî·ÏµÈ ÇǽùæÀÎÁö ¾Æ´ÑÁö üũÇÑ´Ù. ELSE BEGIN --AGAIN CHECK ClientIP /********************************************* * @FLAG = 0,@intCRMIndex1 = ¼ýÀÚ,@intCRMIndex2 = ¼ýÀÚ -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ Á¤¾×°ú Á¤·® ¸ðµÎ¸¦ »ç¿ëÇÔ * @FLAG = 0,@intCRMIndex1 = ¼ýÀÚ,@intCRMIndex2 = 0 -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ Á¤¾× ¶Ç´Â Á¤·®Áß Çϳª ÀÓ * @FLAG = 1,@intCRMIndex1 = 0,@intCRMIndex2 = 0 -- ÇÇ½Ã¹æ ¾ÆÀÌÇǰ¡ ¾Æ´Ô *********************************************/ EXEC @FLAG = USPCheckBilling_ClientIP @ClientIP,@intCRMIndex1 OUTPUT,@intCRMIndex2 OUTPUT -- PC¹æÀÌ ¾Æ´Ñ°æ¿ì IF @FLAG <> 0 BEGIN -- ¿¡·¯¸®ÅÏÇÑ´Ù. SET @FLAG = 2 SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END ELSE IF @FLAG = 0 BEGIN -- ÇØ´ç ¾ÆÀÌÇÇÀÇ °ú±Ý ¹æ½Ä °¡Á®¿À±â IF (@intCRMIndex1 <> 0 AND @intCRMIndex2 = 0) -- ÇϳªÀÇ °ú±Ý ¹æ½Ä¸¸ µû¸¥´Ù. BEGIN SELECT @IPType = strBillingType FROM TblPCRoomBillingInfo WHERE intCRMIndex = @intCRMIndex1 END ELSE IF (@intCRMIndex1 <> 0 AND @intCRMIndex2 <> 0) -- µÎ°³ÀÇ °ú±Ý ¹æ½ÄÀ» µû¸¥´Ù. BEGIN SET @IPType = 'C' END -- PC¹æ °ú±ÝÁ¾·ù¸¦ üũÇÑ´Ù. -- T:Á¤·®Á¦,D:Á¤¾×Á¦ EXEC @FLAG = USPCheckBilling_GameRoom_Post @intCRMIndex1,@intCRMIndex2,@IPType,@OutCRMIndex OUTPUT,@strBillingType OUTPUT,@canUseTime OUTPUT IF @FLAG <> 0 --ERROR BEGIN SET @FLAG = 2 --ERROR SET @strBillingType = 'N' -- PC¹æ °ú±ÝÀÌ Á¾·áµÈ ¿¡·¯¸¦ ¸®ÅÏÇÑ´Ù. SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @PlayTime as PlayTime,@intCRMIndex1 as CRMIndex RETURN END ELSE -- SUCCESS BEGIN IF @strBillingType = 'D' -- Á¤¾×Á¦ BEGIN -- ¾ÆÀÌÇÇ Çϳª¸¦ »ç¿ëÇØ¼­ Ä«¿îÆ®¸¦ 1 ´õÇϱâ ÇÑ´Ù. EXEC USPCheckBilling_UpIPCount @OutCRMIndex --Á¢¼ÓÅ×ÀÌºí¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@OutCRMIndex,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = 'E' SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @canUseTime as PlayTime,@OutCRMIndex as CRMIndex RETURN END ELSE IF @strBillingType = 'T' -- Á¤¾×Á¦ BEGIN --Á¢¼ÓÅ×ÀÌºí¿¡ ÀÔ·ÂÇÑ´Ù. INSERT INTO TblCurrentUser (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@OutCRMIndex,@ClientIP,@strBillingType,@ServerID) SET @strBillingType2 = @strBillingType SELECT @FLAG as FLAG,@strBillingType2 as BillingType, @canUseTime as PlayTime,@OutCRMIndex as CRMIndex RETURN END END END END GO if exists (select * from dbo.sysobjects where id = object_id(N'[USPCheckBilling_InsertCurrentUser_Post]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure USPCheckBilling_InsertCurrentUser_Post GO CREATE PROC USPCheckBilling_InsertCurrentUser_Post @TableType INT,@strClientID VARCHAR(20),@UID INT,@ClientIP VARCHAR(15), @ServerID TINYINT,@strBillingType CHAR(1),@MCHK INT AS SET NOCOUNT ON DECLARE @intCRMIndex INT SET @intCRMIndex = 0 DECLARE @FLAG INT SET @FLAG = 0 -- SUCCESS IF @TableType = 0 BEGIN -- ¿¡·¯Ã³¸®¸¦ ÇÏ´À³Ä...¾È ÇÏ´À³Ä.. INSERT INTO TblCurrentUser_temp (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@MCHK,@ClientIP,@strBillingType,@ServerID) IF @@ERROR <> 0 BEGIN SET @FLAG = 1 END END ELSE IF @TableType = 1 BEGIN --Á¢¼ÓÅ×ÀÌºí¿¡ ÀÔ·ÂÇÑ´Ù. -- MCHK = -1 : ¹Ìµð¾îÀ¥¿¡¼­ ÀÎÁõÀ» ¹Þ¾Æ¼­ °ÔÀÓÁ¢¼ÓµÈ À¯Àú -- MCHK = 0 : °¡¸¶¿¡¼­ ÀÎÁõÀ» ¹Þ¾Æ¼­ °ÔÀÓÁ¢¼ÓµÈ À¯Àú -- ¿¡·¯Ã³¸®¸¦ ÇÏ´À³Ä...¾È ÇÏ´À³Ä.. INSERT INTO TblCurrentUser (strClientid,UID,intCRMIndex,strip,strBillingType,tinyServerID) VALUES (@strClientID,@UID,@MCHK,@ClientIP,@strBillingType,@ServerID) IF @@ERROR <> 0 BEGIN SET @FLAG = 1 END END SELECT @FLAG RETURN GO if exists (select * from dbo.sysobjects where id = object_id(N'[USPCheckBilling_LogOut_Post]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure USPCheckBilling_LogOut_Post GO /*********************************** * ·Î±×¾Æ¿ô ½Ã °ú±Ýüũ ºÎºÐ * * ·Î±×¾Æ¿ô½Ã °ú±ÝÀÌ Áö³­ °æ¿ì´Â ºÒȰ¼º »óÅ·ΠÀúÀåÇϰí Á¾·áÇÑ´Ù. * ÅëÇÕºô¸µ¿¡¼­ ·Î±×ÀÎ µÈ À¯Àú°¡ ·Î±×¾Æ¿ô µÉ¶§ ¼º°øÀº 4, ½ÇÆÐ´Â 5 0 : ¼º°ø , 1 : ½ÇÆÐ ÅëÇÕºô¸µ:10, ½ÇÆÐ:11 ***********************************/ CREATE PROC USPCheckBilling_LogOut_Post @ClientID VARCHAR(20) AS SET NOCOUNT ON -- TblCurrentUser Å×ÀÌºí¿¡ Ä÷³À» Çϳª Ãß°¡ -- ÇöÀç ·Î±×ÀÎ µÈ Á¤º¸ °ªÀ» °¡Á®¿Â´Ù. DECLARE @BillingType CHAR(1) DECLARE @strIp VARCHAR(15) DECLARE @tinyServerID TINYINT DECLARE @UID INT SET @UID = -1 DECLARE @CRMIndex INT SET @CRMIndex = -1 DECLARE @MWebCHK TINYINT DECLARE @DateLoginTime SMALLDATETIME DECLARE @FirstLoginTime SMALLDATETIME DECLARE @UsingTime INT DECLARE @ERROR INT -- Àӽ÷α×ÀÎ Å×ÀÌºí¿¡ Á¸ÀçÇÏ´ÂÁö ¾ÈÇÏ´ÂÁö È®ÀÎÇÑ´Ù. SELECT @UID = UID,@CRMIndex = intCRMIndex,@strIp = strIp,@BillingType = strBillingType, @tinyServerID = tinyServerID,@DateLoginTime = DateLoginTime FROM TblCurrentUser_temp WHERE strClientid = @ClientID -- Á¸Àç¾ÈÇÑ´Ù°í Çϸé -- ij¸¯ÅÍ ¼±ÅÃÇϰí Ç÷¹ÀÌÇÏ°í ³­µÚ ·Î±×¾Æ¿ô ÇÒ¶§ Àû¿ëµÇ´Â ºÎºÐ IF @UID = -1 BEGIN SELECT @UID = UID,@CRMIndex = intCRMIndex,@strIp = strIp,@BillingType = strBillingType,@tinyServerID = tinyServerID, @DateLoginTime = DateLoginTime,@FirstLoginTime = FirstLoginTime FROM TblCurrentUser WHERE strClientid = @ClientID -- ÇöÀç Á¢¼ÓµÈ À¯Àú°¡ ¾øÀ½ (TBLCURRENTUSER) IF @UID = -1 BEGIN SELECT 1 AS ERROR RETURN END -- ·Î±×ÀÎ Á¤º¸·Î ºÎÅÍ ÇöÀç±îÁö »ç¿ëÇÑ PLAYTIMEÀ» ±¸ÇÑ´Ù. SET @UsingTime = DATEDIFF(MINUTE,@DateLoginTime,GETDATE()) -- °³ÀÎÀ¯ÀúÀΰæ¿ì IF @CRMIndex = 0 BEGIN -- °ú±ÝŸÀÔÀ» ±¸ºÐ, Á¤·®Á¦Àΰæ¿ì IF @BillingType = 'T' BEGIN EXEC @ERROR =USPCheckBilling_LogOut_PersonTime @ClientID,@UsingTime -- ERROR HANDLER IF @ERROR <> 0 BEGIN SELECT 1 RETURN END END ELSE -- °³ÀÎÁ¤¾×Á¦,¹«·á°èÁ¤Àϰæ¿ì °æ¿ì BEGIN -- µ¥ÀÌÅ͸¦ »èÁ¦ÇÑ´Ù DELETE TblCurrentUser WHERE strClientid = @ClientID END END -- ÀÏ¹Ý °ÔÀÓ¹æÀÎ °æ¿ì ELSE IF (@CRMIndex > 0) BEGIN -- °ÔÀÓ¹æ Äڵ带 ±¸ÇÑ´Ù. DECLARE @CRMCode VARCHAR(20) SELECT @CRMCode = strCRMCode FROM TblPCRoomBillingInfo WHERE intCRMIndex = @CRMIndex IF @BillingType = 'T' BEGIN EXEC @ERROR = USPCheckBilling_LogOut_PCTime 'Y',@CRMIndex,@CRMCode,@UsingTime,@ClientID -- ERROR HANDLER IF @ERROR <> 0 BEGIN SELECT 1 RETURN END END ELSE IF @BillingType ='D'-- °ÔÀÓ¹æ Á¤¾×Á¦ÀÎ °æ¿ì BEGIN EXEC @ERROR= USPCheckBilling_LogOut_PCDate 'Y',@CRMIndex,@CRMCode,@UsingTime,@ClientID IF @ERROR <> 0 BEGIN SELECT 1 RETURN END END END ELSE IF (@CRMIndex < 0 ) -- ÅëÇÕºô¸µÀÏ °æ¿ì BEGIN -- µ¥ÀÌÅ͸¦ »èÁ¦ÇÑ´Ù DELETE TblCurrentUser WHERE strClientid = @ClientID IF @@ERROR <> 0 BEGIN SELECT 11 -- FAILED RETURN END END -- ·Î±×¸¦ ³²±ä´Ù. INSERT INTO RylBillingDB_LOG.DBO.TblCurrentUser_Log VALUES (@ClientID,@UID,@CRMIndex,@strIp,@BillingType,@tinyServerID,@FirstLoginTime,@DateLoginTime,GETDATE(),@UsingTime) UPDATE TblPersonInfo SET LastLogOutTime = GETDATE() WHERE UID = @UID IF (@CRMIndex >= 0 ) BEGIN SELECT 0 AS SUCCESS RETURN END ELSE BEGIN SELECT 10 AS SUCCESS RETURN END END ELSE -- ij¸¯ÅÍ ¼±ÅÃâ¿¡¼­..¹Ù·Î ·Î±×¾Æ¿ô ÇÒ¶§ Àû¿ëµÇ´Â ºÎºÐ. ÀÓ½ÃÅ×ÀÌºí¿¡¼­ »èÁ¦ÇÏ°í ·Î±×¾Æ¿ôÇÑ´Ù. BEGIN BEGIN TRAN -- Àӽà ÇÇ½Ã¹æ ¾ÆÀÌÇǸ¦ Çϳª ³·Ãá´Ù. IF ((@CRMIndex > 0) AND (@BillingType = 'D')) BEGIN -- Çã¿ë¾ÆÀÌÇÇ °¹¼ö¸¦ ³·Ãá´Ù. UPDATE TblPCRoomBilling_Date SET tinyUsedIpNum = tinyUsedIpNum - 1 WHERE intCRMIndex = @CRMIndex IF @@ROWCOUNT <> 1 BEGIN ROLLBACK TRAN SELECT 1 AS ERROR RETURN END END -- ·Î±×¸¦ ³²±ä´Ù. DELETE TblCurrentUser_Temp WHERE strClientid = @ClientID IF @@ROWCOUNT <> 1 BEGIN ROLLBACK TRAN SELECT 1 AS ERROR RETURN END COMMIT TRAN SELECT 0 AS SUCCESS RETURN END GO if exists (select * from dbo.sysobjects where id = object_id(N'[USPDisConnectLogOut_Post]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure USPDisConnectLogOut_Post GO -- ÇöÀç ¼­¹ö±º¿¡ Á¢¼ÓµÇ¾îÀÖ´Â À¯ÀúµéÀ» ¸®ÅÏÇÑ´Ù. CREATE PROC USPDisConnectLogOut_Post @ServerID INT AS SET NOCOUNT ON DECLARE @RowID INT DECLARE @strClientID VARCHAR(20) DECLARE @TempTable TABLE ( RowID INT IDENTITY(1,1) PRIMARY KEY , strClientID VARCHAR(20) , IP VARCHAR(15) , Type INT ) INSERT INTO @TempTable (strClientID,IP,Type) SELECT strClientID,strIP,intCRMIndex FROM TblCurrentUser WHERE tinyServerID = @ServerID SET @RowID = @@ROWCOUNT WHILE @RowID <> 0 BEGIN SELECT @strClientID = strClientID FROM @TempTable WHERE RowID = @RowID -- °³Àΰ³ÀÎ °ú±ÝÀ» ó¸®ÇÑ´Ù. EXEC USPDisConnectLogOut_Include_Post @strClientID SET @RowID = @RowID - 1 END -- ÅëÇÕºô¸µ¿¡ Á¢¼ÓµÈ À¯Àú¸¸ ¸®ÅÏÇÑ´Ù. SELECT strClientID,IP FROM @TempTable WHERE Type < 0 GO if exists (select * from dbo.sysobjects where id = object_id(N'[USPDisConnectLogOut_Include_Post]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure USPDisConnectLogOut_Include_Post GO /*********************************** * ·Î±×¾Æ¿ô ½Ã °ú±Ýüũ ºÎºÐ * * ·Î±×¾Æ¿ô½Ã °ú±ÝÀÌ Áö³­ °æ¿ì´Â ºÒȰ¼º »óÅ·ΠÀúÀåÇϰí Á¾·áÇÑ´Ù. ***********************************/ CREATE PROC USPDisConnectLogOut_Include_Post @ClientID VARCHAR(20) AS SET NOCOUNT ON -- ÇöÀç ·Î±×ÀÎ µÈ Á¤º¸ °ªÀ» °¡Á®¿Â´Ù. DECLARE @BillingType CHAR(1) DECLARE @strIp VARCHAR(15) DECLARE @tinyServerID TINYINT DECLARE @UID INT SET @UID = -1 DECLARE @CRMIndex INT SET @CRMIndex = -1 DECLARE @DateLoginTime SMALLDATETIME DECLARE @FirstLoginTime SMALLDATETIME DECLARE @UsingTime INT -- Àӽ÷α×ÀÎ Å×ÀÌºí¿¡ Á¸ÀçÇÏ´ÂÁö ¾ÈÇÏ´ÂÁö È®ÀÎÇÑ´Ù. SELECT @UID = UID,@CRMIndex = intCRMIndex,@strIp = strIp,@BillingType = strBillingType, @tinyServerID = tinyServerID,@DateLoginTime = DateLoginTime FROM TblCurrentUser_temp WHERE strClientid = @ClientID IF @UID = -1 BEGIN SELECT @UID = UID,@CRMIndex = intCRMIndex,@strIp = strIp,@BillingType = strBillingType, @tinyServerID = tinyServerID,@DateLoginTime = DateLoginTime,@FirstLoginTime = FirstLoginTime FROM TblCurrentUser WHERE strClientid = @ClientID -- ÇöÀç Á¢¼ÓµÈ À¯Àú°¡ ¾øÀ½ (TBLCURRENTUSER) IF @UID = -1 BEGIN RETURN END -- ·Î±×ÀÎ Á¤º¸·Î ºÎÅÍ ÇöÀç±îÁö »ç¿ëÇÑ PLAYTIMEÀ» ±¸ÇÑ´Ù. SET @UsingTime = DATEDIFF(MINUTE,@DateLoginTime,GETDATE()) -- °³ÀÎÀ¯ÀúÀΰæ¿ì IF @CRMIndex = 0 BEGIN -- °ú±ÝŸÀÔÀ» ±¸ºÐ, Á¤·®Á¦Àΰæ¿ì IF @BillingType = 'T' BEGIN EXEC USPCheckBilling_LogOut_PersonTime @ClientID,@UsingTime END ELSE -- Á¤¾×Á¦,ºñ°ú±ÝÀ¯ÀúÀΰæ¿ì BEGIN DELETE TblCurrentUser where strClientid = @ClientID END END -- ÀÏ¹Ý °ÔÀÓ¹æÀÎ °æ¿ì ELSE IF (@CRMIndex > 0) BEGIN -- °ÔÀÓ¹æ Äڵ带 ±¸ÇÑ´Ù. DECLARE @CRMCode VARCHAR(20) SELECT @CRMCode = strCRMCode FROM TblPCRoomBillingInfo WHERE intCRMIndex = @CRMIndex IF @BillingType = 'T' BEGIN EXEC USPCheckBilling_LogOut_PCTime 'Y',@CRMIndex,@CRMCode,@UsingTime,@ClientID END ELSE -- °ÔÀÓ¹æ Á¤¾×Á¦ÀÎ °æ¿ì BEGIN EXEC USPCheckBilling_LogOut_PCDate 'Y',@CRMIndex,@CRMCode,@UsingTime,@ClientID END END ELSE IF (@CRMIndex < 0 ) -- ÅëÇÕºô¸µÀÏ °æ¿ì BEGIN DELETE TblCurrentUser where strClientid = @ClientID END -- ·Î±×¸¦ ³²±ä´Ù. INSERT INTO RylBillingDB_LOG.DBO.TblCurrentUser_Log (strClientID,UID,intCRMIndex,strIp,strBillingType,tinyServerID,FirstLoginTime,LoginTime,LogoutTime,intPlayTime) VALUES (@ClientID,@UID,@CRMIndex,@strIp,@BillingType,@tinyServerID,@FirstLoginTime,@DateLoginTime,GETDATE(),@UsingTime) UPDATE TblPersonInfo SET LastLogOutTime = GETDATE() WHERE UID = @UID RETURN END ELSE -- ÀÓ½ÃÅ×ÀÌºí¿¡¼­ »èÁ¦ÇÏ°í ·Î±×¾Æ¿ôÇÑ´Ù. BEGIN BEGIN TRAN -- Àӽà ÇÇ½Ã¹æ ¾ÆÀÌÇǸ¦ Çϳª ³·Ãá´Ù. IF ((@CRMIndex > 0) AND (@BillingType = 'D')) BEGIN -- Çã¿ë¾ÆÀÌÇÇ °¹¼ö¸¦ ³·Ãá´Ù. UPDATE TblPCRoomBilling_Date SET tinyUsedIpNum = tinyUsedIpNum - 1 WHERE intCRMIndex = @CRMIndex IF @@ROWCOUNT <> 1 BEGIN ROLLBACK TRAN RETURN END END COMMIT TRAN -- ·Î±×¸¦ ³²±ä´Ù. DELETE TblCurrentUser_Temp WHERE strClientid = @ClientID INSERT INTO RylBillingDB_Log.dbo.TblCurrentUser_Log (strClientID,UID,intCRMIndex,strIp,strBillingType,tinyServerID,FirstLoginTime,LoginTime,LogoutTime,intPlayTime) VALUES (@ClientID,@UID,@CRMIndex,@strIp,@BillingType,@tinyServerID,@FirstLoginTime,@DateLoginTime,GETDATE(),0) RETURN END GO /* if exists (select * from dbo.sysobjects where id = object_id(N'[USPCheckBilling_BeforeLogOut]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure USPCheckBilling_BeforeLogOut */ GO /* -- °³ÀÎ Á¤·® ¹× Á¤¾×ÀÌ Á¾·á µÇ¾úÀ»¶§ ÀÚµ¿À¸·Î ²÷±âÀü¿¡ °³Àΰü·Ã ºô¸µÀ» üũÇÑ´Ù. CREATE PROC USPCheckBilling_BeforeLogOut @strClientID VARCHAR(20) AS -- ·Î±×¾Æ¿ô Çϱâ Àü¿¡ °³ÀξÆÀ̵ðÀÇ Ãß°¡ °ú±Ý¿©ºÎ¸¦ üũÇÑ´Ù. SET NOCOUNT ON DECLARE @BillingType CHAR(1) DECLARE @CanPlayTime INT DECLARE @UsedTime INT DECLARE @PlayTime INT -- ÇöÀç Á¢¼ÓµÈ Á¤º¸¸¦ ¾ò¾î¿Â´Ù. SELECT @BillingType = strBillingType,@UsedTime = DATEDIFF(MINUTE,dateLoginTime,GETDATE()) FROM TblCurrentUser WHERE strClientID = @strClientID IF @BillingType = 'T' BEGIN -- ÇöÀç °ú±ÝÁ¤º¸¸¦ ¾ò¾î¿Â´Ù. SELECT @CanPlayTime =( intServiceTime - intUsingTime) FROM TblPersonBillingInfo WHERE strClientID = @strClientID -- ³¯Â¥¸¦ °è»êÇÑ´Ù. SET @PlayTime = @CanPlayTime - @UsedTime SELECT @PlayTime RETURN END ELSE BEGIN SET @PlayTime = 0 SELECT @PlayTime RETURN END */ GO /***************************************TEST******************************** SELECT * FROM TblPersoninfo SELECT * FROM TblPersonBillinginfo SELECT * FROM TblPCRoombillinginfo SELECT * FROM dbo.TblPCRoomBilling_Date SELECT * FROM dbo.TblPCRoomBilling_Time SELECT * FROM dbo.TblGameRoomIPList insert into TblPCRoombillinginfo values (10000,'GAMA2003','D',GETDATE()) UPDATE TblPCRoomBilling_Date SET intCRMindex = 10000,TINYUSEDIPNUM = 0 INSERT INTO TblGameRoomIPList select 10000,strip from tblgameroomiplist update TblPCRoomBilling_Date set dateEndTime = getdate()+1 SELECT * FROM dbo.TblCurrentUser UPDATE TblPersonBillinginfo SET dateendtime = getdate()-1,intServicetime = 100 where strclientid = 'have2do1' insert into TblPersonBillinginfo values ('have2do2',2222221,null,100,10,getdate()) 1.°³ÀÎÁ¤¾× EXEC dbo.USPCheckBilling_CharIDLogin_Post 'have2do',200000,0,'192.168.3.10',1 result : 0 D 2004.11.09 0 0 2.°³ÀÎÁ¤·®(°³ÀÎÁ¤¾× : ¸¸·áµÈ »ç¶÷) EXEC dbo.USPCheckBilling_CharIDLogin_Post 'have2do1',200000,0,'192.168.3.10',1 result : 2 T 2004.02.03 100 0 EXEC dbo.USPCheckBilling_CharIDLogin_Post 'have2do2',200000,0,'192.168.3.10',1 result : 2 T NULL 90 0 3.Çǽù濡¼­ Á¢¼ÓÁß.(Çǽùæ Á¤¾×) EXEC dbo.USPCheckBilling_CharIDLogin_Post 'have2do2',200000,0,'192.168.7.4',1 result : 0 T NULL 40000 12345 DELETE TBLCURRENTUSER WHERE STRCLIENTID = 'have2do2' EXEC dbo.USPCheckBilling_CharIDLogin_Post 'have2do3',200000,0,'192.168.7.5',1 EXEC dbo.USPCheckBilling_LogOut_Post 'have2do2' **********************************************************/