public static void OnLineBalanceDrawRequest_API(int Id, bool IsSuccess, string sError) { bool flag = false; StoreBalanceDao storeBalanceDao = new StoreBalanceDao(); StoreBalanceDrawRequestInfo storeBalanceDrawRequestInfo = storeBalanceDao.Get <StoreBalanceDrawRequestInfo>(Id); if (storeBalanceDrawRequestInfo != null) { StoresInfo storeById = StoresHelper.GetStoreById(storeBalanceDrawRequestInfo.StoreId); ManagerInfo manager = HiContext.Current.Manager; string text = (manager == null) ? "" : manager.UserName; Database database = DatabaseFactory.CreateDatabase(); using (DbConnection dbConnection = database.CreateConnection()) { dbConnection.Open(); DbTransaction dbTransaction = dbConnection.BeginTransaction(); try { OnLinePayment onLinePayment; if (storeById == null) { if (IsSuccess) { flag = storeBalanceDao.DeleteBalanceDrawRequestById(true, storeById.Balance, storeBalanceDrawRequestInfo, text, dbTransaction, ""); } else { StoreBalanceDao storeBalanceDao2 = storeBalanceDao; onLinePayment = OnLinePayment.PayFail; flag = storeBalanceDao2.UpdateBalanceDrawRequest(Id, onLinePayment.GetHashCode().ToNullString(), "未找到该门店,请拒绝该请求或做线下处理", text); } if (!flag) { dbTransaction.Rollback(); } else { dbTransaction.Commit(); } } else { if (IsSuccess) { flag = storeBalanceDao.DeleteBalanceDrawRequestById(true, storeById.Balance, storeBalanceDrawRequestInfo, text, dbTransaction, ""); if (!flag) { dbTransaction.Rollback(); goto end_IL_006f; } } else { StoreBalanceDao storeBalanceDao3 = storeBalanceDao; onLinePayment = OnLinePayment.PayFail; flag = storeBalanceDao3.UpdateBalanceDrawRequest(Id, onLinePayment.GetHashCode().ToNullString(), sError, text); } if (!flag) { dbTransaction.Rollback(); } else { string text2 = ""; text2 = ((!storeBalanceDrawRequestInfo.IsAlipay.HasValue || !storeBalanceDrawRequestInfo.IsAlipay.Value) ? ("银行卡:" + storeBalanceDrawRequestInfo.BankName + "(" + storeBalanceDrawRequestInfo.AccountName + ")") : ("支付宝:" + storeBalanceDrawRequestInfo.AlipayCode)); Messenger.DrawResultMessager(null, storeById, storeBalanceDrawRequestInfo.Amount, text2, storeBalanceDrawRequestInfo.RequestTime, false, sError); dbTransaction.Commit(); } } end_IL_006f :; } catch (Exception ex) { IDictionary <string, string> dictionary = new Dictionary <string, string>(); dictionary.Add("ErrorMessage", ex.Message); dictionary.Add("StackTrace", ex.StackTrace); if (ex.InnerException != null) { dictionary.Add("InnerException", ex.InnerException.ToString()); } if (ex.GetBaseException() != null) { dictionary.Add("BaseException", ex.GetBaseException().Message); } if (ex.TargetSite != (MethodBase)null) { dictionary.Add("TargetSite", ex.TargetSite.ToString()); } dictionary.Add("ExSource", ex.Source); Globals.WriteLog(dictionary, "", "", "", "AcceptDraw"); dbTransaction.Rollback(); } finally { dbConnection.Close(); } } } }
public static bool DealBalanceDrawRequestById(int Id, bool agree, ref string sError, string reason = "") { bool flag = false; StoreBalanceDao storeBalanceDao = new StoreBalanceDao(); StoreBalanceDrawRequestInfo storeBalanceDrawRequestInfo = storeBalanceDao.Get <StoreBalanceDrawRequestInfo>(Id); if (storeBalanceDrawRequestInfo == null) { return(false); } StoresInfo storeById = StoresHelper.GetStoreById(storeBalanceDrawRequestInfo.StoreId); ManagerInfo manager = HiContext.Current.Manager; string text = (manager == null) ? "" : manager.UserName; Database database = DatabaseFactory.CreateDatabase(); using (DbConnection dbConnection = database.CreateConnection()) { dbConnection.Open(); DbTransaction dbTransaction = dbConnection.BeginTransaction(); try { if (agree) { if (storeBalanceDrawRequestInfo.IsPass.HasValue) { sError = "已处理该条记录"; dbTransaction.Rollback(); return(false); } OnLinePayment onLinePayment; if (storeById == null) { sError = "未找到该门店"; StoreBalanceDao storeBalanceDao2 = storeBalanceDao; onLinePayment = OnLinePayment.PayFail; flag = storeBalanceDao2.UpdateBalanceDrawRequest(Id, onLinePayment.GetHashCode().ToNullString(), "未找到该门店,请拒绝该用户的请求", text); if (!flag) { dbTransaction.Rollback(); return(false); } dbTransaction.Commit(); return(false); } string text2 = storeBalanceDrawRequestInfo.RequestState.ToNullString().Trim(); onLinePayment = OnLinePayment.Paying; if (text2.Equals(onLinePayment.GetHashCode().ToNullString())) { sError = "付款正在进行中"; dbTransaction.Rollback(); return(false); } if (storeBalanceDrawRequestInfo.IsAlipay.ToBool()) { StoreBalanceDao storeBalanceDao3 = storeBalanceDao; onLinePayment = OnLinePayment.Paying; flag = storeBalanceDao3.UpdateBalanceDrawRequest(Id, onLinePayment.GetHashCode().ToNullString(), "", text); if (!flag) { dbTransaction.Rollback(); return(false); } EventLogs.WriteOperationLog(Privilege.MemberAccount, string.Format(CultureInfo.InvariantCulture, "给门店\"{0}\"处理提现申请(支付宝批量付款)", new object[1] { storeById.StoreName }), false); return(true); } flag = storeBalanceDao.DeleteBalanceDrawRequestById(agree, storeById.Balance, storeBalanceDrawRequestInfo, text, dbTransaction, reason); if (!flag) { dbTransaction.Rollback(); return(false); } string text3 = ""; text3 = ((!storeBalanceDrawRequestInfo.IsAlipay.HasValue || !storeBalanceDrawRequestInfo.IsAlipay.Value) ? ("银行卡:" + storeBalanceDrawRequestInfo.BankName + "(" + storeBalanceDrawRequestInfo.AccountName + ")") : ("支付宝:" + storeBalanceDrawRequestInfo.AlipayCode)); Messenger.DrawResultMessager(null, storeById, storeBalanceDrawRequestInfo.Amount, text3, storeBalanceDrawRequestInfo.RequestTime, true, ""); } else { flag = storeBalanceDao.DeleteBalanceDrawRequestById(agree, storeById.Balance, storeBalanceDrawRequestInfo, text, dbTransaction, reason); if (!flag) { dbTransaction.Rollback(); return(false); } string text4 = ""; text4 = ((!storeBalanceDrawRequestInfo.IsAlipay.HasValue || !storeBalanceDrawRequestInfo.IsAlipay.Value) ? ("银行卡:" + storeBalanceDrawRequestInfo.BankName + "(" + storeBalanceDrawRequestInfo.AccountName + ")") : ("支付宝:" + storeBalanceDrawRequestInfo.AlipayCode)); Messenger.DrawResultMessager(null, storeById, storeBalanceDrawRequestInfo.Amount, text4, storeBalanceDrawRequestInfo.RequestTime, false, reason); } dbTransaction.Commit(); EventLogs.WriteOperationLog(Privilege.MemberAccount, string.Format(CultureInfo.InvariantCulture, "给门店\"{0}\"处理提现申请", new object[1] { storeById.StoreName }), false); } catch (Exception ex) { IDictionary <string, string> dictionary = new Dictionary <string, string>(); dictionary.Add("ErrorMessage", ex.Message); dictionary.Add("StackTrace", ex.StackTrace); if (ex.InnerException != null) { dictionary.Add("InnerException", ex.InnerException.ToString()); } if (ex.GetBaseException() != null) { dictionary.Add("BaseException", ex.GetBaseException().Message); } if (ex.TargetSite != (MethodBase)null) { dictionary.Add("TargetSite", ex.TargetSite.ToString()); } dictionary.Add("ExSource", ex.Source); Globals.WriteLog(dictionary, "", "", "", "AcceptDraw"); sError = ex.Message; dbTransaction.Rollback(); } finally { dbConnection.Close(); } return(flag); } }