2024-11-19 09:45:27 +08:00
using BLL ;
using Newtonsoft.Json.Linq ;
using System ;
using System.Collections.Generic ;
using System.Linq ;
namespace FineUIPro.Web.CQMS.ManageReport
{
public partial class QuarterlyProjectQualityEdit : PageBase
{
#region 定 义 变 量
/// <summary>
/// 主键
/// </summary>
public string QuarterlyProjectQualityId
{
get
{
return ( string ) ViewState [ "QuarterlyProjectQualityId" ] ;
}
set
{
ViewState [ "QuarterlyProjectQualityId" ] = value ;
}
}
#region 项 目 主 键
/// <summary>
/// 项目主键
/// </summary>
public string ProjectId
{
get
{
return ( string ) ViewState [ "ProjectId" ] ;
}
set
{
ViewState [ "ProjectId" ] = value ;
}
}
#endregion
#endregion
#region 加 载 页 面
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load ( object sender , EventArgs e )
{
if ( ! IsPostBack )
{
this . btnClose . OnClientClick = ActiveWindow . GetHideReference ( ) ;
this . ProjectId = this . CurrUser . LoginProjectId ;
if ( ! string . IsNullOrEmpty ( Request . Params [ "projectId" ] ) & & Request . Params [ "projectId" ] ! = this . CurrUser . LoginProjectId )
{
this . ProjectId = Request . Params [ "projectId" ] ;
}
BLL . ConstValue . InitConstValueDropDownList ( this . ddlYearId , BLL . ConstValue . Group_0008 , true ) ;
BLL . ConstValue . InitConstValueDropDownList ( this . ddlQuarter , BLL . ConstValue . Group_0011 , true ) ;
BLL . UserService . InitUserProjectIdUnitIdDropDownList ( this . drpCompileMan , this . ProjectId , this . CurrUser . UnitId , true ) ;
BLL . UserService . InitUserProjectIdUnitIdDropDownList ( this . drpResponsiblePerson , this . ProjectId , this . CurrUser . UnitId , true ) ;
this . QuarterlyProjectQualityId = Request . Params [ "QuarterlyProjectQualityId" ] ;
if ( ! string . IsNullOrEmpty ( this . QuarterlyProjectQualityId ) )
{
var quarterlyProjectQuality = BLL . ProjectQuarterlyProjectQualityService . GetQuarterlyProjectQualityById ( this . QuarterlyProjectQualityId ) ;
if ( quarterlyProjectQuality ! = null )
{
this . ProjectId = quarterlyProjectQuality . ProjectId ;
if ( quarterlyProjectQuality . Year . HasValue )
{
this . ddlYearId . SelectedValue = quarterlyProjectQuality . Year . ToString ( ) ;
}
if ( quarterlyProjectQuality . Quarter . HasValue )
{
this . ddlQuarter . SelectedValue = quarterlyProjectQuality . Quarter . ToString ( ) ;
}
if ( quarterlyProjectQuality . CompileDate ! = null )
{
this . txtCompileDate . Text = string . Format ( "{0:yyyy-MM-dd}" , quarterlyProjectQuality . CompileDate ) ;
}
if ( ! string . IsNullOrEmpty ( quarterlyProjectQuality . ResponsiblePerson ) )
{
this . drpResponsiblePerson . SelectedValue = quarterlyProjectQuality . ResponsiblePerson ;
}
if ( ! string . IsNullOrEmpty ( quarterlyProjectQuality . CompileMan ) )
{
this . drpCompileMan . SelectedValue = quarterlyProjectQuality . CompileMan ;
}
this . txtTel . Text = quarterlyProjectQuality . Tel ;
this . txtQualityManagePersonNum . Text = quarterlyProjectQuality . QualityManagePersonNum . HasValue ? quarterlyProjectQuality . QualityManagePersonNum . ToString ( ) : "" ;
this . txtAdvancedTitlePersonNum . Text = quarterlyProjectQuality . AdvancedTitlePersonNum . HasValue ? quarterlyProjectQuality . AdvancedTitlePersonNum . ToString ( ) : "" ;
this . txtIntermediateTitlePersonNum . Text = quarterlyProjectQuality . IntermediateTitlePersonNum . HasValue ? quarterlyProjectQuality . IntermediateTitlePersonNum . ToString ( ) : "" ;
this . txtBeImplementedProjectNum . Text = quarterlyProjectQuality . BeImplementedProjectNum . HasValue ? quarterlyProjectQuality . BeImplementedProjectNum . ToString ( ) : "" ;
this . txtStartImplementedProjectNum . Text = quarterlyProjectQuality . StartImplementedProjectNum . HasValue ? quarterlyProjectQuality . StartImplementedProjectNum . ToString ( ) : "" ;
this . txtAccumulativeStartImplemented . Text = quarterlyProjectQuality . AccumulativeStartImplemented . HasValue ? quarterlyProjectQuality . AccumulativeStartImplemented . ToString ( ) : "" ;
this . txtCompleteProjectNum . Text = quarterlyProjectQuality . CompleteProjectNum . HasValue ? quarterlyProjectQuality . CompleteProjectNum . ToString ( ) : "" ;
this . txtYearCompleteProjectNum . Text = quarterlyProjectQuality . YearCompleteProjectNum . HasValue ? quarterlyProjectQuality . YearCompleteProjectNum . ToString ( ) : "" ;
this . txtQuarterTotal . Text = quarterlyProjectQuality . QuarterTotal . HasValue ? quarterlyProjectQuality . QuarterTotal . ToString ( ) : "" ;
this . txtQuarterFirstPassNum . Text = quarterlyProjectQuality . QuarterFirstPassNum . HasValue ? quarterlyProjectQuality . QuarterFirstPassNum . ToString ( ) : "" ;
this . txtQuarterFirstPassRate . Text = quarterlyProjectQuality . QuarterFirstPassRate . HasValue ? quarterlyProjectQuality . QuarterFirstPassRate . ToString ( ) : "" ;
this . txtYearTotal . Text = quarterlyProjectQuality . YearTotal . HasValue ? quarterlyProjectQuality . YearTotal . ToString ( ) : "" ;
this . txtYearFirstPassNum . Text = quarterlyProjectQuality . YearFirstPassNum . HasValue ? quarterlyProjectQuality . YearFirstPassNum . ToString ( ) : "" ;
this . txtYearFirstPassRate . Text = quarterlyProjectQuality . YearFirstPassRate . HasValue ? quarterlyProjectQuality . YearFirstPassRate . ToString ( ) : "" ;
this . txtQuaterCheckSuperviseNum . Text = quarterlyProjectQuality . QuaterCheckSuperviseNum . HasValue ? quarterlyProjectQuality . QuaterCheckSuperviseNum . ToString ( ) : "" ;
this . txtQuaterCorrectiveNoticeNum . Text = quarterlyProjectQuality . QuaterCorrectiveNoticeNum . HasValue ? quarterlyProjectQuality . QuaterCorrectiveNoticeNum . ToString ( ) : "" ;
this . txtQuaterQualityProblemNum . Text = quarterlyProjectQuality . QuaterQualityProblemNum . HasValue ? quarterlyProjectQuality . QuaterQualityProblemNum . ToString ( ) : "" ;
this . txtQuaterClosedQualityProblemNum . Text = quarterlyProjectQuality . QuaterClosedQualityProblemNum . HasValue ? quarterlyProjectQuality . QuaterClosedQualityProblemNum . ToString ( ) : "" ;
this . txtYearCheckSuperviseNum . Text = quarterlyProjectQuality . YearCheckSuperviseNum . HasValue ? quarterlyProjectQuality . YearCheckSuperviseNum . ToString ( ) : "" ;
this . txtYearCorrectiveNoticeNum . Text = quarterlyProjectQuality . YearCorrectiveNoticeNum . HasValue ? quarterlyProjectQuality . YearCorrectiveNoticeNum . ToString ( ) : "" ;
this . txtYearQualityProblemNum . Text = quarterlyProjectQuality . YearQualityProblemNum . HasValue ? quarterlyProjectQuality . YearQualityProblemNum . ToString ( ) : "" ;
this . txtYearClosedQualityProblemNum . Text = quarterlyProjectQuality . YearClosedQualityProblemNum . HasValue ? quarterlyProjectQuality . YearClosedQualityProblemNum . ToString ( ) : "" ;
this . txtQuaterQualityAccidentNum . Text = quarterlyProjectQuality . QuaterQualityAccidentNum . HasValue ? quarterlyProjectQuality . QuaterQualityAccidentNum . ToString ( ) : "" ;
this . txtQuaterDirectEconomicLoss . Text = quarterlyProjectQuality . QuaterDirectEconomicLoss . HasValue ? quarterlyProjectQuality . QuaterDirectEconomicLoss . ToString ( ) : "" ;
this . txtYearQualityAccidentNum . Text = quarterlyProjectQuality . YearQualityAccidentNum . HasValue ? quarterlyProjectQuality . YearQualityAccidentNum . ToString ( ) : "" ;
this . txtYearDirectEconomicLoss . Text = quarterlyProjectQuality . YearDirectEconomicLoss . HasValue ? quarterlyProjectQuality . YearDirectEconomicLoss . ToString ( ) : "" ;
}
}
else
{
DateTime showDate = DateTime . Now . AddMonths ( - 3 ) ;
this . ddlQuarter . SelectedValue = Funs . GetNowQuarterlyByTime ( showDate ) . ToString ( ) ;
this . ddlYearId . SelectedValue = showDate . Year . ToString ( ) ;
this . txtCompileDate . Text = string . Format ( "{0:yyyy-MM-dd}" , DateTime . Now ) ;
DateTime startTime = Funs . GetQuarterlyMonths ( this . ddlYearId . SelectedValue , this . ddlQuarter . SelectedValue ) ;
DateTime endTime = startTime . AddMonths ( 3 ) ;
}
}
}
#endregion
#region 年 季 度 变 化 事 件
/// <summary>
/// 年季度变化事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void drpYear_SelectedIndexChanged ( object sender , EventArgs e )
{
if ( this . ddlYearId . SelectedValue ! = BLL . Const . _Null & & this . ddlQuarter . SelectedValue ! = BLL . Const . _Null )
{
DateTime startTime = Funs . GetQuarterlyMonths ( this . ddlYearId . SelectedValue , this . ddlQuarter . SelectedValue ) ;
DateTime endTime = startTime . AddMonths ( 3 ) ;
}
}
#endregion
#region 保 存
/// <summary>
/// 保存按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click ( object sender , EventArgs e )
{
if ( this . ddlYearId . SelectedValue = = BLL . Const . _Null )
{
Alert . ShowInTop ( "请选择年度" , MessageBoxIcon . Warning ) ;
return ;
}
if ( this . ddlQuarter . SelectedValue = = BLL . Const . _Null )
{
Alert . ShowInTop ( "请选择季度" , MessageBoxIcon . Warning ) ;
return ;
}
this . SaveData ( BLL . Const . BtnSave ) ;
PageContext . RegisterStartupScript ( ActiveWindow . GetHideRefreshReference ( ) ) ;
}
/// <summary>
/// 保存数据
/// </summary>
/// <param name="p"></param>
private void SaveData ( string type )
{
Model . InformationProject_QuarterlyProjectQuality quarterlyProjectQuality = new Model . InformationProject_QuarterlyProjectQuality
{
ProjectId = this . ProjectId ,
2025-08-08 17:54:10 +08:00
UnitId = string . IsNullOrEmpty ( this . CurrUser . UnitId ) ? Const . UnitId_XJYJ : this . CurrUser . UnitId ,
2024-11-19 09:45:27 +08:00
QualityManagePersonNum = Funs . GetNewInt ( this . txtQualityManagePersonNum . Text . Trim ( ) ) ,
AdvancedTitlePersonNum = Funs . GetNewInt ( this . txtAdvancedTitlePersonNum . Text . Trim ( ) ) ,
IntermediateTitlePersonNum = Funs . GetNewInt ( this . txtIntermediateTitlePersonNum . Text . Trim ( ) ) ,
BeImplementedProjectNum = Funs . GetNewInt ( this . txtBeImplementedProjectNum . Text . Trim ( ) ) ,
StartImplementedProjectNum = Funs . GetNewInt ( this . txtStartImplementedProjectNum . Text . Trim ( ) ) ,
AccumulativeStartImplemented = Funs . GetNewInt ( this . txtAccumulativeStartImplemented . Text . Trim ( ) ) ,
CompleteProjectNum = Funs . GetNewInt ( this . txtCompleteProjectNum . Text . Trim ( ) ) ,
YearCompleteProjectNum = Funs . GetNewInt ( this . txtYearCompleteProjectNum . Text . Trim ( ) ) ,
QuarterTotal = Funs . GetNewInt ( this . txtQuarterTotal . Text . Trim ( ) ) ,
QuarterFirstPassNum = Funs . GetNewInt ( this . txtQuarterFirstPassNum . Text . Trim ( ) ) ,
QuarterFirstPassRate = Funs . GetNewDecimal ( this . txtQuarterFirstPassRate . Text . Trim ( ) ) ,
YearTotal = Funs . GetNewInt ( this . txtYearTotal . Text . Trim ( ) ) ,
YearFirstPassNum = Funs . GetNewInt ( this . txtYearFirstPassNum . Text . Trim ( ) ) ,
YearFirstPassRate = Funs . GetNewDecimal ( this . txtYearFirstPassRate . Text . Trim ( ) ) ,
QuaterCheckSuperviseNum = Funs . GetNewInt ( this . txtQuaterCheckSuperviseNum . Text . Trim ( ) ) ,
QuaterCorrectiveNoticeNum = Funs . GetNewInt ( this . txtQuaterCorrectiveNoticeNum . Text . Trim ( ) ) ,
QuaterQualityProblemNum = Funs . GetNewInt ( this . txtQuaterQualityProblemNum . Text . Trim ( ) ) ,
QuaterClosedQualityProblemNum = Funs . GetNewInt ( this . txtQuaterClosedQualityProblemNum . Text . Trim ( ) ) ,
YearCheckSuperviseNum = Funs . GetNewInt ( this . txtYearCheckSuperviseNum . Text . Trim ( ) ) ,
YearCorrectiveNoticeNum = Funs . GetNewInt ( this . txtYearCorrectiveNoticeNum . Text . Trim ( ) ) ,
YearQualityProblemNum = Funs . GetNewInt ( this . txtYearQualityProblemNum . Text . Trim ( ) ) ,
YearClosedQualityProblemNum = Funs . GetNewInt ( this . txtYearClosedQualityProblemNum . Text . Trim ( ) ) ,
QuaterQualityAccidentNum = Funs . GetNewInt ( this . txtQuaterQualityAccidentNum . Text . Trim ( ) ) ,
QuaterDirectEconomicLoss = Funs . GetNewDecimal ( this . txtQuaterDirectEconomicLoss . Text . Trim ( ) ) ,
YearQualityAccidentNum = Funs . GetNewInt ( this . txtYearQualityAccidentNum . Text . Trim ( ) ) ,
YearDirectEconomicLoss = Funs . GetNewInt ( this . txtYearDirectEconomicLoss . Text . Trim ( ) ) ,
Tel = this . txtTel . Text . Trim ( )
} ;
if ( this . ddlYearId . SelectedValue ! = BLL . Const . _Null )
{
quarterlyProjectQuality . Year = Funs . GetNewIntOrZero ( this . ddlYearId . SelectedValue ) ;
}
if ( this . ddlQuarter . SelectedValue ! = BLL . Const . _Null )
{
quarterlyProjectQuality . Quarter = Funs . GetNewIntOrZero ( this . ddlQuarter . SelectedValue ) ;
}
if ( this . drpResponsiblePerson . SelectedValue ! = BLL . Const . _Null )
{
quarterlyProjectQuality . ResponsiblePerson = this . drpResponsiblePerson . SelectedValue ;
}
if ( this . drpCompileMan . SelectedValue ! = BLL . Const . _Null )
{
quarterlyProjectQuality . CompileMan = this . drpCompileMan . SelectedValue ;
}
quarterlyProjectQuality . CompileDate = Funs . GetNewDateTime ( this . txtCompileDate . Text . Trim ( ) ) ;
if ( ! string . IsNullOrEmpty ( this . QuarterlyProjectQualityId ) )
{
quarterlyProjectQuality . QuarterlyProjectQualityId = this . QuarterlyProjectQualityId ;
BLL . ProjectQuarterlyProjectQualityService . UpdateQuarterlyProjectQuality ( quarterlyProjectQuality ) ;
BLL . LogService . AddSys_Log ( this . CurrUser , quarterlyProjectQuality . Year . ToString ( ) + "-" + quarterlyProjectQuality . Quarter . ToString ( ) , quarterlyProjectQuality . QuarterlyProjectQualityId , BLL . Const . ProjectQuarterlyProjectQualityMenuId , BLL . Const . BtnModify ) ;
}
else
{
Model . InformationProject_QuarterlyProjectQuality oldDrillConductedQuarterlyReport = ( from x in Funs . DB . InformationProject_QuarterlyProjectQuality
where x . ProjectId = = quarterlyProjectQuality . ProjectId & & x . Year = = quarterlyProjectQuality . Year & & x . Quarter = = quarterlyProjectQuality . Quarter
select x ) . FirstOrDefault ( ) ;
if ( oldDrillConductedQuarterlyReport = = null )
{
this . QuarterlyProjectQualityId = SQLHelper . GetNewID ( typeof ( Model . InformationProject_QuarterlyProjectQuality ) ) ;
quarterlyProjectQuality . QuarterlyProjectQualityId = this . QuarterlyProjectQualityId ;
BLL . ProjectQuarterlyProjectQualityService . AddQuarterlyProjectQuality ( quarterlyProjectQuality ) ;
BLL . LogService . AddSys_Log ( this . CurrUser , quarterlyProjectQuality . Year . ToString ( ) + "-" + quarterlyProjectQuality . Quarter . ToString ( ) , quarterlyProjectQuality . QuarterlyProjectQualityId , BLL . Const . ProjectQuarterlyProjectQualityMenuId , BLL . Const . BtnAdd ) ;
}
else
{
Alert . ShowInTop ( "该季度记录已存在" , MessageBoxIcon . Warning ) ;
return ;
}
}
}
#endregion
/// <summary>
/// 本季度完成一次合格率
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtQuarterTotal_TextChanged ( object sender , EventArgs e )
{
if ( ! string . IsNullOrEmpty ( this . txtQuarterTotal . Text . Trim ( ) ) & & ! string . IsNullOrEmpty ( txtQuarterFirstPassNum . Text . Trim ( ) ) )
{
txtQuarterFirstPassRate . Text = ( Funs . GetNewDecimalOrZero ( txtQuarterFirstPassNum . Text . Trim ( ) ) / Funs . GetNewDecimalOrZero ( this . txtQuarterTotal . Text . Trim ( ) ) * 100 ) . ToString ( ) ;
}
else
{
this . txtQuarterFirstPassRate . Text = string . Empty ;
}
}
/// <summary>
/// 本年度完成一次合格率
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtYearTotal_TextChanged ( object sender , EventArgs e )
{
if ( ! string . IsNullOrEmpty ( this . txtYearTotal . Text . Trim ( ) ) & & ! string . IsNullOrEmpty ( this . txtYearFirstPassNum . Text . Trim ( ) ) )
{
this . txtYearFirstPassRate . Text = ( Funs . GetNewDecimalOrZero ( this . txtYearFirstPassNum . Text . Trim ( ) ) / Funs . GetNewDecimalOrZero ( this . txtYearTotal . Text . Trim ( ) ) * 100 ) . ToString ( ) ;
}
}
/// <summary>
/// 获取本年累计开始实施项目数量(个)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
//protected void txtStartImplementedProjectNum_TextChanged(object sender, EventArgs e)
//{
// var q = (from x in Funs.DB.InformationProject_QuarterlyProjectQuality where x.Year == Convert.ToInt32(this.ddlYearId.SelectedValue) select x.StartImplementedProjectNum).Sum();
// if (q > 0)
// {
// this.txtAccumulativeStartImplemented.Text = (q + Funs.GetNewIntOrZero(txtStartImplementedProjectNum.Text.Trim())).ToString();
// }
//}
/// <summary>
/// 获取本年累计完成(竣工)项目数量(个)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
//protected void txtCompleteProjectNum_TextChanged(object sender, EventArgs e)
//{
// var q = (from x in Funs.DB.InformationProject_QuarterlyProjectQuality where x.Year == Convert.ToInt32(this.ddlYearId.SelectedValue) select x.CompleteProjectNum).Sum();
// if (q > 0)
// {
// this.txtYearCompleteProjectNum.Text = (q + Funs.GetNewIntOrZero(this.txtCompleteProjectNum.Text.Trim())).ToString();
// }
//}
}
}