/// <summary> /// 生成差错退款账单 /// </summary> internal NormalRefundBill MakeErrorRefundBill(Refund.ErrorRefundInfo refundInfo, string remark) { var refundBill = new NormalRefundBill(OrderId, refundInfo.ApplyformId) { PayBill = this, Remark = remark }; var tradeRoleRefundBills = new List <Refund.Normal.NormalRefundRoleBill>(); refundBill.Purchaser = Purchaser.MakeErrorRefundBill(refundInfo, getPurchaserRefundedBill(refundInfo.ApplyformId)); tradeRoleRefundBills.Add(refundBill.Purchaser); refundBill.Provider = Provider.MakeErrorRefundBill(refundInfo, getProviderRefundedBill(refundInfo.ApplyformId)); tradeRoleRefundBills.Add(refundBill.Provider); var platform = new Role.Platform(Platform.Account); refundBill.Platform = platform.MakeErrorRefundBill(Platform.Deduction, refundInfo, getPlatformRefundedBill(refundInfo.ApplyformId), tradeRoleRefundBills); refundBill.Tradement = Tradement.MakeRefundment(Math.Abs(refundBill.Purchaser.Amount), getRefundedTradeFee(), refundInfo.ApplyformId.ToString()); _refundBillsLoader.AppendData(refundBill); return(refundBill); }
internal Refund.Normal.NormalRefundRoleBill MakeErrorRefundBill(Refund.ErrorRefundInfo refundInfo, IEnumerable <Refund.Normal.NormalRefundRoleBill> refundedBills) { return(Owner.MakeErrorRefundBill(this, refundInfo, refundedBills)); }