|
@@ -2265,6 +2265,7 @@ namespace OASystem.API.Controllers
|
|
//应收、已收、收款退还、余款 都为零 且 团组费用有值时 变色
|
|
//应收、已收、收款退还、余款 都为零 且 团组费用有值时 变色
|
|
if (sum_fr <= 0m && (sum_fr + sum_extra) <= 0m && sum_refund <= 0m && ((sum_fr + sum_extra) - (sum_pr - sum_refund)) <= 0m)
|
|
if (sum_fr <= 0m && (sum_fr + sum_extra) <= 0m && sum_refund <= 0m && ((sum_fr + sum_extra) - (sum_pr - sum_refund)) <= 0m)
|
|
{
|
|
{
|
|
|
|
+ item_rst.isChangeColorRed = true;
|
|
string sql = @"
|
|
string sql = @"
|
|
SELECT
|
|
SELECT
|
|
di.id,
|
|
di.id,
|
|
@@ -2290,14 +2291,34 @@ namespace OASystem.API.Controllers
|
|
AND di.IsDel = 0
|
|
AND di.IsDel = 0
|
|
AND di.id = @GroupId";
|
|
AND di.id = @GroupId";
|
|
|
|
|
|
-
|
|
|
|
- var datas = await _sqlSugar.SqlQueryable<SyntheticalReceivableFeeDetailsView>(sql)
|
|
|
|
- .AddParameters(new { GroupId = diId })
|
|
|
|
- .ToListAsync();
|
|
|
|
- decimal totalCost = datas.Sum(s => s.CNYMoeny);
|
|
|
|
|
|
+ var datas = await _sqlSugar.SqlQueryable<SyntheticalReceivableFeeDetailsView>(sql)
|
|
|
|
+ .AddParameters(new { GroupId = diId })
|
|
|
|
+ .ToListAsync();
|
|
|
|
+ decimal totalCost = datas.Sum(s => s.CNYMoeny);
|
|
if (totalCost > 0m)
|
|
if (totalCost > 0m)
|
|
{
|
|
{
|
|
|
|
+ // 分组统计并排序
|
|
|
|
+ var feeDatas1 = datas
|
|
|
|
+ .GroupBy(g => new { g.CTable, g.ModouleName })
|
|
|
|
+ .Select(s => new SyntheticalReceivableFeeDetailsView
|
|
|
|
+ {
|
|
|
|
+ ModouleName = s.Key.ModouleName ?? "未知模块",
|
|
|
|
+ CTable = s.Key.CTable,
|
|
|
|
+ CNYMoeny = s.Sum(ss => ss.CNYMoeny)
|
|
|
|
+ })
|
|
|
|
+ .OrderBy(x => x.CTable)
|
|
|
|
+ .ToList();
|
|
|
|
+
|
|
|
|
+ // 构建结果字符串
|
|
|
|
+ var feeLabel = new StringBuilder();
|
|
|
|
+ foreach (var item in feeDatas1)
|
|
|
|
+ {
|
|
|
|
+ feeLabel.AppendLine(); // 空行
|
|
|
|
+ feeLabel.AppendLine($"{item.ModouleName} :{item.CNYMoeny:#,##0.00} CNY");
|
|
|
|
+ }
|
|
|
|
+
|
|
item_rst.isChangeColor = true;
|
|
item_rst.isChangeColor = true;
|
|
|
|
+ item_rst.ChangeColorLabel = feeLabel.ToString();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -2353,10 +2374,8 @@ namespace OASystem.API.Controllers
|
|
if (feeDatas.Count < 1)
|
|
if (feeDatas.Count < 1)
|
|
{
|
|
{
|
|
feeDatas.Add(new ClientFeeInfoView() { });
|
|
feeDatas.Add(new ClientFeeInfoView() { });
|
|
-
|
|
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
item_rst.feeItem = feeDatas;
|
|
item_rst.feeItem = feeDatas;
|
|
#endregion
|
|
#endregion
|
|
}
|
|
}
|
|
@@ -2371,7 +2390,7 @@ namespace OASystem.API.Controllers
|
|
{
|
|
{
|
|
return Ok(JsonView(true, "请求成功", result, list_rst.Count));
|
|
return Ok(JsonView(true, "请求成功", result, list_rst.Count));
|
|
}
|
|
}
|
|
- else
|
|
|
|
|
|
+ else if (dto.requestType == 2)
|
|
{
|
|
{
|
|
//----------------------------
|
|
//----------------------------
|
|
var list_Ex = new List<Excel_SyntheticalReceivableByDateRange>();
|
|
var list_Ex = new List<Excel_SyntheticalReceivableByDateRange>();
|
|
@@ -2432,6 +2451,65 @@ namespace OASystem.API.Controllers
|
|
return Ok(JsonView(true, "成功", new { url = rst }));
|
|
return Ok(JsonView(true, "成功", new { url = rst }));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ else if (dto.requestType == 3)
|
|
|
|
+ {
|
|
|
|
+ //----------------------------
|
|
|
|
+ var list_Ex_Orange = new List<Excel_SyntheticalReceivableByDateRange>();
|
|
|
|
+ var list_Ex_Red = new List<Excel_SyntheticalReceivableByDateRange>();
|
|
|
|
+ var designer = new WorkbookDesigner()
|
|
|
|
+ {
|
|
|
|
+ Workbook = new Workbook(AppSettingsHelper.Get("ExcelBasePath") + "Template/应收款项模板1.xls")
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ //只查询标注橙色的数据
|
|
|
|
+ var list_rst_orange = list_rst.Where(x => x.isChangeColor).ToList();
|
|
|
|
+ var list_rst_red = list_rst.Where(x => x.isChangeColorRed).ToList();
|
|
|
|
+ int excNo1 = 1, excNo2 = 1;
|
|
|
|
+ foreach (var item in list_rst_orange)
|
|
|
|
+ {
|
|
|
|
+ var exc = new Excel_SyntheticalReceivableByDateRange
|
|
|
|
+ {
|
|
|
|
+ No = excNo1.ToString(),
|
|
|
|
+ TeamName = item.teamName,
|
|
|
|
+ ClientUnit = item.clientUnit,
|
|
|
|
+ VisitDate = item.visitDate,
|
|
|
|
+ ChangeColorLabel = item.ChangeColorLabel,
|
|
|
|
+ };
|
|
|
|
+ excNo1++;
|
|
|
|
+ list_Ex_Orange.Add(exc);
|
|
|
|
+ }
|
|
|
|
+ foreach (var item in list_rst_red)
|
|
|
|
+ {
|
|
|
|
+ var exc = new Excel_SyntheticalReceivableByDateRange
|
|
|
|
+ {
|
|
|
|
+ No = excNo2.ToString(),
|
|
|
|
+ TeamName = item.teamName,
|
|
|
|
+ ClientUnit = item.clientUnit,
|
|
|
|
+ VisitDate = item.visitDate,
|
|
|
|
+ ChangeColorLabel = item.ChangeColorLabel,
|
|
|
|
+ };
|
|
|
|
+ excNo2++;
|
|
|
|
+ list_Ex_Red.Add(exc);
|
|
|
|
+ }
|
|
|
|
+ var dt_orange = CommonFun.GetDataTableFromIList(list_Ex_Orange);
|
|
|
|
+ dt_orange.TableName = "DataSource1";
|
|
|
|
+ var dt_red = CommonFun.GetDataTableFromIList(list_Ex_Red);
|
|
|
|
+ dt_red.TableName = "DataSource2";
|
|
|
|
+ if (dt_orange != null || dt_red != null)
|
|
|
|
+ {
|
|
|
|
+ //数据源
|
|
|
|
+ designer.SetDataSource(dt_orange);
|
|
|
|
+ designer.SetDataSource(dt_red);
|
|
|
|
+
|
|
|
|
+ //根据数据源处理生成报表内容
|
|
|
|
+ designer.Process();
|
|
|
|
+
|
|
|
|
+ string fileName = $"Receivable/应收款项{dto.beginDt}~{dto.endDt})_标注团组{Guid.NewGuid():N}.xlsx";
|
|
|
|
+ designer.Workbook.Save(AppSettingsHelper.Get("ExcelBasePath") + fileName);
|
|
|
|
+ string rst = AppSettingsHelper.Get("ExcelBaseUrl") + AppSettingsHelper.Get("ExcelFtpPath") + fileName;
|
|
|
|
+ return Ok(JsonView(true, "成功", new { url = rst }));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
return Ok(JsonView(true, "暂无数据", result, list_rst.Count));
|
|
return Ok(JsonView(true, "暂无数据", result, list_rst.Count));
|