CNCEC_SUBQHSE_WUHUAN/SGGL/FineUIPro.Web/CQMS/ManageReport/QuarterlyProjectQualityEdit...

315 lines
19 KiB
C#

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,
UnitId = string.IsNullOrEmpty(this.CurrUser.UnitId) ? BLL.Const.UnitId_CWCEC : this.CurrUser.UnitId,
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();
// }
//}
}
}