using BLL;
using Model;
using System;
using System.Linq;
namespace FineUIPro.Web.ZHGL.Information
{
public partial class SafetyBriefingEdit : PageBase
{
#region 定义变量
///
/// 报表主键Id
///
public string SafetyBriefingId
{
get
{
return (string)ViewState["SafetyBriefingId"];
}
set
{
ViewState["SafetyBriefingId"] = value;
}
}
#endregion
#region 加载页面
///
/// 加载页面
///
///
///
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.GetButtonPower();
BLL.ConstValue.InitConstValueDropDownList(this.drpMonth, ConstValue.Group_0009, false);
BLL.ConstValue.InitConstValueDropDownList(this.drpYear, ConstValue.Group_0008, false);
this.drpUnit.DataTextField = "UnitName";
drpUnit.DataValueField = "UnitId";
drpUnit.DataSource = BLL.UnitService.GetThisUnitDropDownList();
drpUnit.DataBind();
this.drpUnit.Readonly = true;
BLL.UserService.InitUserUnitIdDropDownList(this.drpCompileMan, this.drpUnit.SelectedValue, true);
string unitId = Request.QueryString["UnitId"];
string year = Request.QueryString["Year"];
string months = Request.QueryString["Months"];
SafetyBriefingId = Request.QueryString["safetyBriefingId"];
if (!String.IsNullOrEmpty(SafetyBriefingId))
{
var report = BLL.SafetyBriefingService.GetSafetyBriefingById(SafetyBriefingId);
if (report != null)
{
this.btnSave.Hidden = true;
this.btnCopy.Hidden = true;
if (this.CurrUser.UserId == BLL.Const.sysglyId || this.CurrUser.UserId == BLL.Const.hfnbdId)
{
this.btnSave.Hidden = false;
}
if (report.UpState == BLL.Const.UpState_3)
{
this.btnSave.Hidden = true;
this.btnUpdata.Hidden = true;
}
drpMonth.SelectedValue = report.Month.ToString();
drpYear.SelectedValue = report.YearId.ToString();
drpUnit.SelectedValue = report.UnitId;
if (!string.IsNullOrEmpty(report.CompileMan))
{
this.drpCompileMan.SelectedValue = report.CompileMan;
}
this.txtAuditor.Text = report.Auditor;
this.txtApprover.Text = report.Approver;
this.txtMainWork.Text = report.MainWork;
this.txtHazardRecording.Text = report.HazardRecording;
this.txtSafetyAccident.Text = report.SafetyAccident;
this.txtEPAccident.Text = report.EPAccident;
this.txtOHAccident.Text = report.OHAccident;
this.txtWorkPermitNum.Text = report.WorkPermitNum;
this.txtHiddenDangerDetection.Text = report.HiddenDangerDetection;
this.txtRectificationSituation.Text = report.RectificationSituation;
this.txtCheckProblemsRectification.Text = report.CheckProblemsRectification;
this.txtPendingProject.Text = report.PendingProject;
this.txtContractorManagement.Text = report.ContractorManagement;
this.txtEnvironmentalEmissions.Text = report.EnvironmentalEmissions;
this.txtNextMonthWorkPlan.Text = report.NextMonthWorkPlan;
}
}
else
{
this.btnCopy.Hidden = false;
drpMonth.SelectedValue = months;
drpYear.SelectedValue = year;
#region 获取项目上报数据
string mainWork = string.Empty;
string hazardRecording = string.Empty;
string safetyAccident = string.Empty;
string ePAccident = string.Empty;
string oHAccident = string.Empty;
string workPermitNum = string.Empty;
string hiddenDangerDetection = string.Empty;
string rectificationSituation = string.Empty;
string checkProblemsRectification = string.Empty;
string pendingProject = string.Empty;
string contractorManagement = string.Empty;
string environmentalEmissions = string.Empty;
string nextMonthWorkPlan = string.Empty;
DateTime date = Convert.ToDateTime(this.drpYear.SelectedValue + "-" + this.drpMonth.SelectedValue + "-01").AddDays(-1).AddMonths(1);
var projects = (from x in Funs.DB.Base_Project
where (x.ProjectState == BLL.Const.ProjectState_1 || x.ProjectState == null)
&& x.ProjectAttribute == "SHIYE"
&& x.StartDate <= date
select x).ToList();
foreach (var item in projects)
{
var report = Funs.DB.InformationProject_SafetyBriefing.FirstOrDefault(x => x.ProjectId == item.ProjectId && x.YearId == date.Year && x.Month == date.Month);
if (report != null)
{
mainWork += item.ProjectName + ":\r\n" + report.MainWork + "\r\n";
hazardRecording += item.ProjectName + ":\r\n" + report.HazardRecording + "\r\n";
safetyAccident += item.ProjectName + ":\r\n" + report.SafetyAccident + "\r\n";
ePAccident += item.ProjectName + ":\r\n" + report.EPAccident + "\r\n";
oHAccident += item.ProjectName + ":\r\n" + report.OHAccident + "\r\n";
workPermitNum += item.ProjectName + ":\r\n" + report.WorkPermitNum + "\r\n";
hiddenDangerDetection += item.ProjectName + ":\r\n" + report.HiddenDangerDetection + "\r\n";
rectificationSituation += item.ProjectName + ":\r\n" + report.RectificationSituation + "\r\n";
checkProblemsRectification += item.ProjectName + ":\r\n" + report.CheckProblemsRectification + "\r\n";
pendingProject += item.ProjectName + ":\r\n" + report.PendingProject + "\r\n";
contractorManagement += item.ProjectName + ":\r\n" + report.ContractorManagement + "\r\n";
environmentalEmissions += item.ProjectName + ":\r\n" + report.EnvironmentalEmissions + "\r\n";
nextMonthWorkPlan += item.ProjectName + ":\r\n" + report.NextMonthWorkPlan + "\r\n";
}
}
this.txtMainWork.Text = mainWork;
this.txtHazardRecording.Text = hazardRecording;
this.txtSafetyAccident.Text = safetyAccident;
this.txtEPAccident.Text = ePAccident;
this.txtOHAccident.Text = oHAccident;
this.txtWorkPermitNum.Text = workPermitNum;
this.txtHiddenDangerDetection.Text = hiddenDangerDetection;
this.txtRectificationSituation.Text = rectificationSituation;
this.txtCheckProblemsRectification.Text = checkProblemsRectification;
this.txtPendingProject.Text = pendingProject;
this.txtContractorManagement.Text = contractorManagement;
this.txtEnvironmentalEmissions.Text = environmentalEmissions;
this.txtNextMonthWorkPlan.Text = nextMonthWorkPlan;
#endregion
}
}
}
#endregion
#region 保存、上报
///
/// 保存数据
///
///
private void Save(string type)
{
Model.Information_SafetyBriefing report = new Information_SafetyBriefing
{
UnitId = drpUnit.SelectedValue,
YearId = Funs.GetNewIntOrZero(drpYear.SelectedValue),
Month = Funs.GetNewIntOrZero(drpMonth.SelectedValue),
CompileDate = DateTime.Now,
Auditor = this.txtAuditor.Text.Trim(),
Approver = this.txtApprover.Text.Trim(),
MainWork = this.txtMainWork.Text,
HazardRecording=this.txtHazardRecording.Text,
SafetyAccident=this.txtSafetyAccident.Text,
EPAccident=this.txtEPAccident.Text,
OHAccident=this.txtOHAccident.Text,
WorkPermitNum=this.txtWorkPermitNum.Text,
HiddenDangerDetection =this.txtHiddenDangerDetection.Text,
RectificationSituation=this.txtRectificationSituation.Text,
CheckProblemsRectification=this.txtCheckProblemsRectification.Text,
PendingProject=this.txtPendingProject.Text,
ContractorManagement=this.txtContractorManagement.Text,
EnvironmentalEmissions=this.txtEnvironmentalEmissions.Text,
NextMonthWorkPlan=this.txtNextMonthWorkPlan.Text
};
if (this.drpCompileMan.SelectedValue!=BLL.Const._Null)
{
report.CompileMan = this.drpCompileMan.SelectedValue;
}
if (String.IsNullOrEmpty(SafetyBriefingId))
{
Information_SafetyBriefing old = SafetyBriefingService.GetSafetyBriefingByUnitIdAndYearAndMonth(drpUnit.SelectedValue, Funs.GetNewIntOrZero(drpYear.SelectedValue), Funs.GetNewIntOrZero(drpMonth.SelectedValue));
if (old == null)
{
SafetyBriefingId = SQLHelper.GetNewID(typeof(Model.Information_SafetyBriefing));
report.SafetyBriefingId = SafetyBriefingId;
report.UpState = BLL.Const.UpState_2;
BLL.SafetyBriefingService.AddSafetyBriefing(report);
BLL.LogService.AddSys_Log(this.CurrUser, report.YearId.ToString() + "-" + report.Month.ToString(), report.SafetyBriefingId, BLL.Const.SafetyBriefingMenuId, BLL.Const.BtnAdd);
}
else
{
ShowNotify("该月份记录已存在!", MessageBoxIcon.Warning);
return;
}
}
else
{
report.SafetyBriefingId = SafetyBriefingId;
report.UpState = BLL.Const.UpState_2;
BLL.SafetyBriefingService.UpdateSafetyBriefing(report);
BLL.LogService.AddSys_Log(this.CurrUser, report.YearId.ToString() + "-" + report.Month.ToString(), report.SafetyBriefingId, BLL.Const.SafetyBriefingMenuId, BLL.Const.BtnModify);
}
if (type == "updata") //数据同步
{
if (report.UpState == BLL.Const.UpState_2)
{
string code = CNCECHSSEWebService.UpSafetyBriefing(report.SafetyBriefingId, this.CurrUser);
if (code == "1")
{
ShowNotify("同步成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
return;
}
else
{
Alert.ShowInParent("同步异常,请退出后重试!", MessageBoxIcon.Error);
}
}
else
{
ShowNotify("当前单据状态不能同步!", MessageBoxIcon.Warning);
return;
}
}
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
protected void btnSave_Click(object sender, EventArgs e)
{
Save("add");
}
protected void btnUpdata_Click(object sender, EventArgs e)
{
Save("updata");
}
#endregion
#region 获取按钮权限
///
/// 获取按钮权限
///
///
///
private void GetButtonPower()
{
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.SafetyBriefingMenuId);
if (buttonList.Count() > 0)
{
if (buttonList.Contains(BLL.Const.BtnSave))
{
this.btnSave.Hidden = false;
this.btnCopy.Hidden = false;
}
//if (buttonList.Contains(BLL.Const.BtnSaveUp))
//{
// this.btnUpdata.Hidden = false;
//}
//if (buttonList.Contains(BLL.Const.BtnSubmit))
//{
// this.btnSubmit.Hidden = false;
// //this.btnCopy.Hidden = false;
//}
}
}
#endregion
#region 复制上个月数据
///
/// 复制上个月的数据
///
///
///
protected void btnCopy_Click(object sender, EventArgs e)
{
DateTime? nowDate = Funs.GetNewDateTime(this.drpYear.SelectedValue + "-" + this.drpMonth.SelectedValue);
if (nowDate.HasValue)
{
DateTime showDate = new DateTime();
showDate = nowDate.Value.AddMonths(-1);
Model.Information_SafetyBriefing report = BLL.SafetyBriefingService.GetSafetyBriefingByUnitIdAndYearAndMonth(this.drpUnit.SelectedValue, showDate.Year, showDate.Month);
if (report != null)
{
Model.Information_SafetyBriefing newReport = new Information_SafetyBriefing();
this.SafetyBriefingId = SQLHelper.GetNewID(typeof(Model.Information_SafetyBriefing));
newReport.SafetyBriefingId = this.SafetyBriefingId;
newReport.UnitId = this.drpUnit.SelectedValue;
newReport.YearId = Convert.ToInt32(this.drpYear.SelectedValue);
newReport.Month = Convert.ToInt32(this.drpMonth.SelectedValue);
newReport.CompileMan = report.CompileMan;
newReport.CompileDate = report.CompileDate;
newReport.Auditor = report.Auditor;
newReport.Approver = report.Approver;
newReport.MainWork = report.MainWork;
newReport.HazardRecording = report.HazardRecording;
newReport.SafetyAccident = report.SafetyAccident;
newReport.EPAccident = report.EPAccident;
newReport.OHAccident = report.OHAccident;
newReport.WorkPermitNum = report.WorkPermitNum;
newReport.HiddenDangerDetection = report.HiddenDangerDetection;
newReport.RectificationSituation = report.RectificationSituation;
newReport.CheckProblemsRectification = report.CheckProblemsRectification;
newReport.PendingProject = report.PendingProject;
newReport.ContractorManagement = report.ContractorManagement;
newReport.EnvironmentalEmissions = report.EnvironmentalEmissions;
newReport.NextMonthWorkPlan = report.NextMonthWorkPlan;
newReport.UpState = BLL.Const.UpState_2;
BLL.SafetyBriefingService.AddSafetyBriefing(newReport);
GetValues(newReport.SafetyBriefingId);
}
}
}
///
/// 获取复制的值绑定到文本中
///
private void GetValues(string safetyBriefingId)
{
var report = BLL.SafetyBriefingService.GetSafetyBriefingById(safetyBriefingId);
if (report != null)
{
drpUnit.SelectedValue = report.UnitId;
drpYear.SelectedValue = report.YearId.ToString();
drpMonth.SelectedValue = report.Month.ToString();
drpCompileMan.SelectedValue = report.CompileMan;
txtAuditor.Text = report.Auditor;
txtApprover.Text = report.Approver;
txtMainWork.Text = report.MainWork;
txtHazardRecording.Text = report.HazardRecording;
txtSafetyAccident.Text = report.SafetyAccident;
txtEPAccident.Text = report.EPAccident;
txtOHAccident.Text = report.OHAccident;
txtWorkPermitNum.Text = report.WorkPermitNum;
txtHiddenDangerDetection.Text = report.HiddenDangerDetection;
txtRectificationSituation.Text = report.RectificationSituation;
txtCheckProblemsRectification.Text = report.CheckProblemsRectification;
txtPendingProject.Text = report.PendingProject;
txtContractorManagement.Text = report.ContractorManagement;
txtEnvironmentalEmissions.Text = report.EnvironmentalEmissions;
txtNextMonthWorkPlan.Text = report.NextMonthWorkPlan;
}
}
#endregion
}
}