1
This commit is contained in:
@@ -20,21 +20,27 @@ namespace BLL
|
||||
var projects = Funs.DB.Base_Project.Where(p => p.ProjectState == BLL.Const.ProjectState_1).ToList();
|
||||
foreach (var project in projects)
|
||||
{
|
||||
// 检查管理人员到期未到岗情况
|
||||
var items1 = CheckHistoricalContinuousShortage(project.ProjectId);
|
||||
|
||||
// 检查作业人员人力偏差情况
|
||||
var items2 = CheckWorkerDeviation(project.ProjectId);
|
||||
|
||||
|
||||
if (items1 != null)
|
||||
// // 检查管理人员到期未到岗情况
|
||||
// var items1 = CheckHistoricalContinuousShortage(project.ProjectId);
|
||||
//
|
||||
// // 检查作业人员人力偏差情况
|
||||
// var items2 = CheckWorkerDeviation(project.ProjectId);
|
||||
//
|
||||
//
|
||||
// if (items1 != null)
|
||||
// {
|
||||
// allItems.AddRange(items1);
|
||||
// }
|
||||
//
|
||||
// if (items2 != null)
|
||||
// {
|
||||
// allItems.AddRange(items2);
|
||||
// }
|
||||
// 从预计算表获取预警数据
|
||||
var items = GetWarningItemsFromTable(project.ProjectId);
|
||||
if (items != null)
|
||||
{
|
||||
allItems.AddRange(items1);
|
||||
}
|
||||
|
||||
if (items2 != null)
|
||||
{
|
||||
allItems.AddRange(items2);
|
||||
allItems.AddRange(items);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -479,7 +485,7 @@ namespace BLL
|
||||
warningContent = $"{projectUnits.UnitName}单位计划投入人力{quantity}人,实际考勤为{num}人。";
|
||||
}
|
||||
|
||||
string urlParams = "JDGL/SGManPower/SGWarningDetails.aspx?projectId=" + projectId;
|
||||
string urlParams = "JDGL/SGManPower/SGWarningDetailsEdit.aspx?projectId=" + projectId;
|
||||
// 添加单位参数(如果已选择)
|
||||
if (!string.IsNullOrEmpty(unitId))
|
||||
{
|
||||
@@ -499,10 +505,15 @@ namespace BLL
|
||||
}
|
||||
|
||||
// 添加时间参数
|
||||
if (startDate.HasValue && endDate.HasValue)
|
||||
if (startDate.HasValue)
|
||||
{
|
||||
urlParams += "&planDate=" + string.Format("{0:yyyy-MM-dd}", startDate) + "~" +
|
||||
string.Format("{0:yyyy-MM-dd}", endDate);
|
||||
urlParams += "&startTime=" + string.Format("{0:yyyy-MM-dd}", startDate);
|
||||
}
|
||||
|
||||
// 添加时间参数
|
||||
if (endDate.HasValue)
|
||||
{
|
||||
urlParams += "&endTime=" + string.Format("{0:yyyy-MM-dd}", endDate);
|
||||
}
|
||||
|
||||
// 发送预警信息
|
||||
@@ -526,5 +537,46 @@ namespace BLL
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
private static IEnumerable<ToDoItem> GetWarningItemsFromTable(string projectId)
|
||||
{
|
||||
var strSql = @"SELECT * FROM SGManPower_WarningResult
|
||||
WHERE ProjectId = @ProjectId ";
|
||||
|
||||
var parameters = new List<System.Data.SqlClient.SqlParameter>
|
||||
{
|
||||
new System.Data.SqlClient.SqlParameter("@ProjectId", projectId)
|
||||
};
|
||||
|
||||
var dt = SQLHelper.GetDataTableRunText(strSql, parameters.ToArray());
|
||||
var warningItems = new List<ToDoItem>();
|
||||
|
||||
foreach (DataRow row in dt.Rows)
|
||||
{
|
||||
var warningType = row["WarningType"].ToString();
|
||||
var unitId = row["UnitId"].ToString();
|
||||
var workPostId = row["WorkPostId"].ToString();
|
||||
var unitWorkId = row["UnitWorkId"].ToString();
|
||||
var startDate = Convert.ToDateTime(row["StartDate"]);
|
||||
var endDate = Convert.ToDateTime(row["EndDate"]);
|
||||
var planQuantity = Convert.ToInt32(row["PlanQuantity"]);
|
||||
var actualQuantity = Convert.ToInt32(row["ActualQuantity"]);
|
||||
|
||||
if (warningType == "Shortage")
|
||||
{
|
||||
warningItems.AddRange(SendManagerWarning(unitId, projectId, workPostId, unitWorkId,
|
||||
startDate, endDate, planQuantity, actualQuantity));
|
||||
}
|
||||
else if (warningType == "Deviation")
|
||||
{
|
||||
warningItems.AddRange(SendWorkerDeviationWarning(unitId, projectId, workPostId, unitWorkId,
|
||||
startDate, endDate, planQuantity, actualQuantity));
|
||||
}
|
||||
}
|
||||
|
||||
return warningItems;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user