增加用户金额数据统计
This commit is contained in:
1 parent
51cd5f9388
commit
694d2cfdb2
3 files changed
+70
-7
No files matched your search
@@ -104,10 +104,21 @@ namespace KJD_Web.Controllers
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 用户结算流水
|
||||
/// 获取用户消费统计
|
||||
/// </summary>
|
||||
private void UserSettleFlows(string userName, string oemId)
|
||||
/// <param name="request"></param>
|
||||
/// <returns></returns>
|
||||
public IHttpActionResult GetUserAmountSummary(SignRequestBase request)
|
||||
{
|
||||
try
|
||||
{
|
||||
var data = _userService.GetUserAmountSummary(request.UserName);
|
||||
return Ok(ApiResult.Success(data));
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return Ok(ApiResult.Fail(ex.Message));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Web;
|
||||
using static FreeSql.Internal.GlobalFilter;
|
||||
|
||||
namespace KJD_Web.Services.Users
|
||||
{
|
||||
@@ -128,12 +129,12 @@ namespace KJD_Web.Services.Users
|
||||
decimal rebate_amount = 0m; // 正数部分(累计返利)
|
||||
DateTime now = DateTime.Now;
|
||||
|
||||
List<int> UserPaymentTypeFiltert = [20, 23, 26, 16, 31, 34];
|
||||
List<int> UserPaymentTypeFiltert = [16, 20, 23, 26, 31, 34];
|
||||
var paymentQuery = tr_freeSql.Select<UserPaymentRecordEntity>()
|
||||
.Where(a => userNames.Contains(a.UserName))
|
||||
.Where(a => UserPaymentTypeFiltert.Contains(a.Type))
|
||||
.Where(a => a.Settlement == 0)
|
||||
.Where(a => a.IsDeleted == 0);
|
||||
.Where(a => userNames.Contains(a.UserName))
|
||||
.Where(a => UserPaymentTypeFiltert.Contains(a.Type))
|
||||
.Where(a => a.Settlement == 0)
|
||||
.Where(a => a.IsDeleted == 0);
|
||||
//只有OEM结算才限制OEM创建时间。
|
||||
if (oemAddTime.HasValue)
|
||||
{
|
||||
@@ -240,5 +241,47 @@ namespace KJD_Web.Services.Users
|
||||
|
||||
return total_fen;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取用户金额统计
|
||||
/// </summary>
|
||||
/// <param name="userName"></param>
|
||||
|
||||
public UserAmountSummary GetUserAmountSummary(string userName)
|
||||
{
|
||||
UserAmountSummary summary = new UserAmountSummary();
|
||||
var user = GetUserByUserName(userName);
|
||||
if (user == null) throw new Exception("错误的用户");
|
||||
summary.RechargeTotal = (long)Math.Round((user.RechargeAmountTotal ?? 0) * 100m);
|
||||
summary.Balance = (long)Math.Round((user.Balance ?? 0) * 100m);
|
||||
List<int> types = new List<int> { 16, 20, 23, 24, 26, 31 };
|
||||
|
||||
|
||||
var data = _freeSql.Select<UserPaymentRecordEntity>()
|
||||
.Where(a => types.Contains(a.Type))
|
||||
.Where(a => a.UserName == userName)
|
||||
.ToList();
|
||||
decimal sum = data.Sum(r => r.Type == 23 ? -(r.Amount ?? 0) : r.Amount ?? 0);
|
||||
summary.ConsumeTotal = (long)Math.Round(sum * 100m);
|
||||
return summary;
|
||||
}
|
||||
}
|
||||
|
||||
public class UserAmountSummary
|
||||
{
|
||||
/// <summary>
|
||||
/// 充值总额
|
||||
/// </summary>
|
||||
public long RechargeTotal { get; set; }
|
||||
/// <summary>
|
||||
/// 消费总额
|
||||
/// </summary>
|
||||
public long ConsumeTotal { get; set; }
|
||||
/// <summary>
|
||||
/// 剩余余额
|
||||
/// </summary>
|
||||
public long Balance { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
using Autofac.Integration.WebApi;
|
||||
using KJD_Web;
|
||||
using KJD_Web.Services.Users;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
@@ -68,4 +69,12 @@ internal class UserTest
|
||||
Console.WriteLine(count);
|
||||
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void GetUserAmountSummate()
|
||||
{
|
||||
var userService = _container.Resolve<UserService>();
|
||||
var data = userService.GetUserAmountSummary("15395107196");
|
||||
Console.WriteLine(JsonConvert.SerializeObject(data));
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user