/// <summary> /// 添加订单日志 /// </summary> /// <param name="thirdOrderID"></param> /// <param name="orderID"></param> /// <returns></returns> static void AddOrderoperatelog(int thirdOrderID, string orderID, OrderOperateLogInfo info) { try { DataTable dTable = OrdersBLL.Instance.GetList(thirdOrderID, string.Empty, 0, 0, "orderoperatelog"); if (dTable == null || dTable.Rows.Count <= 0) { OrdersSqlBLL.Instance.OrderOperateLog_Insert(info); return; } // 遍历操作日志 foreach (DataRow row in dTable.Rows) { info = new OrderOperateLogInfo() { OrderID = orderID, Tittle = row["Tittle"].ToString(), OldStatus = short.Parse(row["OldStatus"].ToString()), NewStatus = short.Parse(row["NewStatus"].ToString()), UID = int.Parse(row["UID"].ToString()), UserName = row["UserName"].ToString(), Content = row["Content"].ToString() }; OrdersSqlBLL.Instance.OrderOperateLog_Insert(info); } } catch (Exception ex) { ConsoleMsg(string.Format("OrderOperatelog ThirdOrderID:{0} OrderID:{1} 订单日志:{2}", thirdOrderID, orderID, ex.Message)); } }
/// <summary> /// 添加订单操作日志 /// </summary> /// <param name="ool">实体</param> /// <returns>返回数据:0=成功,1=失败,其它自定义消息</returns> public string OrderOperateLog_Insert(OrderOperateLogInfo ool) { string sqlCommand = "OrderOperateLog_Insert"; DbCommand dbCommand = dbw.GetStoredProcCommand(sqlCommand); dbw.AddInParameter(dbCommand, "OrderID", DbType.String, ool.OrderID); dbw.AddInParameter(dbCommand, "UID", DbType.Int32, ool.UID); dbw.AddInParameter(dbCommand, "UserType", DbType.Int32, ool.UserType); dbw.AddInParameter(dbCommand, "UserName", DbType.String, ool.UserName); dbw.AddInParameter(dbCommand, "OldStatus", DbType.Int32, ool.OldStatus); dbw.AddInParameter(dbCommand, "NewStatus", DbType.Int32, ool.NewStatus); dbw.AddInParameter(dbCommand, "Tittle", DbType.String, ool.Tittle); dbw.AddInParameter(dbCommand, "Remarks", DbType.String, ool.Content); dbw.AddOutParameter(dbCommand, "Error", DbType.String, 100); dbw.ExecuteNonQuery(dbCommand); return(dbw.GetParameterValue(dbCommand, "Error").ToString()); }
/// <summary> /// 订单状态修改 /// </summary> /// <param name="log">状态日志内容</param> /// <param name="disposeType">修改类型,1=支付状态,2=订单状态</param> /// <returns>返回:0=成功,1=失败,其他自定义错误</returns> internal string Orders_Dispose(OrderOperateLogInfo log, int disposeType) { string sqlCommand = "Orders_Dispose"; DbCommand dbCommand = dbw.GetStoredProcCommand(sqlCommand); dbw.AddInParameter(dbCommand, "OrderID", DbType.String, log.OrderID); dbw.AddInParameter(dbCommand, "UID", DbType.String, log.UID); dbw.AddInParameter(dbCommand, "UserType", DbType.String, log.UserType); dbw.AddInParameter(dbCommand, "UserName", DbType.String, log.UserName); dbw.AddInParameter(dbCommand, "DisposeID", DbType.String, log.NewStatus); dbw.AddInParameter(dbCommand, "DisposeType", DbType.String, disposeType); dbw.AddInParameter(dbCommand, "Remarks", DbType.String, log.Content); dbw.AddOutParameter(dbCommand, "Error", DbType.String, 100); dbw.ExecuteNonQuery(dbCommand); // 返回参数 return(dbw.GetParameterValue(dbCommand, "Error").ToString()); }
/// <summary> /// 添加订单操作日志 /// </summary> /// <param name="ool">实体</param> /// <returns>返回数据:0=成功,1=失败,其它自定义消息</returns> internal bool OrderOperateLog_Insert(OrderOperateLogInfo ool) { string sqlCommand = "INSERT INTO OrderOperateLog (OrderID, UID, UserType, UserName, OldStatus, NewStatus, Tittle, Content) VALUES (@OrderID, @UID, @UserType, @UserName, @OldStatus, @NewStatus, @Tittle, @Content)"; DbCommand dbCommand = dbw.GetSqlStringCommand(sqlCommand); dbw.AddInParameter(dbCommand, "OrderID", DbType.Int32, ool.ThirdOrderID); dbw.AddInParameter(dbCommand, "UID", DbType.Int32, ool.UID); dbw.AddInParameter(dbCommand, "UserType", DbType.Int32, ool.UserType); dbw.AddInParameter(dbCommand, "UserName", DbType.String, ool.UserName); dbw.AddInParameter(dbCommand, "OldStatus", DbType.Int32, ool.OldStatus); dbw.AddInParameter(dbCommand, "NewStatus", DbType.Int32, ool.NewStatus); dbw.AddInParameter(dbCommand, "Tittle", DbType.String, ool.Tittle); dbw.AddInParameter(dbCommand, "Content", DbType.String, ool.Content); if (dbw.ExecuteNonQuery(dbCommand) == 0) { return(false); } return(true); }
/// <summary> /// 添加订单操作日志 /// </summary> /// <param name="ool">实体</param> /// <returns>返回数据:0=成功,1=失败,其它自定义消息</returns> public bool OrderOperateLog_Insert(OrderOperateLogInfo ool) { return(dal.OrderOperateLog_Insert(ool)); }
/// <summary> /// 付款状态 /// </summary> static void SQLOrders_UpdatePayStatus() { sucessSum = 0; errorSum = 0; Console.WriteLine(string.Format("========================= BEGIN PayStatus")); try { // 查询待处理数据 DataTable dTable = OrdersBLL.Instance.GetList(0, beginTime.ToString(), 0, 0, "orderspay"); if (dTable == null || dTable.Rows.Count <= 0) { Console.WriteLine("PayStatus 有0条支付状态等待处理"); return; } else { Console.WriteLine(string.Format("PayStatus 有{0}条支付状态等待处理", dTable.Rows.Count)); } // 处理数据 int thirdOrderID = 0; short payStatus = 0; string[] colName = { "PaymentMethodID", "SerialNumber" }; OrdersInfo oInfo = null; string orderID = string.Empty, result = string.Empty; foreach (DataRow row in dTable.Rows) { // 单号 int.TryParse(row["OrderID"].ToString(), out thirdOrderID); if (thirdOrderID <= 0) { errorSum++; ConsoleMsg(string.Format("PayStatus 单号错误 ThirdOrderID:{0}", thirdOrderID)); continue; } else { payStatus = short.Parse(row["PayStatus"].ToString()); } #region 更新订单支付状态 try { // 是否已经添加 oInfo = OrdersSqlBLL.Instance.GetOrderIDByThirdOrderID(thirdOrderID.ToString()); if (oInfo == null) { errorSum++; ConsoleMsg(string.Format("PayStatus ThirdOrderID:{0} 未找到:{1}", thirdOrderID, orderID)); continue; } else if (oInfo.PayStatus == payStatus) { sucessSum++; continue; } else { orderID = oInfo.OrderID; } OrderOperateLogInfo info = new OrderOperateLogInfo() { OrderID = orderID, Tittle = "已付款", OldStatus = 0, NewStatus = payStatus, UID = int.Parse(row["UID"].ToString()), UserName = row["Creator"].ToString() }; // 查询支付日志 DataTable dTableLog = OrdersBLL.Instance.GetList(thirdOrderID, string.Empty, 0, 0, "orderoperatelog", 1); if (dTableLog != null && dTableLog.Rows.Count > 0) { info.Tittle = dTableLog.Rows[0]["Tittle"].ToString(); info.OldStatus = short.Parse(dTableLog.Rows[0]["OldStatus"].ToString()); info.NewStatus = short.Parse(dTableLog.Rows[0]["NewStatus"].ToString()); info.UID = int.Parse(dTableLog.Rows[0]["UID"].ToString()); info.UserName = dTableLog.Rows[0]["UserName"].ToString(); info.Content = dTableLog.Rows[0]["Content"].ToString(); } // 更改支付状态 result = OrdersSqlBLL.Instance.Orders_Dispose(info, 1); if (result == "0") { int paymentMethodID = int.Parse(row["PaymentMethodID"].ToString()); OrdersSqlBLL.Instance.Orders_Update(orderID, colName, new object[] { paymentMethodID.ToString(), row["SerialNumber"].ToString() }); sucessSum++; } else { errorSum++; ConsoleMsg(string.Format("PayStatus 订单:{0} ThirdOrderID:{1} 保存支付状态失败:{2}", orderID, thirdOrderID, result)); } } catch (Exception ex) { errorSum++; ConsoleMsg(string.Format("PayStatus 订单:{0} ThirdOrderID:{1} 出错:{2}", orderID, thirdOrderID, ex.Message)); } #endregion } ConsoleMsg(string.Format("PayStatus 同步完成:{0} 失败:{1}", sucessSum, errorSum)); } catch (Exception ex) { ConsoleMsg(string.Format("PayStatus ERROR:{0}", ex.Message)); } Console.WriteLine("========================= END PayStatus\r\n"); Console.WriteLine("\r\n"); }
/// <summary> /// 订单状态修改 /// </summary> /// <param name="log">状态日志内容</param> /// <param name="disposeType">修改类型,1=支付状态,2=订单状态</param> /// <returns>返回:0=成功,1=失败,其他自定义错误</returns> public string Orders_Dispose(OrderOperateLogInfo log, int disposeType) { return(dal.Orders_Dispose(log, disposeType)); }
/// <summary> /// 修改后台订单支付状态 /// </summary> /// <returns></returns> public string Orders_UpdatePayStatus() { string orderId = string.Empty; JsonResultObject result = null; try { // 订单 if (HttpContext.Current.Request["orderId"] != null) { orderId = HttpContext.Current.Request["orderId"]; } if (string.IsNullOrEmpty(orderId)) { result = new JsonResultObject(false, "未指定订单", null); return(ResultResponse(result, "info")); } // 参数 int paymethodID = 0; if (!string.IsNullOrEmpty(HttpContext.Current.Request["PaymentMethodID"])) { int.TryParse(HttpContext.Current.Request["PaymentMethodID"], out paymethodID); } // 参数 string serialNumber = string.Empty; if (HttpContext.Current.Request["SerialNumber"] != null) { serialNumber = HttpContext.Current.Request["SerialNumber"]; } /* * // 验证签名 * string sign = string.Empty; * if (HttpContext.Current.Request["sign"] != null) * { * sign = HttpContext.Current.Request["sign"]; * } */ // 查询订单状态 OrdersInfo oInfo = OrdersSqlBLL.Instance.GetByOrderId(orderId); if (oInfo == null) { result = new JsonResultObject(false, string.Format("未找到订单:{0}", orderId), null); return(ResultResponse(result, "info")); } else if (oInfo.PayStatus > 0) { result = new JsonResultObject(true, "支付成功!", null); return(ResultResponse(result, "info")); } // 更改支付状态 OrderOperateLogInfo info = new OrderOperateLogInfo() { OrderID = oInfo.OrderID, Tittle = "已付款", OldStatus = 0, NewStatus = 1 }; string code = OrdersSqlBLL.Instance.Orders_Dispose(info, 1); if (code == "0") { log.Info(string.Format("OrderID:{0} 支付成功", oInfo.OrderID)); // 更改支付方式 string[] colName = { "PaymentMethodID", "SerialNumber" }; int paymethod = (oInfo.PaymentMethodID > 1) ? oInfo.PaymentMethodID : 22; OrdersSqlBLL.Instance.Orders_Update(info.OrderID, colName, new object[] { paymethod, serialNumber.ToString() }); result = new JsonResultObject(true, "支付成功!", null); } else { log.Info(string.Format("OrderID:{0} 支付失败:{1}", oInfo.OrderID, code)); result = new JsonResultObject(false, string.Format("订单号:{0} 支付失败:{1}!", info.OrderID, code), null); } } catch (Exception ex) { log.Error(string.Format("OrderID:{0} 更新支付状态失败:{1}", orderId, ex.Message)); result = new JsonResultObject(false, ex.Message, null); } return(ResultResponse(result, "info")); }
/// <summary> /// 更新后台订单订单支付方式 /// </summary> /// <returns></returns> public string Orders_UpdatePayMethod() { string orderId = string.Empty; JsonResultObject result = null; try { // 订单 if (HttpContext.Current.Request["orderId"] != null) { orderId = HttpContext.Current.Request["orderId"]; } if (string.IsNullOrEmpty(orderId)) { result = new JsonResultObject(false, "未指定订单", null); return(ResultResponse(result, "info")); } // 参数 if (HttpContext.Current.Request["paymethod"] == null) { result = new JsonResultObject(false, "未指定支付方式", null); return(ResultResponse(result, "info")); } int paymethod = 0; int.TryParse(HttpContext.Current.Request["paymethod"], out paymethod); // 查询订单状态 OrdersInfo oInfo = OrdersSqlBLL.Instance.GetByOrderId(orderId); if (oInfo == null) { result = new JsonResultObject(false, string.Format("未找到订单:{0}", orderId), null); return(ResultResponse(result, "info")); } else if (oInfo.PaymentMethodID == paymethod) { result = new JsonResultObject(true, "支付方式修改成功!", null); return(ResultResponse(result, "info")); } // 更改支付方式 string[] colName = { "PaymentMethodID" }; bool code = OrdersSqlBLL.Instance.Orders_Update(oInfo.OrderID, colName, new object[] { paymethod }); if (code) { OrderOperateLogInfo info = new OrderOperateLogInfo() { OrderID = oInfo.OrderID, Tittle = string.Format("修改支付方式:{0}", oInfo.PaymentMethodID), OldStatus = oInfo.OrderStatus, NewStatus = oInfo.OrderStatus }; OrdersSqlBLL.Instance.OrderOperateLog_Insert(info); result = new JsonResultObject(true, "支付方式修改成功!", null); } else { result = new JsonResultObject(false, string.Format("订单号:{0} 修改支付方式失败!", oInfo.OrderID), null); } } catch (Exception ex) { log.Error(string.Format("OrderID:{0} 修改支付方式失败:{1}", orderId, ex.Message)); result = new JsonResultObject(false, ex.Message, null); } return(ResultResponse(result, "info")); }