set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER PROCEDURE [dbo].[UP_StudentPayMoney_ADD]
@FAmt float,
@FUserID int,
@FUserType tinyint,
@FIncomeDate datetime,
@FIncomeWay nvarchar(255),
@FDueUserID int,
@FIncomeType nvarchar(50),
--@FPayID int,
@FIsVIP bit,
@FCourseID int,
@FCourseGroupID int,
@FPayName nvarchar(100),
@FPayAmt float,
@FPayIncome float,
@FDiscountAmt float,
@FPayDatetime datetime,
@FPayType tinyint,
@FDueFlag bit
AS
DECLARE @FID int
BEGIN TRANSACTION --开始事务
INSERT INTO [fn_income](
[FAmt],[FUserID],[FUserType],[FIncomeDate],[FIncomeWay],[FDueUserID],[FIncomeType]
)VALUES(
@FAmt,@FUserID,@FUserType,@FIncomeDate,@FIncomeWay,@FDueUserID,@FIncomeType
)
SET @FID = @@IDENTITY
INSERT INTO [fn_payCoursesList](
[FPayID],[FIsVIP],[FCourseID],[FCourseGroupID]
)VALUES(
@FID,@FIsVIP,@FCourseID,@FCourseGroupID
)
SET @FID = @@IDENTITY
declare @i int
set @i=1
while @i<=0
begin
INSERT INTO [fn_userPay](
[FID],[FPayName],[FPayAmt],[FPayIncome],[FDiscountAmt],[FPayDatetime],[FPayType],[FDueFlag]
)VALUES(
@FID,@FPayName,@FPayAmt,@FPayIncome,@FDiscountAmt,@FPayDatetime,@FPayType,@FDueFlag)
set @i=@i-1
end
IF @@error < 1 --发生错误
BEGIN
ROLLBACK TRANSACTION
RETURN 0
END
ELSE
BEGIN
COMMIT TRANSACTION
RETURN 1 --执行成功
END
GO