日期:2014-05-18  浏览次数:20399 次

商城订单撤消问题
订单表:T_SalesRecords
字段:SalesRecordsNo

订单详细内容表:T_SalesRecordsDtl
字段:
GoodsId(商品编号)
Quantity(订单数量)

商品表:GoodsInfo
GoodsId
Quantity(商品总数量)
OccupyQuantity(订单占用)
AvailableQuantity(可以用数量)

我下订单是这样的:
 Quantity(商品总数量) 这个不变
然后减少AvailableQuantity(可以用数量)


现在要撤消订单 要把AvailableQuantity(可以用数量)还原回去(也就是AvailableQuantity(可以用数量)+Quantity(订单数量))
订单里面有多个商品
现在怎么做

------解决方案--------------------
SQL code
update a
set occupyquantity=occupyquantity-b.quantity,availablequantity=availablequantity+b.quantity
from 商品表 a inner join 订单详细内容表 b on a.goodsid=b.goodsid
where b.goodsid=要撤消的订单号

------解决方案--------------------
代码里操作也可以
------解决方案--------------------
SQL code

update GoodsInfo set AvailableQuantity=AvailableQuantity+SalesRecordsDtl.Quantity 
where b.goodsid=T_SalesRecordsDtl.GoodsId
AND b.SalesRecordsNO=订单编号