From a1aee2395ab6bba5ae68a65f79e98852c4c82938 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9C=B1=E6=96=8C?= <1324361213@qq.com>
Date: Thu, 7 Aug 2025 22:11:39 +0800
Subject: [PATCH] 0
---
ScheduleService/SaleOrderReceiveAmount.cs | 44 ++++++++++++++---------
T_IV_SALESIC/ServicePlugIn/Submit.cs | 9 +----
2 files changed, 28 insertions(+), 25 deletions(-)
diff --git a/ScheduleService/SaleOrderReceiveAmount.cs b/ScheduleService/SaleOrderReceiveAmount.cs
index f21eb63..20736b4 100644
--- a/ScheduleService/SaleOrderReceiveAmount.cs
+++ b/ScheduleService/SaleOrderReceiveAmount.cs
@@ -24,7 +24,7 @@ namespace GZ_LTHPilot_ORDER.ScheduleService
///
/// 查询周期单位:月
///
- int Cycle = 6;
+ int Cycle = 12;
public void Run(Context ctx, Schedule schedule)
{
TempTableService tempTableService = new TempTableService(ctx);
@@ -35,6 +35,29 @@ namespace GZ_LTHPilot_ORDER.ScheduleService
CreateTempTable(ctx, tableName);
var advanceAays = GetAdvanceAays(schedule);
var planStartDate = DateTime.Now;
+ Dictionary orgDict = new Dictionary();
+ var orgIdList = orgList.Where(n => n["FORGID"].ToString() != "100302").ToList();
+ orgIdList.ForEach(n => orgDict.Add(n["FNAME"].ToString(), n["FORGID"].ToString()));
+ var saleOrgIds = string.Join(",", orgDict.Values);
+
+
+
+ // 循环查询销售订单执行明细表,每次查询一个月的数据, 将数据插入自定义临时表中
+ var startDate = planStartDate.AddDays(-advanceAays);
+ var endDate = startDate.AddMonths(Cycle);
+
+ // 如果开始时间大于计划开始时间,说明结束了
+ while (startDate <= planStartDate.AddMonths(1))
+ {
+ var receiveAmountList = saleOrderService.GetSaleOrderReceiveAmountByDate(saleOrgIds, startDate, endDate);
+ if (receiveAmountList.Count > 0)
+ {
+ InsertDataToTempTable(ctx, tableName, orgDict, receiveAmountList);
+
+ }
+ startDate = startDate.AddMonths(Cycle);
+ endDate = startDate.AddMonths(Cycle);
+ }
foreach (var item in orgList)
{
// 获取组织Id
@@ -43,21 +66,8 @@ namespace GZ_LTHPilot_ORDER.ScheduleService
{
continue;
}
- // 循环查询销售订单执行明细表,每次查询一个月的数据, 将数据插入自定义临时表中
- var startDate = planStartDate.AddDays(-advanceAays);
- var endDate = startDate.AddMonths(Cycle);
- // 如果开始时间大于计划开始时间,说明结束了
- while (startDate <= planStartDate)
- {
- var receiveAmountList = saleOrderService.GetSaleOrderReceiveAmountByDate(orgId, startDate, endDate);
- if (receiveAmountList.Count > 0)
- {
- InsertDataToTempTable(ctx, tableName, orgId, receiveAmountList);
- }
- startDate = startDate.AddMonths(Cycle);
- endDate = startDate.AddMonths(Cycle);
- }
+
}
UpdateSaleOrderReceiveAmount(ctx, tableName);
tempTableService.DropTempTable(tableName);
@@ -94,9 +104,9 @@ FROM
///
///
///
- private int InsertDataToTempTable(Context ctx, string tableName, string orgId, List saleExecuteOuts)
+ private int InsertDataToTempTable(Context ctx, string tableName, Dictionary orgDict, List saleExecuteOuts)
{
- var values = saleExecuteOuts.Select(n => $"({orgId},'{n.FSALEORGNAME}','{n.FBILLNO}',{n.FALLMATCHAMOUNT},'{n.FDate}')").ToList();
+ var values = saleExecuteOuts.Select(n => $"({orgDict[n.FSALEORGNAME]},'{n.FSALEORGNAME}','{n.FBILLNO}',{n.FALLMATCHAMOUNT},'{n.FDate}')").ToList();
var index = 0;
var line = 0;
var pageSize = 100;
diff --git a/T_IV_SALESIC/ServicePlugIn/Submit.cs b/T_IV_SALESIC/ServicePlugIn/Submit.cs
index eb5e470..8e68bdf 100644
--- a/T_IV_SALESIC/ServicePlugIn/Submit.cs
+++ b/T_IV_SALESIC/ServicePlugIn/Submit.cs
@@ -80,14 +80,7 @@ namespace GZ_LTHPilot_ORDER.T_IV_SALESIC.ServicePlugIn
PKValue = "1",
Name = "检查开票金额是否超额",
MessageType = MessageType.FatalError,
- Message = string.Format($@"
-销售订单:'{saleOrderNo}' , 纸质合同号:'{contractNo}', 开票超额,
-不满足条件:销售订单价税合计 >= 累计开票金额 + 本次开票金额 - 退货金额。
-销售订单价税合计:{saleOrderAmount.ToString("0.00")},
-累计开票金额:{saleOrderINVOICEAMOUNT.ToString("0.00")},
-本次开票金额:{SumALLAMOUNTFOR.ToString("0.00")},
-退货金额:{saleOrderReturnAmountK3Cloud.ToString("0.00")},
-K3退货金额:{saleOrderReturnAmountK3.ToString("0.00")}
+ Message = string.Format($@"销售订单:'{saleOrderNo}' , 纸质合同号:'{contractNo}', 开票超额。 不满足条件:销售订单价税合计 >= 累计开票金额 + 本次开票金额 - 退货金额。销售订单价税合计:{saleOrderAmount.ToString("0.00")}, 累计开票金额:{saleOrderINVOICEAMOUNT.ToString("0.00")},本次开票金额:{SumALLAMOUNTFOR.ToString("0.00")},退货金额:{saleOrderReturnAmountK3Cloud.ToString("0.00")},K3退货金额:{saleOrderReturnAmountK3.ToString("0.00")}
"),
SuccessStatus = false