运行日志调整提交
This commit is contained in:
parent
02ee4be036
commit
9a7c5aae14
|
@ -62,21 +62,21 @@
|
|||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:CheckBoxList ID="rdbOperation" AutoPostBack="true" OnSelectedIndexChanged="rdbOperation_SelectedIndexChanged" DataTextField="Text" DataValueField="Value"
|
||||
Label="系统选项" ColumnNumber="3" runat="server" ShowRedStar="true" Required="true" DisplayType="Switch" SwitchTextVisible="true">
|
||||
</f:CheckBoxList>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:ContentPanel ID="ContentPanel4" Title="系统项" ShowBorder="true" BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
<f:ContentPanel ID="ContentPanel4" Title="装置运行情况" ShowBorder="true" BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
runat="server">
|
||||
<f:Form ID="Form5" ShowBorder="false" ShowHeader="false" AutoScroll="true"
|
||||
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Grid ID="gvSystemOption" ShowBorder="true" ShowHeader="false" runat="server" Height="400px"
|
||||
<f:CheckBoxList ID="rdbEngineeringOperation" AutoPostBack="true" OnSelectedIndexChanged="rdbEngineeringOperation_SelectedIndexChanged" DataTextField="Text" DataValueField="Value"
|
||||
Label="公用工程" ColumnNumber="3" runat="server" DisplayType="Switch" SwitchTextVisible="true">
|
||||
</f:CheckBoxList>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Grid ID="gvEngineeringOption" ShowBorder="true" ShowHeader="false" runat="server" Height="300px"
|
||||
AllowCellEditing="true" ClicksToEdit="1" DataIDField="RunningId" ForceFit="true"
|
||||
DataKeyNames="RunningId,InstallationId,ProcessesId,SystemId,SystemName" EnableMultiSelect="false" ShowGridHeader="true"
|
||||
EnableColumnLines="true">
|
||||
|
@ -102,12 +102,48 @@
|
|||
</f:Grid>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:CheckBoxList ID="rdbDeviceOption" AutoPostBack="true" OnSelectedIndexChanged="rdbDeviceOption_SelectedIndexChanged" DataTextField="Text" DataValueField="Value"
|
||||
Label="工艺装置" ColumnNumber="3" runat="server" DisplayType="Switch" SwitchTextVisible="true">
|
||||
</f:CheckBoxList>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:Grid ID="gvDeviceOption" ShowBorder="true" ShowHeader="false" runat="server" Height="300px"
|
||||
AllowCellEditing="true" ClicksToEdit="1" DataIDField="RunningId" ForceFit="true"
|
||||
DataKeyNames="RunningId,InstallationId,ProcessesId,SystemId,SystemName" EnableMultiSelect="false" ShowGridHeader="true"
|
||||
EnableColumnLines="true">
|
||||
<Columns>
|
||||
<f:RowNumberField EnablePagingNumber="true" HeaderText="序号" Width="50px" HeaderTextAlign="Center"
|
||||
TextAlign="Center" />
|
||||
<f:RenderField Width="150px" ColumnID="SystemName" DataField="SystemName" HeaderText="系统名称"
|
||||
HeaderTextAlign="Center" TextAlign="Left">
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="300px" ColumnID="Situation" DataField="Situation" FieldType="String"
|
||||
HeaderText="运行情况" HeaderTextAlign="Center" TextAlign="Left">
|
||||
<Editor>
|
||||
<f:TextArea runat="server" ID="TextArea1"></f:TextArea>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:RenderField Width="300px" ColumnID="Remarks" DataField="Remarks" FieldType="String"
|
||||
HeaderText="备注" HeaderTextAlign="Center" TextAlign="Left">
|
||||
<Editor>
|
||||
<f:TextArea runat="server" ID="TextArea2"></f:TextArea>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
</Columns>
|
||||
</f:Grid>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
|
||||
</Rows>
|
||||
</f:Form>
|
||||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:ContentPanel ID="ContentPanel5" Title="交班注意" ShowBorder="true" BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
|
@ -126,7 +162,6 @@
|
|||
</f:ContentPanel>
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:ContentPanel ID="ContentPanel1" Title="操作问题" ShowBorder="true" BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
|
||||
|
@ -240,9 +275,9 @@
|
|||
|
||||
//验证检查结果
|
||||
function isValid() {
|
||||
var gvOption = F('<%= gvSystemOption.ClientID %>');
|
||||
var valid = true, modifiedData = gvOption.getMergedData();
|
||||
|
||||
//公用工程
|
||||
var gvEngOption = F('<%= gvEngineeringOption.ClientID %>');
|
||||
var valid = true, modifiedData = gvEngOption.getMergedData();
|
||||
$.each(modifiedData, function (index, rowData) {
|
||||
if (rowData.status === 'deleted') {
|
||||
return true;
|
||||
|
@ -252,7 +287,7 @@
|
|||
F.alert({
|
||||
message: '请输入运行情况!',
|
||||
ok: function () {
|
||||
gvOption.startEdit(rowData.id, 'Situation');
|
||||
gvEngOption.startEdit(rowData.id, 'Situation');
|
||||
}
|
||||
});
|
||||
valid = false;
|
||||
|
@ -263,14 +298,45 @@
|
|||
F.alert({
|
||||
message: '请输入备注!',
|
||||
ok: function () {
|
||||
gvOption.startEdit(rowData.id, 'Remarks');
|
||||
gvEngOption.startEdit(rowData.id, 'Remarks');
|
||||
}
|
||||
});
|
||||
valid = false;
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
if (valid == false) return valid;
|
||||
//工艺装置
|
||||
var gvDeviceOption = F('<%= gvDeviceOption.ClientID %>');
|
||||
var valid = true, modifiedData = gvDeviceOption.getMergedData();
|
||||
$.each(modifiedData, function (index, rowData) {
|
||||
if (rowData.status === 'deleted') {
|
||||
return true;
|
||||
}
|
||||
var situation = rowData.values['Situation'];
|
||||
if (typeof (situation) != 'undefined' && $.trim(situation) == '') {
|
||||
F.alert({
|
||||
message: '请输入运行情况!',
|
||||
ok: function () {
|
||||
gvDeviceOption.startEdit(rowData.id, 'Situation');
|
||||
}
|
||||
});
|
||||
valid = false;
|
||||
return false;
|
||||
}
|
||||
var remarks = rowData.values['Remarks'];
|
||||
if (typeof (remarks) != 'undefined' && $.trim(remarks) == '') {
|
||||
F.alert({
|
||||
message: '请输入备注!',
|
||||
ok: function () {
|
||||
gvDeviceOption.startEdit(rowData.id, 'Remarks');
|
||||
}
|
||||
});
|
||||
valid = false;
|
||||
return false;
|
||||
}
|
||||
});
|
||||
if (valid == false) return valid;
|
||||
//操作问题
|
||||
var gvOperation = F('<%= gvOperation.ClientID %>');
|
||||
var valid = true, modifiedData = gvOperation.getMergedData();
|
||||
|
@ -301,7 +367,7 @@
|
|||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
if (valid == false) return valid;
|
||||
//维护问题
|
||||
var gvMaintenance = F('<%= gvMaintenance.ClientID %>');
|
||||
var valid = true, modifiedData = gvMaintenance.getMergedData();
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -140,15 +140,6 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
|||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtEndData;
|
||||
|
||||
/// <summary>
|
||||
/// rdbOperation 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.CheckBoxList rdbOperation;
|
||||
|
||||
/// <summary>
|
||||
/// ContentPanel4 控件。
|
||||
/// </summary>
|
||||
|
@ -168,13 +159,22 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
|||
protected global::FineUIPro.Form Form5;
|
||||
|
||||
/// <summary>
|
||||
/// gvSystemOption 控件。
|
||||
/// rdbEngineeringOperation 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid gvSystemOption;
|
||||
protected global::FineUIPro.CheckBoxList rdbEngineeringOperation;
|
||||
|
||||
/// <summary>
|
||||
/// gvEngineeringOption 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid gvEngineeringOption;
|
||||
|
||||
/// <summary>
|
||||
/// txtSituation 控件。
|
||||
|
@ -194,6 +194,42 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
|||
/// </remarks>
|
||||
protected global::FineUIPro.TextArea txtRemarks;
|
||||
|
||||
/// <summary>
|
||||
/// rdbDeviceOption 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.CheckBoxList rdbDeviceOption;
|
||||
|
||||
/// <summary>
|
||||
/// gvDeviceOption 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid gvDeviceOption;
|
||||
|
||||
/// <summary>
|
||||
/// TextArea1 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextArea TextArea1;
|
||||
|
||||
/// <summary>
|
||||
/// TextArea2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextArea TextArea2;
|
||||
|
||||
/// <summary>
|
||||
/// ContentPanel5 控件。
|
||||
/// </summary>
|
||||
|
|
|
@ -44,6 +44,11 @@
|
|||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.customlabel span {
|
||||
color: red;
|
||||
font-weight: bold;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
@ -52,18 +57,8 @@
|
|||
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
|
||||
ShowHeader="false" Layout="Region" BoxConfigAlign="Stretch">
|
||||
<Items>
|
||||
<f:Panel runat="server" ID="panelLeftRegion" RegionPosition="Left" RegionSplit="true"
|
||||
EnableCollapse="true" Width="300px" Title="巡检记录" ShowBorder="true" Layout="VBox"
|
||||
ShowHeader="false" AutoScroll="true" BodyPadding="5px" IconFont="ArrowCircleLeft">
|
||||
<Items>
|
||||
<f:Tree ID="tvControlItem" ShowHeader="false" Title="工作包" OnNodeCommand="tvControlItem_NodeCommand"
|
||||
runat="server" ShowBorder="false" EnableCollapse="true" EnableSingleClickExpand="true"
|
||||
AutoLeafIdentification="true" EnableSingleExpand="false">
|
||||
</f:Tree>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" EnableAjax="false" ShowHeader="false" Title="运行日志管理" EnableCollapse="true"
|
||||
runat="server" BoxFlex="1" DataKeyNames="RunningId" AllowCellEditing="true" ClicksToEdit="2" DataIDField="RunningId" AllowSorting="true" SortField="AddTime" SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true" ForceFit="true" AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange" EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" AllowFilters="true" EnableTextSelection="True" EnableMultiSelect="false" EnableCheckBoxSelect="true">
|
||||
runat="server" BoxFlex="1" DataKeyNames="RunningId" AllowCellEditing="true" ClicksToEdit="2" DataIDField="RunningId" AllowSorting="true" OnSort="Grid1_Sort" EnableColumnLines="true" ForceFit="true" AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange" EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" AllowFilters="true" EnableTextSelection="True" EnableMultiSelect="false" EnableCheckBoxSelect="true">
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
|
@ -72,8 +67,21 @@
|
|||
<f:ListItem Text="白班" Value="1" />
|
||||
<f:ListItem Text="夜班" Value="2" />
|
||||
</f:DropDownList>
|
||||
<f:DatePicker runat="server" Required="true" DateFormatString="yyyy-MM-dd" Label="开始日期" LabelAlign="Right" EmptyText="请选择开始日期"
|
||||
ID="txtStartData">
|
||||
</f:DatePicker>
|
||||
<f:DatePicker ID="txtEndData" Required="true" Readonly="false" CompareControl="txtStartData" LabelAlign="Right" DateFormatString="yyyy-MM-dd"
|
||||
CompareOperator="GreaterThan" CompareMessage="结束日期应该大于开始日期" Label="结束日期"
|
||||
runat="server">
|
||||
</f:DatePicker>
|
||||
<f:ToolbarFill runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnQuery" ToolTip="查询" Text="查询" Icon="SystemSearch" runat="server" OnClick="btnQuery_Click"></f:Button>
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
<f:Label runat="server" ID="lblminTime" CssClass="customlabel"></f:Label>
|
||||
<f:ToolbarFill runat="server"></f:ToolbarFill>
|
||||
<f:Button ID="btnQuery" ToolTip="查询" Icon="SystemSearch" runat="server" OnClick="btnQuery_Click"></f:Button>
|
||||
<f:Button ID="btnAdd" Icon="Add" Text="添加" ToolTip="处理" runat="server" OnClick="btnAdd_Click"></f:Button>
|
||||
<f:Button ID="btnModify" Text="修改" ToolTip="修改" Icon="Pencil" runat="server" OnClick="btnModify_Click"></f:Button>
|
||||
<f:Button ID="btnDel" Text="删除" ToolTip="删除" Icon="Delete" runat="server" OnClick="btnDel_Click" ConfirmText="是否确认删除?"></f:Button>
|
||||
|
@ -84,7 +92,7 @@
|
|||
<Columns>
|
||||
<f:RowNumberField />
|
||||
<f:RenderField ColumnID="ProjectName" DataField="ProjectName" HeaderText="项目名称" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="InstallationName" DataField="InstallationName" HeaderText="装置名称" HeaderTextAlign="Center">
|
||||
</f:RenderField>
|
||||
<f:RenderField ColumnID="ProcessesName" DataField="ProcessesName" HeaderText="工序名称" HeaderTextAlign="Center">
|
||||
|
|
|
@ -24,82 +24,10 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
|||
if (!IsPostBack)
|
||||
{
|
||||
//绑定数据
|
||||
InitTreeMenu();
|
||||
BindGrid();
|
||||
}
|
||||
}
|
||||
|
||||
#region 树绑定
|
||||
|
||||
/// <summary>
|
||||
/// 加载树
|
||||
/// </summary>
|
||||
private void InitTreeMenu()
|
||||
{
|
||||
this.tvControlItem.Nodes.Clear();
|
||||
TreeNode rootNode = new TreeNode();
|
||||
rootNode.Text = "检查表";
|
||||
rootNode.NodeID = "0";
|
||||
rootNode.Expanded = true;
|
||||
rootNode.ToolTip = "";
|
||||
rootNode.EnableClickEvent = true;
|
||||
this.tvControlItem.Nodes.Add(rootNode);
|
||||
var alllist = Funs.DB.PreRun_SysDevice.Where(x => x.ProjectId == this.CurrUser.LoginProjectId && x.PreRunLevel != 4).ToList();
|
||||
if (alllist.Count() > 0)
|
||||
{
|
||||
var onelist = alllist.Where(x => x.PreRunLevel == 1).ToList();
|
||||
|
||||
foreach (var itemOne in onelist)
|
||||
{
|
||||
TreeNode rootOneNode = new TreeNode();
|
||||
rootOneNode.NodeID = itemOne.PreRunId;
|
||||
rootOneNode.Text = itemOne.PreRunName;
|
||||
rootOneNode.ToolTip = itemOne.PreRunName;
|
||||
rootOneNode.CommandName = "";
|
||||
rootOneNode.EnableClickEvent = true;
|
||||
rootOneNode.EnableExpandEvent = false;
|
||||
rootNode.Nodes.Add(rootOneNode);
|
||||
rootOneNode.Expanded = true;
|
||||
var twolist = alllist.Where(x => x.PreRunLevel == 2 && x.ParentId == itemOne.PreRunId).ToList();
|
||||
foreach (var itemTwo in twolist)
|
||||
{
|
||||
TreeNode rootTwoNode = new TreeNode();
|
||||
rootTwoNode.NodeID = itemOne.PreRunId + "|" + itemTwo.PreRunId;
|
||||
rootTwoNode.Text = itemTwo.PreRunName;
|
||||
rootTwoNode.ToolTip = itemTwo.PreRunName;
|
||||
rootTwoNode.CommandName = "";
|
||||
rootTwoNode.EnableClickEvent = true;
|
||||
rootTwoNode.EnableExpandEvent = false;
|
||||
rootOneNode.Nodes.Add(rootTwoNode);
|
||||
rootTwoNode.Expanded = true;
|
||||
var threelist = alllist.Where(x => x.PreRunLevel == 3 && x.ParentId == itemTwo.PreRunId).ToList();
|
||||
foreach (var itemThree in threelist)
|
||||
{
|
||||
TreeNode rootThreeNode = new TreeNode();
|
||||
rootThreeNode.NodeID = itemOne.PreRunId + "|" + itemTwo.PreRunId + "|" + itemThree.PreRunId;
|
||||
rootThreeNode.Text = itemThree.PreRunName;
|
||||
rootThreeNode.ToolTip = itemThree.PreRunName;
|
||||
rootThreeNode.CommandName = "";
|
||||
rootThreeNode.EnableClickEvent = true;
|
||||
rootThreeNode.EnableExpandEvent = false;
|
||||
rootTwoNode.Nodes.Add(rootThreeNode);
|
||||
rootThreeNode.Expanded = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 点击TreeView
|
||||
/// </summary>
|
||||
protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
|
||||
{
|
||||
this.BindGrid();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 绑定数据
|
||||
|
||||
/// <summary>
|
||||
|
@ -107,42 +35,42 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
|||
/// </summary>
|
||||
public void BindGrid()
|
||||
{
|
||||
var years = DateTime.Now.Year;
|
||||
string strSql = @"select a.RunningId,a.ProjectId,project.ProjectName as ProjectName,a.InstallationId,a.ProcessesId,a.SystemId,inst.PreRunName as InstallationName,proce.PreRunName as ProcessesName,syst.PreRunName as SystemName,a.JobNo,a.ShiftType,(case a.ShiftType when 1 then '白班' else '夜班' end) as ShiftTypeName,a.ShiftUser,shiftuser.UserName as ShiftUserName,a.SuccessionUser,successuser.UserName as SuccessionUserName,a.StartData,a.EndData,a.AddUser,a.AddTime,a.Sort from Running_LogManagement as a inner join Sys_User as shiftuser on shiftuser.UserId=a.ShiftUser inner join Sys_User as successuser on successuser.UserId=a.SuccessionUser inner join Base_Project as project on project.ProjectId=a.ProjectId inner join PreRun_SysDevice as inst on inst.PreRunId=a.InstallationId inner join PreRun_SysDevice as proce on proce.PreRunId=a.ProcessesId inner join PreRun_SysDevice as syst on syst.PreRunId=a.SystemId where a.ProjectId=@ProjectId ";
|
||||
List<SqlParameter> listStr = new List<SqlParameter>();
|
||||
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
|
||||
if (this.tvControlItem.SelectedNodeID.Split('|').Length > 0)
|
||||
if (!string.IsNullOrWhiteSpace(txtStartData.Text))
|
||||
{
|
||||
var installationId = this.tvControlItem.SelectedNodeID.Split('|').First();
|
||||
if (installationId != "0" && !string.IsNullOrWhiteSpace(installationId))
|
||||
{
|
||||
strSql += " and a.InstallationId=@InstallationId";
|
||||
listStr.Add(new SqlParameter("@InstallationId", installationId));
|
||||
}
|
||||
strSql += " and a.StartData>=@StartData";
|
||||
listStr.Add(new SqlParameter("@StartData", DateTime.Parse(txtStartData.Text).ToString("yyyy-MM-dd") + " 00:00:00"));
|
||||
years = DateTime.Parse(txtStartData.Text).Year;
|
||||
}
|
||||
if (this.tvControlItem.SelectedNodeID.Split('|').Length > 1)
|
||||
if (!string.IsNullOrWhiteSpace(txtEndData.Text))
|
||||
{
|
||||
var processesId = this.tvControlItem.SelectedNodeID.Split('|')[1];
|
||||
strSql += " and a.ProcessesId=@ProcessesId";
|
||||
listStr.Add(new SqlParameter("@ProcessesId", processesId));
|
||||
}
|
||||
if (this.tvControlItem.SelectedNodeID.Split('|').Length > 2)
|
||||
{
|
||||
var systemId = this.tvControlItem.SelectedNodeID.Split('|').Last();
|
||||
strSql += " and a.SystemId=@SystemId";
|
||||
listStr.Add(new SqlParameter("@SystemId", systemId));
|
||||
strSql += " and a.EndData<=@EndData";
|
||||
listStr.Add(new SqlParameter("@EndData", DateTime.Parse(txtEndData.Text).ToString("yyyy-MM-dd") + " 23:59:59"));
|
||||
}
|
||||
if (!string.IsNullOrWhiteSpace(ddlShiftType.SelectedValue))
|
||||
{
|
||||
strSql += " and a.ShiftType=@ShiftType";
|
||||
listStr.Add(new SqlParameter("@ShiftType", ddlShiftType.SelectedValue));
|
||||
}
|
||||
strSql += " order by a.AddTime asc";
|
||||
strSql += " order by inst.PreRunLevel,inst.Sort,proce.Sort,syst.Sort asc";
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
Grid1.RecordCount = tb.Rows.Count;
|
||||
var table = this.GetPagedDataTable(Grid1, tb);
|
||||
Grid1.DataSource = table;
|
||||
Grid1.DataBind();
|
||||
if (Funs.DB.Running_LogManagement.Count(x => x.StartData.Value.Year == years) > 0)
|
||||
{
|
||||
var minTime = Funs.DB.Running_LogManagement.Where(x => x.StartData.Value.Year == years).Min(m => m.StartData);
|
||||
lblminTime.Text = $"{years}年日志最小日期:{minTime.Value.ToString("yyyy-MM-dd")}";
|
||||
}
|
||||
else
|
||||
{
|
||||
lblminTime.Text = $"{years}年无日志信息";
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -41,24 +41,6 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
|||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
/// <summary>
|
||||
/// panelLeftRegion 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel panelLeftRegion;
|
||||
|
||||
/// <summary>
|
||||
/// tvControlItem 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Tree tvControlItem;
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
|
@ -86,6 +68,24 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
|||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlShiftType;
|
||||
|
||||
/// <summary>
|
||||
/// txtStartData 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtStartData;
|
||||
|
||||
/// <summary>
|
||||
/// txtEndData 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtEndData;
|
||||
|
||||
/// <summary>
|
||||
/// btnQuery 控件。
|
||||
/// </summary>
|
||||
|
@ -95,6 +95,24 @@ namespace FineUIPro.Web.TestRun.ProduceTestRun
|
|||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnQuery;
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar2;
|
||||
|
||||
/// <summary>
|
||||
/// lblminTime 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Label lblminTime;
|
||||
|
||||
/// <summary>
|
||||
/// btnAdd 控件。
|
||||
/// </summary>
|
||||
|
|
Loading…
Reference in New Issue