Exemple #1
0
        /// <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);
        }
Exemple #2
0
 internal Refund.Normal.NormalRefundRoleBill MakeErrorRefundBill(Refund.ErrorRefundInfo refundInfo, IEnumerable <Refund.Normal.NormalRefundRoleBill> refundedBills)
 {
     return(Owner.MakeErrorRefundBill(this, refundInfo, refundedBills));
 }