Пример #1
0
        /// <summary>
        /// 更新订单退款的实际信息
        /// </summary>
        /// <param name="jobflowid"></param>
        public void updateOrderRetDetail(int jobflowid)
        {
            DataTable dt = To_PaymentReturnManager.GetOrderReturnDetail(" jobFlowID =" + jobflowid);

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                string orderRetID   = dt.Rows[i]["orderRetID"].ToString(); //得到退款明细所引用的订单退款明细数据的id
                double hasAmount    = To_PaymentReturnManager.GetRealityHasAmount(orderRetID);
                double shouldAmount = Convert.IsDBNull(dt.Rows[i]["money"]) ? Convert.ToDouble(dt.Rows[i]["money"]) : 0;
                string getStatus    = "";
                if (hasAmount == 0)
                {
                    getStatus = "未退款";
                }
                else if (shouldAmount > hasAmount)
                {
                    getStatus = "部分退款";
                }
                else
                {
                    getStatus = "完成退款";
                }

                To_OrderRefunDetialManager.updateDetialStatusAndMoney(orderRetID, getStatus, hasAmount.ToString());
            }
        }
Пример #2
0
        /// <summary>
        /// 得到退款信息的退款状态和退款金额
        /// </summary>
        /// <param name="orderId"></param>
        /// <param name="payerId"></param>
        /// <param name="money"></param>
        /// <returns></returns>
        private string[] GetReturnStatusAndMoney(string orderRetID, string money)
        {
            string[]  result       = new string[3]; //0,可否修改;1,支付状态;2,支付金额
            DataTable dt           = To_PaymentReturnManager.GetOrderReturnDetail("orderRetID=" + orderRetID);
            double    shouldReturn = double.Parse(money);
            double    hasReturn    = 0;
            double    isReturn     = 0;

            if (dt.Rows.Count > 0)
            {
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    if (dt.Rows[i]["regType"].ToString() == "1") //表示该付款申请已登记
                    {
                        double.TryParse(dt.Rows[i]["returnAmount"].ToString(), out isReturn);
                        hasReturn += isReturn;
                    }
                }

                result[0] = "有"; //表示这张退款信息做过付款申请,不能再在订单中修改应退金额

                if (hasReturn == 0)
                {
                    result[1] = "未退款";
                }
                else if (shouldReturn > hasReturn)
                {
                    result[1] = "部分退款";
                }
                else
                {
                    result[1] = "完成退款";
                }

                result[2] = hasReturn.ToString("F2");
            }
            else
            {
                result[0] = "无";
                result[1] = "未退款";
                result[2] = hasReturn.ToString("F2");
            }

            return(result);
        }
Пример #3
0
 /// <summary>
 /// 加载上次选择过的退款信息数据
 /// </summary>
 /// <param name="paymentID"></param>
 private void LoadPaymentReturn(string paymentID)
 {
     this.RpReturnList.DataSource = To_PaymentReturnManager.GetOrderReturnDetail(" paymentID ='" + paymentID + "'");
     this.RpReturnList.DataBind();
 }