| | |
| | | { |
| | | |
| | | var result = await (from a in _channelFilter.GetChannelLifePayOrderFilter(_lifePayOrderRepository) |
| | | .Where(x => x.PayStatus == LifePayStatusEnum.待退款 || x.PayStatus == LifePayStatusEnum.已退款 || x.PayStatus == LifePayStatusEnum.退款中 |
| | | || x.LifePayOrderStatus == LifePayOrderStatusEnum.退款待审核 || x.LifePayOrderStatus == LifePayOrderStatusEnum.已退款 || x.LifePayOrderStatus == LifePayOrderStatusEnum.退款失败 |
| | | .Where(x => x.LifePayOrderStatus == LifePayOrderStatusEnum.待退款 || x.LifePayOrderStatus == LifePayOrderStatusEnum.已退款 || x.LifePayOrderStatus == LifePayOrderStatusEnum.退款中 |
| | | || x.LifePayRefundStatus > LifePayRefundStatusEnum.无需退款) |
| | | .WhereIf(input.BeginFinishTime.HasValue, x => x.FinishTime >= input.BeginFinishTime) |
| | | .WhereIf(input.EndFinishTime.HasValue, x => x.FinishTime <= input.EndFinishTime) |
| | |
| | | RefundApplyRemark = x.RefundApplyRemark, |
| | | RefundTime = x.RefundTime, |
| | | ACOOLYOrderNo = x.ACOOLYOrderNo, |
| | | LifePayRefundStatus = x.LifePayRefundStatus, |
| | | ACOOLYStatus = x.ACOOLYStatus, |
| | | }) |
| | | .GetPageResult(input.PageModel); |
| | | } |
| | |
| | | var orderInput = new CreateLifePayOrderInput |
| | | { |
| | | OrderNo = channle.ChannlesNum + CreateOrderNo(), |
| | | LifePayOrderStatus = LifePayOrderStatusEnum.待确认, |
| | | LifePayOrderStatus = LifePayOrderStatusEnum.充值中, |
| | | LifePayOrderType = LifePayOrderTypeEnum.话费订单, |
| | | //LifePayType = input.LifePayType, |
| | | OrderParamDetailJsonStr = JsonConvert.SerializeObject(input.ProductData), |
| | |
| | | var orderInput = new CreateLifePayOrderInput |
| | | { |
| | | OrderNo = channle.ChannlesNum + CreateOrderNo(), |
| | | LifePayOrderStatus = LifePayOrderStatusEnum.待确认, |
| | | LifePayOrderStatus = LifePayOrderStatusEnum.充值中, |
| | | LifePayOrderType = LifePayOrderTypeEnum.电费订单, |
| | | // LifePayType = input.LifePayType, |
| | | OrderParamDetailJsonStr = JsonConvert.SerializeObject(input.ProductData), |
| | |
| | | var orderInput = new CreateLifePayOrderInput |
| | | { |
| | | OrderNo = channle.ChannlesNum + CreateOrderNo(), |
| | | LifePayOrderStatus = LifePayOrderStatusEnum.待确认, |
| | | LifePayOrderStatus = LifePayOrderStatusEnum.充值中, |
| | | LifePayOrderType = LifePayOrderTypeEnum.燃气订单, |
| | | // LifePayType = input.LifePayType, |
| | | OrderParamDetailJsonStr = JsonConvert.SerializeObject(input.ProductData), |
| | |
| | | } |
| | | |
| | | order.LifePayRefundStatus = LifePayRefundStatusEnum.无需退款; |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.待确认; |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.充值中; |
| | | //SetOrderStatus(order, result.Code); |
| | | order.OutRequestNo = result.RequestNo.IsNullOrEmpty() ? null : result.RequestNo; |
| | | order.ACOOLYOrderNo = result.ACOOLYOrderNo.IsNullOrEmpty() ? null : result.ACOOLYOrderNo; |
| | |
| | | catch (Exception ex) |
| | | { |
| | | _logger.LogError(ex, "处理生活缴费支付成功回调时异常"); |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.已失败; |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.待退款; |
| | | order.LifePayRefundStatus = LifePayRefundStatusEnum.待退款; |
| | | } |
| | | _logger.LogError("生活缴费订单状态:" + order.LifePayOrderStatus.ToString()); |
| | |
| | | var order = await _lifePayOrderRepository.Where(x => x.OrderNo == orderNo).FirstOrDefaultAsync(); |
| | | CheckExtensions.IfTrueThrowUserFriendlyException(order == null, "订单不存在"); |
| | | |
| | | if (order.LifePayOrderStatus == LifePayOrderStatusEnum.已完成) |
| | | { |
| | | return; |
| | | } |
| | | //if (order.LifePayOrderStatus == LifePayOrderStatusEnum.已完成) |
| | | //{ |
| | | // return; |
| | | //} |
| | | |
| | | order.PlatformDeductionAmount = payAmount; |
| | | if (acoolyOrderNo.IsNotNullOrEmpty()) |
| | |
| | | order.ACOOLYOrderNo = acoolyOrderNo; |
| | | } |
| | | |
| | | if (order.LifePayOrderStatus == LifePayOrderStatusEnum.已完成) |
| | | { |
| | | order.FinishTime = DateTime.Now; |
| | | } |
| | | |
| | | if (order.LifePayOrderStatus == LifePayOrderStatusEnum.已失败 && order.LifePayRefundStatus != LifePayRefundStatusEnum.已退款) |
| | | { |
| | | order.LifePayRefundStatus = LifePayRefundStatusEnum.待退款; |
| | | } |
| | | |
| | | order.LifePayOrderStatus = status; |
| | | order.ACOOLYStatus = acoolyStatus; |
| | |
| | | input.RefundPrice = order.PayAmount; |
| | | } |
| | | |
| | | if (order.LifePayOrderStatus != LifePayOrderStatusEnum.已失败 && order.PayStatus != LifePayStatusEnum.待退款 && order.LifePayOrderStatus != LifePayOrderStatusEnum.退款待审核) |
| | | if (order.LifePayOrderStatus != LifePayOrderStatusEnum.待退款 || order.PayStatus != LifePayStatusEnum.已支付 || order.LifePayRefundStatus != LifePayRefundStatusEnum.待退款) |
| | | { |
| | | throw new UserFriendlyException("当前订单状态无法退款"); |
| | | } |
| | |
| | | } |
| | | else |
| | | { |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.退款失败; |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.待退款; |
| | | order.LifePayRefundStatus = LifePayRefundStatusEnum.待退款; |
| | | } |
| | | |
| | |
| | | return; |
| | | } |
| | | |
| | | if (order.LifePayOrderStatus != LifePayOrderStatusEnum.待确认 && order.LifePayOrderStatus != LifePayOrderStatusEnum.已失败 |
| | | && order.PayStatus != LifePayStatusEnum.已支付) |
| | | if (order.PayStatus != LifePayStatusEnum.已支付 || order.LifePayOrderStatus != LifePayOrderStatusEnum.已完成) |
| | | { |
| | | throw new UserFriendlyException("当前订单状态无法申请退款"); |
| | | } |
| | | |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.退款待审核; |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.待退款; |
| | | order.RefundApplyRemark = input.RefundApplyRemark; |
| | | order.RefundApplyTime = DateTime.Now; |
| | | |
| | |
| | | return; |
| | | } |
| | | |
| | | if ((order.LifePayOrderStatus == LifePayOrderStatusEnum.已失败 && order.PayStatus == LifePayStatusEnum.待退款) || |
| | | order.LifePayOrderStatus == LifePayOrderStatusEnum.退款待审核 || order.LifePayOrderStatus == LifePayOrderStatusEnum.待确认) |
| | | if (order.LifePayOrderStatus == LifePayOrderStatusEnum.待退款) |
| | | { |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.退款失败; |
| | | if (order.ACOOLYStatus == ACOOLYStatusEnum.已完成 || order.ACOOLYStatus == ACOOLYStatusEnum.部分充值成功) |
| | | { |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.已完成; |
| | | } |
| | | else if (order.ACOOLYStatus == ACOOLYStatusEnum.充值失败) |
| | | { |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.退款失败; |
| | | } |
| | | |
| | | order.RefundCheckRemark = input.RefundCheckRemark; |
| | | order.RefundCheckUserId = CurrentUser.Id; |
| | | |
| | |
| | | order.FinishTime = DateTime.Now; |
| | | break; |
| | | case ACOOLYConstant.Code.PROCESSING: |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.待确认; |
| | | order.LifePayOrderStatus = LifePayOrderStatusEnum.充值中; |
| | | break; |
| | | default: |
| | | break; |