2023-09-19 16:12:26 +08:00
using BLL ;
using Model ;
using System ;
using System.Collections.Generic ;
using System.Data ;
using System.Data.SqlClient ;
using System.Linq ;
using System.Web ;
using System.Web.UI ;
using System.Web.UI.WebControls ;
namespace FineUIPro.Web.TestRun.BeforeTestRun
{
public partial class InspectTailTermEdit : PageBase
{
/// <summary>
2023-11-06 11:16:46 +08:00
/// 检查表尾项主键
2023-09-19 16:12:26 +08:00
/// </summary>
public string TailTermId
{
get { return ( string ) ViewState [ "TailTermId" ] ; }
set { ViewState [ "TailTermId" ] = value ; }
}
2023-10-12 10:17:08 +08:00
/// <summary>
2023-11-06 11:16:46 +08:00
/// 检查项主键
2023-10-12 10:17:08 +08:00
/// </summary>
public string TermItemId
{
get { return ( string ) ViewState [ "TermItemId" ] ; }
set { ViewState [ "TermItemId" ] = value ; }
}
2023-09-19 16:12:26 +08:00
/// <summary>
/// 是否查看
/// </summary>
public bool IsView
{
get { return ( bool ) ViewState [ "IsView" ] ; }
set { ViewState [ "IsView" ] = value ; }
}
/// <summary>
/// 问题图片是否可编辑
/// </summary>
public int QuestionEditImg
{
get { return ( int ) ViewState [ "QuestionEditImg" ] ; }
set { ViewState [ "QuestionEditImg" ] = value ; }
}
protected void Page_Load ( object sender , EventArgs e )
{
if ( ! IsPostBack )
{
this . TailTermId = Request [ "TailTermId" ] ;
2023-10-12 10:17:08 +08:00
this . TermItemId = Request [ "TermItemId" ] ;
2023-09-19 16:12:26 +08:00
//是否查看
this . IsView = string . IsNullOrWhiteSpace ( Request [ "IsView" ] ) ? false : bool . Parse ( Request [ "IsView" ] ) ;
//数据绑定
PageInit ( ) ;
2023-10-24 10:17:27 +08:00
//处理和审批意见绑定
gvRecordBrid ( ) ;
2023-09-19 16:12:26 +08:00
//判断是否查看
if ( IsView )
{
btnSave . Hidden = true ;
btnSubmit . Hidden = true ;
QuestionEditImg = - 1 ;
2023-11-23 09:28:55 +08:00
//RectifyEditImg = -1;
2023-09-19 16:12:26 +08:00
txtTailTermCode . Enabled = false ;
ddlConstructionUnit . Enabled = false ;
ddlProblemType . Enabled = false ;
2023-10-12 10:17:08 +08:00
ddlSubInspectId . Enabled = false ;
2023-09-19 16:12:26 +08:00
ddlTermItemId . Enabled = false ;
txtQuestionDesc . Enabled = false ;
txtRectifyOpinion . Enabled = false ;
ddlApproveUser . Enabled = false ;
2023-10-24 10:17:27 +08:00
ddlHandleUser . Enabled = false ;
2023-09-19 16:12:26 +08:00
}
}
}
/// <summary>
/// 默认绑定
/// </summary>
public void PageInit ( )
{
QuestionEditImg = 0 ;
2023-11-23 09:28:55 +08:00
//RectifyEditImg = -1;
2023-10-12 10:17:08 +08:00
var selectList = new List < SelectPropertyTechnology > ( ) ;
2023-09-19 16:12:26 +08:00
//施工单位
UnitService . InitUnitByProjectIdUnitTypeDropDownList ( ddlConstructionUnit , this . CurrUser . LoginProjectId , BLL . Const . ProjectUnitType_2 , false ) ;
2023-10-12 10:17:08 +08:00
//检查人绑定
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 ) ;
}
2023-09-19 16:12:26 +08:00
//检查人和审核人
if ( users . Count ( ) > 0 )
{
2023-10-24 10:17:27 +08:00
//处理人
ddlHandleUser . DataTextField = "UserName" ;
ddlHandleUser . DataValueField = "UserId" ;
ddlHandleUser . DataSource = users ;
ddlHandleUser . DataBind ( ) ;
ddlHandleUser . SelectedValue = this . CurrUser . UserId ;
2023-09-19 16:12:26 +08:00
//审核人
ddlApproveUser . DataTextField = "UserName" ;
ddlApproveUser . DataValueField = "UserId" ;
ddlApproveUser . DataSource = users ;
ddlApproveUser . DataBind ( ) ;
2023-10-12 10:17:08 +08:00
ddlApproveUser . SelectedValue = this . CurrUser . UserId ;
2023-09-19 16:12:26 +08:00
}
var model = Funs . DB . PreRun_InspectTailTerm . FirstOrDefault ( x = > x . TailTermId = = this . TailTermId ) ;
if ( model ! = null )
{
//项目名称
txtProjectName . Text = model . ProjectName ;
//巡检编号
txtTailTermCode . Text = model . TailTermCode ;
//施工单位
ddlConstructionUnit . SelectedValue = model . ConstructionUnit ;
//问题类别
ddlProblemType . SelectedValue = model . ProblemType . ToString ( ) ;
2023-10-24 10:17:27 +08:00
//提出人
var inspectModel = users . FirstOrDefault ( x = > x . UserId = = model . InspectUser ) ;
if ( inspectModel ! = null )
{
lblInspectUser . Text = inspectModel . UserName ;
hidInspectUserId . Text = inspectModel . UserId ;
}
2023-09-19 16:12:26 +08:00
//绑定管道或者设备
2023-10-12 10:17:08 +08:00
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 )
2023-09-19 16:12:26 +08:00
{
2023-10-12 10:17:08 +08:00
var ids = string . Join ( "," , termitemlist . Select ( x = > x . Key . PropertyTechnologyId ) ) . Split ( ',' ) ;
if ( ddlProblemType . SelectedValue = = "1" )
2023-09-19 16:12:26 +08:00
{
2023-10-12 10:17:08 +08:00
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))}"
} ) ;
}
2023-09-19 16:12:26 +08:00
}
2023-10-12 10:17:08 +08:00
else
2023-09-19 16:12:26 +08:00
{
2023-10-12 10:17:08 +08:00
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 ( "==无数据==" , "" ) ) ;
2023-09-19 16:12:26 +08:00
}
}
//管道/设备
2023-10-12 10:17:08 +08:00
ddlSubInspectId . SelectedValue = model . SubInspectId ;
2023-09-19 16:12:26 +08:00
//绑定检查项
2023-10-12 10:17:08 +08:00
if ( ! string . IsNullOrWhiteSpace ( ddlSubInspectId . SelectedValue ) )
2023-09-19 16:12:26 +08:00
{
2023-11-06 11:16:46 +08:00
//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.SubInspectId == ddlSubInspectId.SelectedValue && !TermItemIds.Contains(x.TermItemId)).ToList();
//}
//else
//{
// list = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.SubInspectId == ddlSubInspectId.SelectedValue).ToList();
//}
var list = Funs . DB . PreRun_SubInspectTermItem . Where ( x = > x . InspectionResults = = 0 & & x . SubInspectId = = ddlSubInspectId . SelectedValue ) . ToList ( ) ;
2023-09-19 16:12:26 +08:00
if ( list . Count ( ) > 0 )
{
ddlTermItemId . DataTextField = "WorkInspectName" ;
ddlTermItemId . DataValueField = "TermItemId" ;
ddlTermItemId . DataSource = list ;
ddlTermItemId . DataBind ( ) ;
}
}
//检查项
ddlTermItemId . SelectedValue = model . TermItemId ;
//问题描述
txtQuestionDesc . Text = model . QuestionDesc ;
//整改意见
txtRectifyOpinion . Text = model . RectifyOpinion ;
2023-10-24 10:17:27 +08:00
//提出时间
lblRectifyTime . Text = model . RectifyTime ! = null ? model . RectifyTime . Value . ToString ( "yyyy-MM-dd" ) : string . Empty ;
//处理人
ddlHandleUser . SelectedValue = model . HandleUser ;
2023-09-19 16:12:26 +08:00
//审核人
ddlApproveUser . SelectedValue = model . ApproveUser ;
2023-10-24 10:17:27 +08:00
//整改完成日期
txtAdjustCompleteTime . Text = model . AdjustCompleteTime ! = null ? model . AdjustCompleteTime . Value . ToString ( "yyyy-MM-dd" ) : string . Empty ;
2023-09-19 16:12:26 +08:00
if ( model . ApproveState > 1 )
{
QuestionEditImg = - 1 ;
2023-11-23 09:28:55 +08:00
//RectifyEditImg = -1;
2023-09-19 16:12:26 +08:00
}
}
else
{
this . TailTermId = Guid . NewGuid ( ) . ToString ( ) ;
var projectModel = Funs . DB . Base_Project . FirstOrDefault ( e = > e . ProjectId = = this . CurrUser . LoginProjectId ) ;
if ( projectModel ! = null )
{
txtProjectName . Text = projectModel . ProjectName ;
string code = projectModel . ProjectCode + "-06-CM03-XJ-" ;
txtTailTermCode . Text = SQLHelper . RunProcNewId ( "SpGetNewCode5" , "dbo.PreRun_InspectTailTerm" , "TailTermCode" , code ) ;
}
2023-10-24 10:17:27 +08:00
if ( ! string . IsNullOrWhiteSpace ( this . TermItemId ) )
2023-10-12 10:17:08 +08:00
{
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 ;
2023-10-24 10:17:27 +08:00
//提出人
var inspectModel = users . FirstOrDefault ( x = > x . UserId = = itemTerm . InspectedUser ) ;
if ( inspectModel ! = null )
{
lblInspectUser . Text = inspectModel . UserName ;
hidInspectUserId . Text = inspectModel . UserId ;
}
//提出时间
lblRectifyTime . Text = DateTime . Now . ToString ( "yyyy-MM-dd" ) ;
2023-10-12 10:17:08 +08:00
}
}
2023-09-19 16:12:26 +08:00
}
}
/// <summary>
2023-10-24 10:17:27 +08:00
/// 处理和审批意见绑定
2023-09-19 16:12:26 +08:00
/// </summary>
2023-10-24 10:17:27 +08:00
public void gvRecordBrid ( )
2023-09-19 16:12:26 +08:00
{
2023-11-06 11:16:46 +08:00
string strSql = @"select a.InspectTermId,a.ApproveOpinion,a.ApproveTime,a.ApproveType,a.ApproveState,(case a.ApproveType when 0 then (case a.ApproveState when 0 then '处理退回' when 1 then '处理通过' else '' end) else (case a.ApproveState when 0 then '审批退回' when 1 then '审批通过' else '' end) end) as ApproveStateName,b.ConstructionUnit,d.UnitName as ConstructionUnitName,a.AddUser,a.AddTime from PreRun_InspectTermApproveRecords as a inner join PreRun_InspectTailTerm as b on a.TailTermId=b.TailTermId inner join PreRun_SubInspectTermItem as c on c.TermItemId=a.TermItemId inner join Base_Unit as d on d.UnitId=b.ConstructionUnit where 1=1 and a.ProjectId=@ProjectId and a.TailTermId=@TailTermId " ;
2023-09-19 16:12:26 +08:00
List < SqlParameter > listStr = new List < SqlParameter > ( ) ;
listStr . Add ( new SqlParameter ( "@ProjectId" , this . CurrUser . LoginProjectId ) ) ;
listStr . Add ( new SqlParameter ( "@TailTermId" , this . TailTermId ) ) ;
strSql + = " order by a.AddTime asc" ;
SqlParameter [ ] parameter = listStr . ToArray ( ) ;
DataTable tb = SQLHelper . GetDataTableRunText ( strSql , parameter ) ;
2023-10-24 10:17:27 +08:00
//处理意见
var handleTb = tb . AsEnumerable ( ) . Where ( row = > row . Field < int > ( "ApproveType" ) = = 0 ) ;
gvHandle . DataSource = handleTb ;
gvHandle . DataBind ( ) ;
//审批意见
var approveTb = tb . AsEnumerable ( ) . Where ( row = > row . Field < int > ( "ApproveType" ) = = 1 ) ;
gvApprove . DataSource = approveTb ;
2023-09-19 16:12:26 +08:00
gvApprove . DataBind ( ) ;
}
#region 按 钮
/// <summary>
/// 保存
/// </summary>
protected void btnSave_Click ( object sender , EventArgs e )
{
if ( string . IsNullOrWhiteSpace ( ddlConstructionUnit . SelectedValue ) )
{
ShowNotify ( "请选择施工单位!" , MessageBoxIcon . Warning ) ;
return ;
}
if ( string . IsNullOrWhiteSpace ( ddlProblemType . SelectedValue ) )
{
ShowNotify ( "请选择问题类别!" , MessageBoxIcon . Warning ) ;
return ;
}
2023-10-12 10:17:08 +08:00
if ( string . IsNullOrWhiteSpace ( ddlSubInspectId . SelectedValue ) )
2023-09-19 16:12:26 +08:00
{
ShowNotify ( "请选择管道/设备!" , MessageBoxIcon . Warning ) ;
return ;
}
if ( string . IsNullOrWhiteSpace ( ddlTermItemId . SelectedValue ) )
{
ShowNotify ( "请选择检查项!" , MessageBoxIcon . Warning ) ;
return ;
}
2023-10-24 10:17:27 +08:00
if ( string . IsNullOrWhiteSpace ( ddlHandleUser . SelectedValue ) )
2023-09-19 16:12:26 +08:00
{
2023-10-24 10:17:27 +08:00
ShowNotify ( "请选择处理人!" , MessageBoxIcon . Warning ) ;
2023-09-19 16:12:26 +08:00
return ;
}
if ( string . IsNullOrWhiteSpace ( ddlApproveUser . SelectedValue ) )
{
ShowNotify ( "请选择审核人!" , MessageBoxIcon . Warning ) ;
return ;
}
var isAdd = false ;
var model = Funs . DB . PreRun_InspectTailTerm . FirstOrDefault ( x = > x . TailTermId = = this . TailTermId ) ;
if ( model = = null )
{
isAdd = true ;
model = new PreRun_InspectTailTerm ( ) ;
model . TailTermId = this . TailTermId ;
model . ProjectId = this . CurrUser . LoginProjectId ;
}
model . ProjectName = txtProjectName . Text ;
model . TailTermCode = txtTailTermCode . Text ;
model . ConstructionUnit = ddlConstructionUnit . SelectedValue ;
model . ProblemType = int . Parse ( ddlProblemType . SelectedValue ) ;
2023-10-12 10:17:08 +08:00
model . SubInspectId = ddlSubInspectId . SelectedValue ;
2023-09-19 16:12:26 +08:00
model . TermItemId = ddlTermItemId . SelectedValue ;
model . QuestionDesc = txtQuestionDesc . Text . Trim ( ) ;
model . RectifyOpinion = txtRectifyOpinion . Text . Trim ( ) ;
2023-10-24 10:17:27 +08:00
model . RectifyTime = DateTime . Parse ( lblRectifyTime . Text ) ;
model . InspectUser = hidInspectUserId . Text ;
model . HandleUser = ddlHandleUser . SelectedValue ;
2023-09-19 16:12:26 +08:00
model . ApproveUser = ddlApproveUser . SelectedValue ;
2023-10-24 10:17:27 +08:00
model . AdjustCompleteTime = DateTime . Parse ( txtAdjustCompleteTime . Text ) ;
2023-09-19 16:12:26 +08:00
model . ApproveState = 0 ;
model . AddUser = this . CurrUser . LoginProjectId ;
model . AddTime = DateTime . Now ;
var workPack = Funs . DB . PreRun_SubInspectTermItem . FirstOrDefault ( x = > x . TermItemId = = model . TermItemId ) ;
if ( workPack ! = null )
{
model . WorkPackId = workPack . WorkPackId ;
}
if ( isAdd )
{
Funs . DB . PreRun_InspectTailTerm . InsertOnSubmit ( model ) ;
}
2023-11-06 11:16:46 +08:00
//判断尾项是否保存
var itemModel = Funs . DB . PreRun_SubInspectTermItem . FirstOrDefault ( x = > x . TermItemId = = this . TermItemId ) ;
if ( itemModel ! = null ) itemModel . InspectionResults = 0 ;
2023-09-19 16:12:26 +08:00
Funs . DB . SubmitChanges ( ) ;
ShowNotify ( "操作成功!" , MessageBoxIcon . Success ) ;
PageContext . RegisterStartupScript ( ActiveWindow . GetHidePostBackReference ( ) ) ;
}
/// <summary>
/// 保存并提交
/// </summary>
protected void btnSubmit_Click ( object sender , EventArgs e )
{
if ( string . IsNullOrWhiteSpace ( ddlConstructionUnit . SelectedValue ) )
{
ShowNotify ( "请选择施工单位!" , MessageBoxIcon . Warning ) ;
return ;
}
if ( string . IsNullOrWhiteSpace ( ddlProblemType . SelectedValue ) )
{
ShowNotify ( "请选择问题类别!" , MessageBoxIcon . Warning ) ;
return ;
}
2023-10-12 10:17:08 +08:00
if ( string . IsNullOrWhiteSpace ( ddlSubInspectId . SelectedValue ) )
2023-09-19 16:12:26 +08:00
{
ShowNotify ( "请选择管道/设备!" , MessageBoxIcon . Warning ) ;
return ;
}
if ( string . IsNullOrWhiteSpace ( ddlTermItemId . SelectedValue ) )
{
ShowNotify ( "请选择检查项!" , MessageBoxIcon . Warning ) ;
return ;
}
2023-10-24 10:17:27 +08:00
if ( string . IsNullOrWhiteSpace ( ddlHandleUser . SelectedValue ) )
2023-09-19 16:12:26 +08:00
{
2023-10-24 10:17:27 +08:00
ShowNotify ( "请选择处理人!" , MessageBoxIcon . Warning ) ;
2023-09-19 16:12:26 +08:00
return ;
}
if ( string . IsNullOrWhiteSpace ( ddlApproveUser . SelectedValue ) )
{
ShowNotify ( "请选择审核人!" , MessageBoxIcon . Warning ) ;
return ;
}
var isAdd = false ;
var model = Funs . DB . PreRun_InspectTailTerm . FirstOrDefault ( x = > x . TailTermId = = this . TailTermId ) ;
if ( model = = null )
{
isAdd = true ;
model = new PreRun_InspectTailTerm ( ) ;
model . TailTermId = this . TailTermId ;
model . ProjectId = this . CurrUser . LoginProjectId ;
}
model . ProjectName = txtProjectName . Text ;
model . TailTermCode = txtTailTermCode . Text ;
model . ConstructionUnit = ddlConstructionUnit . SelectedValue ;
model . ProblemType = int . Parse ( ddlProblemType . SelectedValue ) ;
2023-10-12 10:17:08 +08:00
model . SubInspectId = ddlSubInspectId . SelectedValue ;
2023-09-19 16:12:26 +08:00
model . TermItemId = ddlTermItemId . SelectedValue ;
model . QuestionDesc = txtQuestionDesc . Text . Trim ( ) ;
model . RectifyOpinion = txtRectifyOpinion . Text . Trim ( ) ;
2023-10-24 10:17:27 +08:00
model . RectifyTime = DateTime . Parse ( lblRectifyTime . Text ) ;
model . InspectUser = hidInspectUserId . Text ;
model . HandleUser = ddlHandleUser . SelectedValue ;
2023-09-19 16:12:26 +08:00
model . ApproveUser = ddlApproveUser . SelectedValue ;
2023-10-24 10:17:27 +08:00
model . AdjustCompleteTime = DateTime . Parse ( txtAdjustCompleteTime . Text ) ;
model . ApproveState = 1 ;
2023-09-19 16:12:26 +08:00
model . AddUser = this . CurrUser . LoginProjectId ;
model . AddTime = DateTime . Now ;
var workPack = Funs . DB . PreRun_SubInspectTermItem . FirstOrDefault ( x = > x . TermItemId = = model . TermItemId ) ;
if ( workPack ! = null )
{
model . WorkPackId = workPack . WorkPackId ;
}
if ( isAdd )
{
Funs . DB . PreRun_InspectTailTerm . InsertOnSubmit ( model ) ;
}
2024-01-05 09:40:50 +08:00
//判断尾项是否保存
var itemModel = Funs . DB . PreRun_SubInspectTermItem . FirstOrDefault ( x = > x . TermItemId = = this . TermItemId ) ;
if ( itemModel ! = null ) itemModel . InspectionResults = 0 ;
2023-09-19 16:12:26 +08:00
Funs . DB . SubmitChanges ( ) ;
ShowNotify ( "操作成功!" , MessageBoxIcon . Success ) ;
PageContext . RegisterStartupScript ( ActiveWindow . GetHidePostBackReference ( ) ) ;
}
/// <summary>
/// 问题图片
/// </summary>
protected void imgBtnQuestionFile_Click ( object sender , EventArgs e )
{
PageContext . RegisterStartupScript ( WindowAtt . GetShowReference ( String . Format ( "../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckControl&menuId={2}" , QuestionEditImg , this . TailTermId + "q" , Const . InspectTailTerm ) ) ) ;
}
2023-11-23 09:28:55 +08:00
///// <summary>
///// 整改图片
///// </summary>
//protected void imgBtnRectifyFile_Click(object sender, EventArgs e)
//{
// PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/CheckControl&menuId={2}", RectifyEditImg, this.TailTermId + "h", Const.InspectTailTerm)));
//}
2023-09-19 16:12:26 +08:00
#endregion
#region 事 件
/// <summary>
/// 问题类别事件
/// </summary>
protected void ddlProblemType_SelectedIndexChanged ( object sender , EventArgs e )
{
if ( ! string . IsNullOrWhiteSpace ( ddlProblemType . SelectedValue ) )
{
2023-10-12 10:17:08 +08:00
var selectList = new List < SelectPropertyTechnology > ( ) ;
var wtype = int . Parse ( ddlProblemType . SelectedValue ) ;
2023-11-06 11:16:46 +08:00
//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 });
var list = Funs . DB . PreRun_SubInspectTermItem . Where ( x = > ( x . InspectionResults = = 0 & & x . WorkPackType = = wtype ) | | x . TermItemId = = this . TermItemId ) . GroupBy ( x = > new { x . SubInspectId , x . InspectionResults , x . PropertyTechnologyId , x . WorkPackType } ) ;
2023-10-12 10:17:08 +08:00
if ( list . Count ( ) > 0 )
2023-09-19 16:12:26 +08:00
{
2023-10-12 10:17:08 +08:00
var ids = string . Join ( "," , list . Select ( x = > x . Key . PropertyTechnologyId ) ) . Split ( ',' ) ;
if ( ddlProblemType . SelectedValue = = "1" )
2023-09-19 16:12:26 +08:00
{
2023-10-12 10:17:08 +08:00
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))}"
} ) ;
}
2023-09-19 16:12:26 +08:00
}
else
{
2023-10-12 10:17:08 +08:00
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))}"
} ) ;
}
2023-09-19 16:12:26 +08:00
}
2023-10-12 10:17:08 +08:00
if ( selectList . Count > 0 )
2023-09-19 16:12:26 +08:00
{
2023-10-12 10:17:08 +08:00
ddlSubInspectId . DataTextField = "Code" ;
ddlSubInspectId . DataValueField = "Id" ;
ddlSubInspectId . DataSource = selectList ;
ddlSubInspectId . DataBind ( ) ;
2023-09-19 16:12:26 +08:00
}
else
{
2023-10-12 10:17:08 +08:00
ddlSubInspectId . Items . Insert ( 0 , new ListItem ( "==无数据==" , "" ) ) ;
2023-09-19 16:12:26 +08:00
}
}
2023-10-24 10:17:27 +08:00
else
{
ddlSubInspectId . DataSource = null ;
ddlSubInspectId . DataBind ( ) ;
ddlSubInspectId . Items . Insert ( 0 , new ListItem ( "==无数据==" , "" ) ) ;
ddlTermItemId . DataSource = null ;
ddlTermItemId . DataBind ( ) ;
ddlTermItemId . Items . Insert ( 0 , new ListItem ( "==无数据==" , "" ) ) ;
}
2023-09-19 16:12:26 +08:00
}
}
/// <summary>
/// 管道/设备
/// </summary>
2023-10-12 10:17:08 +08:00
protected void ddlSubInspectId_SelectedIndexChanged ( object sender , EventArgs e )
2023-09-19 16:12:26 +08:00
{
2023-10-12 10:17:08 +08:00
if ( string . IsNullOrWhiteSpace ( ddlSubInspectId . SelectedValue ) ) return ;
2023-11-06 11:16:46 +08:00
//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.SubInspectId == ddlSubInspectId.SelectedValue && !TermItemIds.Contains(x.TermItemId)).ToList();
//}
//else
//{
// list = Funs.DB.PreRun_SubInspectTermItem.Where(x => x.InspectionResults == 0 && x.SubInspectId == ddlSubInspectId.SelectedValue).ToList();
//}
var list = Funs . DB . PreRun_SubInspectTermItem . Where ( x = > ( x . InspectionResults = = 0 & & x . SubInspectId = = ddlSubInspectId . SelectedValue ) | | x . TermItemId = = this . TermItemId ) . ToList ( ) ;
2023-09-19 16:12:26 +08:00
ddlTermItemId . Items . Clear ( ) ;
if ( list . Count ( ) > 0 )
{
ddlTermItemId . DataTextField = "WorkInspectName" ;
ddlTermItemId . DataValueField = "TermItemId" ;
ddlTermItemId . DataSource = list ;
ddlTermItemId . DataBind ( ) ;
}
else
{
ddlTermItemId . Items . Insert ( 0 , new ListItem ( "==无数据==" , "" ) ) ;
}
}
/// <summary>
2023-10-24 10:17:27 +08:00
/// 检查项
/// </summary>
protected void ddlTermItemId_SelectedIndexChanged ( object sender , EventArgs e )
{
var itemTerm = Funs . DB . PreRun_SubInspectTermItem . FirstOrDefault ( x = > x . TermItemId = = ddlTermItemId . SelectedValue ) ;
if ( itemTerm ! = null )
{
//提出人
var inspectModel = Funs . DB . Sys_User . FirstOrDefault ( x = > x . UserId = = itemTerm . InspectedUser ) ;
if ( inspectModel ! = null )
{
lblInspectUser . Text = inspectModel . UserName ;
hidInspectUserId . Text = inspectModel . UserId ;
}
//提出时间
lblRectifyTime . Text = DateTime . Now . ToString ( "yyyy-MM-dd" ) ;
}
}
/// <summary>
/// 关闭
2023-09-19 16:12:26 +08:00
/// </summary>
protected void WindowAtt_Close ( object sender , WindowCloseEventArgs e )
{
}
2023-10-12 10:17:08 +08:00
/// <summary>
2023-10-30 08:26:04 +08:00
/// 管道/设备
2023-10-12 10:17:08 +08:00
/// </summary>
2023-10-30 08:26:04 +08:00
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 ; }
}
2023-09-19 16:12:26 +08:00
2023-10-30 08:26:04 +08:00
#endregion
}
2023-09-19 16:12:26 +08:00
}