/// <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()); } }
/// <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); }
/// <summary> /// 加载上次选择过的退款信息数据 /// </summary> /// <param name="paymentID"></param> private void LoadPaymentReturn(string paymentID) { this.RpReturnList.DataSource = To_PaymentReturnManager.GetOrderReturnDetail(" paymentID ='" + paymentID + "'"); this.RpReturnList.DataBind(); }