123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184 |
- using Fuel.Application.Authorization;
- using Fuel.Application.Service;
- using Fuel.Core.Nozzle.Dto;
- using Fuel.Core.Transactions.Dto;
- using FuelServer.Core.Entity;
- using Microsoft.AspNetCore.Authorization;
- using Microsoft.AspNetCore.Http;
- using Microsoft.AspNetCore.Mvc;
- namespace Fuel.PaymentServer.Controllers
- {
- [Route("api/[controller]")]
- [ApiController]
- //[Authorize]
- public class TransactionsController : ControllerBase
- {
- private readonly ITransactionsService _transactionsService;
- static NLog.Logger logger = NLog.LogManager.LoadConfiguration("nlog.xml").GetLogger("Main");
- public TransactionsController(ITransactionsService transactionsService)
- {
- _transactionsService = transactionsService;
- }
- /// <summary>
- /// 创建订单
- /// </summary>
- /// <param name="uploadTransactions"></param>
- /// <returns></returns>
- [Permission("Transactions:CreateTransactions:POST")]
- [Route("CreateTransactions")]
- [HttpPost]
- public async Task<IActionResult> CreateTransactionsAsync(UploadTransactions uploadTransactions)
- {
- var serviceResult = await _transactionsService.CreateTransactions(uploadTransactions);
- return Ok(serviceResult);
- }
- /// <summary>
- /// 查询订单
- /// </summary>
- /// <param name="input"></param>
- /// <returns></returns>
- [Permission("Transactions:GetTransactions:POST")]
- [Route("GetTransactions")]
- [HttpPost]
- public async Task<IActionResult> GetTransactionsAsync(RequestModel input)
- {
- var serviceResult = await _transactionsService.GetTransactionsAsync(input);
- return Ok(serviceResult);
- }
- /// <summary>
- /// 小程序用户查询未支付订单
- /// </summary>
- /// <param name="input"></param>
- /// <returns></returns>
- [Permission("Transactions:GetMiniProgramTransactionsUnpaidQuery:GET")]
- [Route("GetMiniProgramTransactionsUnpaidQuery")]
- [HttpGet]
- public async Task<IActionResult> GetMiniProgramTransactionsUnpaidAsync(TransactionsInput input)
- {
- var serviceResult = await _transactionsService.GetMiniProgramTransactionsUnpaidAsync(input);
- return Ok(serviceResult);
- }
- /// <summary>
- /// 小程序用户根据抢号查询未支付订单
- /// </summary>
- /// <param name="input"></param>
- /// <returns></returns>
- [Permission("Transactions:GetMiniProgramTransactionsUnpaidNozzle:GET")]
- [Route("GetMiniProgramTransactionsUnpaidNozzle")]
- [HttpGet]
- public async Task<IActionResult> GetMiniProgramTransactionsUnpaidNozzleAsync(long NozzleId)
- {
- var serviceResult = await _transactionsService.GetMiniProgramTransactionsUnpaidNozzleAsync(NozzleId);
- return Ok(serviceResult);
- }
- /// <summary>
- /// 小程序查询已支付订单
- /// </summary>
- /// <param name="input"></param>
- /// <returns></returns>
- [Permission("Transactions:GetMiniProgramTransactionsPaidQuery:GET")]
- [Route("GetMiniProgramTransactionsPaidQuery")]
- [HttpGet]
- public async Task<IActionResult> GetMiniProgramTransactionsPaidAsync(TransactionsInput input)
- {
- var serviceResult = await _transactionsService.GetMiniProgramTransactionsPaidAsync(input);
- return Ok(serviceResult);
- }
- /// <summary>
- /// 小程序查询历史订单
- /// </summary>
- /// <returns></returns>
- [Permission("Transactions:WXFindOrders:GET")]
- [Route("WXFindOrders")]
- [HttpGet]
- public async Task<IActionResult> WXFindOrders(DateTime? dateTime, int pageNum, int lineCount)
- {
- var serviceResult = await _transactionsService.WXFindOrders(dateTime, pageNum, lineCount);
- return Ok(serviceResult);
- }
- /// <summary>
- /// 提交支付
- /// </summary>
- /// <param name="trxId"></param>
- /// <param name="AuthCode"></param>
- /// <returns></returns>
- [Route("Payment")]
- [HttpPost]
- public async Task<IActionResult> CommitPayment(int trxId, string AuthCode)
- {
- var serviceResult = await _transactionsService.CommitPayment(trxId, AuthCode);
- return Ok(serviceResult);
- }
- /// <summary>
- /// 退款、退余额
- /// </summary>
- /// <param name="trxId">订单id</param>
- /// <param name="longitude">经度</param>
- /// <param name="latitude">纬度</param>
- /// <returns></returns>
- [Permission("Transactions:RefundTrx:POST")]
- [Route("RefundTrx")]
- [HttpPost]
- public async Task<IActionResult> RefundTrx(RefundTrxRequest refundTrx)
- {
- var serviceResult = await _transactionsService.RefundTrx(refundTrx.trxId, refundTrx.longitude, refundTrx.latitude);
- return Ok(serviceResult);
- }
- /// <summary>
- /// 核销
- /// </summary>
- /// <param name="trxId"></param>
- /// <param name="OriginalQty">实际加油升数</param>
- /// <returns></returns>
- [Route("Redeem")]
- [HttpPost]
- public async Task<IActionResult> Redeem(RedeemRequest redeemRequest)
- {
- var serviceResult = await _transactionsService.Redeem(redeemRequest.trxId, redeemRequest.OriginalQty);
- return Ok(serviceResult);
- }
- /// <summary>
- /// 统一下单
- /// </summary>
- /// <param name="trxid"></param>
- /// <returns></returns>
- [Permission("Transactions:UnifiedOrder:POST")]
- [Route("UnifiedOrder")]
- [HttpPost]
- public async Task<IActionResult> UnifiedOrder(int trxid)
- {
- try
- {
- var serviceResult = await _transactionsService.UnifiedOrder(trxid);
- logger.Debug("TransactionsController 成功" );
- return Ok(serviceResult);
- }
- catch (Exception ex)
- {
- logger.Debug("TransactionsController :" + ex.Message);
- return Ok(ex);
- }
- }
- /// <summary>
- /// 发送模板消息
- /// </summary>
- /// <param name="trxid"></param>
- /// <returns></returns>
- [Permission("Transactions:SendMessage:POST")]
- [Route("SendMessage")]
- [HttpPost]
- public async Task<IActionResult> SendMessage(WechatTemplateMessage wechatTemplateMessage)
- {
- await _transactionsService.SendMessage(wechatTemplateMessage.trxid, wechatTemplateMessage.orderType);
- return Ok();
- }
- }
- }
|