Commit a4dab277 by 陶然

优化

parent e75d3231
......@@ -282,7 +282,7 @@ namespace Kivii.Finances
}
//var amountInvoiced = conn.Scalar<Payment, decimal>(o => Sql.Sum(o.AmountInvoice), p => p.ParentKvid == payment.Kvid && p.OffsetKvid == Guid.Empty);
var amountSplit = conn.Scalar<Payment, decimal>(o => Sql.Sum(o.Amount), p => p.ParentKvid == payment.Kvid && Sql.In(p.Type, PaymentType.Assign, PaymentType.Split) && p.OffsetKvid == Guid.Empty);
var amountSplit = conn.Scalar<Payment, decimal>(o => Sql.Sum(o.Amount), p => p.ParentKvid == payment.Kvid && Sql.In(p.Type, PaymentType.Assign, PaymentType.Split, PaymentType.UnBiz, PaymentType.Refund) && p.OffsetKvid == Guid.Empty);
Payment parentPayment = null;
if (payment.ParentKvid != Guid.Empty) parentPayment = conn.SingleById<Payment>(payment.ParentKvid);
IDbTransaction trans = null;//事务,如果外部来了Connection,不生成事务
......
......@@ -32,7 +32,9 @@ namespace Kivii.Finances.Transforms
if (payment.AmountSplited == payment.Amount) throw new Exception("无剩余收款可操作!");
if (payment.AmountSplited + Amount > payment.Amount) throw new Exception("操作金额超出范围!");
//if (payment.AmountInvoice > 0) throw new Exception("已开票,无法非业务处理!");
if (payment.AmountUsed > 0) throw new Exception("已使用金额,无法非业务处理!");
if (payment.Amount - payment.AmountUsed < Amount) throw new Exception("已使用金额,无法非业务处理!");
var amountSplit = conn.Scalar<Payment, decimal>(o => Sql.Sum(o.Amount), p => p.ParentKvid == payment.Kvid && p.OffsetKvid == Guid.Empty);
if (amountSplit + Amount > payment.Amount) throw new Exception("认领金额超出范围!");
var split = payment.UnBizSplit(Amount, PaymentType.UnBiz, Remark);
......@@ -239,8 +241,9 @@ namespace Kivii.Finances.Transforms
if (payment.AmountSplited == payment.Amount) throw new Exception("无剩余收款可操作!");
if (payment.AmountSplited + Amount > payment.Amount) throw new Exception("操作金额超出范围!");
//if (payment.AmountInvoice > 0) throw new Exception("已开票,无法退款处理!");
if (payment.AmountUsed > 0) throw new Exception("已使用金额,无法退款处理!");
if (payment.Amount - payment.AmountUsed < Amount) throw new Exception("已使用金额,无法退款处理!");
var amountSplit = conn.Scalar<Payment, decimal>(o => Sql.Sum(o.Amount), p => p.ParentKvid == payment.Kvid && p.OffsetKvid == Guid.Empty);
if (amountSplit + Amount > payment.Amount) throw new Exception("认领金额超出范围!");
var split = payment.UnBizSplit(Amount, PaymentType.Refund, Remark);
#region 记录日志
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment