运行日志调整提交
This commit is contained in:
@@ -37,18 +37,44 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
||||
public void PageBase()
|
||||
{
|
||||
//获取系统
|
||||
var syslist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId && x.PreRunLevel == 3).ToList();
|
||||
if (syslist.Count > 0)
|
||||
var alllist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId).ToList();
|
||||
if (alllist.Count > 0)
|
||||
{
|
||||
int i = 0;
|
||||
ListItem[] list = new ListItem[syslist.Count];
|
||||
foreach (var item in syslist)
|
||||
var engineeringModel = alllist.FirstOrDefault(x => x.PreRunLevel == 1 && x.PreRunName.Trim() == "公用工程");
|
||||
if (engineeringModel != null)
|
||||
{
|
||||
list[i] = new ListItem(item.PreRunName, item.PreRunId);
|
||||
i++;
|
||||
var engsyslist = alllist.Where(x => x.PreRunLevel == 3 && x.InstallationId == engineeringModel.PreRunId).ToList();
|
||||
if (engsyslist.Count > 0)
|
||||
{
|
||||
int i = 0;
|
||||
ListItem[] list = new ListItem[engsyslist.Count];
|
||||
foreach (var item in engsyslist)
|
||||
{
|
||||
list[i] = new ListItem(item.PreRunName, item.PreRunId);
|
||||
i++;
|
||||
}
|
||||
this.rdbEngineeringOperation.DataSource = list;
|
||||
this.rdbEngineeringOperation.DataBind();
|
||||
}
|
||||
}
|
||||
|
||||
var deviceModel = alllist.FirstOrDefault(x => x.PreRunLevel == 1 && x.PreRunName.Trim() == "工艺装置");
|
||||
if (deviceModel != null)
|
||||
{
|
||||
var devicesyslist = alllist.Where(x => x.PreRunLevel == 3 && x.InstallationId == deviceModel.PreRunId).ToList();
|
||||
if (devicesyslist.Count > 0)
|
||||
{
|
||||
int i = 0;
|
||||
ListItem[] list = new ListItem[devicesyslist.Count];
|
||||
foreach (var item in devicesyslist)
|
||||
{
|
||||
list[i] = new ListItem(item.PreRunName, item.PreRunId);
|
||||
i++;
|
||||
}
|
||||
this.rdbDeviceOption.DataSource = list;
|
||||
this.rdbDeviceOption.DataBind();
|
||||
}
|
||||
}
|
||||
this.rdbOperation.DataSource = list;
|
||||
this.rdbOperation.DataBind();
|
||||
}
|
||||
|
||||
//获取人员
|
||||
@@ -85,9 +111,18 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
||||
ddlSuccessionUser.SelectedValue = model.SuccessionUser;
|
||||
txtStartData.Text = model.StartData.Value.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
txtEndData.Text = model.EndData.Value.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
rdbOperation.SelectedValueArray = options.ToArray();
|
||||
txtHandoverCare.Text = model.HandoverCare;
|
||||
DataBrid();
|
||||
var dataInstall = alllist.FirstOrDefault(x => x.PreRunId == model.InstallationId);
|
||||
if (dataInstall.PreRunName == "公用工程")
|
||||
{
|
||||
rdbEngineeringOperation.SelectedValueArray = options.ToArray();
|
||||
EngineeringDataBrid();
|
||||
}
|
||||
if (dataInstall.PreRunName == "工艺装置")
|
||||
{
|
||||
rdbDeviceOption.SelectedValueArray = options.ToArray();
|
||||
DriveDataBrid();
|
||||
}
|
||||
gvOperationBrid();
|
||||
gvMaintenanceBrid();
|
||||
}
|
||||
@@ -98,17 +133,23 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 选择项
|
||||
/// 公用工程选择项
|
||||
/// </summary>
|
||||
protected void rdbOperation_SelectedIndexChanged(object sender, EventArgs e)
|
||||
protected void rdbEngineeringOperation_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
var syslist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId && x.PreRunLevel == 3).ToList();
|
||||
var rdbIdArr = rdbOperation.SelectedItemArray;
|
||||
var list = gvSystemOptionLs();
|
||||
var alllist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId).ToList();
|
||||
if (alllist.Count == 0) return;
|
||||
var engineeringModel = alllist.FirstOrDefault(x => x.PreRunLevel == 1 && x.PreRunName.Trim() == "公用工程");
|
||||
if (engineeringModel == null) return;
|
||||
var engsyslist = alllist.Where(x => x.PreRunLevel == 3 && x.InstallationId == engineeringModel.PreRunId).ToList();
|
||||
if (engsyslist.Count == 0) return;
|
||||
|
||||
var rdbIdArr = rdbEngineeringOperation.SelectedItemArray;
|
||||
var list = gvEngineeringSystemOptionLs();
|
||||
foreach (var item in rdbIdArr)
|
||||
{
|
||||
if (list.Count(x => x.SystemId == item.Value) > 0) continue;
|
||||
var itemsys = syslist.FirstOrDefault(x => x.PreRunId == item.Value);
|
||||
var itemsys = engsyslist.FirstOrDefault(x => x.PreRunId == item.Value);
|
||||
list.Add(new Running_LogManagementDto
|
||||
{
|
||||
RunningId = Guid.NewGuid().ToString(),
|
||||
@@ -123,8 +164,44 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
||||
AddTime = DateTime.Now,
|
||||
});
|
||||
}
|
||||
list.RemoveAll(r => !rdbOperation.SelectedValueArray.Contains(r.SystemId));
|
||||
DataBrid(list);
|
||||
list.RemoveAll(r => !rdbEngineeringOperation.SelectedValueArray.Contains(r.SystemId));
|
||||
EngineeringDataBrid(list);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 工艺装置选择项
|
||||
/// </summary>
|
||||
protected void rdbDeviceOption_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
var alllist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId).ToList();
|
||||
if (alllist.Count == 0) return;
|
||||
var deviceModel = alllist.FirstOrDefault(x => x.PreRunLevel == 1 && x.PreRunName.Trim() == "工艺装置");
|
||||
if (deviceModel == null) return;
|
||||
var drivesyslist = alllist.Where(x => x.PreRunLevel == 3 && x.InstallationId == deviceModel.PreRunId).ToList();
|
||||
if (drivesyslist.Count == 0) return;
|
||||
|
||||
var rdbIdArr = rdbDeviceOption.SelectedItemArray;
|
||||
var list = gvDeviceSystemOptionLs();
|
||||
foreach (var item in rdbIdArr)
|
||||
{
|
||||
if (list.Count(x => x.SystemId == item.Value) > 0) continue;
|
||||
var itemsys = drivesyslist.FirstOrDefault(x => x.PreRunId == item.Value);
|
||||
list.Add(new Running_LogManagementDto
|
||||
{
|
||||
RunningId = Guid.NewGuid().ToString(),
|
||||
ProjectId = this.CurrUser.LoginProjectId,
|
||||
InstallationId = itemsys.InstallationId,
|
||||
ProcessesId = itemsys.ProcessesId,
|
||||
SystemId = itemsys.SystemId,
|
||||
SystemName = itemsys.PreRunName,
|
||||
Situation = "",
|
||||
Remarks = "",
|
||||
AddUser = CurrUser.UserId,
|
||||
AddTime = DateTime.Now,
|
||||
});
|
||||
}
|
||||
list.RemoveAll(r => !rdbDeviceOption.SelectedValueArray.Contains(r.SystemId));
|
||||
DriveDataBrid(list);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -132,6 +209,7 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
||||
/// </summary>
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
List<Running_LogManagementDto> list = new List<Running_LogManagementDto>();
|
||||
if (string.IsNullOrWhiteSpace(ddlShiftUser.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择轮班职工!", MessageBoxIcon.Warning);
|
||||
@@ -142,10 +220,13 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
||||
ShowNotify("请选择继任职工!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var list = gvSystemOptionLs();
|
||||
var englist = gvEngineeringSystemOptionLs();
|
||||
if (englist.Count > 0) list.AddRange(englist);
|
||||
var devlist = gvDeviceSystemOptionLs();
|
||||
if (devlist.Count > 0) list.AddRange(devlist);
|
||||
if (list.Count == 0)
|
||||
{
|
||||
ShowNotify("请选择系统!", MessageBoxIcon.Warning);
|
||||
ShowNotify("请选择公用工程或工艺装置的系统!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
var optionlist = gvOperationLs();
|
||||
@@ -257,14 +338,21 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 日志管理绑定
|
||||
/// 公用工程日志管理绑定
|
||||
/// </summary>
|
||||
public void DataBrid(List<Running_LogManagementDto> list = null)
|
||||
public void EngineeringDataBrid(List<Running_LogManagementDto> list = null)
|
||||
{
|
||||
if (list == null) list = new List<Running_LogManagementDto>();
|
||||
var engineeringModel = Funs.DB.PreRun_SysDevice.FirstOrDefault(x => x.ProjectId == this.CurrUser.LoginProjectId && x.PreRunLevel == 1 && x.PreRunName.Trim() == "公用工程");
|
||||
if (engineeringModel == null)
|
||||
{
|
||||
gvEngineeringOption.DataSource = list;
|
||||
gvEngineeringOption.DataBind();
|
||||
return;
|
||||
}
|
||||
var query = from a in Funs.DB.Running_LogManagement
|
||||
join b in Funs.DB.PreRun_SysDevice on a.SystemId equals b.PreRunId
|
||||
where a.RunningId == this.RunningId
|
||||
where a.RunningId == this.RunningId && a.InstallationId == engineeringModel.PreRunId
|
||||
select new Running_LogManagementDto
|
||||
{
|
||||
RunningId = a.RunningId,
|
||||
@@ -288,17 +376,17 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
||||
|
||||
var data = query.ToList();
|
||||
if (data.Count > 0) list.AddRange(data);
|
||||
gvSystemOption.DataSource = list;
|
||||
gvSystemOption.DataBind();
|
||||
gvEngineeringOption.DataSource = list;
|
||||
gvEngineeringOption.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取绑定集合
|
||||
/// 获取公用工程绑定集合
|
||||
/// </summary>
|
||||
private List<Running_LogManagementDto> gvSystemOptionLs()
|
||||
private List<Running_LogManagementDto> gvEngineeringSystemOptionLs()
|
||||
{
|
||||
List<Running_LogManagementDto> massQuestionLs = new List<Running_LogManagementDto>();
|
||||
JArray mergedData = gvSystemOption.GetMergedData();
|
||||
JArray mergedData = gvEngineeringOption.GetMergedData();
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
string status = mergedRow.Value<string>("status");
|
||||
@@ -306,12 +394,84 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
||||
int i = mergedRow.Value<int>("index");
|
||||
massQuestionLs.Add(new Running_LogManagementDto
|
||||
{
|
||||
RunningId = this.gvSystemOption.Rows[i].DataKeys[0].ToString(),
|
||||
RunningId = this.gvEngineeringOption.Rows[i].DataKeys[0].ToString(),
|
||||
ProjectId = this.CurrUser.LoginProjectId,
|
||||
InstallationId = this.gvSystemOption.Rows[i].DataKeys[1].ToString(),
|
||||
ProcessesId = this.gvSystemOption.Rows[i].DataKeys[2].ToString(),
|
||||
SystemId = this.gvSystemOption.Rows[i].DataKeys[3].ToString(),
|
||||
SystemName = this.gvSystemOption.Rows[i].DataKeys[4].ToString(),
|
||||
InstallationId = this.gvEngineeringOption.Rows[i].DataKeys[1].ToString(),
|
||||
ProcessesId = this.gvEngineeringOption.Rows[i].DataKeys[2].ToString(),
|
||||
SystemId = this.gvEngineeringOption.Rows[i].DataKeys[3].ToString(),
|
||||
SystemName = this.gvEngineeringOption.Rows[i].DataKeys[4].ToString(),
|
||||
Situation = values.Value<string>("Situation"),
|
||||
Remarks = values.Value<string>("Remarks"),
|
||||
AddUser = CurrUser.UserId,
|
||||
AddTime = DateTime.Now,
|
||||
});
|
||||
}
|
||||
return massQuestionLs;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 工艺装置日志管理绑定
|
||||
/// </summary>
|
||||
public void DriveDataBrid(List<Running_LogManagementDto> list = null)
|
||||
{
|
||||
if (list == null) list = new List<Running_LogManagementDto>();
|
||||
var deviceModel = Funs.DB.PreRun_SysDevice.FirstOrDefault(x => x.ProjectId == this.CurrUser.LoginProjectId && x.PreRunLevel == 1 && x.PreRunName.Trim() == "工艺装置");
|
||||
if (deviceModel == null)
|
||||
{
|
||||
gvDeviceOption.DataSource = list;
|
||||
gvDeviceOption.DataBind();
|
||||
return;
|
||||
}
|
||||
var query = from a in Funs.DB.Running_LogManagement
|
||||
join b in Funs.DB.PreRun_SysDevice on a.SystemId equals b.PreRunId
|
||||
where a.RunningId == this.RunningId && a.InstallationId == deviceModel.PreRunId
|
||||
select new Running_LogManagementDto
|
||||
{
|
||||
RunningId = a.RunningId,
|
||||
ProjectId = a.ProjectId,
|
||||
InstallationId = a.InstallationId,
|
||||
ProcessesId = a.ProcessesId,
|
||||
SystemId = a.SystemId,
|
||||
SystemName = b.PreRunName,
|
||||
JobNo = a.JobNo,
|
||||
ShiftType = a.ShiftType,
|
||||
ShiftUser = a.ShiftUser,
|
||||
SuccessionUser = a.SuccessionUser,
|
||||
StartData = a.StartData,
|
||||
EndData = a.EndData,
|
||||
Situation = a.Situation,
|
||||
Remarks = a.Remarks,
|
||||
HandoverCare = a.HandoverCare,
|
||||
AddUser = a.AddUser,
|
||||
AddTime = a.AddTime
|
||||
};
|
||||
|
||||
var data = query.ToList();
|
||||
if (data.Count > 0) list.AddRange(data);
|
||||
gvDeviceOption.DataSource = list;
|
||||
gvDeviceOption.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取工艺装置绑定集合
|
||||
/// </summary>
|
||||
private List<Running_LogManagementDto> gvDeviceSystemOptionLs()
|
||||
{
|
||||
List<Running_LogManagementDto> massQuestionLs = new List<Running_LogManagementDto>();
|
||||
JArray mergedData = gvDeviceOption.GetMergedData();
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
string status = mergedRow.Value<string>("status");
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
massQuestionLs.Add(new Running_LogManagementDto
|
||||
{
|
||||
RunningId = this.gvDeviceOption.Rows[i].DataKeys[0].ToString(),
|
||||
ProjectId = this.CurrUser.LoginProjectId,
|
||||
InstallationId = this.gvDeviceOption.Rows[i].DataKeys[1].ToString(),
|
||||
ProcessesId = this.gvDeviceOption.Rows[i].DataKeys[2].ToString(),
|
||||
SystemId = this.gvDeviceOption.Rows[i].DataKeys[3].ToString(),
|
||||
SystemName = this.gvDeviceOption.Rows[i].DataKeys[4].ToString(),
|
||||
Situation = values.Value<string>("Situation"),
|
||||
Remarks = values.Value<string>("Remarks"),
|
||||
AddUser = CurrUser.UserId,
|
||||
|
||||
Reference in New Issue
Block a user