USE [NLISSST]
GO
/****** Object: StoredProcedure
[SST].[sp_ArbitrationUpdateByID] Script Date: 05/08/2014 10:29:59
******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--
=============================================
--
Author: <Author,,高明胜>
-- Create date: <Create
Date,,2014-3-11>
-- Description: <Description,,修改>
--
=============================================
ALTER PROCEDURE
[SST].[sp_ArbitrationUpdateByID]
-- Add the parameters for the stored
procedure here
@Result int
output,--输出结果参数
@ArbitrationID bigint,
@ArbitrationOrderID bigint,
@ArbitrationOrderType int,
@ArbitrationMoney decimal(13,
2),
@ArbitrationRemark varchar(100),
@ArbitrationStatus int,
@ArbitrationUserID bigint,
@ArbitrationTime datetime
as
Set @Result=0
Declare @Error int
Set @Error=0
If
Exists(Select * From SST.tbArbitration Where
[email protected])--存在该项
Begin
if exists(select * from
SST.tbArbitration Where [email protected] and
ArbitrationStatus=1)
begin
Set
@Result=2--该订单已经仲裁,不能继续仲裁
end
else
begin
begin
tran
if(@ArbitrationStatus=1) ----更新为已仲,先更新对应订单的金额
begin
declare
@RewardResult int
if(@ArbitrationMoney=0)
set
@RewardResult=0
else
set
@RewardResult=1
if(@ArbitrationOrderType=0)----更新索酬
begin
update
SST.tbRewardOrder
set
[email protected],
[email protected],
RewardOrderStatus=4
where
[email protected]
Set
@[email protected][email protected]@ERROR--累加错误数量
end
else----更新索酬
begin
if(@ArbitrationOrderType=1)----更新索赔
begin
update
SST.tbPayOrder
set
[email protected],
[email protected],
PayOrderStatus=4
where
[email protected]
Set
@[email protected][email protected]@ERROR--累加错误数量
end
end
end
Update
SST.tbArbitration Set
[email protected],
[email protected],
[email protected],
[email protected],
[email protected],
[email protected],
[email protected]
Where
[email protected]
Set
@[email protected][email protected]@ERROR--累加错误数量
if(@Error=0)
Begin
Set
@Result=1--成功
commit
tran
End
Else
Begin
Set
@Result=0--失败
rollback
tran
End
end
end
Else
Begin
Set
@Result=-1--失败
End