//记账支付方式完成后设置相关信息 public void SetPayModeFee(int PayMethodID, string TicketNo, decimal PayFee) { PayModeFee pay = payList.Find(x => x.PayMethodID == PayMethodID); if (pay != null) { pay.TicketNo = TicketNo; pay.PayFee = PayFee; } }
public void InitFee(decimal TotalFee, decimal _zyDepositFee, List <UCPayMode2> m_UCPayModes) { PayTotalFee = TotalFee; SelfTotalFee = TotalFee; FavorableTotalFee = 0; AccountTotalFee = 0; PosFee = 0; CashFee = 0; payList = new List <PayModeFee>(); for (int i = 0; i < m_UCPayModes.Count; i++) { if (m_UCPayModes[i]._config.PayMethodID > 0) { PayModeFee pay = new PayModeFee(); pay.PayMethodID = m_UCPayModes[i]._config.PayMethodID; pay.TicketNo = ""; pay.InputFrom = Convert.ToInt32(m_UCPayModes[i]._config.InputFrom); pay.PayFee = m_UCPayModes[i].PayValue; //pay.PayStID = m_UCPayModes[i]._config.PayStID; pay.Agency = 0; payList.Add(pay); } } zyDepositFee = _zyDepositFee; zyRefundFee = 0; zyChargeFee = 0; decimal ret = zyDepositFee - PayTotalFee; if (ret >= 0)//应退 { zyRefundFee = ret; } else//补收 { zyChargeFee = -ret; } ChangeFee = ret;//找零 decimal _needPayFee; decimal _roundFee; CostFeeStyle.ChangeFeeRoun(ChangeFee, out _needPayFee, out _roundFee); ChangeFee = _needPayFee; RoundFee = _roundFee; //update zh 20160927 ChangeValue(m_UCPayModes); //重新计算 SetPayModeFee(1002, "", CashFee); //设置现金金额 }