/// <summary> /// 储值支付 /// </summary> /// <param name="orderObj"></param> /// <param name="order"></param> /// <param name="aid"></param> /// <param name="saveMoneyUser"></param> /// <param name="sbUpdateGoodCartSql"></param> /// <param name="reductionCart"></param> /// <param name="orderId"></param> /// <returns></returns> public object PayOrderByChuzhi(object orderObj, int aid, SaveMoneySetUser saveMoneyUser, TransactionModel tran, ref int orderId) { QiyeGoodsOrder order = (QiyeGoodsOrder)orderObj; //储值支付 扣除预存款金额并生成消费记录 //添加储值日志 SaveMoneySetUserLog userLog = new SaveMoneySetUserLog() { AppId = saveMoneyUser.AppId, UserId = order.UserId, MoneySetUserId = saveMoneyUser.Id, Type = -1, BeforeMoney = saveMoneyUser.AccountMoney, AfterMoney = saveMoneyUser.AccountMoney - order.BuyPrice, ChangeMoney = order.BuyPrice, ChangeNote = $" 购买商品,订单号:{order.OrderNum} ", CreateDate = DateTime.Now, State = 1, AId = order.AId, }; tran.Add(Utils.BuildAddSqlS(userLog, "OrderId", "(select LAST_INSERT_ID())", SaveMoneySetUserLogBLL.SingleModel.TableName, SaveMoneySetUserLogBLL.SingleModel.arrProperty)); //储值扣费 tran.Add($" update SaveMoneySetUser set AccountMoney = AccountMoney - {order.BuyPrice} where id = {saveMoneyUser.Id} ; "); if (!ExecuteTransactionDataCorect(tran.sqlArray, tran.ParameterArray)) { log4net.LogHelper.WriteInfo(this.GetType(), "储值支付:操作失败" + Newtonsoft.Json.JsonConvert.SerializeObject(tran)); return(""); } QiyeStore store = QiyeStoreBLL.SingleModel.GetModel(order.StoreId); if (store != null) { //清除商品缓存 QiyeGoodsBLL.SingleModel.RemoveEntGoodListCache(store.Aid); } orderId = 1; order = GetModelByOrderNum(order.OrderNum); if (order == null) { log4net.LogHelper.WriteInfo(this.GetType(), "储值支付:生成订单失败"); return(""); } //发送支付成功通知给用户 object orderData = TemplateMsg_Miniapp.QiyeGetTemplateMessageData(order, SendTemplateMessageTypeEnum.企业智推版订单支付成功通知); TemplateMsg_Miniapp.SendTemplateMessage(order.UserId, SendTemplateMessageTypeEnum.企业智推版订单支付成功通知, TmpType.企业智推版, orderData); //发送支付成功公众号通知给商家 TemplateMsg_Gzh.SendQiyePaySuccessTemplateMessage(order); return(new { postdata = order.OrderNum, orderid = 0, dbOrder = order.Id }); }
/// <summary> /// 订单支付成功发送支付成功模板消息 /// </summary> /// <param name="pinOrder"></param> public void SendTemplateMsg_PaySuccess(PinGoodsOrder pinOrder) { PinStore store = PinStoreBLL.SingleModel.GetModelByAid_Id(pinOrder.aid, pinOrder.storeId); if (store == null && pinOrder.orderType == 0) { log4net.LogHelper.WriteError(GetType(), new Exception($"拼享惠发送订单支付成功模板消息失败,找不到店铺信息 aid:{pinOrder.aid}, storeid:{pinOrder.storeId}")); return; } //发给用户通知 object orderData = TemplateMsg_Miniapp.PinGetTemplateMessageData(SendTemplateMessageTypeEnum.拼享惠订单支付成功买家通知, order: pinOrder, store: store); TemplateMsg_Miniapp.SendTemplateMessage(pinOrder.userId, SendTemplateMessageTypeEnum.拼享惠订单支付成功买家通知, TmpType.拼享惠, orderData, $"pages/shopping/orderInfo/orderInfo?orderid={pinOrder.id}&storeid={pinOrder.storeId}"); //发给商家通知 if (pinOrder.orderType == 0) { TemplateMsg_Gzh.SendPaySuccessTemplateMessage(pinOrder); } }
public bool RequestRefund(FoodReservation reservation) { if (reservation == null || (reservation.State != (int)MiniAppEntOrderState.待接单 && reservation.State != (int)MiniAppEntOrderState.待自取)) { return(false); } reservation.State = (int)MiniAppEntOrderState.退款审核中; bool result = Update(reservation, "State"); if (!result) { return(false); } //发送模板消息 List <EntGoodsOrder> reservationOrder = EntGoodsOrderBLL.SingleModel.GetReserveOrder(reservation.Id); TemplateMsg_Gzh.OutOrderTemplateMessageForEnt(reservationOrder?.FirstOrDefault()); return(result); }