From c8db89cd26ffee2271959a67fcdebcc1d36e56c1 Mon Sep 17 00:00:00 2001
From: “wangming” <“wangming@antissoft.com”>
Date: Thu, 6 Nov 2025 16:53:14 +0800
Subject: [PATCH] 123
---
netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqDailyReport/StorePerformanceCompletionOutput.cs | 17 ++++++++++++++++-
netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackCrInput.cs | 6 ++++++
netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackInfoOutput.cs | 10 ++++++++++
netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackListOutput.cs | 10 ++++++++++
netcore/src/Modularity/Extend/NCC.Extend.Entitys/Entity/lq_xh_feedback/LqXhFeedbackEntity.cs | 12 ++++++++++++
netcore/src/Modularity/Extend/NCC.Extend/LqDailyReportService.cs | 33 +++++++++++++++++++++++++--------
netcore/src/Modularity/Extend/NCC.Extend/LqTkjlbService.cs | 2 +-
netcore/src/Modularity/Extend/NCC.Extend/LqXhFeedbackService.cs | 17 +++++++++++++++--
8 files changed, 95 insertions(+), 12 deletions(-)
diff --git a/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqDailyReport/StorePerformanceCompletionOutput.cs b/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqDailyReport/StorePerformanceCompletionOutput.cs
index 29b0936..fe5a691 100644
--- a/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqDailyReport/StorePerformanceCompletionOutput.cs
+++ b/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqDailyReport/StorePerformanceCompletionOutput.cs
@@ -24,7 +24,22 @@ namespace NCC.Extend.Entitys.Dto.LqDailyReport
public decimal TargetPerformance { get; set; }
///
- /// 完成业绩(开单业绩)
+ /// 开单业绩
+ ///
+ public decimal BillingPerformance { get; set; }
+
+ ///
+ /// 退款业绩(退卡业绩)
+ ///
+ public decimal RefundPerformance { get; set; }
+
+ ///
+ /// 实际业绩(开单业绩 - 退款业绩)
+ ///
+ public decimal ActualPerformance { get; set; }
+
+ ///
+ /// 完成业绩(实际业绩,用于兼容旧版本)
///
public decimal CompletedPerformance { get; set; }
diff --git a/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackCrInput.cs b/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackCrInput.cs
index 93ea5f6..34ef69a 100644
--- a/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackCrInput.cs
+++ b/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackCrInput.cs
@@ -32,5 +32,11 @@ namespace NCC.Extend.Entitys.Dto.LqXhFeedback
///
[Display(Name = "备注", Description = "反馈备注信息")]
public string Remark { get; set; }
+
+ ///
+ /// 科技部备注
+ ///
+ [Display(Name = "科技部备注", Description = "科技部备注信息")]
+ public string KjbRemark { get; set; }
}
}
diff --git a/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackInfoOutput.cs b/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackInfoOutput.cs
index a62ca01..875b28c 100644
--- a/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackInfoOutput.cs
+++ b/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackInfoOutput.cs
@@ -18,6 +18,11 @@ namespace NCC.Extend.Entitys.Dto.LqXhFeedback
public string consumeId { get; set; }
///
+ /// 会员ID
+ ///
+ public string memberId { get; set; }
+
+ ///
/// 前图片
///
public string beforeImage { get; set; }
@@ -33,6 +38,11 @@ namespace NCC.Extend.Entitys.Dto.LqXhFeedback
public string remark { get; set; }
///
+ /// 科技部备注
+ ///
+ public string kjbRemark { get; set; }
+
+ ///
/// 添加人ID
///
public string createUser { get; set; }
diff --git a/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackListOutput.cs b/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackListOutput.cs
index 71119d7..88a0717 100644
--- a/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackListOutput.cs
+++ b/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhFeedback/LqXhFeedbackListOutput.cs
@@ -18,6 +18,11 @@ namespace NCC.Extend.Entitys.Dto.LqXhFeedback
public string consumeId { get; set; }
///
+ /// 会员ID
+ ///
+ public string memberId { get; set; }
+
+ ///
/// 前图片
///
public string beforeImage { get; set; }
@@ -33,6 +38,11 @@ namespace NCC.Extend.Entitys.Dto.LqXhFeedback
public string remark { get; set; }
///
+ /// 科技部备注
+ ///
+ public string kjbRemark { get; set; }
+
+ ///
/// 添加人ID
///
public string createUser { get; set; }
diff --git a/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Entity/lq_xh_feedback/LqXhFeedbackEntity.cs b/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Entity/lq_xh_feedback/LqXhFeedbackEntity.cs
index 3758096..9136c0e 100644
--- a/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Entity/lq_xh_feedback/LqXhFeedbackEntity.cs
+++ b/netcore/src/Modularity/Extend/NCC.Extend.Entitys/Entity/lq_xh_feedback/LqXhFeedbackEntity.cs
@@ -24,6 +24,12 @@ namespace NCC.Extend.Entitys.lq_xh_feedback
public string ConsumeId { get; set; }
///
+ /// 会员ID
+ ///
+ [SugarColumn(ColumnName = "F_MemberId")]
+ public string MemberId { get; set; }
+
+ ///
/// 前图片
///
[SugarColumn(ColumnName = "F_BeforeImage")]
@@ -42,6 +48,12 @@ namespace NCC.Extend.Entitys.lq_xh_feedback
public string Remark { get; set; }
///
+ /// 科技部备注
+ ///
+ [SugarColumn(ColumnName = "F_KjbRemark")]
+ public string KjbRemark { get; set; }
+
+ ///
/// 添加人ID
///
[SugarColumn(ColumnName = "F_CreateUser")]
diff --git a/netcore/src/Modularity/Extend/NCC.Extend/LqDailyReportService.cs b/netcore/src/Modularity/Extend/NCC.Extend/LqDailyReportService.cs
index 13d618e..e525506 100644
--- a/netcore/src/Modularity/Extend/NCC.Extend/LqDailyReportService.cs
+++ b/netcore/src/Modularity/Extend/NCC.Extend/LqDailyReportService.cs
@@ -192,8 +192,11 @@ namespace NCC.Extend
/// - StoreId: 门店ID
/// - StoreName: 门店名称
/// - TargetPerformance: 目标业绩(生命线,来自门店信息表)
- /// - CompletedPerformance: 完成业绩(当月1号至统计日期的开单业绩总和)
- /// - CompletionRate: 完成率(百分比,CompletedPerformance / TargetPerformance * 100)
+ /// - BillingPerformance: 开单业绩(开单业绩总和)
+ /// - RefundPerformance: 退款业绩(退卡业绩总和)
+ /// - ActualPerformance: 实际业绩(开单业绩 - 退款业绩)
+ /// - CompletedPerformance: 完成业绩(实际业绩,用于兼容旧版本)
+ /// - CompletionRate: 完成率(百分比,ActualPerformance / TargetPerformance * 100)
///
/// 查询参数
/// 门店业绩完成情况列表
@@ -222,7 +225,7 @@ namespace NCC.Extend
store.dm as StoreName,
-- 目标业绩(生命线)
COALESCE(store.xsyj, 0) as TargetPerformance,
- -- 完成业绩(开单业绩总和)
+ -- 开单业绩总和
COALESCE((
SELECT SUM(billing.sfyj)
FROM lq_kd_kdjlb billing
@@ -230,25 +233,39 @@ namespace NCC.Extend
AND billing.F_IsEffective = 1
AND DATE(billing.kdrq) >= '{startDate:yyyy-MM-dd}'
AND DATE(billing.kdrq) <= '{endDate:yyyy-MM-dd}'
- ), 0) as CompletedPerformance
+ ), 0) as BillingPerformance,
+ -- 退款业绩总和(退卡业绩)
+ COALESCE((
+ SELECT SUM(refund.tkje)
+ FROM lq_hytk_hytk refund
+ WHERE refund.md = store.F_Id
+ AND refund.F_IsEffective = 1
+ AND DATE(refund.tksj) >= '{startDate:yyyy-MM-dd}'
+ AND DATE(refund.tksj) <= '{endDate:yyyy-MM-dd}'
+ ), 0) as RefundPerformance
FROM lq_mdxx store
WHERE 1=1 {storeFilter}
- ORDER BY CompletedPerformance DESC";
+ ORDER BY (BillingPerformance - RefundPerformance) DESC";
var result = await _db.Ado.SqlQueryAsync(sql);
var outputList = result.Select(item =>
{
var targetPerformance = Convert.ToDecimal(item.TargetPerformance);
- var completedPerformance = Convert.ToDecimal(item.CompletedPerformance);
- var completionRate = targetPerformance > 0 ? (completedPerformance / targetPerformance * 100m) : 0m;
+ var billingPerformance = Convert.ToDecimal(item.BillingPerformance);
+ var refundPerformance = Convert.ToDecimal(item.RefundPerformance);
+ var actualPerformance = billingPerformance - refundPerformance;
+ var completionRate = targetPerformance > 0 ? (actualPerformance / targetPerformance * 100m) : 0m;
return new StorePerformanceCompletionOutput
{
StoreId = item.StoreId,
StoreName = item.StoreName,
TargetPerformance = targetPerformance,
- CompletedPerformance = completedPerformance,
+ BillingPerformance = billingPerformance,
+ RefundPerformance = refundPerformance,
+ ActualPerformance = actualPerformance,
+ CompletedPerformance = actualPerformance, // 保持兼容性
CompletionRate = decimal.Round(completionRate, 2)
};
}).ToList();
diff --git a/netcore/src/Modularity/Extend/NCC.Extend/LqTkjlbService.cs b/netcore/src/Modularity/Extend/NCC.Extend/LqTkjlbService.cs
index baa800e..bdf54a4 100644
--- a/netcore/src/Modularity/Extend/NCC.Extend/LqTkjlbService.cs
+++ b/netcore/src/Modularity/Extend/NCC.Extend/LqTkjlbService.cs
@@ -238,7 +238,7 @@ namespace NCC.Extend.LqTkjlb
Pxjg = 0,
Yjsj = DateTime.Now,
MemberId = MemberId,
- ProjectNumber = 0,
+ ProjectNumber = 1,
IsEnabled = StatusEnum.有效.GetHashCode(),
SourceType = "体验",
TotalPrice = 0,
diff --git a/netcore/src/Modularity/Extend/NCC.Extend/LqXhFeedbackService.cs b/netcore/src/Modularity/Extend/NCC.Extend/LqXhFeedbackService.cs
index 282ae44..e3681fb 100644
--- a/netcore/src/Modularity/Extend/NCC.Extend/LqXhFeedbackService.cs
+++ b/netcore/src/Modularity/Extend/NCC.Extend/LqXhFeedbackService.cs
@@ -92,17 +92,21 @@ namespace NCC.Extend
/// ```json
/// {
/// "consumeId": "耗卡记录ID",
+ /// "memberId": "会员ID",
/// "beforeImage": "前图片路径或Base64",
/// "afterImage": "后图片路径或Base64",
- /// "remark": "反馈备注"
+ /// "remark": "反馈备注",
+ /// "kjbRemark": "科技部备注"
/// }
/// ```
///
/// 参数说明:
/// - consumeId: 耗卡记录ID(必填)
+ /// - memberId: 会员ID(可选)
/// - beforeImage: 前图片(可选)
/// - afterImage: 后图片(可选)
/// - remark: 反馈备注(可选)
+ /// - kjbRemark: 科技部备注(可选)
///
/// 创建参数
/// 创建的耗卡反馈记录
@@ -125,6 +129,7 @@ namespace NCC.Extend
entity.CreateUser = _userManager.UserId;
entity.CreateTime = DateTime.Now;
entity.UpdateTime = DateTime.Now;
+ entity.MemberId = consumeRecord.Hy;
await _db.Insertable(entity).ExecuteCommandAsync();
return entity.Adapt();
}
@@ -147,18 +152,22 @@ namespace NCC.Extend
/// {
/// "id": "反馈记录ID",
/// "consumeId": "耗卡记录ID",
+ /// "memberId": "会员ID",
/// "beforeImage": "前图片路径或Base64",
/// "afterImage": "后图片路径或Base64",
- /// "remark": "反馈备注"
+ /// "remark": "反馈备注",
+ /// "kjbRemark": "科技部备注"
/// }
/// ```
///
/// 参数说明:
/// - id: 反馈记录ID(必填)
/// - consumeId: 耗卡记录ID(必填)
+ /// - memberId: 会员ID(可选)
/// - beforeImage: 前图片(可选)
/// - afterImage: 后图片(可选)
/// - remark: 反馈备注(可选)
+ /// - kjbRemark: 科技部备注(可选)
///
/// 更新参数
/// 更新后的耗卡反馈记录
@@ -187,7 +196,9 @@ namespace NCC.Extend
entity.BeforeImage = input.BeforeImage;
entity.AfterImage = input.AfterImage;
entity.Remark = input.Remark;
+ entity.KjbRemark = input.KjbRemark;
entity.UpdateTime = DateTime.Now;
+ entity.MemberId = consumeRecord.Hy;
await _db.Updateable(entity).ExecuteCommandAsync();
return entity.Adapt();
}
@@ -272,9 +283,11 @@ namespace NCC.Extend
{
id = it.Id,
consumeId = it.ConsumeId,
+ memberId = it.MemberId,
beforeImage = it.BeforeImage,
afterImage = it.AfterImage,
remark = it.Remark,
+ kjbRemark = it.KjbRemark,
createUser = it.CreateUser,
createUserName = SqlFunc.Subqueryable().Where(x => x.Id == it.CreateUser).Select(x => x.RealName),
createTime = it.CreateTime,
--
libgit2 0.21.4