Ejemplo n.º 1
0
        //记账支付方式完成后设置相关信息
        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;
            }
        }
Ejemplo n.º 2
0
        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); //设置现金金额
        }