修改试车
This commit is contained in:
@@ -22,6 +22,15 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
set { ViewState["TailTermId"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 主键
|
||||
/// </summary>
|
||||
public string TermItemId
|
||||
{
|
||||
get { return (string)ViewState["TermItemId"]; }
|
||||
set { ViewState["TermItemId"] = value; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 是否查看
|
||||
/// </summary>
|
||||
@@ -54,6 +63,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.TailTermId = Request["TailTermId"];
|
||||
this.TermItemId = Request["TermItemId"];
|
||||
//是否查看
|
||||
this.IsView = string.IsNullOrWhiteSpace(Request["IsView"]) ? false : bool.Parse(Request["IsView"]);
|
||||
//数据绑定
|
||||
@@ -70,7 +80,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
txtTailTermCode.Enabled = false;
|
||||
ddlConstructionUnit.Enabled = false;
|
||||
ddlProblemType.Enabled = false;
|
||||
ddlQuestionTechnologyId.Enabled = false;
|
||||
ddlSubInspectId.Enabled = false;
|
||||
ddlTermItemId.Enabled = false;
|
||||
txtQuestionDesc.Enabled = false;
|
||||
txtRectifyOpinion.Enabled = false;
|
||||
@@ -88,13 +98,27 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
{
|
||||
QuestionEditImg = 0;
|
||||
RectifyEditImg = 0;
|
||||
var selectList = new List<SelectPropertyTechnology>();
|
||||
//施工单位
|
||||
UnitService.InitUnitByProjectIdUnitTypeDropDownList(ddlConstructionUnit, this.CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2, false);
|
||||
//获取用户信息
|
||||
var users = from user in Funs.DB.Sys_User
|
||||
join projectrole in Funs.DB.Project_ProjectUser on user.UserId equals projectrole.UserId
|
||||
where projectrole.ProjectId == this.CurrUser.LoginProjectId
|
||||
select user;
|
||||
//var users = from user in Funs.DB.Sys_User
|
||||
// join projectrole in Funs.DB.Project_ProjectUser on user.UserId equals projectrole.UserId
|
||||
// where projectrole.ProjectId == this.CurrUser.LoginProjectId
|
||||
// select user;
|
||||
|
||||
//检查人绑定
|
||||
var userList = from user in Funs.DB.Sys_User
|
||||
join projectrole in Funs.DB.Project_ProjectUser on user.UserId equals projectrole.UserId
|
||||
where projectrole.ProjectId == this.CurrUser.LoginProjectId
|
||||
select user;
|
||||
var userids = new List<string>() { Const.sysglyId, Const.hfnbdId, Const.sedinId };
|
||||
var addUserList = Funs.DB.Sys_User.Where(x => userids.Contains(x.UserId));
|
||||
var users = userList.ToList();
|
||||
if (addUserList.Count() > 0)
|
||||
{
|
||||
users.AddRange(addUserList);
|
||||
}
|
||||
//检查人和审核人
|
||||
if (users.Count() > 0)
|
||||
{
|
||||
@@ -103,11 +127,13 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
ddlInspectUser.DataValueField = "UserId";
|
||||
ddlInspectUser.DataSource = users;
|
||||
ddlInspectUser.DataBind();
|
||||
ddlInspectUser.SelectedValue = this.CurrUser.UserId;
|
||||
//审核人
|
||||
ddlApproveUser.DataTextField = "UserName";
|
||||
ddlApproveUser.DataValueField = "UserId";
|
||||
ddlApproveUser.DataSource = users;
|
||||
ddlApproveUser.DataBind();
|
||||
ddlApproveUser.SelectedValue = this.CurrUser.UserId;
|
||||
}
|
||||
var model = Funs.DB.PreRun_InspectTailTerm.FirstOrDefault(x => x.TailTermId == this.TailTermId);
|
||||
if (model != null)
|
||||
@@ -121,60 +147,64 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
//问题类别
|
||||
ddlProblemType.SelectedValue = model.ProblemType.ToString();
|
||||
//绑定管道或者设备
|
||||
if (model.ProblemType == 1)
|
||||
var termitemlist = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.WorkPackType == model.ProblemType).GroupBy(x => new { x.SubInspectId, x.InspectionResults, x.PropertyTechnologyId, x.WorkPackType });
|
||||
if (termitemlist.Count() > 0)
|
||||
{
|
||||
var sysPipingData = from proper in Funs.DB.PreRun_PropertySysPiping
|
||||
join selectproper in Funs.DB.PreRun_SubPropertySelect on proper.PropertyId equals selectproper.PropertyId
|
||||
join termitem in Funs.DB.PreRun_SubInspectTermItem on proper.PropertyId equals termitem.PropertyTechnologyId
|
||||
where termitem.InspectionResults == 0 && termitem.InspectedUser == this.CurrUser.UserId
|
||||
group proper by new { proper.PropertyId, proper.PipingCode } into t
|
||||
select new
|
||||
{
|
||||
Id = t.Key.PropertyId,
|
||||
Code = $"管道:({t.Key.PipingCode})"
|
||||
};
|
||||
if (sysPipingData.Count() > 0)
|
||||
var ids = string.Join(",", termitemlist.Select(x => x.Key.PropertyTechnologyId)).Split(',');
|
||||
if (ddlProblemType.SelectedValue == "1")
|
||||
{
|
||||
ddlQuestionTechnologyId.DataTextField = "Code";
|
||||
ddlQuestionTechnologyId.DataValueField = "Id";
|
||||
ddlQuestionTechnologyId.DataSource = sysPipingData;
|
||||
ddlQuestionTechnologyId.DataBind();
|
||||
var piplist = Funs.DB.PreRun_PropertySysPiping.Where(x => ids.Contains(x.PropertyId));
|
||||
foreach (var item in termitemlist)
|
||||
{
|
||||
var pid = item.Key.PropertyTechnologyId.Split(',');
|
||||
var codes = piplist.Where(x => pid.Contains(x.PropertyId)).ToList();
|
||||
selectList.Add(new SelectPropertyTechnology()
|
||||
{
|
||||
Id = item.Key.SubInspectId,
|
||||
Code = $"管道:{string.Join(",", codes.ConvertAll(x => x.PipingCode))}"
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
var sysPipingData = from technology in Funs.DB.PreRun_TechnologySysPiping
|
||||
join selecttechnology in Funs.DB.PreRun_SubTechnologySelect on technology.TechnologyId equals selecttechnology.TechnologyId
|
||||
join termitem in Funs.DB.PreRun_SubInspectTermItem on technology.TechnologyId equals termitem.PropertyTechnologyId
|
||||
where termitem.InspectionResults == 0 && termitem.InspectedUser == this.CurrUser.UserId
|
||||
group technology by new { technology.TechnologyId, technology.TagNumber } into t
|
||||
select new
|
||||
{
|
||||
Id = t.Key.TechnologyId,
|
||||
Code = $"设备:({t.Key.TagNumber})"
|
||||
};
|
||||
if (sysPipingData.Count() > 0)
|
||||
else
|
||||
{
|
||||
ddlQuestionTechnologyId.DataTextField = "Code";
|
||||
ddlQuestionTechnologyId.DataValueField = "Id";
|
||||
ddlQuestionTechnologyId.DataSource = sysPipingData;
|
||||
ddlQuestionTechnologyId.DataBind();
|
||||
var techlist = Funs.DB.PreRun_TechnologySysPiping.Where(x => ids.Contains(x.TechnologyId));
|
||||
foreach (var item in termitemlist)
|
||||
{
|
||||
var pid = item.Key.PropertyTechnologyId.Split(',');
|
||||
var codes = techlist.Where(x => pid.Contains(x.TechnologyId)).ToList();
|
||||
selectList.Add(new SelectPropertyTechnology()
|
||||
{
|
||||
Id = item.Key.SubInspectId,
|
||||
Code = $"设备:{string.Join(",", codes.ConvertAll(x => x.TagNumber))}"
|
||||
});
|
||||
}
|
||||
}
|
||||
if (selectList.Count > 0)
|
||||
{
|
||||
ddlSubInspectId.DataTextField = "Code";
|
||||
ddlSubInspectId.DataValueField = "Id";
|
||||
ddlSubInspectId.DataSource = selectList;
|
||||
ddlSubInspectId.DataBind();
|
||||
}
|
||||
else
|
||||
{
|
||||
ddlSubInspectId.Items.Insert(0, new ListItem("==无数据==", ""));
|
||||
}
|
||||
}
|
||||
//管道/设备
|
||||
ddlQuestionTechnologyId.SelectedValue = model.QuestionTechnologyId;
|
||||
ddlSubInspectId.SelectedValue = model.SubInspectId;
|
||||
//绑定检查项
|
||||
if (!string.IsNullOrWhiteSpace(ddlQuestionTechnologyId.SelectedValue))
|
||||
if (!string.IsNullOrWhiteSpace(ddlSubInspectId.SelectedValue))
|
||||
{
|
||||
var TermItemIds = Funs.DB.PreRun_InspectTailTerm.Where(x => x.ProjectId == this.CurrUser.LoginProjectId && x.TailTermId != this.TailTermId).Select(a => a.TermItemId).ToList();
|
||||
var list = new List<PreRun_SubInspectTermItem>();
|
||||
if (TermItemIds.Count > 0)
|
||||
{
|
||||
list = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.PropertyTechnologyId == ddlQuestionTechnologyId.SelectedValue && !TermItemIds.Contains(x.TermItemId)).ToList();
|
||||
list = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.SubInspectId == ddlSubInspectId.SelectedValue && !TermItemIds.Contains(x.TermItemId)).ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
list = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.PropertyTechnologyId == ddlQuestionTechnologyId.SelectedValue).ToList();
|
||||
list = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.SubInspectId == ddlSubInspectId.SelectedValue).ToList();
|
||||
}
|
||||
if (list.Count() > 0)
|
||||
{
|
||||
@@ -212,6 +242,32 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
string code = projectModel.ProjectCode + "-06-CM03-XJ-";
|
||||
txtTailTermCode.Text = SQLHelper.RunProcNewId("SpGetNewCode5", "dbo.PreRun_InspectTailTerm", "TailTermCode", code);
|
||||
}
|
||||
if (!string.IsNullOrWhiteSpace(TermItemId))
|
||||
{
|
||||
var itemTerm = Funs.DB.PreRun_SubInspectTermItem.FirstOrDefault(x => x.TermItemId == this.TermItemId);
|
||||
if (itemTerm != null)
|
||||
{
|
||||
var workPackType = itemTerm.WorkPackType;
|
||||
if (workPackType == 0)
|
||||
{
|
||||
if (Funs.DB.PreRun_PropertySysPiping.Count(x => x.PropertyId == itemTerm.PropertyTechnologyId) > 0)
|
||||
{
|
||||
workPackType = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
workPackType = 2;
|
||||
}
|
||||
}
|
||||
ddlProblemType.SelectedValue = workPackType.ToString();
|
||||
//管道/设备
|
||||
ddlProblemType_SelectedIndexChanged(null, null);
|
||||
ddlSubInspectId.SelectedValue = itemTerm.SubInspectId;
|
||||
//检查项
|
||||
ddlSubInspectId_SelectedIndexChanged(null, null);
|
||||
ddlTermItemId.SelectedValue = itemTerm.TermItemId;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -248,7 +304,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
ShowNotify("请选择问题类别!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlQuestionTechnologyId.SelectedValue))
|
||||
if (string.IsNullOrWhiteSpace(ddlSubInspectId.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择管道/设备!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
@@ -281,7 +337,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
model.TailTermCode = txtTailTermCode.Text;
|
||||
model.ConstructionUnit = ddlConstructionUnit.SelectedValue;
|
||||
model.ProblemType = int.Parse(ddlProblemType.SelectedValue);
|
||||
model.QuestionTechnologyId = ddlQuestionTechnologyId.SelectedValue;
|
||||
model.SubInspectId = ddlSubInspectId.SelectedValue;
|
||||
model.TermItemId = ddlTermItemId.SelectedValue;
|
||||
model.QuestionDesc = txtQuestionDesc.Text.Trim();
|
||||
model.RectifyOpinion = txtRectifyOpinion.Text.Trim();
|
||||
@@ -320,7 +376,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
ShowNotify("请选择问题类别!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(ddlQuestionTechnologyId.SelectedValue))
|
||||
if (string.IsNullOrWhiteSpace(ddlSubInspectId.SelectedValue))
|
||||
{
|
||||
ShowNotify("请选择管道/设备!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
@@ -353,7 +409,7 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
model.TailTermCode = txtTailTermCode.Text;
|
||||
model.ConstructionUnit = ddlConstructionUnit.SelectedValue;
|
||||
model.ProblemType = int.Parse(ddlProblemType.SelectedValue);
|
||||
model.QuestionTechnologyId = ddlQuestionTechnologyId.SelectedValue;
|
||||
model.SubInspectId = ddlSubInspectId.SelectedValue;
|
||||
model.TermItemId = ddlTermItemId.SelectedValue;
|
||||
model.QuestionDesc = txtQuestionDesc.Text.Trim();
|
||||
model.RectifyOpinion = txtRectifyOpinion.Text.Trim();
|
||||
@@ -404,54 +460,51 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(ddlProblemType.SelectedValue))
|
||||
{
|
||||
if (ddlProblemType.SelectedValue == "1")
|
||||
var selectList = new List<SelectPropertyTechnology>();
|
||||
var wtype = int.Parse(ddlProblemType.SelectedValue);
|
||||
var list = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.WorkPackType == wtype).GroupBy(x => new { x.SubInspectId, x.InspectionResults, x.PropertyTechnologyId, x.WorkPackType });
|
||||
if (list.Count() > 0)
|
||||
{
|
||||
var sysPipingData = from proper in Funs.DB.PreRun_PropertySysPiping
|
||||
join selectproper in Funs.DB.PreRun_SubPropertySelect on proper.PropertyId equals selectproper.PropertyId
|
||||
join termitem in Funs.DB.PreRun_SubInspectTermItem on proper.PropertyId equals termitem.PropertyTechnologyId
|
||||
where termitem.InspectionResults == 0 && termitem.InspectedUser == this.CurrUser.UserId
|
||||
group proper by new { proper.PropertyId, proper.PipingCode } into t
|
||||
select new
|
||||
{
|
||||
Id = t.Key.PropertyId,
|
||||
Code = $"管道:({t.Key.PipingCode})"
|
||||
};
|
||||
ddlQuestionTechnologyId.Items.Clear();
|
||||
if (sysPipingData.Count() > 0)
|
||||
var ids = string.Join(",", list.Select(x => x.Key.PropertyTechnologyId)).Split(',');
|
||||
if (ddlProblemType.SelectedValue == "1")
|
||||
{
|
||||
ddlQuestionTechnologyId.DataTextField = "Code";
|
||||
ddlQuestionTechnologyId.DataValueField = "Id";
|
||||
ddlQuestionTechnologyId.DataSource = sysPipingData;
|
||||
ddlQuestionTechnologyId.DataBind();
|
||||
var piplist = Funs.DB.PreRun_PropertySysPiping.Where(x => ids.Contains(x.PropertyId)).ToList();
|
||||
foreach (var item in list)
|
||||
{
|
||||
var pid = item.Key.PropertyTechnologyId.Split(',');
|
||||
var codes = piplist.Where(x => pid.Contains(x.PropertyId)).ToList();
|
||||
selectList.Add(new SelectPropertyTechnology()
|
||||
{
|
||||
Id = item.Key.SubInspectId,
|
||||
Code = $"管道:{string.Join(",", codes.ConvertAll(x => x.PipingCode))}"
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
ddlQuestionTechnologyId.Items.Insert(0, new ListItem("==无数据==", ""));
|
||||
var techlist = Funs.DB.PreRun_TechnologySysPiping.Where(x => ids.Contains(x.TechnologyId)).ToList();
|
||||
foreach (var item in list)
|
||||
{
|
||||
var pid = item.Key.PropertyTechnologyId.Split(',');
|
||||
var codes = techlist.Where(x => pid.Contains(x.TechnologyId)).ToList();
|
||||
selectList.Add(new SelectPropertyTechnology()
|
||||
{
|
||||
Id = item.Key.SubInspectId,
|
||||
Code = $"设备:{string.Join(",", codes.ConvertAll(x => x.TagNumber))}"
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
var sysPipingData = from technology in Funs.DB.PreRun_TechnologySysPiping
|
||||
join selecttechnology in Funs.DB.PreRun_SubTechnologySelect on technology.TechnologyId equals selecttechnology.TechnologyId
|
||||
join termitem in Funs.DB.PreRun_SubInspectTermItem on technology.TechnologyId equals termitem.PropertyTechnologyId
|
||||
where termitem.InspectionResults == 0 && termitem.InspectedUser == this.CurrUser.UserId
|
||||
group technology by new { technology.TechnologyId, technology.TagNumber } into t
|
||||
select new
|
||||
{
|
||||
Id = t.Key.TechnologyId,
|
||||
Code = $"设备:({t.Key.TagNumber})"
|
||||
};
|
||||
ddlQuestionTechnologyId.Items.Clear();
|
||||
if (sysPipingData.Count() > 0)
|
||||
if (selectList.Count > 0)
|
||||
{
|
||||
ddlQuestionTechnologyId.DataTextField = "Code";
|
||||
ddlQuestionTechnologyId.DataValueField = "Id";
|
||||
ddlQuestionTechnologyId.DataSource = sysPipingData;
|
||||
ddlQuestionTechnologyId.DataBind();
|
||||
ddlSubInspectId.DataTextField = "Code";
|
||||
ddlSubInspectId.DataValueField = "Id";
|
||||
ddlSubInspectId.DataSource = selectList;
|
||||
ddlSubInspectId.DataBind();
|
||||
}
|
||||
else
|
||||
{
|
||||
ddlQuestionTechnologyId.Items.Insert(0, new ListItem("==无数据==", ""));
|
||||
ddlSubInspectId.Items.Insert(0, new ListItem("==无数据==", ""));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -460,18 +513,18 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
/// <summary>
|
||||
/// 管道/设备
|
||||
/// </summary>
|
||||
protected void ddlQuestionTechnologyId_SelectedIndexChanged(object sender, EventArgs e)
|
||||
protected void ddlSubInspectId_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(ddlQuestionTechnologyId.SelectedValue)) return;
|
||||
if (string.IsNullOrWhiteSpace(ddlSubInspectId.SelectedValue)) return;
|
||||
var TermItemIds = Funs.DB.PreRun_InspectTailTerm.Where(x => x.ProjectId == this.CurrUser.LoginProjectId && x.TailTermId != this.TailTermId).Select(a => a.TermItemId).ToList();
|
||||
var list = new List<PreRun_SubInspectTermItem>();
|
||||
if (TermItemIds.Count > 0)
|
||||
{
|
||||
list = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.PropertyTechnologyId == ddlQuestionTechnologyId.SelectedValue && !TermItemIds.Contains(x.TermItemId)).ToList();
|
||||
list = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.SubInspectId == ddlSubInspectId.SelectedValue && !TermItemIds.Contains(x.TermItemId)).ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
list = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.PropertyTechnologyId == ddlQuestionTechnologyId.SelectedValue).ToList();
|
||||
list = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.SubInspectId == ddlSubInspectId.SelectedValue).ToList();
|
||||
}
|
||||
ddlTermItemId.Items.Clear();
|
||||
if (list.Count() > 0)
|
||||
@@ -494,6 +547,30 @@ namespace FineUIPro.Web.TestRun.BeforeTestRun
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 管道/设备
|
||||
/// </summary>
|
||||
public class SelectPropertyTechnology
|
||||
{
|
||||
/// <summary>
|
||||
/// 主键
|
||||
/// </summary>
|
||||
public string Id { get; set; }
|
||||
/// <summary>
|
||||
/// 编码
|
||||
/// </summary>
|
||||
public string Code { get; set; }
|
||||
/// <summary>
|
||||
/// 工作包主键
|
||||
/// </summary>
|
||||
public string WorkPackId { get; set; }
|
||||
/// <summary>
|
||||
/// 子系统主键
|
||||
/// </summary>
|
||||
public string SubSystemId { get; set; }
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
Reference in New Issue
Block a user