提交代码
This commit is contained in:
@@ -224,6 +224,12 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
ddlWorkPackType.Items.Insert(0, new ListItem("设备", "2"));
|
||||
ddlWorkPackType.SelectedValue = "2";
|
||||
}
|
||||
if (workPage.WorkPackType == 3)
|
||||
{
|
||||
ddlWorkPackType.Items.Clear();
|
||||
ddlWorkPackType.Items.Insert(0, new ListItem("仪表索引", "3"));
|
||||
ddlWorkPackType.SelectedValue = "3";
|
||||
}
|
||||
//加载数据
|
||||
PipingBrid(ddlWorkPackType.SelectedValue, subSystemId, propertyTechnologyIds, selectStr);
|
||||
}
|
||||
@@ -372,26 +378,6 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
{
|
||||
try
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(ddlfbs.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择分包商!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlcbs.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择承包商!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddljl.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择监理!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlyz.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择业主!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (ddbSysPiping.Values.Length == 0)
|
||||
{
|
||||
ShowNotify("请选择设备!", MessageBoxIcon.Warning);
|
||||
@@ -405,108 +391,163 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
subInspectId = this.tvControlItem.SelectedNodeID.Split('|').Last();
|
||||
}
|
||||
var workPackType = int.Parse(ddlWorkPackType.SelectedValue);
|
||||
List<PreRun_SubInspectTerm> subTrems = new List<PreRun_SubInspectTerm>();
|
||||
List<PreRun_SubInspectTermItem> subTremItems = new List<PreRun_SubInspectTermItem>();
|
||||
var subTrem = Funs.DB.PreRun_SubInspectTerm.FirstOrDefault(x => x.SubInspectId == subInspectId);
|
||||
var termItems = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.SubInspectId == subInspectId).ToList();
|
||||
if (termItems.Count > 0 && termItems.Count(x => x.InspectionResults == null) == 0)
|
||||
var subSysModel = Funs.DB.PreRun_SysDevice.FirstOrDefault(x => x.PreRunId == subSystemId);
|
||||
var workPackModel = Funs.DB.PreRun_WorkPackage.FirstOrDefault(x => x.WorkPackId == workPackId);
|
||||
if (workPackModel.SpecialWorkPack == 0)
|
||||
{
|
||||
ShowNotify("所有检查项已存在检查结果,无法保存!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
JArray mergedData = Grid1.GetMergedData();
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
string status = mergedRow.Value<string>("status");
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
var termItemId = this.Grid1.Rows[i].DataKeys[0].ToString();
|
||||
var subItemId = this.Grid1.Rows[i].DataKeys[1].ToString();
|
||||
var workInspectId = this.Grid1.Rows[i].DataKeys[2].ToString();
|
||||
|
||||
//获取子系统信息
|
||||
var list = new List<PreRun_SubInspectTermItem>();
|
||||
var subSysModel = Funs.DB.PreRun_SysDevice.FirstOrDefault(x => x.PreRunId == subSystemId);
|
||||
if (subSysModel != null)
|
||||
if (string.IsNullOrWhiteSpace(ddlfbs.SelectedValue))
|
||||
{
|
||||
//获取子系统工作包检查表,如果不存在则添加
|
||||
if (subTrem == null)
|
||||
ShowNotify("请选择分包商!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlcbs.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择承包商!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddljl.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择监理!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlyz.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择业主!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
List<PreRun_SubInspectTerm> subTrems = new List<PreRun_SubInspectTerm>();
|
||||
List<PreRun_SubInspectTermItem> subTremItems = new List<PreRun_SubInspectTermItem>();
|
||||
var subTrem = Funs.DB.PreRun_SubInspectTerm.FirstOrDefault(x => x.SubInspectId == subInspectId);
|
||||
var termItems = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.SubInspectId == subInspectId).ToList();
|
||||
if (termItems.Count > 0 && termItems.Count(x => x.InspectionResults == null) == 0)
|
||||
{
|
||||
ShowNotify("所有检查项已存在检查结果,无法保存!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
JArray mergedData = Grid1.GetMergedData();
|
||||
foreach (JObject mergedRow in mergedData)
|
||||
{
|
||||
string status = mergedRow.Value<string>("status");
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
int i = mergedRow.Value<int>("index");
|
||||
var termItemId = this.Grid1.Rows[i].DataKeys[0].ToString();
|
||||
var subItemId = this.Grid1.Rows[i].DataKeys[1].ToString();
|
||||
var workInspectId = this.Grid1.Rows[i].DataKeys[2].ToString();
|
||||
|
||||
//获取子系统信息
|
||||
var list = new List<PreRun_SubInspectTermItem>();
|
||||
if (subSysModel != null)
|
||||
{
|
||||
subTrem = new PreRun_SubInspectTerm();
|
||||
subTrem.SubInspectId = Guid.NewGuid().ToString();
|
||||
subTrem.WorkPackId = workPackId;
|
||||
subTrem.ProjectId = this.CurrUser.LoginProjectId;
|
||||
subTrem.InstallationId = subSysModel.InstallationId;
|
||||
subTrem.ProcessesId = subSysModel.ProcessesId;
|
||||
subTrem.SystemId = subSysModel.SystemId;
|
||||
subTrem.SubSystemId = subSysModel.PreRunId;
|
||||
subTrem.Subcontractor = ddlfbs.SelectedValue;
|
||||
subTrem.Contractor = ddlcbs.SelectedValue;
|
||||
subTrem.Supervision = ddljl.SelectedValue;
|
||||
subTrem.Owner = ddlyz.SelectedValue;
|
||||
subTrem.PropertyTechnologyId = string.Join(",", ddbSysPiping.Values);
|
||||
subTrem.WorkPackType = int.Parse(ddlWorkPackType.SelectedValue);
|
||||
subTrem.AddUser = this.CurrUser.UserId;
|
||||
subTrem.AddTime = DateTime.Now;
|
||||
subTrems.Add(subTrem);
|
||||
}
|
||||
else
|
||||
{
|
||||
subTrem.Subcontractor = ddlfbs.SelectedValue;
|
||||
subTrem.Contractor = ddlcbs.SelectedValue;
|
||||
subTrem.Supervision = ddljl.SelectedValue;
|
||||
subTrem.Owner = ddlyz.SelectedValue;
|
||||
Funs.DB.SubmitChanges();
|
||||
}
|
||||
var model = Funs.DB.PreRun_SubInspectTermItem.FirstOrDefault(x => x.TermItemId == termItemId);
|
||||
if (model == null)
|
||||
{
|
||||
model = new PreRun_SubInspectTermItem();
|
||||
model.TermItemId = termItemId;
|
||||
model.SubItemId = subItemId;
|
||||
model.SubInspectId = subTrem.SubInspectId;
|
||||
model.WorkPackId = workPackId;
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
model.WorkInspectId = workInspectId;
|
||||
model.WorkInspectName = values.Value<string>("WorkInspectName");
|
||||
model.InstallationId = subSysModel.InstallationId;
|
||||
model.ProcessesId = subSysModel.ProcessesId;
|
||||
model.SystemId = subSysModel.SystemId;
|
||||
model.SubSystemId = subSysModel.PreRunId;
|
||||
model.InspectedUser = !string.IsNullOrWhiteSpace(values.Value<string>("InspectedUser")) ? values.Value<string>("InspectedUser") : string.Empty;
|
||||
model.Subcontractor = ddlfbs.SelectedValue;
|
||||
model.Contractor = ddlcbs.SelectedValue;
|
||||
model.Supervision = ddljl.SelectedValue;
|
||||
model.Owner = ddlyz.SelectedValue;
|
||||
model.PropertyTechnologyId = string.Join(",", ddbSysPiping.Values);
|
||||
model.WorkPackType = int.Parse(ddlWorkPackType.SelectedValue);
|
||||
model.AddUser = this.CurrUser.UserId;
|
||||
model.AddTime = DateTime.Now;
|
||||
model.Sort = i + 1;
|
||||
subTremItems.Add(model);
|
||||
}
|
||||
else
|
||||
{
|
||||
model.InspectedUser = !string.IsNullOrWhiteSpace(values.Value<string>("InspectedUser")) ? values.Value<string>("InspectedUser") : string.Empty;
|
||||
model.WorkInspectName = values.Value<string>("WorkInspectName");
|
||||
Funs.DB.SubmitChanges();
|
||||
//获取子系统工作包检查表,如果不存在则添加
|
||||
if (subTrem == null)
|
||||
{
|
||||
subTrem = new PreRun_SubInspectTerm();
|
||||
subTrem.SubInspectId = Guid.NewGuid().ToString();
|
||||
subTrem.WorkPackId = workPackId;
|
||||
subTrem.ProjectId = this.CurrUser.LoginProjectId;
|
||||
subTrem.InstallationId = subSysModel.InstallationId;
|
||||
subTrem.ProcessesId = subSysModel.ProcessesId;
|
||||
subTrem.SystemId = subSysModel.SystemId;
|
||||
subTrem.SubSystemId = subSysModel.PreRunId;
|
||||
subTrem.Subcontractor = ddlfbs.SelectedValue;
|
||||
subTrem.Contractor = ddlcbs.SelectedValue;
|
||||
subTrem.Supervision = ddljl.SelectedValue;
|
||||
subTrem.Owner = ddlyz.SelectedValue;
|
||||
subTrem.PropertyTechnologyId = string.Join(",", ddbSysPiping.Values);
|
||||
subTrem.WorkPackType = int.Parse(ddlWorkPackType.SelectedValue);
|
||||
subTrem.AddUser = this.CurrUser.UserId;
|
||||
subTrem.AddTime = DateTime.Now;
|
||||
subTrems.Add(subTrem);
|
||||
}
|
||||
else
|
||||
{
|
||||
subTrem.Subcontractor = ddlfbs.SelectedValue;
|
||||
subTrem.Contractor = ddlcbs.SelectedValue;
|
||||
subTrem.Supervision = ddljl.SelectedValue;
|
||||
subTrem.Owner = ddlyz.SelectedValue;
|
||||
Funs.DB.SubmitChanges();
|
||||
}
|
||||
var model = Funs.DB.PreRun_SubInspectTermItem.FirstOrDefault(x => x.TermItemId == termItemId);
|
||||
if (model == null)
|
||||
{
|
||||
model = new PreRun_SubInspectTermItem();
|
||||
model.TermItemId = termItemId;
|
||||
model.SubItemId = subItemId;
|
||||
model.SubInspectId = subTrem.SubInspectId;
|
||||
model.WorkPackId = workPackId;
|
||||
model.ProjectId = this.CurrUser.LoginProjectId;
|
||||
model.WorkInspectId = workInspectId;
|
||||
model.WorkInspectName = values.Value<string>("WorkInspectName");
|
||||
model.InstallationId = subSysModel.InstallationId;
|
||||
model.ProcessesId = subSysModel.ProcessesId;
|
||||
model.SystemId = subSysModel.SystemId;
|
||||
model.SubSystemId = subSysModel.PreRunId;
|
||||
model.InspectedUser = !string.IsNullOrWhiteSpace(values.Value<string>("InspectedUser")) ? values.Value<string>("InspectedUser") : string.Empty;
|
||||
model.Subcontractor = ddlfbs.SelectedValue;
|
||||
model.Contractor = ddlcbs.SelectedValue;
|
||||
model.Supervision = ddljl.SelectedValue;
|
||||
model.Owner = ddlyz.SelectedValue;
|
||||
model.PropertyTechnologyId = string.Join(",", ddbSysPiping.Values);
|
||||
model.WorkPackType = int.Parse(ddlWorkPackType.SelectedValue);
|
||||
model.AddUser = this.CurrUser.UserId;
|
||||
model.AddTime = DateTime.Now;
|
||||
model.Sort = i + 1;
|
||||
subTremItems.Add(model);
|
||||
}
|
||||
else
|
||||
{
|
||||
model.InspectedUser = !string.IsNullOrWhiteSpace(values.Value<string>("InspectedUser")) ? values.Value<string>("InspectedUser") : string.Empty;
|
||||
model.WorkInspectName = values.Value<string>("WorkInspectName");
|
||||
Funs.DB.SubmitChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (subTrems != null) Funs.DB.PreRun_SubInspectTerm.InsertAllOnSubmit(subTrems);
|
||||
if (subTremItems.Count > 0) Funs.DB.PreRun_SubInspectTermItem.InsertAllOnSubmit(subTremItems);
|
||||
Funs.DB.SubmitChanges();
|
||||
if (Funs.DB.PreRun_SubInspectTermItem.Count(x => x.SubInspectId == subTrem.SubInspectId && x.InspectionResults.GetValueOrDefault() != 1) == 0)
|
||||
{
|
||||
subTrem.InspectionIsAllPass = 1;
|
||||
if (subTrems != null) Funs.DB.PreRun_SubInspectTerm.InsertAllOnSubmit(subTrems);
|
||||
if (subTremItems.Count > 0) Funs.DB.PreRun_SubInspectTermItem.InsertAllOnSubmit(subTremItems);
|
||||
Funs.DB.SubmitChanges();
|
||||
if (Funs.DB.PreRun_SubInspectTermItem.Count(x => x.SubInspectId == subTrem.SubInspectId && x.InspectionResults.GetValueOrDefault() != 1) == 0)
|
||||
{
|
||||
subTrem.InspectionIsAllPass = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
subTrem.InspectionIsAllPass = 0;
|
||||
}
|
||||
Funs.DB.SubmitChanges();
|
||||
this.InitTreeMenu();
|
||||
BindGrid();
|
||||
}
|
||||
else
|
||||
{
|
||||
subTrem.InspectionIsAllPass = 0;
|
||||
var subTrem = Funs.DB.PreRun_SubInspectTerm.FirstOrDefault(x => x.SubInspectId == subInspectId);
|
||||
if (subTrem == null)
|
||||
{
|
||||
subTrem = new PreRun_SubInspectTerm();
|
||||
subTrem.SubInspectId = Guid.NewGuid().ToString();
|
||||
subTrem.WorkPackId = workPackId;
|
||||
subTrem.ProjectId = this.CurrUser.LoginProjectId;
|
||||
subTrem.InstallationId = subSysModel.InstallationId;
|
||||
subTrem.ProcessesId = subSysModel.ProcessesId;
|
||||
subTrem.SystemId = subSysModel.SystemId;
|
||||
subTrem.SubSystemId = subSysModel.PreRunId;
|
||||
subTrem.PropertyTechnologyId = string.Join(",", ddbSysPiping.Values);
|
||||
subTrem.WorkPackType = int.Parse(ddlWorkPackType.SelectedValue);
|
||||
subTrem.InspectionIsAllPass = 1;
|
||||
subTrem.IsSiteImplement = 1;
|
||||
subTrem.AddUser = this.CurrUser.UserId;
|
||||
subTrem.AddTime = DateTime.Now;
|
||||
Funs.DB.PreRun_SubInspectTerm.InsertOnSubmit(subTrem);
|
||||
}
|
||||
else
|
||||
{
|
||||
subTrem.PropertyTechnologyId = string.Join(",", ddbSysPiping.Values);
|
||||
}
|
||||
Funs.DB.SubmitChanges();
|
||||
this.InitTreeMenu();
|
||||
BindGrid();
|
||||
}
|
||||
Funs.DB.SubmitChanges();
|
||||
this.InitTreeMenu();
|
||||
|
||||
ShowNotify("保存成功!");
|
||||
}
|
||||
catch (Exception ex)
|
||||
@@ -671,6 +712,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
var selectPtids = string.Join(",", yscInspectItems.ConvertAll(x => x.PropertyTechnologyId)).Split(',').ToList();
|
||||
var listPros = Funs.DB.PreRun_PropertySysPiping.Where(x => selectPtids.Contains(x.PropertyId)).ToList();
|
||||
var listTechno = Funs.DB.PreRun_TechnologySysPiping.Where(x => selectPtids.Contains(x.TechnologyId)).ToList();
|
||||
var listInstrument = Funs.DB.PreRun_InstrumentSysPiping.Where(x => selectPtids.Contains(x.InstrumentId)).ToList();
|
||||
|
||||
foreach (var itemYsc in yscInspectItems)
|
||||
{
|
||||
@@ -700,13 +742,26 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
SubSystemId = itemYsc.SubSystemId
|
||||
});
|
||||
}
|
||||
var itemInstrument = listInstrument.Where(x => ids.Contains(x.InstrumentId)).ToList();
|
||||
if (itemInstrument.Count > 0)
|
||||
{
|
||||
codeStr = $"仪表:{string.Join(",", itemInstrument.ConvertAll(x => x.InstrumentTag))}";
|
||||
yczData.Add(new SelectPropertyTechnology()
|
||||
{
|
||||
Id = itemYsc.SubInspectId,
|
||||
Code = codeStr,
|
||||
WorkPackId = itemYsc.WorkPackId,
|
||||
SubSystemId = itemYsc.SubSystemId
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
return yczData;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 管道或设备绑定
|
||||
/// 管道,设备,仪表索引绑定
|
||||
/// </summary>
|
||||
public void PipingBrid(string WorkPackType, string subSystemId, string propertyTechnologyIds, string selectStr)
|
||||
{
|
||||
@@ -766,7 +821,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
cbSysPiping.Items.Insert(0, new CheckItem("==无数据==", ""));
|
||||
}
|
||||
}
|
||||
else
|
||||
if (WorkPackType == "2")
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(propertyTechnologyIds))
|
||||
{
|
||||
@@ -820,6 +875,61 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
cbSysPiping.Items.Insert(0, new CheckItem("==无数据==", ""));
|
||||
}
|
||||
}
|
||||
if (WorkPackType == "3")
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(propertyTechnologyIds))
|
||||
{
|
||||
var sysData = from instrument in Funs.DB.PreRun_InstrumentSysPiping
|
||||
join selectinstrument in Funs.DB.PreRun_SubInstrumentSelect on instrument.InstrumentId equals selectinstrument.InstrumentId
|
||||
where selectinstrument.SubSystemId == subSystemId
|
||||
select new SelectPropertyTechnology()
|
||||
{
|
||||
Id = instrument.InstrumentId,
|
||||
Code = $"仪表:({instrument.InstrumentTag})"
|
||||
};
|
||||
sysPipingData = sysData.ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
var ids = propertyTechnologyIds.Split(',');
|
||||
var sysData = from instrument in Funs.DB.PreRun_InstrumentSysPiping
|
||||
join selectinstrument in Funs.DB.PreRun_SubInstrumentSelect on instrument.InstrumentId equals selectinstrument.InstrumentId
|
||||
where selectinstrument.SubSystemId == subSystemId && !ids.Contains(instrument.InstrumentId)
|
||||
select new SelectPropertyTechnology()
|
||||
{
|
||||
Id = instrument.InstrumentId,
|
||||
Code = $"仪表:({instrument.InstrumentTag})"
|
||||
};
|
||||
sysPipingData = sysData.ToList();
|
||||
}
|
||||
if (sysPipingData.Count() > 0)
|
||||
{
|
||||
cbSysPiping.DataTextField = "Code";
|
||||
cbSysPiping.DataValueField = "Id";
|
||||
cbSysPiping.DataSource = sysPipingData;
|
||||
cbSysPiping.DataBind();
|
||||
List<string> values = new List<string>();
|
||||
List<string> texts = new List<string>();
|
||||
if (!string.IsNullOrWhiteSpace(selectStr))
|
||||
{
|
||||
var selectIds = selectStr.Split(',').ToList();
|
||||
var selectData = sysPipingData.Where(x => selectIds.Contains(x.Id)).ToList();
|
||||
if (selectData.Count() > 0)
|
||||
{
|
||||
values = selectData.ConvertAll(x => x.Id);
|
||||
texts = selectData.ConvertAll(x => x.Code);
|
||||
}
|
||||
}
|
||||
ddbSysPiping.Values = values.ToArray();
|
||||
ddbSysPiping.Texts = texts.ToArray();
|
||||
}
|
||||
else
|
||||
{
|
||||
cbSysPiping.Items.Clear();
|
||||
cbSysPiping.Items.Insert(0, new CheckItem("==无数据==", ""));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
Reference in New Issue
Block a user