use Ks2007
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[AskCardEx]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[AskCardEx]
go
--该存储过程处理水控系统普通卡请求
--暂时不考虑每种控水模式的补助
CREATE PROCEDURE AskCardEx(@Result int output,@Pos_no int,@CardNo int,@CostKindNo smallint,@GroupNo smallint,
@AccStatus tinyint OUTPUT,@PidNo smallint output,@TotalMoney int OUTPUT,@OtherMoney int output)
AS
begin
set @Result = -1
set @AccStatus = 0
set @PidNo = 0
Set @TotalMoney = 0
set @OtherMoney = 0
select @AccStatus = Work_mes , @PidNo=Pid_No , @TotalMoney = Now_Money*100.0 , @OtherMoney = subsity*100.0
from emmployee where Card_no= @CardNo and Work_mes<>3
if @@rowcount = 0
Begin
set @Result =1
return
end
declare @Overdraft money
select top 1 @overdraft=透支限额 from Pid_mes where Pid_no=@PidNo /*查找身份信息*/
set @TotalMoney = @TotalMoney - @overdraft*100.0
if @TotalMoney < 0 --2007年12月27日,发现如果对控水器发负的钱,控水器还可以消费,3.0无此问题
begin
set @TotalMoney = 0
end
if @OtherMoney < 0
begin
set @OtherMoney = 0
end
set @Result = 0
return
end
上一篇:更改当日消费还可以大额