增加hse安全月报,功能尚未完善

This commit is contained in:
2024-08-21 16:47:57 +08:00
parent cb544cb297
commit 2c7ad19fb1
16 changed files with 2829 additions and 168 deletions
@@ -0,0 +1,421 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ManagerMonthCEdit.aspx.cs" Inherits="FineUIPro.Web.HSSE.Manager.ManagerMonthCEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>HSE月报新</title>
<base target="_self" />
<script type="text/javascript" src="../../res/index/js/jquery-3.4.1.min.js"></script>
<script src="../../Controls/My97DatePicker/WdatePicker.js" type="text/javascript"></script>
<style>
/*.myIframe {
overflow: hidden;*/ /* 隐藏滚动条 */
/*height: 100%;*/ /* 根据需要调整高度 */
/*}*/
</style>
<style>
.Toolbar2 {
position: absolute;
z-index: 999999;
right: 0;
width: 83px;
top: -43px;
background-color: rgba(0, 0, 0, 0);
}
.f-grid-row-summary .f-grid-cell-inner {
font-weight: bold;
color: red;
}
.photo {
height: 300px;
line-height: 300px;
overflow: hidden;
}
.photo img {
height: 300px;
vertical-align: middle;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" runat="server" />
<f:ContentPanel ID="ContentPanel1" IsFluid="true" CssClass="blockpanel" runat="server" BodyPadding="10px"
ShowBorder="true" ShowHeader="false" Title="内容面板">
<table id="Table1" runat="server" width="100%" cellpadding="0" cellspacing="0" align="center">
<tr>
<td style="width: 100%; background: url('../Images/bg-1.gif')">
<table id="tabbtn" runat="server" width="100%" style="background: url('../Images/bg-1.gif')"
cellpadding="0" cellspacing="0">
<tr>
<td align="left" valign="middle" style="width: 50%; font-size: 12pt; font-weight: bold">
<asp:Image ImageUrl="~/Images/lv-1.gif" ImageAlign="AbsMiddle" ID="image15" runat="server" />
&nbsp;编辑项目HSE月报
</td>
<td align="right" valign="middle" style="width: 50%; height: 30px;">
<f:Button ID="Button2" Icon="SystemSave" runat="server" ToolTip="保存" Text="保存" OnClick="btnSave_Click">
</f:Button>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table id="Table5" runat="server" width="100%" border="1" cellpadding="0" cellspacing="0"
bordercolor="#bcd2e7" bordercolordark="#bcd2e7" bordercolorlight="#bcd2e7">
<tr>
<td align="center" style="width: 24%;" rowspan="2">
<img alt="" src="../../Images/Logo.jpg" />
</td>
<td align="center" style="width: 46%; height: 30px; vertical-align: middle; font-size: 12pt;">
<asp:Label ID="lblProjectName" runat="server"></asp:Label>
</td>
<td align="left" style="width: 30%; vertical-align: bottom;" onkeypress="keypress()"
rowspan="2">
<asp:Label ID="Label1" runat="server" Text="编号"></asp:Label>
<asp:TextBox ID="txtPeriod" runat="server" Width="60px" CssClass="textboxStyleNone"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtPeriod"
Display="Dynamic" ErrorMessage="&quot;编号不能为空!&quot;" ForeColor="Red" ValidationGroup="Save">*</asp:RequiredFieldValidator>
<br />
<br />
</td>
</tr>
<tr>
<td align="center" style="width: 46%; height: 50px; vertical-align: middle; font-size: 20pt; font-weight: bold">
<asp:Label ID="lblTital" runat="server" Text="项 目 安 全 月 报"></asp:Label>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table id="Table2" runat="server" width="100%" cellpadding="0" cellspacing="0" border="1"
bordercolor="#bcd2e7" bordercolordark="#bcd2e7" bordercolorlight="#bcd2e7">
<tr style="height: 32px">
<td align="right" style="width: 10%">时间段&nbsp;
</td>
<td align="left" style="width: 60%">
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" ID="txtStartDate" AutoPostBack="true" OnTextChanged="TextBox_TextChanged" CssStyle=" margin-top: 10px;"
LabelAlign="right">
</f:DatePicker>
<f:Label ID="Label3" runat="server" Text="至">
</f:Label>
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" ID="txtEndDate" AutoPostBack="true" OnTextChanged="TextBox_TextChanged"
LabelAlign="right">
</f:DatePicker>
</td>
<td align="left" style="width: 30%">
<f:Label runat="server" Text="填报月份:"></f:Label>
<f:Label ID="txtReportMonths" runat="server">
</f:Label>
</td>
</tr>
</table>
</td>
</tr>
</table>
<%--1.项目概况--%>
<f:Panel ID="Panel1" IsFluid="true" Title="1.项目概况" runat="server" EnableCollapse="false" CssStyle="position: relative;"
ShowHeader="true">
<Items>
<f:Label ID="lbProjectName" runat="server" Label="项目名称" LabelWidth="160px">
</f:Label>
<f:Label ID="lblMainUnitName" runat="server" Label="用户名称" LabelWidth="160px">
</f:Label>
<f:Label ID="lblProjectAddress" runat="server" Label="项目地址" LabelWidth="160px">
</f:Label>
<f:Label ID="lblProjectCode" runat="server" Label="项目号" LabelWidth="160px">
</f:Label>
<f:Label ID="lblContractNo" runat="server" Label="合同号" LabelWidth="160px">
</f:Label>
<f:Label ID="lblProjectType" runat="server" Label="项目类型" LabelWidth="160px">
</f:Label>
<f:Label ID="lblWorkRange" runat="server" Label="工作范围" LabelWidth="160px">
</f:Label>
<f:Label ID="lblDuration" runat="server" Label="项目建设合同工期" LabelWidth="160px">
</f:Label>
<f:Label ID="lblStartDate" runat="server" Label="项目施工开工时间" LabelWidth="160px">
</f:Label>
<f:Label ID="lblEndDate" runat="server" Label="工程中间交接时间" LabelWidth="160px">
</f:Label>
</Items>
</f:Panel>
<f:Panel ID="Panel2" IsFluid="true" Title="2.本月项目现场HSE人力投入情况" runat="server" EnableCollapse="false" CssStyle="position: relative;"
ShowHeader="true">
<Items>
<f:Grid ID="gvPersonSort" ShowBorder="true" ShowHeader="false" Title="本月项目现场HSE人力投入情况"
runat="server" AllowCellEditing="true" ClicksToEdit="1" DataIDField="PersonSortId"
DataKeyNames="PersonSortId,UnitId" EnableMultiSelect="false" ShowGridHeader="true"
Height="420px" EnableColumnLines="true" EnableSummary="true"
SummaryPosition="Flow">
<Columns>
<f:TemplateField Width="250px" HeaderText="单位" HeaderTextAlign="Center" TextAlign="Left"
ColumnID="UnitId">
<ItemTemplate>
<asp:Label ID="Label4" runat="server" Text='<%# ConvertUnitName(Eval("UnitId")) %>'
ToolTip='<%# ConvertUnitName(Eval("UnitId")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:GroupField HeaderText="总人数" HeaderTextAlign="Center">
<Columns>
<f:RenderField Width="90px" ColumnID="SumPersonNum" DataField="SumPersonNum" FieldType="Int"
HeaderText="本部" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbSumPersonNum" NoDecimal="true" NoNegative="true" MinValue="0"
runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
<f:RenderField Width="90px" ColumnID="SumOutPersonNum" DataField="SumOutPersonNum" FieldType="Int"
HeaderText="外聘" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbSumOutPersonNum" NoDecimal="true" NoNegative="true" MinValue="0"
runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
</Columns>
</f:GroupField>
<f:RenderField Width="160px" ColumnID="HSEPersonNum" DataField="HSEPersonNum" FieldType="Int"
HeaderText="专职HSE管理人员数量" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbHSEPersonNum" NoDecimal="true" NoNegative="true" MinValue="0"
runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
<f:RenderField Width="200px" ColumnID="ContractRange" DataField="ContractRange" FieldType="String"
HeaderText="承包范围" HeaderTextAlign="Center" TextAlign="Left" ExpandUnusedSpace="true">
<Editor>
<f:TextBox runat="server" ID="txtContractRange">
</f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="200px" ColumnID="Remark" DataField="Remark" FieldType="String"
HeaderText="备注" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:TextBox runat="server" ID="txtRemark">
</f:TextBox>
</Editor>
</f:RenderField>
</Columns>
</f:Grid>
</Items>
</f:Panel>
<f:Panel ID="Panel3" IsFluid="true" Title="3.本月项目现场HSE工时/工日统计" runat="server" EnableCollapse="false" CssStyle="position: relative;"
ShowHeader="true">
<Items>
<f:Grid ID="gvHSEDay" ShowBorder="true" ShowHeader="false" Title="本月项目现场HSE工时/工日统计"
runat="server" AllowCellEditing="true" ClicksToEdit="1" DataIDField="MonthHSEDay"
DataKeyNames="MonthHSEDay" EnableMultiSelect="false" ShowGridHeader="true" Height="180px"
EnableColumnLines="true" >
<Columns>
<f:GroupField EnableLock="true" HeaderText="连续安全工作天数" TextAlign="Center">
<Columns>
<f:RenderField Width="200px" ColumnID="MonthHSEDay" DataField="MonthHSEDay" FieldType="Int"
HeaderText="本月连续安全工作天数" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbMonthHSEDay" NoDecimal="true" NoNegative="true" MinValue="0" runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
<f:RenderField Width="200px" ColumnID="SumHSEDay" DataField="SumHSEDay" FieldType="Int"
HeaderText="累计连续安全工作天数" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbSumHSEDay" NoDecimal="true" NoNegative="true" MinValue="0" runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
</Columns>
</f:GroupField>
<f:GroupField EnableLock="true" HeaderText="HSE人工日" TextAlign="Center">
<Columns>
<f:RenderField Width="130px" ColumnID="MonthHSEWorkDay" DataField="MonthHSEWorkDay"
FieldType="Int" HeaderText="本月HSE人工日" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbMonthHSEWorkDay" NoDecimal="true" NoNegative="true" MinValue="0"
runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
<f:RenderField Width="170px" ColumnID="YearHSEWorkDay" DataField="YearHSEWorkDay"
FieldType="Int" HeaderText="年度累计HSE人工日" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbYearHSEWorkDay" NoDecimal="true" NoNegative="true" MinValue="0"
runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
<f:RenderField Width="170px" ColumnID="SumHSEWorkDay" DataField="SumHSEWorkDay" FieldType="Int"
HeaderText="总累计HSE人工日" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbSumHSEWorkDay" NoDecimal="true" NoNegative="true" MinValue="0"
runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
</Columns>
</f:GroupField>
<f:GroupField EnableLock="true" HeaderText="HSE人工时" TextAlign="Center">
<Columns>
<f:GroupField EnableLock="true" HeaderText="本月HSE人工时" TextAlign="Center">
<Columns>
<f:RenderField Width="100px" ColumnID="HseManhours" DataField="HseManhours" FieldType="Int"
HeaderText="五环" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbHseManhours" NoDecimal="true" NoNegative="true" MinValue="0" runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="SubcontractManHours" DataField="SubcontractManHours"
FieldType="Int" HeaderText="分包商" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbSubcontractManHours" NoDecimal="true" NoNegative="true" MinValue="0"
runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
</Columns>
</f:GroupField>
<f:RenderField Width="155px" ColumnID="TotalHseManhoursYear" DataField="TotalHseManhoursYear"
ExpandUnusedSpace="true" FieldType="Int" HeaderText="年度累计HSE人工时" HeaderTextAlign="Center"
TextAlign="Left">
<Editor>
<f:NumberBox ID="nbYearTotalHseManhours" NoDecimal="true" NoNegative="true" MinValue="0"
runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
<f:RenderField Width="155px" ColumnID="TotalHseManhours" DataField="TotalHseManhours"
ExpandUnusedSpace="true" FieldType="Int" HeaderText="项目累计HSE人工时" HeaderTextAlign="Center"
TextAlign="Left">
<Editor>
<f:NumberBox ID="nbTotalHseManhours" NoDecimal="true" NoNegative="true" MinValue="0"
runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
</Columns>
</f:GroupField>
</Columns>
</f:Grid>
<f:Label runat="server" Text="备注:一旦项目发生重伤事故,连续安全工作天数将清零重新统计。"></f:Label>
</Items>
</f:Panel>
<f:Panel ID="Panel4" IsFluid="true" Title="4.HSE绩效管理数据" runat="server" EnableCollapse="false" CssStyle="position: relative;"
ShowHeader="true">
<Items>
<f:Panel ID="Panel41" IsFluid="true" Title="4.1 培训数据统计" runat="server" EnableCollapse="false"
ShowHeader="true">
<Items>
<f:Grid ID="gvTrainSort" ShowBorder="true" ShowHeader="false" Title="4.1 培训数据统计" runat="server"
AllowCellEditing="true" ClicksToEdit="1" DataIDField="TrainSortId" DataKeyNames="TrainSortId"
EnableMultiSelect="false" ShowGridHeader="true" Height="220px" EnableColumnLines="true"
EnableSummary="true"
SummaryPosition="Flow">
<Columns>
<f:RowNumberField EnablePagingNumber="true" HeaderText="序号" Width="50px" HeaderTextAlign="Center"
TextAlign="Center" />
<f:RenderField Width="150px" ColumnID="TrainType" DataField="TrainType" FieldType="String"
HeaderText="培训类别" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:TextBox runat="server" ID="txtTrainType">
</f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="TeachHour" DataField="TeachHour" FieldType="String"
HeaderText="学时" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbTeachHour" NoDecimal="true" NoNegative="true" MinValue="0" runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PersonNum" DataField="PersonNum" FieldType="String"
HeaderText="培训人数" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="nbPersonNum" NoDecimal="true" NoNegative="true" MinValue="0" runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
<f:RenderField Width="200px" ColumnID="TotalPersonNum" DataField="TotalPersonNum" FieldType="String"
HeaderText="培训人数累计" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:NumberBox ID="NumberBox1" NoDecimal="true" NoNegative="true" MinValue="0" runat="server">
</f:NumberBox>
</Editor>
</f:RenderField>
</Columns>
</f:Grid>
</Items>
</f:Panel>
</Items>
</f:Panel>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:HiddenField ID="hdCheckControlCode" runat="server"></f:HiddenField>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="Button1" Icon="SystemSave" runat="server" ToolTip="保存" Text="保存" OnClick="btnSave_Click">
</f:Button>
<f:Button ID="Button5" Icon="SystemSave" runat="server" ToolTip="保存" Text="保存" OnClick="btnLoad_Click" Hidden="true">
</f:Button>
<f:HiddenField ID="hdId" runat="server">
</f:HiddenField>
<f:HiddenField ID="hdAttachUrl" runat="server">
</f:HiddenField>
</Items>
</f:Toolbar>
</Toolbars>
</f:ContentPanel>
<input runat="server" type="hidden" id="hidReportId" />
</form>
</body>
</html>
<script type="text/javascript">
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
//F(menuID).show(); //showAt(event.pageX, event.pageY);
return false;
}
function onGrid10DataLoad(event) {
this.mergeColumns(['CreateMan']);
}
var Window1ClientID = '<%= ContentPanel1.ClientID %>';
function refresh() {
// 第一个参数: 遮罩层的透明度
F(Window1ClientID).showLoading(0.8);
$('[id$="_Button5"]').click();
}
function rehiden() {
F(Window1ClientID).hideLoading();
}
</script>
@@ -0,0 +1,735 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web.UI;
using System.Web.UI.WebControls;
using BLL;
using Newtonsoft.Json.Linq;
using System.Threading;
namespace FineUIPro.Web.HSSE.Manager
{
public partial class ManagerMonthCEdit : PageBase
{
#region
/// <summary>
/// 主键
/// </summary>
public string MonthReportId
{
get
{
return (string)ViewState["MonthReportId"];
}
set
{
ViewState["MonthReportId"] = value;
}
}
public string AddOrUpdate
{
get
{
return (string)ViewState["AddOrUpdate"];
}
set
{
ViewState["AddOrUpdate"] = value;
}
}
public string ProjectId { get; set; }
private static DateTime months;
private static DateTime startTime;
private static DateTime endTime;
#endregion
#region list集合
public List<Model.Base_Unit> unitList = new List<Model.Base_Unit>();
/// <summary>
/// 培训情况集合
/// </summary>
private static List<Model.Manager_TrainSortC> trainSorts = new List<Model.Manager_TrainSortC>();
#endregion
public Model.SGGLDB db = Funs.DB;
#region
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ProjectId = CurrUser.LoginProjectId;
unitList = db.Base_Unit.ToList();
MonthReportId = Request.Params["MonthReportId"];
if (!string.IsNullOrEmpty(MonthReportId))
{
var model = db.Manager_MonthReportC.FirstOrDefault(x => x.MonthReportId == MonthReportId);
if (model != null)
{
if (model.MonthReportCode != null)
{
this.txtPeriod.Text = Convert.ToString(model.MonthReportCode);
}
if (model.Months != null)
{
txtReportMonths.Text = string.Format("{0:yyyy-MM}", model.Months);
}
if (model.StartDate != null)
{
this.txtStartDate.Text = string.Format("{0:yyyy-MM-dd}", model.StartDate);
}
if (model.EndDate != null)
{
this.txtEndDate.Text = string.Format("{0:yyyy-MM-dd}", model.EndDate);
}
}
AddOrUpdate = "update";
#region 3.HSE人工日统计
//本月项目现场HSE人工日统计
Model.MonthReportCHSEDay hseDay = new Model.MonthReportCHSEDay
{
MonthHSEDay = model.MonthHSEDay ?? 0,
SumHSEDay = model.SumHSEDay ?? 0,
MonthHSEWorkDay = model.MonthHSEWorkDay ?? 0,
YearHSEWorkDay = model.YearHSEWorkDay ?? 0,
SumHSEWorkDay = model.SumHSEWorkDay ?? 0,
HseManhours = model.HseManhours ?? 0,
SubcontractManHours = model.SubcontractManHours ?? 0,
TotalHseManhoursYear = model.TotalHseManhoursYear ?? 0,
TotalHseManhours = model.TotalHseManhours ?? 0
};
List<Model.MonthReportCHSEDay> list = new List<Model.MonthReportCHSEDay>();
list.Add(hseDay);
this.gvHSEDay.DataSource = list;
this.gvHSEDay.DataBind();
#endregion
#region 4.1
//培训情况
var trainSorts = BLL.TrainSortCService.GetTrainSortsByMonthReportId(MonthReportId);
if (trainSorts.Count > 0)
{
this.gvTrainSort.DataSource = trainSorts;
this.gvTrainSort.DataBind();
if (this.gvTrainSort.Rows.Count > 0)
{
JObject summary = new JObject();
summary.Add("TrainType", "培训人数合计:");
summary.Add("TotalPersonNum", trainSorts.Sum(x=>x.TotalPersonNum));
this.gvTrainSort.SummaryData = summary;
}
else
{
this.gvTrainSort.SummaryData = null;
}
}
#endregion
//加载所有grid
lodAllGrid("1");
}
else
{
MonthReportId = Guid.NewGuid().ToString();
months = Convert.ToDateTime(Request.Params["months"]);
this.txtReportMonths.Text = string.Format("{0:yyyy-MM}", months);
this.txtStartDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now.AddMonths(-1));
this.txtEndDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
this.txtPeriod.Text = BLL.CodeRecordsService.ReturnCodeByMenuIdProjectId(BLL.Const.ProjectManagerMonthCMenuId, this.ProjectId, this.CurrUser.UnitId);
AddOrUpdate = "add";
startTime = Convert.ToDateTime(txtStartDate.Text);
endTime = Convert.ToDateTime(txtEndDate.Text);
//加载所有grid
lodAllGrid("0");
}
#region 1.
var project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId);
var mainUnit = BLL.UnitService.GetThisUnitDropDownList()[0];
this.lbProjectName.Text = project.ProjectName;
if (mainUnit != null)
{
this.lblMainUnitName.Text = mainUnit.UnitName;
}
this.lblProjectAddress.Text = project.ProjectAddress;
this.lblProjectCode.Text = project.ProjectCode;
this.lblContractNo.Text = project.ContractNo; //合同号
if (!string.IsNullOrEmpty(project.ProjectType))
{
var c = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_ProjectType).
FirstOrDefault(x => x.ConstValue == project.ProjectType);
if (c != null)
{
this.lblProjectType.Text = c.ConstText;
}
}
this.lblWorkRange.Text = project.WorkRange;//工程范围
if (project.Duration != null)
{
this.lblDuration.Text = project.Duration.ToString();//工期(月)
}
if (project.StartDate != null)
{
this.lblStartDate.Text = string.Format("{0:yyyy-MM-dd}", project.StartDate);
}
if (project.EndDate != null)
{
this.lblEndDate.Text = string.Format("{0:yyyy-MM-dd}", project.EndDate);
}
#endregion
}
}
#endregion
#region
/// <summary>
/// 开始时间选择事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtStartDate_TextChanged(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(this.txtStartDate.Text.Trim()))
{
string url = Request.Url.ToString();
if (url.Contains("?"))
{
url = Request.Url.ToString().Substring(0, Request.Url.ToString().LastIndexOf('?'));
}
Response.Redirect(url + "?startdate=" + txtStartDate.Text + "&enddate=" + txtEndDate.Text);
}
}
protected void TextBox_TextChanged(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(this.txtStartDate.Text.Trim()) && !string.IsNullOrEmpty(this.txtEndDate.Text.Trim()))
{
if (Funs.GetNewDateTime(this.txtStartDate.Text.Trim()) > Funs.GetNewDateTime(this.txtEndDate.Text.Trim()))
{
Alert.ShowInTop("开始时间不能大于结束时间!", MessageBoxIcon.Warning);
return;
}
PageContext.RegisterStartupScript("refresh();");
}
}
protected void btnLoad_Click(object sender, EventArgs e)
{
if (AddOrUpdate == "update")
{
lodAllGrid("1");
PageContext.RegisterStartupScript("rehiden();");
}
else
{
lodAllGrid("0");
PageContext.RegisterStartupScript("rehiden();");
}
}
#endregion
#region
protected void btnSave_Click(object sender, EventArgs e)
{
#region
string MonthHSEDay = string.Empty, SumHSEDay = string.Empty, MonthHSEWorkDay = string.Empty, YearHSEWorkDay = string.Empty, SumHSEWorkDay = string.Empty,
HseManhours = string.Empty, SubcontractManHours = string.Empty, TotalHseManhours = string.Empty, TotalYearHseManhours=string.Empty;
JArray mergedData = gvHSEDay.GetMergedData();
foreach (JObject mergedRow in mergedData)
{
string status = mergedRow.Value<string>("status");
JObject values = mergedRow.Value<JObject>("values");
MonthHSEDay = values.Value<string>("MonthHSEDay").ToString();
SumHSEDay = values.Value<string>("SumHSEDay").ToString();
MonthHSEWorkDay = values.Value<string>("MonthHSEWorkDay").ToString();
YearHSEWorkDay = values.Value<string>("YearHSEWorkDay").ToString();
SumHSEWorkDay = values.Value<string>("SumHSEWorkDay").ToString();
HseManhours = values.Value<string>("HseManhours").ToString();
SubcontractManHours = values.Value<string>("SubcontractManHours").ToString();
TotalYearHseManhours = values.Value<string>("TotalHseManhoursYear").ToString();
TotalHseManhours = values.Value<string>("TotalHseManhours").ToString();
}
var monthReport = new Model.Manager_MonthReportC();
monthReport.MonthReportId = MonthReportId;
monthReport.ProjectId = this.CurrUser.LoginProjectId;
monthReport.MonthReportCode = txtPeriod.Text;
monthReport.Months = Funs.GetNewDateTime(Request.Params["months"]);
monthReport.ReportMan = this.CurrUser.UserId;
monthReport.MonthReportDate = DateTime.Now;
monthReport.StartDate = Funs.GetNewDateTime(txtStartDate.Text);
monthReport.EndDate = Funs.GetNewDateTime(txtEndDate.Text);
monthReport.MonthHSEDay = Funs.GetNewIntOrZero(MonthHSEDay);
monthReport.SumHSEDay = Funs.GetNewIntOrZero(SumHSEDay);
monthReport.MonthHSEWorkDay = Funs.GetNewIntOrZero(MonthHSEWorkDay);
monthReport.YearHSEWorkDay = Funs.GetNewIntOrZero(YearHSEWorkDay);
monthReport.SumHSEWorkDay = Funs.GetNewIntOrZero(SumHSEWorkDay);
monthReport.HseManhours = Funs.GetNewIntOrZero(HseManhours);
monthReport.SubcontractManHours = Funs.GetNewIntOrZero(SubcontractManHours);
monthReport.TotalHseManhours = Funs.GetNewIntOrZero(TotalHseManhours);
monthReport.TotalHseManhoursYear= Funs.GetNewIntOrZero(TotalYearHseManhours);
if (AddOrUpdate == "add")
{
MonthReportCService.AddMonthReport(monthReport);
}
else
{
MonthReportCService.UpdateMonthReport(monthReport);
}
#endregion
#region
//2
OperatePersonSort();
//4.1
OperateTrainSort();
#endregion
ShowNotify("保存成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
}
#endregion
#region 2.
private void OperatePersonSort()
{
PersonSortCService.DeletePersonSortsByMonthReportId(MonthReportId);
JArray mergedData = gvPersonSort.GetMergedData();
foreach (JObject mergedRow in mergedData)
{
string status = mergedRow.Value<string>("status");
JObject values = mergedRow.Value<JObject>("values");
int i = mergedRow.Value<int>("index");
Model.Manager_PersonSortC personSort = new Model.Manager_PersonSortC
{
MonthReportId = MonthReportId,
UnitId = this.gvPersonSort.Rows[i].DataKeys[1].ToString(),
SumPersonNum = Funs.GetNewIntOrZero(values.Value<string>("SumPersonNum").ToString()),
SumOutPersonNum = Funs.GetNewIntOrZero(values.Value<string>("SumOutPersonNum").ToString()),
HSEPersonNum = Funs.GetNewIntOrZero(values.Value<string>("HSEPersonNum").ToString()),
ContractRange = values.Value<string>("ContractRange").ToString(),
Remark = values.Value<string>("Remark").ToString()
};
PersonSortCService.AddPersonSort(personSort);
}
}
#endregion
#region 4.1
private void OperateTrainSort()
{
BLL.TrainSortCService.DeleteTrainSortsByMonthReportId(MonthReportId);
jerqueSaveTrainList();
foreach (Model.Manager_TrainSortC trainSort in trainSorts)
{
trainSort.MonthReportId = MonthReportId;
BLL.TrainSortCService.AddTrainSort(trainSort);
}
}
private void jerqueSaveTrainList()
{
trainSorts.Clear();
JArray mergedData = gvTrainSort.GetMergedData();
foreach (JObject mergedRow in mergedData)
{
string status = mergedRow.Value<string>("status");
JObject values = mergedRow.Value<JObject>("values");
int i = mergedRow.Value<int>("index");
Model.Manager_TrainSortC trainSort = new Model.Manager_TrainSortC
{
TrainSortId = this.gvTrainSort.Rows[i].DataKeys[0].ToString(),
SortIndex = i,
TrainType = values.Value<string>("TrainType").ToString(),
//TrainContent = values.Value<string>("TrainContent").ToString(),
TeachHour = Funs.GetNewDecimalOrZero(values.Value<string>("TeachHour").ToString()),
//TeachMan = values.Value<string>("TeachMan").ToString(),
PersonNum = Funs.GetNewIntOrZero(values.Value<string>("PersonNum").ToString()),
TotalPersonNum = Funs.GetNewIntOrZero(values.Value<string>("TotalPersonNum").ToString())
};
trainSorts.Add(trainSort);
}
}
#endregion
#region grid
void lodAllGrid(string objType)
{
if (objType == "0")
{
//添加的时候加载
//2.本月项目现场HSE人力投入情况
GetPersonSort();
//3.本月项目现场HSE人工日统计
getMonthReportCHSEDay();
//4.培训
GetTrainSort();
}
else
{
//2.本月项目现场HSE人力投入情况
GetPersonSortEdit();
}
}
#endregion
#region
/// <summary>
/// 把单位Id转换为单位名称
/// </summary>
/// <param name="UnitId"></param>
/// <returns></returns>
protected string ConvertUnitName(object UnitId)
{
if (UnitId != null)
{
var u = unitList.FirstOrDefault(x => x.UnitId == UnitId.ToString());
if (u != null)
{
return u.UnitName;
}
}
return "";
}
#endregion
#region 2
/// <summary>
/// 显示月报告人员投入情况
/// </summary>
private void GetPersonSort()
{
List<Model.Manager_PersonSortC> personSorts = new List<Model.Manager_PersonSortC>();
var units = from x in Funs.DB.Project_ProjectUnit
where x.ProjectId == this.ProjectId && (x.UnitType == "1" || x.UnitType == "2")
orderby x.UnitType
select x; //1为总包,2为施工分包
int totalSumPersonNum = 0;//总部
int totalSumOutPersonNum = 0;//外聘
int totalHSEPersonNum = 0;
if (units.Count() > 0)
{
foreach (Model.Project_ProjectUnit u in units)
{
Model.Manager_PersonSortC personSort = new Model.Manager_PersonSortC
{
PersonSortId = Guid.NewGuid().ToString(),
UnitId = u.UnitId,
SumPersonNum = BLL.PersonService.GetPersonCountByUnitId(u.UnitId, ProjectId, Convert.ToDateTime(txtEndDate.Text), false),//本部
SumOutPersonNum = BLL.PersonService.GetPersonCountByUnitId(u.UnitId, ProjectId, Convert.ToDateTime(txtEndDate.Text), true),//外聘
HSEPersonNum = BLL.PersonService.GetHSEPersonCountByUnitId(u.UnitId, ProjectId, Convert.ToDateTime(txtEndDate.Text)),
ContractRange = u.ContractRange
};
personSorts.Add(personSort);
totalSumPersonNum += Convert.ToInt32(personSort.SumPersonNum);
totalSumOutPersonNum += Convert.ToInt32(personSort.SumOutPersonNum);
totalHSEPersonNum += Convert.ToInt32(personSort.HSEPersonNum);
}
}
this.gvPersonSort.DataSource = personSorts;
this.gvPersonSort.DataBind();
if (this.gvPersonSort.Rows.Count > 0)
{
JObject summary = new JObject();
summary.Add("UnitId", "合计:");
summary.Add("SumPersonNum", totalSumPersonNum);
summary.Add("SumOutPersonNum", totalSumOutPersonNum);
summary.Add("HSEPersonNum", totalHSEPersonNum);
this.gvPersonSort.SummaryData = summary;
}
else
{
this.gvPersonSort.SummaryData = null;
}
}
//修改的时候
void GetPersonSortEdit()
{
var q = from x in db.Manager_PersonSortC
where x.MonthReportId == MonthReportId
select x;
if (q.Count() > 0) //保存过数据
{
//人力投入情况
List<Model.Manager_PersonSortC> sorts = (from x in db.Manager_PersonSortC
join y in db.Project_ProjectUnit
on x.UnitId equals y.UnitId
where x.MonthReportId == MonthReportId && y.ProjectId == this.ProjectId
orderby y.UnitType
select x).Distinct().ToList();
List<Model.Manager_PersonSortC> personSorts = new List<Model.Manager_PersonSortC>();
var units = from x in db.Project_ProjectUnit
where x.ProjectId == this.ProjectId && (x.UnitType == "1" || x.UnitType == "2")
orderby x.UnitType
select x; //1为总包,2为施工分包
foreach (var unit in units)
{
Model.Manager_PersonSortC personSort = sorts.FirstOrDefault(x => x.UnitId == unit.UnitId);
if (personSort != null)
{
personSorts.Add(personSort);
}
}
this.gvPersonSort.DataSource = personSorts;
this.gvPersonSort.DataBind();
if (this.gvPersonSort.Rows.Count > 0)
{
JObject summary = new JObject();
summary.Add("UnitId", "合计:");
summary.Add("SumPersonNum", (from x in personSorts select x.SumPersonNum ?? 0).Sum());
summary.Add("SumOutPersonNum", (from x in personSorts select x.SumOutPersonNum ?? 0).Sum());
summary.Add("HSEPersonNum", (from x in personSorts select x.HSEPersonNum ?? 0).Sum());
this.gvPersonSort.SummaryData = summary;
}
else
{
this.gvPersonSort.SummaryData = null;
}
}
else
{
GetPersonSort();
}
}
#endregion
#region 3.HSE人工日统计
private void getMonthReportCHSEDay()
{
//本月项目现场HSE人工日统计
Model.MonthReportCHSEDay hseDay = new Model.MonthReportCHSEDay
{
MonthHSEDay = (endTime - startTime).Days + 1
};
Model.Manager_MonthReportC mr = BLL.MonthReportCService.GetLastMonthReportByDate(endTime, this.ProjectId);
if (mr != null)
{
if (mr.SumHSEDay != 0)
{
hseDay.SumHSEDay = (mr.SumHSEDay ?? 0) + hseDay.MonthHSEDay;
}
else
{
hseDay.SumHSEDay = hseDay.MonthHSEDay;
}
}
else
{
hseDay.SumHSEDay = hseDay.MonthHSEDay;
}
int? monthHSEWorkDay = 0;
int? yearHSEWorkDay = 0;
int? sumHSEWorkDay = 0;
decimal? hSEManhours = 0;
decimal? sumHseManhours = 0;
decimal? SubcontractManHours = 0;
decimal? YearHSEWorkDay = 0;
//年度安全人工时
var getProjectMonthReport = from x in db.SitePerson_MonthReport where x.ProjectId == ProjectId select x;
if (getProjectMonthReport.Count() > 0)
{
////人工时月报明细
var getMonthReportDetail = from x in db.SitePerson_MonthReportDetail
join y in getProjectMonthReport on x.MonthReportId equals y.MonthReportId
select x;
var yearMonthReport = from x in getProjectMonthReport
where x.CompileDate.Value.Year == months.Year
select x;
if (yearMonthReport.Count() > 0)
{
foreach (var item in yearMonthReport)
{
////年度累计安全人工时
YearHSEWorkDay += getMonthReportDetail.Where(x => x.MonthReportId ==
item.MonthReportId).Sum(x => x.PersonWorkTime) ?? 0;
}
}
}
else
{
YearHSEWorkDay = 0;
}
hseDay.YearHSEWorkDay = Convert.ToInt32(YearHSEWorkDay);
var monthReport = BLL.Funs.DB.SitePerson_MonthReport.FirstOrDefault(x => x.CompileDate == months && x.ProjectId == ProjectId); //当月人工时月报
if (monthReport != null)
{
monthHSEWorkDay = Convert.ToInt32((from x in Funs.DB.SitePerson_MonthReportDetail
where x.MonthReportId == monthReport.MonthReportId
select x.RealPersonNum ?? 0).Sum());
hSEManhours = (from x in Funs.DB.SitePerson_MonthReportDetail
join z in Funs.DB.Project_ProjectUnit
on x.UnitId equals z.UnitId
where z.UnitType == "1" && z.ProjectId == this.CurrUser.LoginProjectId && x.MonthReportId == monthReport.MonthReportId //总包
select x.PersonWorkTime ?? 0).Sum();
var q = (from x in Funs.DB.SitePerson_MonthReportDetail
join z in Funs.DB.Project_ProjectUnit
on x.UnitId equals z.UnitId
where z.UnitType == "2" && z.ProjectId == this.CurrUser.LoginProjectId && x.MonthReportId == monthReport.MonthReportId //分包
select x);
foreach (var item in q)
{
SubcontractManHours += item.PersonWorkTime ?? 0;
}
}
else
{
monthHSEWorkDay = 0;
hSEManhours = 0;
SubcontractManHours = 0;
}
//年度人工日
if (months.Month == 1)
{
yearHSEWorkDay = monthHSEWorkDay;
}
else
{
if (mr != null)
{
if (mr.YearHSEWorkDay != null)
{
yearHSEWorkDay = (mr.YearHSEWorkDay ?? 0) + monthHSEWorkDay;
}
else
{
yearHSEWorkDay = monthHSEWorkDay;
}
}
else
{
yearHSEWorkDay = monthHSEWorkDay;
}
}
if (mr != null)
{
if (mr.SumHSEWorkDay != 0)
{
sumHSEWorkDay = (mr.SumHSEWorkDay ?? 0) + monthHSEWorkDay;
}
else
{
sumHSEWorkDay = monthHSEWorkDay;
}
if (mr.TotalHseManhours != 0)
{
sumHseManhours = (mr.TotalHseManhours ?? 0) + hSEManhours + SubcontractManHours;
}
else
{
sumHseManhours = hSEManhours + SubcontractManHours;
}
}
else
{
sumHSEWorkDay = monthHSEWorkDay;
sumHseManhours = hSEManhours + SubcontractManHours;
}
hseDay.MonthHSEWorkDay = monthHSEWorkDay ?? 0;
hseDay.YearHSEWorkDay = yearHSEWorkDay ?? 0;
hseDay.SumHSEWorkDay = sumHSEWorkDay ?? 0;
if (hSEManhours.ToString().Contains("."))
{
hseDay.HseManhours = int.Parse(hSEManhours.ToString().Substring(0, hSEManhours.ToString().LastIndexOf(".")));
}
else
{
hseDay.HseManhours = int.Parse(hSEManhours.ToString());
}
if (SubcontractManHours.ToString().Contains("."))
{
hseDay.SubcontractManHours = int.Parse(SubcontractManHours.ToString().Substring(0, SubcontractManHours.ToString().LastIndexOf(".")));
}
else
{
hseDay.SubcontractManHours = int.Parse(SubcontractManHours.ToString());
}
if (sumHseManhours.ToString().Contains("."))
{
hseDay.TotalHseManhours = int.Parse(sumHseManhours.ToString().Substring(0, sumHseManhours.ToString().LastIndexOf(".")));
}
else
{
hseDay.TotalHseManhours = int.Parse(sumHseManhours.ToString());
}
List<Model.MonthReportCHSEDay> list = new List<Model.MonthReportCHSEDay>();
list.Add(hseDay);
this.gvHSEDay.DataSource = list;
this.gvHSEDay.DataBind();
}
#endregion
#region HSE培训
/// <summary>
/// 显示月报告HSE培训情况
/// </summary>
private void GetTrainSort()
{
trainSorts.Clear();
var TotalPersonNum = 0;
var list = db.Base_TrainType.ToList();
var listTrain = BLL.EduTrain_TrainRecordService.GetTrainingsByTrainDate(startTime, endTime, this.ProjectId);
var listAllTrain= BLL.EduTrain_TrainRecordService.GetTrainingsByTrainDate(endTime, this.ProjectId);
foreach (var item in list)
{
int i = 0;
var trainSort = new Model.Manager_TrainSortC
{
TrainSortId = SQLHelper.GetNewID(typeof(Model.Manager_TrainSortC)),
SortIndex = i
};
trainSort.TrainType = item.TrainTypeName;
if (listTrain.Count > 0)
{
trainSort.TeachHour = listTrain.Where(x => x.TrainTypeId == item.TrainTypeId).Sum(x => x.TeachHour);
trainSort.PersonNum = listTrain.Where(x => x.TrainTypeId == item.TrainTypeId).Sum(x => x.TrainPersonNum);
}
else {
trainSort.TeachHour = 0;
trainSort.PersonNum = 0;
}
if (listAllTrain.Count > 0)
{
trainSort.TotalPersonNum = listAllTrain.Where(x => x.TrainTypeId == item.TrainTypeId).Sum(x => x.TrainPersonNum);
TotalPersonNum += Convert.ToInt32(trainSort.TotalPersonNum);
}
else {
trainSort.TotalPersonNum = 0;
}
i++;
trainSorts.Add(trainSort);
}
this.gvTrainSort.DataSource = trainSorts;
this.gvTrainSort.DataBind();
if (this.gvTrainSort.Rows.Count > 0)
{
JObject summary = new JObject();
summary.Add("TrainType", "培训人数合计:");
summary.Add("TotalPersonNum", TotalPersonNum);
this.gvTrainSort.SummaryData = summary;
}
else
{
this.gvTrainSort.SummaryData = null;
}
}
#endregion
}
}
@@ -0,0 +1,584 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.HSSE.Manager
{
public partial class ManagerMonthCEdit
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// ContentPanel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel ContentPanel1;
/// <summary>
/// Table1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable Table1;
/// <summary>
/// tabbtn 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable tabbtn;
/// <summary>
/// image15 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Image image15;
/// <summary>
/// Button2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button Button2;
/// <summary>
/// Table5 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable Table5;
/// <summary>
/// lblProjectName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblProjectName;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label1;
/// <summary>
/// txtPeriod 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtPeriod;
/// <summary>
/// RequiredFieldValidator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1;
/// <summary>
/// lblTital 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblTital;
/// <summary>
/// Table2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable Table2;
/// <summary>
/// txtStartDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtStartDate;
/// <summary>
/// Label3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label3;
/// <summary>
/// txtEndDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtEndDate;
/// <summary>
/// txtReportMonths 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label txtReportMonths;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// lbProjectName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lbProjectName;
/// <summary>
/// lblMainUnitName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblMainUnitName;
/// <summary>
/// lblProjectAddress 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblProjectAddress;
/// <summary>
/// lblProjectCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblProjectCode;
/// <summary>
/// lblContractNo 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblContractNo;
/// <summary>
/// lblProjectType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblProjectType;
/// <summary>
/// lblWorkRange 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblWorkRange;
/// <summary>
/// lblDuration 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblDuration;
/// <summary>
/// lblStartDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblStartDate;
/// <summary>
/// lblEndDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblEndDate;
/// <summary>
/// Panel2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel2;
/// <summary>
/// gvPersonSort 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid gvPersonSort;
/// <summary>
/// Label4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label4;
/// <summary>
/// nbSumPersonNum 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbSumPersonNum;
/// <summary>
/// nbSumOutPersonNum 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbSumOutPersonNum;
/// <summary>
/// nbHSEPersonNum 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbHSEPersonNum;
/// <summary>
/// txtContractRange 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtContractRange;
/// <summary>
/// txtRemark 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRemark;
/// <summary>
/// Panel3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel3;
/// <summary>
/// gvHSEDay 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid gvHSEDay;
/// <summary>
/// nbMonthHSEDay 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbMonthHSEDay;
/// <summary>
/// nbSumHSEDay 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbSumHSEDay;
/// <summary>
/// nbMonthHSEWorkDay 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbMonthHSEWorkDay;
/// <summary>
/// nbYearHSEWorkDay 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbYearHSEWorkDay;
/// <summary>
/// nbSumHSEWorkDay 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbSumHSEWorkDay;
/// <summary>
/// nbHseManhours 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbHseManhours;
/// <summary>
/// nbSubcontractManHours 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbSubcontractManHours;
/// <summary>
/// nbYearTotalHseManhours 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbYearTotalHseManhours;
/// <summary>
/// nbTotalHseManhours 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbTotalHseManhours;
/// <summary>
/// Panel4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel4;
/// <summary>
/// Panel41 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel41;
/// <summary>
/// gvTrainSort 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid gvTrainSort;
/// <summary>
/// txtTrainType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtTrainType;
/// <summary>
/// nbTeachHour 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbTeachHour;
/// <summary>
/// nbPersonNum 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox nbPersonNum;
/// <summary>
/// NumberBox1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox NumberBox1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// hdCheckControlCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdCheckControlCode;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// Button1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button Button1;
/// <summary>
/// Button5 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button Button5;
/// <summary>
/// hdId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdId;
/// <summary>
/// hdAttachUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdAttachUrl;
/// <summary>
/// hidReportId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlInputHidden hidReportId;
}
}
@@ -0,0 +1,123 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ManagerMonthCNew.aspx.cs" Inherits="FineUIPro.Web.HSSE.Manager.ManagerMonthCNew" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>HSE月报告(新)</title>
<style type="text/css">
.labcenter
{
text-align: center;
}
.f-grid-row .f-grid-cell-inner {
white-space: normal;
word-break: break-all;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="HSE月报告" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="MonthReportId" AllowCellEditing="true"
ClicksToEdit="2" DataIDField="MonthReportId" AllowSorting="true" SortField="Months"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true" AllowPaging="true"
IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" AllowFilters="true"
OnFilterChange="Grid1_FilterChange" EnableTextSelection="True">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox runat="server" Label="编号" ID="txtMonthReportCode" EmptyText="输入查询条件"
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" LabelWidth="50px"
LabelAlign="right">
</f:TextBox>
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:DatePicker runat="server" Label="选择月份" ID="txtReportDate" LabelWidth="100px" Width="200px"
LabelAlign="right" DateFormatString="yyyy-MM">
</f:DatePicker>
<f:Button ID="btnNew" ToolTip="新增" Icon="Add" runat="server"
OnClick="btnNew_Click1" Hidden="true">
</f:Button>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfNumber" Width="50px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lblNumber" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="250px" ColumnID="MonthReportCode" DataField="MonthReportCode"
SortField="MonthReportCode" FieldType="String" HeaderText="编号" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="210px" ColumnID="Months" DataField="Months" SortField="Months"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM" HeaderText="月份"
HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="190px" ColumnID="ReportManName" DataField="ReportManName" ExpandUnusedSpace="true"
SortField="ReportManName" FieldType="String" HeaderText="报告人" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
</Listeners>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
<f:ListItem Text="所有行" Value="100000" />
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
<f:Window ID="Window1" Title="编辑HSE月报告" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="true" runat="server" IsModal="true" OnClose="Window1_Close" CloseAction="HidePostBack"
PercentWidth="100%" PercentHeight="100%">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<Items>
<f:MenuButton ID="btnMenuModify" EnablePostBack="true" runat="server" Hidden="true"
Text="修改" Icon="Pencil" OnClick="btnMenuModify_Click">
</f:MenuButton>
<f:MenuButton ID="btnMenuOut" EnablePostBack="true" runat="server"
Text="导出" Icon="Find" OnClick="btnMenuOut_Click">
</f:MenuButton>
<f:MenuButton ID="btnMenuDel" EnablePostBack="true" runat="server" Hidden="true"
Icon="Delete" Text="删除" ConfirmText="确定删除当前数据?" OnClick="btnMenuDel_Click">
</f:MenuButton>
</Items>
</f:Menu>
</form>
<script type="text/javascript">
var menuID = '<%= Menu1.ClientID %>';
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID).show(); //showAt(event.pageX, event.pageY);
return false;
}
</script>
</body>
</html>
@@ -0,0 +1,426 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using BLL;
using AspNet = System.Web.UI.WebControls;
namespace FineUIPro.Web.HSSE.Manager
{
public partial class ManagerMonthCNew : PageBase
{
/// <summary>
/// 项目主键
/// </summary>
public string ProjectId
{
get
{
return (string)ViewState["ProjectId"];
}
set
{
ViewState["ProjectId"] = value;
}
}
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
// 表头过滤
//FilterDataRowItem = FilterDataRowItemImplement;
if (!IsPostBack)
{
this.ProjectId = this.CurrUser.LoginProjectId;
if (!string.IsNullOrEmpty(Request.Params["projectId"]) && Request.Params["projectId"] != this.ProjectId)
{
this.ProjectId = Request.Params["projectId"];
}
////权限按钮方法
this.GetButtonPower();
this.txtReportDate.Text = string.Format("{0:yyyy-MM}", DateTime.Now);
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格
BindGrid();
}
}
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
string strSql = @"SELECT MonthReport.MonthReportId,MonthReport.ProjectId,MonthReport.Months,CodeRecords.Code AS MonthReportCode,Users.UserName as ReportManName"
+ @" FROM Manager_MonthReportC AS MonthReport "
+ @" LEFT JOIN Sys_User AS Users ON MonthReport.ReportMan=Users.UserId "
+ @" LEFT JOIN Sys_CodeRecords AS CodeRecords ON MonthReport.MonthReportId=CodeRecords.DataId WHERE 1=1 ";
List<SqlParameter> listStr = new List<SqlParameter>();
strSql += " AND MonthReport.ProjectId = @ProjectId";
listStr.Add(new SqlParameter("@ProjectId", this.ProjectId));
if (!string.IsNullOrEmpty(this.txtMonthReportCode.Text.Trim()))
{
strSql += " AND CodeRecords.Code LIKE @MonthReportCode";
listStr.Add(new SqlParameter("@MonthReportCode", "%" + this.txtMonthReportCode.Text.Trim() + "%"));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
// 2.获取当前分页数据
//var table = this.GetPagedDataTable(Grid1, tb1);
Grid1.RecordCount = tb.Rows.Count;
tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
#endregion
#region
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void TextBox_TextChanged(object sender, EventArgs e)
{
this.BindGrid();
}
#endregion
#region
/// <summary>
/// 过滤表头
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_FilterChange(object sender, EventArgs e)
{
BindGrid();
}
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, GridSortEventArgs e)
{
Grid1.SortDirection = e.SortDirection;
Grid1.SortField = e.SortField;
BindGrid();
}
/// <summary>
/// 分页显示条数下拉框
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
BindGrid();
}
/// <summary>
/// 关闭弹出窗
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
BindGrid();
}
#endregion
#region Grid双击事件
/// <summary>
/// Grid行双击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
btnMenuModify_Click(null, null);
}
#endregion
#region
/// <summary>
/// 编辑按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuModify_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
string MonthReportId = Grid1.SelectedRowID;
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("ManagerMonthCEdit.aspx?MonthReportId={0}", MonthReportId, "编辑 - ")));
//var monthReport = BLL.MonthReportCService.GetMonthReportByMonthReportId(MonthReportId);
//int n = 6; //月报冻结时间
//var sysSet = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_MonthReportFreezeDay).FirstOrDefault();
//if (sysSet != null)
//{
// n = Convert.ToInt32(sysSet.ConstValue);
//}
//if (monthReport != null)
//{
// int d = Convert.ToInt32(DateTime.Now.Day);
// if ((monthReport.Months.Value.Year == DateTime.Now.Year && monthReport.Months.Value.Month == DateTime.Now.Month) ||
// ((monthReport.Months.Value.AddMonths(1).Month == DateTime.Now.Month) && d < n + 1))
// {
// PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MonthReportCEdit.aspx?MonthReportId={0}", MonthReportId, "编辑 - ")));
// }
// else
// {
// PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MonthReportCView.aspx?MonthReportId={0}", MonthReportId, "查看 - ")));
// }
//}
}
#endregion
#region
/// <summary>
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuOut_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
string MonthReportId = Grid1.SelectedRowID;
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MonthReportCOut.aspx?MonthReportId={0}", MonthReportId, "编辑 - ")));
}
#endregion
#region
/// <summary>
/// 批量删除
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuDel_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
var mont = BLL.MonthReportCService.GetMonthReportByMonthReportId(rowID);
if (mont != null)
{
BLL.PersonSortCService.DeletePersonSortsByMonthReportId(rowID);
BLL.HazardSortCService.DeleteHazardSortsByMonthReportId(rowID);
BLL.AccidentSortCService.DeleteAccidentSortsByMonthReportId(rowID);
BLL.HseCostCService.DeleteHseCostsByMonthReportId(rowID);
BLL.TrainSortCService.DeleteTrainSortsByMonthReportId(rowID);
BLL.TrainActivitySortCService.DeleteTrainActivitySortsByMonthReportId(rowID);
BLL.MeetingSortCService.DeleteMeetingSortsByMonthReportId(rowID);
BLL.CheckSortCService.DeleteCheckSortsByMonthReportId(rowID);
BLL.CheckDetailSortCService.DeleteCheckDetailSortsByMonthReportId(rowID);
BLL.PromotionalActiviteSortCService.DeletePromotionalActiviteSortsByMonthReportId(rowID);
BLL.EmergencySortCService.DeleteEmergencySortsByMonthReportId(rowID);
BLL.DrillSortCService.DeleteDrillSortsByMonthReportId(rowID);
BLL.IncentiveSortCService.DeleteIncentiveSortsByMonthReportId(rowID);
BLL.OtherActiveSortCService.DeleteOtherActiveSortsByMonthReportId(rowID);
BLL.ActivityDesCService.DeleteActivityDesByMonthReportId(rowID);
BLL.OtherManagementCService.DeleteOtherManagementByMonthReportId(rowID);
BLL.PlanCService.DeletePlanByMonthReportId(rowID);
BLL.ReviewRecordCService.DeleteReviewRecordByMonthReportId(rowID);
BLL.FileManageCService.DeleteFileManageByMonthReportId(rowID);
BLL.FiveExpenseCService.DeleteFiveExpenseByMonthReportId(rowID);
BLL.SubExpenseCService.DeleteSubExpenseByMonthReportId(rowID);
BLL.AccidentDesciptionItemCService.DeleteAccidentDesciptionItemByMonthReportId(rowID);
BLL.AccidentDesciptionCService.DeleteAccidentDesciptionByMonthReportId(rowID);
BLL.OtherWorkCService.DeleteOtherWorkByMonthReportId(rowID);
BLL.HazardCService.DeleteHazardByMonthReportId(rowID);
BLL.TrainCService.DeleteTrainByMonthReportId(rowID);
BLL.CheckCService.DeleteCheckByMonthReportId(rowID);
BLL.MeetingCService.DeleteMeetingByMonthReportId(rowID);
BLL.ActivitiesCService.DeleteActivitiesByMonthReportId(rowID);
BLL.EmergencyPlanCService.DeleteEmergencyPlanByMonthReportId(rowID);
BLL.EmergencyExercisesCService.DeleteEmergencyExercisesByMonthReportId(rowID);
BLL.CostInvestmentPlanCService.DeleteCostInvestmentPlanByMonthReportId(rowID);
BLL.ManageDocPlanCService.DeleteManageDocPlanByMonthReportId(rowID);
BLL.OtherWorkPlanCService.DeleteOtherWorkPlanByMonthReportId(rowID);
BLL.MonthReportCService.DeleteMonthReportByMonthReportId(rowID);
}
}
BindGrid();
ShowNotify("删除数据成功!(表格数据已重新绑定)");
}
}
#endregion
#region
/// <summary>
/// 新增
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId);
if (project.StartDate != null)
{
if (!string.IsNullOrEmpty(this.txtReportDate.Text.Trim()))
{
DateTime months = Convert.ToDateTime(this.txtReportDate.Text.Trim() + "-01");
Model.Manager_MonthReportC monthReport = BLL.MonthReportCService.GetMonthReportByMonths(months, this.CurrUser.LoginProjectId);
if (monthReport != null)
{
Alert.ShowInTop("当前月份的月报已存在!", MessageBoxIcon.Warning);
return;
}
else
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MonthReportCEdit.aspx?months={0}", string.Format("{0:yyyy-MM-dd}", months), "编辑 - ")));
}
}
else
{
Alert.ShowInTop("请选择月份!", MessageBoxIcon.Warning);
return;
}
}
else
{
Alert.ShowInTop("请先设置项目开工时间!", MessageBoxIcon.Warning);
return;
}
}
#endregion
#region
/// <summary>
/// 获取按钮权限
/// </summary>
/// <param name="button"></param>
/// <returns></returns>
private void GetButtonPower()
{
if (Request.Params["value"] == "0")
{
return;
}
var buttonList = BLL.CommonService.GetAllButtonList(this.ProjectId, this.CurrUser.UserId, BLL.Const.ManagerMonthCNewMenuId);
if (buttonList.Count() > 0)
{
if (buttonList.Contains(BLL.Const.BtnAdd))
{
this.btnNew.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnModify))
{
this.btnMenuModify.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnDelete))
{
this.btnMenuDel.Hidden = false;
}
}
}
#endregion
#region
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut_Click(object sender, EventArgs e)
{
Response.ClearContent();
string filename = Funs.GetNewFileName();
Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("管理月报B" + filename, System.Text.Encoding.UTF8) + ".xls");
Response.ContentType = "application/excel";
Response.ContentEncoding = System.Text.Encoding.UTF8;
this.Grid1.PageSize = 500;
this.BindGrid();
Response.Write(GetGridTableHtml(Grid1));
Response.End();
}
/// <summary>
/// 导出方法
/// </summary>
/// <param name="grid"></param>
/// <returns></returns>
private string GetGridTableHtml(Grid grid)
{
StringBuilder sb = new StringBuilder();
sb.Append("<meta http-equiv=\"content-type\" content=\"application/excel; charset=UTF-8\"/>");
sb.Append("<table cellspacing=\"0\" rules=\"all\" border=\"1\" style=\"border-collapse:collapse;\">");
sb.Append("<tr>");
foreach (GridColumn column in grid.Columns)
{
sb.AppendFormat("<td>{0}</td>", column.HeaderText);
}
sb.Append("</tr>");
foreach (GridRow row in grid.Rows)
{
sb.Append("<tr>");
foreach (GridColumn column in grid.Columns)
{
string html = row.Values[column.ColumnIndex].ToString();
if (column.ColumnID == "tfNumber")
{
html = (row.FindControl("lblNumber") as AspNet.Label).Text;
}
sb.AppendFormat("<td>{0}</td>", html);
}
sb.Append("</tr>");
}
sb.Append("</table>");
return sb.ToString();
}
#endregion
#region
protected void btnNew_Click1(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(this.txtReportDate.Text.Trim()))
{
DateTime months = Convert.ToDateTime(this.txtReportDate.Text.Trim() + "-01");
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("ManagerMonthCEdit.aspx?months={0}", string.Format("{0:yyyy-MM-dd}", months), "添加 - ")));
}
else {
Alert.ShowInTop("请选择月份!", MessageBoxIcon.Warning);
return;
}
}
#endregion
}
}
@@ -0,0 +1,188 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.HSSE.Manager
{
public partial class ManagerMonthCNew
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// txtMonthReportCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtMonthReportCode;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// txtReportDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtReportDate;
/// <summary>
/// btnNew 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// btnOut 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut;
/// <summary>
/// lblNumber 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumber;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Menu1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Menu Menu1;
/// <summary>
/// btnMenuModify 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuModify;
/// <summary>
/// btnMenuOut 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuOut;
/// <summary>
/// btnMenuDel 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuDel;
}
}