public int InsertInfo(MMS_PurchaseReturnContent info) { string msg = dao.ValidateRepeat(info); if (msg == "") { return(dao.InsertInfo(info)); } else { throw new Exception(msg); } }
public bool AuditPurchaseReturn(int id, bool isAudit, string operatorCode) { using (TransactionScope ts = new TransactionScope()) //开启DTC事务 { TPurchaseReturn tPur = dao.GetPurchaseReturn(id); MMS_PurchaseReturnContent content = tPur.Content; if (content.AuditFlag == true) { throw new Exception("该单据已经审核" + content.PurchaseBillCode); } foreach (TPurchaseReturnDetail tPurDetail in tPur.Detail) { MMS_Store storeParam = new MMS_Store(); storeParam.Warehouse = tPur.Content.WareHouse; storeParam.ProductCode = tPurDetail.DetDetail.ProductCode; MMS_Store sto = null; sto = daoStore.GetStore(storeParam); if (sto == null) //库存中没有该商品 { throw new Exception("库存中没有该商品,不能退货" + tPurDetail.DetDetail.ProductCode); } else { if (tPurDetail.DetDetail.Quantity > sto.Quantity) { throw new Exception("库存数据不足,不能退货" + tPurDetail.DetDetail.ProductCode); } sto.Quantity -= tPurDetail.DetDetail.Quantity; sto.Amount -= tPurDetail.DetDetail.Quantity * tPurDetail.DetDetail.Price; if (sto.Quantity > 0) { sto.Price = sto.Amount / sto.Quantity; } daoStore.UpdateInfo(sto); } } content.AuditFlag = isAudit; content.Operator = operatorCode; content.OperateDate = DateTime.Now; dao.UpdateInfo(content); ts.Complete(); } return(true); }
public bool UpdateInfo(MMS_PurchaseReturnContent info) { return(dao.UpdateInfo(info)); }
public int InsertInfo(MMS_PurchaseReturnContent info) { dc.MMS_PurchaseReturnContent.InsertOnSubmit(info); dc.SubmitChanges(); return(info.ID); }