Commit 488e94a9 authored by tr's avatar tr

1、员工考核:日期边界修复(限定为每月1号,到最后一天)

parent c48cc7ce
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="UpdateTime" value="2021-09-11 17:38:34.417" />
<add key="UpdateTime" value="2021-09-16 14:24:34.777" />
</appSettings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/>
......
......@@ -111,10 +111,13 @@ namespace Tools.UI
Utils.Tip("请先选择月份!");
return;
}
//生成开始、结束日期
string startDate = this.tscbMonth.Text;
string endDate = Convert.ToDateTime(startDate).AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd"); //开始日期所在月份的最后一天
//考勤数据-分组
var dic = new Dictionary<string, List<DataRow>>();
var rows = this._ds.Tables[0].Select($"CreateDate > '{this.tscbMonth.Text}'");
var unionRows = this.UnionTaskDelayRows(rows, this.tscbMonth.Text);
var rows = this._ds.Tables[0].Select($"CreateDate >= '{startDate}' AND CreateDate <= '{endDate}'");
var unionRows = this.UnionTaskDelayRows(rows, startDate, endDate);
foreach (DataRow r in unionRows)
{
if (Utils.IsIllegalDataRow(r))
......@@ -207,13 +210,11 @@ namespace Tools.UI
/// <param name="rows">已有的数据行</param>
/// <param name="startDate">格式:yyyy-MM-01</param>
/// <returns></returns>
private List<DataRow> UnionTaskDelayRows(DataRow[] rows, string startDate)
private List<DataRow> UnionTaskDelayRows(DataRow[] rows, string startDate, string endDate)
{
List<DataRow> result = new List<DataRow>(rows);
try
{
//生成结束日期,开始日期所在月份的最后一天
string endDate = Convert.ToDateTime(startDate).AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd");
//取指定月份的延期任务,即最后一次待验收时间大于任务结束时间。延期天数作为减分值。
//为适配原数据格式,此处列名做了特殊处理。
string sql = $@"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment