This commit is contained in:
2026-03-06 17:58:48 +08:00
parent 393e451064
commit adedb7e83d
102 changed files with 13691 additions and 271 deletions
@@ -0,0 +1,122 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UnitHazardRegister.aspx.cs" Inherits="FineUIPro.Web.ZHGL.Supervise.UnitHazardRegister" %>
<!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>企业级检查</title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.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="企业级检查" EnableCollapse="true" ForceFit="true"
runat="server" BoxFlex="1" DataKeyNames="UnitHazardRegisterId" DataIDField="UnitHazardRegisterId"
AllowSorting="true" SortField="CheckDate" SortDirection="DESC" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" OnSort="Grid1_Sort"
EnableTextSelection="True">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
<Items>
<f:TextBox runat="server" ID="txtSearch" Label="查询" EmptyText="编号/检查对象/检查组/评价结果"
Width="300px" AutoPostBack="true" OnTextChanged="txtSearch_TextChanged">
</f:TextBox>
<f:DropDownList ID="drpCheckMainType" runat="server" AutoPostBack="true"
OnSelectedIndexChanged="drpCheckMainType_SelectedIndexChanged" Label="检查大类" Width="200px" Readonly="true">
<f:ListItem Value="0" Text="安全" />
<f:ListItem Value="1" Text="质量" />
</f:DropDownList>
<f:DropDownList runat="server" ID="drpCheckType" EnableSimulateTree="True"
Label="检查类别" AutoPostBack="true" Width="260px" AutoSelectFirstItem="true"
OnSelectedIndexChanged="txtSearch_TextChanged">
</f:DropDownList>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnNew" Icon="Add" EnablePostBack="false" runat="server" Text="新增" Hidden="true">
</f:Button>
<f:Button ID="btnEdit" Icon="Pencil" runat="server" OnClick="btnEdit_Click" Text="编辑" Hidden="true">
</f:Button>
<f:Button ID="btnDelete" Icon="Delete" ConfirmText="确定删除当前数据?"
OnClick="btnDelete_Click" Text="删除" Hidden="true" runat="server">
</f:Button>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp" Text="导出"
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="120px" ColumnID="UnitHazardRegisterCode" DataField="UnitHazardRegisterCode"
SortField="UnitHazardRegisterCode" FieldType="String" HeaderText="编号" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="CheckDate" DataField="CheckDate" SortField="CheckDate"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="检查日期"
HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="90px" ColumnID="CheckMainTypeName" DataField="CheckMainTypeName"
FieldType="String" HeaderText="检查大类" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="CheckTypeName" DataField="CheckTypeName"
SortField="CheckTypeName" FieldType="String" HeaderText="检查类别" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="200px" ColumnID="CheckObjectText" DataField="CheckObjectText"
FieldType="String" HeaderText="检查对象" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="CheckUnitName" DataField="CheckUnitName"
FieldType="String" HeaderText="检查单位" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="CheckTeam" DataField="CheckTeam" SortField="CheckTeam"
FieldType="String" HeaderText="检查组/人" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="200px" ColumnID="StatesName" DataField="StatesName"
FieldType="String" HeaderText="状态" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
</Columns>
<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="编辑企业级检查" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="true" runat="server" IsModal="true" OnClose="Window1_Close"
Width="1000px" Height="660px">
</f:Window>
</form>
</body>
</html>
@@ -0,0 +1,166 @@
using BLL;
using System;
using System.Linq;
using Model;
namespace FineUIPro.Web.ZHGL.Supervise
{
public partial class UnitHazardRegister : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.GetButtonPower();
btnNew.OnClientClick = Window1.GetShowReference("UnitHazardRegisterEdit.aspx?type=" + Request["type"]) + "return false;";
// 获取 Type 参数
string type = Request["type"] ?? "0";
drpCheckMainType.SelectedValue = type;
BLL.SuperviseCheckTypeService.InitCheckTypeDropDownListByMainType(
this.drpCheckType, type, true);
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
BindGrid();
}
}
/// <summary>
/// 绑定Grid数据
/// </summary>
private void BindGrid()
{
// 构建查询条件
var input = new UnitHazardRegisterInput
{
CheckMainType = drpCheckMainType.SelectedValue,
SearchText = this.txtSearch.Text.Trim(),
CheckType = this.drpCheckType.SelectedValue,
ProjectId = this.CurrUser.LoginProjectId
};
int totalCount;
// 使用新方法获取数据
var list = BLL.UnitHazardRegisterService.GetUnitHazardRegisters(
input,
Grid1.PageIndex,
Grid1.PageSize,
false,
out totalCount);
Grid1.RecordCount = totalCount;
Grid1.DataSource = list;
Grid1.DataBind();
}
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
BindGrid();
}
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
BindGrid();
}
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
btnEdit_Click(null, null);
}
protected void Grid1_Sort(object sender, GridSortEventArgs e)
{
BindGrid();
}
protected void txtSearch_TextChanged(object sender, EventArgs e)
{
BindGrid();
}
protected void drpCheckMainType_SelectedIndexChanged(object sender, EventArgs e)
{
// 重新加载检查类别下拉框
string type = drpCheckMainType.SelectedValue;
BLL.SuperviseCheckTypeService.InitCheckTypeDropDownListByMainType(this.drpCheckType, type, true);
BindGrid();
}
protected void btnEdit_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
string registerId = Grid1.SelectedRowID;
PageContext.RegisterStartupScript(Window1.GetShowReference(
String.Format("UnitHazardRegisterEdit.aspx?UnitHazardRegisterId={0}&type={1}",
registerId, Request["type"])));
}
protected void btnDelete_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
if (UnitHazardRegisterService.CanDeleteRegister(rowID) || (this.CurrUser.PersonId == Const.hfnbdId || this.CurrUser.PersonId == Const.sysglyId))
{
BLL.UnitHazardRegisterItemService.DeleteItemsByRegisterId(rowID);
BLL.UnitHazardRegisterService.DeleteUnitHazardRegisterById(rowID);
}
else
{
ShowNotify("该检查已进入整改流程不允许删除!", MessageBoxIcon.Warning);
return;
}
}
BindGrid();
ShowNotify("删除成功!", MessageBoxIcon.Success);
}
}
protected void btnOut_Click(object sender, EventArgs e)
{
string type = Request["type"] ?? "0";
string typeText = type == "0" ? "安全" : "质量";
Response.ClearContent();
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("企业" + typeText + "检查.xls", System.Text.Encoding.UTF8));
Response.Charset = "UTF-8";
Grid1.PageSize = 100000;
BindGrid();
Response.Write(GetGridTableHtml(Grid1));
Response.End();
}
private void GetButtonPower()
{
string menuId = Request["type"] == "0" ?
BLL.Const.UnitHazardRegisterMenu_Safety :
BLL.Const.UnitHazardRegisterMenu_Quality;
var buttonList = BLL.CommonService.GetAllButtonList(
this.CurrUser.LoginProjectId, this.CurrUser.PersonId, menuId);
if (buttonList.Count > 0)
{
if (buttonList.Contains(BLL.Const.BtnAdd)) btnNew.Hidden = false;
if (buttonList.Contains(BLL.Const.BtnModify)) btnEdit.Hidden = false;
if (buttonList.Contains(BLL.Const.BtnDelete)) btnDelete.Hidden = false;
}
}
}
}
@@ -0,0 +1,170 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.ZHGL.Supervise
{
public partial class UnitHazardRegister
{
/// <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>
/// txtSearch 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtSearch;
/// <summary>
/// drpCheckMainType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpCheckMainType;
/// <summary>
/// drpCheckType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpCheckType;
/// <summary>
/// btnNew 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// btnEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnEdit;
/// <summary>
/// btnDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnDelete;
/// <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;
}
}
@@ -0,0 +1,169 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UnitHazardRegisterEdit.aspx.cs" Inherits="FineUIPro.Web.ZHGL.Supervise.UnitHazardRegisterEdit" %>
<!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>编辑企业级检查</title>
<link href="~/res/css/common.css" rel="stylesheet" type="text/css" />
<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="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:TextBox ID="txtUnitHazardRegisterCode" runat="server" Label="检查编号" Required="true"
FocusOnPageLoad="true" MaxLength="50" ShowRedStar="true">
</f:TextBox>
<f:DatePicker runat="server" DateFormatString="yyyy-MM-dd" Label="检查日期" ID="dpkCheckDate" Required="true" ShowRedStar="true">
</f:DatePicker>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="drpCheckMainType" runat="server" EmptyText="请选择检查大类" ShowRedStar="true" Readonly="true"
Label="检查大类" AutoPostBack="true" OnSelectedIndexChanged="drpCheckMainType_SelectedIndexChanged" Required="true">
<f:ListItem Value="0" Text="安全" />
<f:ListItem Value="1" Text="质量" />
</f:DropDownList>
<f:DropDownList runat="server" ID="drpCheckType" EnableEdit="true" LabelAlign="Right"
Label="检查类别" AutoSelectFirstItem="true" Required="true" ShowRedStar="true">
</f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="ddlCheckUnitId" runat="server" EmptyText="请选择检查单位" OnSelectedIndexChanged="ddlCheckUnitId_SelectedIndexChanged"
Label="检查单位" ShowRedStar="true" Required="true" AutoSelectFirstItem="true" AutoPostBack="true">
</f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="ddlProjectId" runat="server" EmptyText="请选择项目" EnableEdit="true"
Label="检查对象" ShowRedStar="true" AutoPostBack="true" OnSelectedIndexChanged="ddlProjectId_SelectedIndexChanged" Required="true">
</f:DropDownList>
<f:DropDownList ID="ddlInsResponsibleUserId" runat="server" EmptyText="请选择受检责任人" ShowRedStar="true">
</f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtCheckTeam" runat="server" Label="检查组/人" MaxLength="200" Width="400px">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:ContentPanel ID="ContentPanel1" runat="server" ShowHeader="false" ShowBorder="false"
Title="问题明细" EnableCollapse="true">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" runat="server" OnRowCommand="Grid1_RowCommand" DataIDField="UnitHazardRegisterItemId"
DataKeyNames="UnitHazardRegisterItemId" EnableMultiSelect="false" ShowGridHeader="true"
EnableColumnLines="true" Height="350px" AllowCellEditing="true" ClicksToEdit="1" OnPreDataBound="Grid1_PreDataBound">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
<Items>
<f:Button ID="btnAdd" Icon="Add" runat="server" Text="新增问题" ValidateForms="SimpleForm1"
OnClick="btnAdd_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RowNumberField EnablePagingNumber="true" HeaderText="序号" Width="50px"
HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderField Width="200px" ColumnID="ProblemDescription" DataField="ProblemDescription"
FieldType="String" HeaderText="问题描述" HeaderTextAlign="Center" TextAlign="Left"
ExpandUnusedSpace="true">
<Editor>
<f:TextBox ID="txtProblemDescription" runat="server" MaxLength="500">
</f:TextBox>
</Editor>
</f:RenderField>
<f:TemplateField ColumnID="tfImageUrl1" Width="120px" HeaderText="问题图片" HeaderTextAlign="Center"
TextAlign="Left">
<ItemTemplate>
<asp:Label ID="lbImageUrl1" runat="server" Text='<%# BLL.UploadAttachmentService.ConvertImageUrlByImage(Eval("UnitHazardRegisterItemId")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="100px" ColumnID="ProblemType" DataField="ProblemType"
FieldType="String" HeaderText="问题类型" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:DropDownList ID="drpProblemType" runat="server" EnableEdit="true">
</f:DropDownList>
</Editor>
</f:RenderField>
<f:RenderField Width="80px" ColumnID="RiskLevel" DataField="RiskLevel"
FieldType="String" HeaderText="风险级别" HeaderTextAlign="Center" TextAlign="Center">
<Editor>
<f:DropDownList ID="drpRiskLevel" runat="server">
<f:ListItem Value="一般" Text="一般" />
<f:ListItem Value="较大" Text="较大" />
<f:ListItem Value="重大" Text="重大" />
</f:DropDownList>
</Editor>
</f:RenderField>
<f:RenderField Width="200px" ColumnID="RectifyRequirement" DataField="RectifyRequirement"
FieldType="String" HeaderText="整改要求" HeaderTextAlign="Center" TextAlign="Left">
<Editor>
<f:TextBox ID="txtRectifyRequirement" runat="server" MaxLength="500">
</f:TextBox>
</Editor>
</f:RenderField>
<f:LinkButtonField ID="lbUpload" Width="90px" HeaderText="问题图片上传" ConfirmTarget="Top" CommandName="attchUrl"
TextAlign="Center" ToolTip="上传" Text="上传" />
<f:LinkButtonField ID="lbDelete" ColumnID="Delete" Width="50px" EnablePostBack="false" Icon="Delete"
HeaderTextAlign="Center" HeaderText="删除" />
</Columns>
</f:Grid>
</Items>
</f:ContentPanel>
</Items>
</f:FormRow>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ValidateForms="SimpleForm1" Text="保存"
OnClick="btnSave_Click">
</f:Button>
<f:Button ID="btnSubmit" Icon="SystemSaveNew" runat="server" ToolTip="提交" ValidateForms="SimpleForm1" Text="提交"
OnClick="btnSubmit_Click">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" ToolTip="关闭" runat="server"
Icon="SystemClose" Text="关闭">
</f:Button>
<f:TextBox Hidden="true" ID="hdId" runat="server">
</f:TextBox>
<f:TextBox Hidden="true" ID="hdAttachUrl" runat="server">
</f:TextBox>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>
<f:Window ID="Window1" Title="上传图片" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Self" EnableResize="true" runat="server" OnClose="Window1_Close" IsModal="true"
Width="600px" Height="400px">
</f:Window>
<f:Window ID="WindowAtt" Title="上传附件" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="true" runat="server" OnClose="WindowAtt_Close" IsModal="true" Width="750px" Height="500px">
</f:Window>
</form>
</body>
</html>
@@ -0,0 +1,425 @@
using BLL;
using FineUIPro.Web.BaseInfo;
using FineUIPro.Web.SysManage;
using Microsoft.Win32;
using Model;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
namespace FineUIPro.Web.ZHGL.Supervise
{
public partial class UnitHazardRegisterEdit : PageBase
{
#region Fields
private List<View_UnitHazardRegisterItem> items = new List<View_UnitHazardRegisterItem>();
#endregion Fields
#region Properties
public string UnitHazardRegisterId
{
get { return (string)ViewState["UnitHazardRegisterId"]; }
set { ViewState["UnitHazardRegisterId"] = value; }
}
public string type
{
get { return (string)ViewState["type"]; }
set { ViewState["type"] = value; }
}
#endregion Properties
#region Methods
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
// 获取 Type 参数
type = Request["type"] ?? "0";
btnClose.OnClientClick = ActiveWindow.GetHideReference();
InitDropList();
this.UnitHazardRegisterId = Request.Params["UnitHazardRegisterId"];
var register = BLL.UnitHazardRegisterService.GetUnitHazardRegisterById(this.UnitHazardRegisterId);
if (register != null)
{
// 编辑模式 - 加载数据
this.txtUnitHazardRegisterCode.Text = register.UnitHazardRegisterCode;
if (register.CheckDate != null)
{
this.dpkCheckDate.Text = string.Format("{0:yyyy-MM-dd}", register.CheckDate);
}
this.drpCheckMainType.SelectedValue = register.CheckMainType;
if (!string.IsNullOrWhiteSpace(register.CheckType))
{
BLL.SuperviseCheckTypeService.InitCheckTypeDropDownListByMainType(
this.drpCheckType, register.CheckMainType, false);
this.drpCheckType.SelectedValue = register.CheckType;
}
if (!string.IsNullOrWhiteSpace(register.ProjectId))
{
this.ddlProjectId.SelectedValue = register.ProjectId;
this.ddlInsResponsibleUserId.Items.Clear();
BLL.Person_PersonsService.InitUserDropDownList(this.ddlInsResponsibleUserId, this.ddlProjectId.SelectedValue, true, null);
if (!string.IsNullOrWhiteSpace(register.InsResponsibleUserId))
{
this.ddlInsResponsibleUserId.SelectedValue = register.InsResponsibleUserId;
}
}
if (!string.IsNullOrWhiteSpace(register.CheckUnitId))
{
this.ddlCheckUnitId.SelectedValue = register.CheckUnitId;
}
this.txtCheckTeam.Text = register.CheckTeam;
// 加载明细
items = BLL.UnitHazardRegisterItemService.GetItemsByRegisterId(this.UnitHazardRegisterId)
.Select(x => new View_UnitHazardRegisterItem
{
UnitHazardRegisterItemId = x.UnitHazardRegisterItemId,
ProblemDescription = x.ProblemDescription,
ProblemType = x.ProblemType,
RiskLevel = x.RiskLevel,
RectifyRequirement = x.RectifyRequirement,
CompleteStatus = x.CompleteStatus,
CompletedDate = x.CompletedDate
}).ToList();
if (register.States> (int)UnitHazardRegisterService.StateInt.)
{
btnAdd.Hidden = true;
btnSave.Hidden = true;
btnSubmit.Hidden = true;
}
}
else
{
// 新增模式
var unitModel = UnitService.GetUnitByUnitId(this.CurrUser.UnitId);
if (unitModel?.IsBranch == true)
{
this.ddlCheckUnitId.SelectedValue = this.CurrUser.UnitId;
}
else
{
var thisUnit = BLL.CommonService.GetIsThisUnit();
this.ddlCheckUnitId.SelectedValue = thisUnit.UnitId;
}
this.txtCheckTeam.Text = BLL.UnitService.GetUnitNameByUnitId(this.CurrUser.UnitId) + " " + this.CurrUser.PersonName;
this.dpkCheckDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
// 自动生成编号
int newCount= UnitHazardRegisterService.GetCount(type)+1;
this.txtUnitHazardRegisterCode.Text = newCount.ToString().PadLeft(5,'0');
}
Grid1.DataSource = items;
Grid1.DataBind();
}
}
protected void InitDropList()
{
drpCheckMainType.SelectedValue = type;
// 初始化下拉框
BLL.UnitService.InitBranchUnitDropDownList(this.ddlCheckUnitId, false);
BLL.ProjectService.InitProjectDropDownList(this.ddlProjectId, ddlCheckUnitId.SelectedValue, true);
BLL.Person_PersonsService.InitUserDropDownList(this.ddlInsResponsibleUserId, this.ddlProjectId.SelectedValue, true, null);
BLL.SuperviseCheckTypeService.InitCheckTypeDropDownListByMainType(
this.drpCheckType, type, false);
if (type=="0")
{
this.drpProblemType.DataTextField = "RegisterTypesName";
this.drpProblemType.DataValueField = "RegisterTypesName";
this.drpProblemType.DataSource = BLL.HSSE_Hazard_HazardRegisterTypesService.GetHazardRegisterTypesList("1"); //安全巡检类型
this.drpProblemType.DataBind();
}
else
{
QualityQuestionTypeService.InitQualityQuestionType(drpProblemType, false);
}
}
protected void btnAdd_Click(object sender, EventArgs e)
{
JArray teamGroupData = Grid1.GetMergedData();
List<JObject> list = new List<JObject>();
foreach (JObject teamGroupRow in teamGroupData)
{
JObject values = teamGroupRow.Value<JObject>("values");
values.Add("UnitHazardRegisterItemId", teamGroupRow.Value<string>("id"));
list.Add(values);
}
JObject defaultObj = new JObject
{ { "UnitHazardRegisterItemId",Guid.NewGuid() },
{ "ProblemDescription", "" },
{ "ProblemType", "" },
{ "RiskLevel","一般"},
{ "RectifyRequirement", "" },
{ "Delete", String.Format("<a href=\"javascript:;\" onclick=\"{0}\"><img src=\"{1}\"/></a>", GetDeleteScript(), IconHelper.GetResolvedIconUrl(Icon.Delete)) }
};
list.Add(defaultObj);
Grid1.DataSource = list;
Grid1.DataBind();
}
protected void btnSave_Click(object sender, EventArgs e)
{
if (this.drpCheckMainType.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择检查大类!", MessageBoxIcon.Warning);
return;
}
if (this.drpCheckType.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择检查类别!", MessageBoxIcon.Warning);
return;
}
if (this.ddlProjectId.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择检查对象!", MessageBoxIcon.Warning);
return;
}
if (this.ddlCheckUnitId.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择检查单位!", MessageBoxIcon.Warning);
return;
}
SaveNew();
SaveItem();
ShowNotify("保存成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
if (this.drpCheckMainType.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择检查大类!", MessageBoxIcon.Warning);
return;
}
if (this.drpCheckType.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择检查类别!", MessageBoxIcon.Warning);
return;
}
if (this.ddlProjectId.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择检查对象!", MessageBoxIcon.Warning);
return;
}
if (this.ddlCheckUnitId.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择检查单位!", MessageBoxIcon.Warning);
return;
}
SaveNew(Const.BtnSubmit);
SaveItem();
ShowNotify("提交成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
protected void ddlCheckUnitId_SelectedIndexChanged(object sender, EventArgs e)
{
this.ddlProjectId.Items.Clear();
this.ddlInsResponsibleUserId.Items.Clear();
BLL.ProjectService.InitProjectDropDownList(this.ddlProjectId,ddlCheckUnitId.SelectedValue, true);
}
protected void ddlProjectId_SelectedIndexChanged(object sender, EventArgs e)
{
this.ddlInsResponsibleUserId.Items.Clear();
//BLL.UnitService.InitUnitNameByProjectIdUnitTypeDropDownList(this.ddlUnitId, this.ddlProjectId.SelectedValue, Const.ProjectUnitType_1, true);
BLL.Person_PersonsService.InitUserDropDownList(this.ddlInsResponsibleUserId, this.ddlProjectId.SelectedValue, true, null);
}
protected void drpCheckMainType_SelectedIndexChanged(object sender, EventArgs e)
{
BLL.SuperviseCheckTypeService.InitCheckTypeDropDownListByMainType(
this.drpCheckType, this.drpCheckMainType.SelectedValue, false);
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PreDataBound(object sender, EventArgs e)
{
// 设置LinkButtonField的点击客户端事件
LinkButtonField deleteField = Grid1.FindColumn("Delete") as LinkButtonField;
deleteField.OnClientClick = GetDeleteScript();
var register = BLL.UnitHazardRegisterService.GetUnitHazardRegisterById(this.UnitHazardRegisterId);
if (register!=null&& register.States > (int)UnitHazardRegisterService.StateInt.)
{
LinkButtonField lbUpload = Grid1.FindColumn(6) as LinkButtonField;
LinkButtonField lbDelete = Grid1.FindColumn(7) as LinkButtonField;
lbUpload.Enabled = false;
lbDelete.Enabled = false;
}
}
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
{
string itemId = Grid1.DataKeys[e.RowIndex][0].ToString();
string menuId = Request["type"] == "0" ?
BLL.Const.UnitHazardRegisterMenu_Safety :
BLL.Const.UnitHazardRegisterMenu_Quality;
if (e.CommandName == "attchUrl")
{
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/UnitHazardRegister&menuId={1}&edit=1", itemId, menuId)));
}
}
protected void SaveItem()
{
JArray teamGroupData = Grid1.GetMergedData();
foreach (JObject teamGroupRow in teamGroupData)
{
JObject values = teamGroupRow.Value<JObject>("values");
Model.Supervise_UnitHazardRegisterItem registerItem = new Model.Supervise_UnitHazardRegisterItem
{
UnitHazardRegisterItemId = teamGroupRow.Value<string>("id"),
UnitHazardRegisterId = this.UnitHazardRegisterId,
ProblemDescription = values.Value<string>("ProblemDescription"),
ProblemType = values.Value<string>("ProblemType"),
RiskLevel = values.Value<string>("RiskLevel"),
RectifyRequirement = values.Value<string>("RectifyRequirement"),
CompleteStatus = 0
};
if (UnitHazardRegisterItemService.GetUnitHazardRegisterItemById(registerItem.UnitHazardRegisterItemId) != null)
{
UnitHazardRegisterItemService.UpdateUnitHazardRegisterItem(registerItem);
}
else
{
BLL.UnitHazardRegisterItemService.AddUnitHazardRegisterItem(registerItem);
}
}
}
protected void SaveNew(string type="")
{
Supervise_UnitHazardRegister register = new Supervise_UnitHazardRegister
{
UnitHazardRegisterCode = this.txtUnitHazardRegisterCode.Text.Trim(),
CheckDate = Funs.GetNewDateTime(this.dpkCheckDate.Text.Trim()),
CheckMainType = this.drpCheckMainType.SelectedValue,
CheckType = this.drpCheckType.SelectedValue,
ProjectId = this.ddlProjectId.SelectedValue,
CheckUnitId = this.ddlCheckUnitId.SelectedValue,
InsResponsibleUserId = this.ddlInsResponsibleUserId.SelectedValue,
CheckTeam = this.txtCheckTeam.Text.Trim(),
CompileMan = this.CurrUser.PersonId,
States = (int)UnitHazardRegisterService.StateInt.
};
if (!string.IsNullOrEmpty(type))
{
register.States = (int)UnitHazardRegisterService.StateInt.;
}
if (string.IsNullOrWhiteSpace(this.UnitHazardRegisterId))
{
// 新增
register.UnitHazardRegisterId = SQLHelper.GetNewID(typeof(Supervise_UnitHazardRegister));
this.UnitHazardRegisterId = register.UnitHazardRegisterId;
BLL.UnitHazardRegisterService.AddUnitHazardRegister(register);
// 增加一条编码记录
BLL.CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitId(
BLL.Const.UnitHazardRegisterMenu_Safety, register.ProjectId, null,
register.UnitHazardRegisterId, register.CheckDate);
}
else
{
// 更新
register.UnitHazardRegisterId = this.UnitHazardRegisterId;
BLL.UnitHazardRegisterService.UpdateUnitHazardRegister(register);
}
}
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
// 刷新Grid数据
items = BLL.UnitHazardRegisterItemService.GetItemsByRegisterId(this.UnitHazardRegisterId)
.Select(x => new View_UnitHazardRegisterItem
{
UnitHazardRegisterItemId = x.UnitHazardRegisterItemId,
ProblemDescription = x.ProblemDescription,
ProblemType = x.ProblemType,
RiskLevel = x.RiskLevel,
RectifyRequirement = x.RectifyRequirement,
CompleteStatus = x.CompleteStatus,
CompletedDate = x.CompletedDate
}).ToList();
Grid1.DataSource = items;
Grid1.DataBind();
}
protected void WindowAtt_Close(object sender, WindowCloseEventArgs e)
{
// 刷新Grid数据
JArray teamGroupData = Grid1.GetMergedData();
List<JObject> list = new List<JObject>();
foreach (JObject teamGroupRow in teamGroupData)
{
JObject values = teamGroupRow.Value<JObject>("values");
values.Add("UnitHazardRegisterItemId", teamGroupRow.Value<string>("id"));
list.Add(values);
}
Grid1.DataSource = list;
Grid1.DataBind();
}
/// <summary>
/// 删除提示
/// </summary>
/// <returns></returns>
private string GetDeleteScript()
{
return Confirm.GetShowReference("删除选中行?", String.Empty, MessageBoxIcon.Question, Grid1.GetDeleteSelectedRowsReference(), String.Empty);
}
#endregion Methods
}
/// <summary>
/// 企业级检查明细视图类
/// </summary>
public class View_UnitHazardRegisterItem
{
#region Properties
public DateTime? CompletedDate { get; set; }
public int? CompleteStatus { get; set; }
public string ProblemDescription { get; set; }
public string ProblemImageUrl { get; set; }
public string ProblemType { get; set; }
public string RectifyRequirement { get; set; }
public string RiskLevel { get; set; }
public string UnitHazardRegisterItemId { get; set; }
#endregion Properties
}
}
@@ -0,0 +1,287 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.ZHGL.Supervise
{
public partial class UnitHazardRegisterEdit
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// txtUnitHazardRegisterCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtUnitHazardRegisterCode;
/// <summary>
/// dpkCheckDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker dpkCheckDate;
/// <summary>
/// drpCheckMainType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpCheckMainType;
/// <summary>
/// drpCheckType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpCheckType;
/// <summary>
/// ddlCheckUnitId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlCheckUnitId;
/// <summary>
/// ddlProjectId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlProjectId;
/// <summary>
/// ddlInsResponsibleUserId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlInsResponsibleUserId;
/// <summary>
/// txtCheckTeam 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtCheckTeam;
/// <summary>
/// ContentPanel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel ContentPanel1;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// btnAdd 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAdd;
/// <summary>
/// txtProblemDescription 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProblemDescription;
/// <summary>
/// lbImageUrl1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lbImageUrl1;
/// <summary>
/// drpProblemType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpProblemType;
/// <summary>
/// drpRiskLevel 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpRiskLevel;
/// <summary>
/// txtRectifyRequirement 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRectifyRequirement;
/// <summary>
/// lbUpload 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.LinkButtonField lbUpload;
/// <summary>
/// lbDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.LinkButtonField lbDelete;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnSubmit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSubmit;
/// <summary>
/// btnClose 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnClose;
/// <summary>
/// hdId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox hdId;
/// <summary>
/// hdAttachUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox hdAttachUrl;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// WindowAtt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window WindowAtt;
}
}
@@ -0,0 +1,225 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UnitHazardRegisterRecord.aspx.cs" Inherits="FineUIPro.Web.ZHGL.Supervise.UnitHazardRegisterRecord" %>
<!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>企业级检查记录</title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
<link href="~/res/css/viewer.min.css" rel="stylesheet" />
<script src="../../res/js/viewer.min.js"></script>
<style type="text/css">
.f-grid-row .f-grid-cell-inner {
white-space: normal;
word-break: break-all;
}
.imgPreview {
display: none;
top: 0;
left: 0;
width: 100%; /*容器占满整个屏幕*/
height: 100%;
position: fixed;
background: rgba(0, 0, 0, 0.5);
}
.imgPreview img {
z-index: 100;
width: 60%;
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
}
/*添加鼠标移入图片效果*/
.img {
cursor: url("ico/放大镜.png"), auto;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="VBox" BodyPadding="5px">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="企业级检查记录"
runat="server" BoxFlex="1" DataKeyNames="UnitHazardRegisterItemId" DataIDField="UnitHazardRegisterItemId"
AllowSorting="true" SortField="CheckDate" SortDirection="DESC" OnSort="Grid1_Sort"
EnableColumnLines="true" AllowPaging="true" IsDatabasePaging="true" PageSize="10"
OnPageIndexChange="Grid1_PageIndexChange" OnRowCommand="Grid1_RowCommand" ForceFit="true"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="True">
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox runat="server" Label="检查组/人" ID="txtCheckTeam" EmptyText="输入查询条件" AutoPostBack="true"
OnTextChanged="TextBox_TextChanged" LabelAlign="right" Width="250px" LabelWidth="90px">
</f:TextBox>
<f:TextBox runat="server" Label="检查类别" ID="txtCheckType" EmptyText="输入查询条件" AutoPostBack="true"
OnTextChanged="TextBox_TextChanged" LabelAlign="right" Width="250px" LabelWidth="90px">
</f:TextBox>
<f:TextBox runat="server" Label="问题描述" ID="txtProblem" EmptyText="输入查询条件" AutoPostBack="true"
OnTextChanged="TextBox_TextChanged" LabelAlign="right" Width="300px" LabelWidth="90px">
</f:TextBox>
</Items>
</f:Toolbar>
</Toolbars>
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:DatePicker ID="txtStartTime" runat="server" Label="检查时间" LabelAlign="Right"
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="200px" LabelWidth="90px">
</f:DatePicker>
<f:Label ID="Label3" runat="server" Text="至">
</f:Label>
<f:DatePicker ID="txtEndTime" runat="server" AutoPostBack="true" OnTextChanged="TextBox_TextChanged"
Width="130px">
</f:DatePicker>
<f:DropDownList ID="drpRiskLevel" runat="server" Label="风险级别" AutoPostBack="true" EmptyText="-请选择-" AutoSelectFirstItem="false"
OnSelectedIndexChanged="TextBox_TextChanged" LabelWidth="90px" LabelAlign="Right" Width="200px">
<f:ListItem Text="一般" Value="一般" />
<f:ListItem Text="较大" Value="较大" />
<f:ListItem Text="重大" Value="重大" />
</f:DropDownList>
<f:DropDownList ID="drpProblemStates" runat="server" Label="问题整改状态" AutoPostBack="true" EmptyText="-请选择-" AutoSelectFirstItem="false"
OnSelectedIndexChanged="TextBox_TextChanged" LabelWidth="120px" LabelAlign="Right" Width="200px">
<f:ListItem Text="待整改" Value="0" />
<f:ListItem Text="已整改" Value="1" />
</f:DropDownList>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnEdit" Icon="Pencil" runat="server" OnClick="btnEdit_Click" Text="编辑" Hidden="true">
</f:Button>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp" Text="导出"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfNumber" Width="55px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="labNumber" runat="server"
Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'>
</asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="120px" ColumnID="UnitHazardRegisterCode" DataField="UnitHazardRegisterCode"
SortField="UnitHazardRegisterCode" FieldType="String" HeaderText="检查编号" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="CheckDate" DataField="CheckDate"
SortField="CheckDate" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd"
HeaderText="检查日期" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="CheckMainTypeName" DataField="CheckMainTypeName"
FieldType="String" HeaderText="检查大类" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="CheckTypeName" DataField="CheckTypeName"
SortField="CheckTypeName" FieldType="String" HeaderText="检查类别" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="ProblemDescription" DataField="ProblemDescription"
FieldType="String" HeaderText="问题描述" TextAlign="Left" HeaderTextAlign="Center"
ExpandUnusedSpace="true">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ProblemType" DataField="ProblemType"
FieldType="String" HeaderText="问题类型" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="RiskLevel" DataField="RiskLevel"
FieldType="String" HeaderText="风险级别" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="250px" ColumnID="RectifyRequirement" DataField="RectifyRequirement"
FieldType="String" HeaderText="整改要求" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:TemplateField ColumnID="tfImageUrl1" Width="120px" HeaderText="整改前" HeaderTextAlign="Center"
TextAlign="Left">
<ItemTemplate>
<asp:Label ID="lbImageUrl1" runat="server" Text='<%# BLL.UploadAttachmentService.ConvertImageUrlByImage(Eval("UnitHazardRegisterItemId")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:TemplateField ColumnID="tfImageUrl2" Width="120px" HeaderText="整改后" HeaderTextAlign="Center"
TextAlign="Left">
<ItemTemplate>
<asp:Label ID="lbImageUrl2" runat="server" Text='<%# BLL.UploadAttachmentService.ConvertImageUrlByImage(Eval("UnitHazardRegisterItemId")+"-R") %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<%-- <f:RenderField Width="80px" ColumnID="StatesName" DataField="StatesName"
SortField="StatesName" FieldType="String" HeaderText="检查单状态" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>--%>
<f:RenderField Width="80px" ColumnID="ProblemStatesName" DataField="ProblemStatesName"
SortField="ProblemStatesName" FieldType="String" HeaderText="整改状态" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="InsResponsibleUserName" DataField="InsResponsibleUserName"
SortField="InsResponsibleUserName" FieldType="String" HeaderText="整改负责人" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
</Columns>
<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" Selected="true" />
<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="查看明细" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" OnClose="Window1_Close"
Width="900px" Height="580px">
</f:Window>
<f:Window ID="WindowAtt" Title="问题图片" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="750px"
Height="500px">
</f:Window>
</form>
<div class="imgPreview">
<img src="#" alt="" id="imgPreview" />
</div>
<script type="text/javascript">
var imgID = '<%=Grid1.ClientID %>';
function showImg() {
var $wrap = $("#" + imgID)
console.log($wrap)
$wrap.find('img').on('click', function () {
var src = $(this).attr('src');
console.log(src)
if (src.indexOf("/res/icon") != -1) {
return;
}
var div = document.createElement('div');
div.style.display = 'none';
div.innerHTML = '<img src="' + src + '">'; // 创建一个包含图片的 div 元素
document.body.appendChild(div); // 将 div 元素添加到页面中
var viewer = new Viewer(div.firstChild); // 创建 Viewer 实例并传入图片元素
viewer.show(); // 显示图片预览
// 在 Viewer 关闭后移除添加的 div 元素
viewer.on('hidden', function () {
document.body.removeChild(div);
});
});
$('.imgPreview').on('click', function () {
// $('.imgPreview').hide()
});
}
F.ready(function () {
showImg();
})
</script>
</body>
</html>
@@ -0,0 +1,285 @@
using BLL;
using Model;
using System;
using System.Linq;
using System.Text;
using AspNet = System.Web.UI.WebControls;
namespace FineUIPro.Web.ZHGL.Supervise
{
public partial class UnitHazardRegisterRecord : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Funs.DropDownPageSize(this.ddlPageSize);
this.ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格
this.BindGrid();
}
}
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
// 获取 Type 参数 (0=安全, 1=质量)
string type = Request["type"] ?? "0";
// 解析时间参数
DateTime? startTime = null;
DateTime? endTime = null;
if (!string.IsNullOrEmpty(txtStartTime.Text.Trim()))
{
startTime = Funs.GetNewDateTime(txtStartTime.Text.Trim());
}
if (!string.IsNullOrEmpty(txtEndTime.Text.Trim()))
{
endTime = Funs.GetNewDateTime(txtEndTime.Text.Trim());
}
// 解析状态参数
int? problemStates = null;
if (!string.IsNullOrEmpty(this.drpProblemStates.SelectedValue))
{
problemStates = Convert.ToInt32(this.drpProblemStates.SelectedValue);
}
// 构建查询条件
var input = new UnitHazardRegisterItemInput
{
CheckMainType = type,
CheckTeam = this.txtCheckTeam.Text.Trim(),
CheckType = this.txtCheckType.Text.Trim(),
Problem = this.txtProblem.Text.Trim(),
StartTime = startTime,
EndTime = endTime,
RiskLevel = this.drpRiskLevel.SelectedValue,
ProblemStates = problemStates,
UnitId = this.CurrUser.UnitId
};
if (!string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
{
input.ProjectId = this.CurrUser.LoginProjectId;
}
int totalCount;
// 使用新方法获取数据
var list = BLL.UnitHazardRegisterItemService.GetUnitHazardRegisterItems(
input,
Grid1.PageIndex,
Grid1.PageSize,
false,
out totalCount);
Grid1.RecordCount = totalCount;
Grid1.DataSource = list;
Grid1.DataBind();
}
/// <summary>
/// 分页
/// </summary>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
/// <summary>
/// 排序
/// </summary>
protected void Grid1_Sort(object sender,GridSortEventArgs e)
{
BindGrid();
}
/// <summary>
/// 分页显示条数下拉框
/// </summary>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
BindGrid();
}
/// <summary>
/// 查询
/// </summary>
protected void TextBox_TextChanged(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(this.txtStartTime.Text.Trim()) && !string.IsNullOrEmpty(this.txtEndTime.Text.Trim()))
{
if (Funs.GetNewDateTime(this.txtStartTime.Text.Trim()) > Funs.GetNewDateTime(this.txtEndTime.Text.Trim()))
{
Alert.ShowInTop("开始时间不能大于结束时间!", MessageBoxIcon.Warning);
return;
}
}
this.BindGrid();
}
/// <summary>
/// 关闭弹出窗
/// </summary>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
BindGrid();
}
/// <summary>
/// Grid行双击事件
/// </summary>
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
string itemId = Grid1.SelectedRowID;
// 打开单个问题记录整改编辑界面
var item = BLL.UnitHazardRegisterItemService.GetUnitHazardRegisterItemById(itemId);
if (item != null)
{
PageContext.RegisterStartupScript(Window1.GetShowReference(
String.Format("UnitHazardRegisterRecordEdit.aspx?ItemId={0}&RegisterId={1}&type={2}",
itemId, item.UnitHazardRegisterId, Request["type"])));
}
}
/// <summary>
/// Grid行命令事件
/// </summary>
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
{
string itemId = Grid1.DataKeys[e.RowIndex][0].ToString();
if (e.CommandName == "attchUrl")
{
// 查看问题图片
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/UnitHazardRegister&menuId={1}&edit=1&type=-1",
itemId, Request["type"] == "0" ? BLL.Const.UnitHazardRegisterMenu_Safety : BLL.Const.UnitHazardRegisterMenu_Quality)));
}
}
/// <summary>
/// 导出按钮
/// </summary>
protected void btnOut_Click(object sender, EventArgs e)
{
string type = Request["type"] ?? "0";
string typeText = type == "0" ? "安全" : "质量";
Response.ClearContent();
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("企业" + typeText + "检查记录.xls", System.Text.Encoding.UTF8));
Response.Charset = "UTF-8";
Grid1.PageSize = 100000;
BindGrid();
Response.Write(GetGridTableHtml(Grid1));
Response.End();
}
#pragma warning disable CS0108 // “HiddenRectificationList.GetGridTableHtml(Grid)”隐藏继承的成员“PageBase.GetGridTableHtml(Grid)”。如果是有意隐藏,请使用关键字 new。
/// <summary>
/// 导出方法
/// </summary>
/// <param name="grid"></param>
/// <returns></returns>
private string GetGridTableHtml(Grid grid)
#pragma warning restore CS0108 // “HiddenRectificationList.GetGridTableHtml(Grid)”隐藏继承的成员“PageBase.GetGridTableHtml(Grid)”。如果是有意隐藏,请使用关键字 new。
{
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)
{
if (column.ColumnID != "ckbIsSelected" && column.ColumnID != "Punish" && column.ColumnID != "Del")
{
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)
{
if (column.ColumnID != "ckbIsSelected" && column.ColumnID != "Punish" && column.ColumnID != "Del")
{
string html = row.Values[column.ColumnIndex].ToString();
if (column.ColumnID == "tfPageIndex")
{
html = (row.FindControl("lblPageIndex") as AspNet.Label).Text;
}
if (column.ColumnID == "tfImageUrl")
{
html = (row.FindControl("lbtnImageUrl") as AspNet.LinkButton).Text;
}
if (column.ColumnID == "tfRectificationImageUrl")
{
html = (row.FindControl("lbtnRectificationImageUrl") as AspNet.LinkButton).Text;
}
if (column.ColumnID == "ProblemTypes")
{
html = (row.FindControl("lbProblemTypes") as AspNet.Label).Text;
}
if (column.ColumnID == "tfImageUrl1")
{
html = (row.FindControl("lbImageUrl1") as AspNet.Label).Text;
}
if (column.ColumnID == "tfImageUrl2")
{
html = (row.FindControl("lbImageUrl2") as AspNet.Label).Text;
}
if (column.ColumnID == "CheckCycle")
{
html = (row.FindControl("Label2") as AspNet.Label).Text;
}
//if (column.ColumnID == "tfCutPayment")
//{
// html = (row.FindControl("lbtnCutPayment") as AspNet.LinkButton).Text;
//}
sb.AppendFormat("<td>{0}</td>", html);
}
}
sb.Append("</tr>");
}
sb.Append("</table>");
return sb.ToString();
}
protected void btnEdit_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
string itemId = Grid1.SelectedRowID;
// 打开单个问题记录整改编辑界面
var item = BLL.UnitHazardRegisterItemService.GetUnitHazardRegisterItemById(itemId);
if (item != null)
{
PageContext.RegisterStartupScript(Window1.GetShowReference(
String.Format("UnitHazardRegisterRecordEdit.aspx?ItemId={0}&RegisterId={1}&type={2}",
itemId, item.UnitHazardRegisterId, Request["type"])));
}
}
}
}
@@ -0,0 +1,242 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.ZHGL.Supervise
{
public partial class UnitHazardRegisterRecord
{
/// <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>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// txtCheckTeam 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtCheckTeam;
/// <summary>
/// txtCheckType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtCheckType;
/// <summary>
/// txtProblem 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProblem;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// txtStartTime 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtStartTime;
/// <summary>
/// Label3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label3;
/// <summary>
/// txtEndTime 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtEndTime;
/// <summary>
/// drpRiskLevel 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpRiskLevel;
/// <summary>
/// drpProblemStates 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpProblemStates;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnEdit;
/// <summary>
/// btnOut 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut;
/// <summary>
/// labNumber 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label labNumber;
/// <summary>
/// lbImageUrl1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lbImageUrl1;
/// <summary>
/// lbImageUrl2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lbImageUrl2;
/// <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>
/// WindowAtt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window WindowAtt;
}
}
@@ -0,0 +1,113 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UnitHazardRegisterRecordEdit.aspx.cs"
Inherits="FineUIPro.Web.ZHGL.Supervise.UnitHazardRegisterRecordEdit" %>
<!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>问题整改</title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:TextBox ID="txtCheckType" runat="server" Label="检查类别" Readonly="true">
</f:TextBox>
<f:TextBox ID="txtProblemType" runat="server" Label="问题类型" Readonly="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtRiskLevel" runat="server" Label="风险级别" Readonly="true">
</f:TextBox>
<f:TextBox ID="txtCheckDate" runat="server" Label="检查日期" Readonly="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtCheckTeam" runat="server" Label="检查组/人" Readonly="true">
</f:TextBox>
<f:TextBox ID="txtCheckUnitName" runat="server" Label="检查单位" Readonly="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextArea ID="txtProblemDescription" runat="server" Label="问题描述"
Height="80px" Readonly="true">
</f:TextArea>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextArea ID="txtRectifyRequirement" runat="server" Label="整改要求"
Height="60px" Readonly="true">
</f:TextArea>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:LinkButton ID="btnBeforeImage" runat="server" Label="整改前照片"
Text="查看" OnClick="btnBeforeImage_Click" LabelAlign="Right">
</f:LinkButton>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextArea ID="txtRectificationMeasures" runat="server" Label="整改措施"
Height="80px" Required="true" ShowRedStar="true">
</f:TextArea>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtInsResponsibleUserName" runat="server" Label="整改负责人" Readonly="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DatePicker ID="dpkCompletedDate" runat="server" Label="完成日期"
Required="true" ShowRedStar="true">
</f:DatePicker>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:LinkButton ID="btnAfterImage" runat="server" Label="整改后照片"
Text="上传和查看" OnClick="btnAfterImage_Click" LabelAlign="Right">
</f:LinkButton>
</Items>
</f:FormRow>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ValidateForms="SimpleForm1"
Text="保存" OnClick="btnSave_Click">
</f:Button>
<f:Button ID="btnSubmit" Icon="SystemSaveNew" runat="server" ValidateForms="SimpleForm1"
Text="提交" OnClick="btnSubmit_Click">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" ToolTip="关闭" runat="server"
Icon="SystemClose" Text="关闭">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>
<f:Window ID="Window1" Title="文件上传" Hidden="true" EnableIFrame="true"
EnableMaximize="true" Target="Parent" EnableResize="false" runat="server"
IsModal="true" Width="750px" Height="500px">
</f:Window>
</form>
</body>
</html>
@@ -0,0 +1,255 @@
using BLL;
using FineUIPro.Web.BaseInfo;
using Model;
using System;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.ZHGL.Supervise
{
public partial class UnitHazardRegisterRecordEdit : PageBase
{
#region
/// <summary>
/// 问题明细ID
/// </summary>
private string ItemId
{
get { return (string)ViewState["ItemId"]; }
set { ViewState["ItemId"] = value; }
}
/// <summary>
/// 主单ID
/// </summary>
private string RegisterId
{
get { return (string)ViewState["RegisterId"]; }
set { ViewState["RegisterId"] = value; }
}
/// <summary>
/// 检查大类(0=安全,1=质量)
/// </summary>
private string CheckMainType
{
get { return (string)ViewState["CheckMainType"]; }
set { ViewState["CheckMainType"] = value; }
}
#endregion
#region
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.btnClose.OnClientClick = ActiveWindow.GetHideReference();
// 获取参数
this.ItemId = Request.Params["ItemId"];
this.RegisterId = Request.Params["RegisterId"];
this.CheckMainType = Request["type"] ?? "0";
// 加载数据
if (!string.IsNullOrEmpty(this.ItemId))
{
LoadData();
}
}
}
/// <summary>
/// 加载数据
/// </summary>
private void LoadData()
{
// 获取明细记录
var item = BLL.UnitHazardRegisterItemService.GetUnitHazardRegisterItemById(this.ItemId);
if (item == null)
{
Alert.ShowInTop("问题记录不存在!", MessageBoxIcon.Error);
return;
}
// 获取主单记录
var register = BLL.UnitHazardRegisterService.GetUnitHazardRegisterById(this.RegisterId);
if (register == null)
{
Alert.ShowInTop("检查记录不存在!", MessageBoxIcon.Error);
return;
}
// 填充只读字段
this.txtCheckType.Text = BLL.SuperviseCheckTypeService.GetCheckTypeName(
register.CheckMainType, register.CheckType);
this.txtProblemType.Text = item.ProblemType;
this.txtRiskLevel.Text = item.RiskLevel;
if (register.CheckDate != null)
{
this.txtCheckDate.Text = string.Format("{0:yyyy-MM-dd}", register.CheckDate);
}
this.txtCheckTeam.Text = register.CheckTeam;
this.txtCheckUnitName.Text = BLL.UnitService.GetUnitNameByUnitId(register.CheckUnitId);
this.txtProblemDescription.Text = item.ProblemDescription;
this.txtRectifyRequirement.Text = item.RectifyRequirement;
this.txtInsResponsibleUserName.Text = Person_PersonsService.GetPersonsNameById(register.InsResponsibleUserId);
// 填充可编辑字段
this.txtRectificationMeasures.Text = item.RectificationMeasures;
if (item.CompletedDate != null)
{
this.dpkCompletedDate.Text = string.Format("{0:yyyy-MM-dd}", item.CompletedDate);
}
else
{
this.dpkCompletedDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
}
bool isPowerEdit= (this.CurrUser.PersonId == Const.sysglyId|| this.CurrUser.PersonId == Const.hfnbdId || this.CurrUser.PersonId == register.InsResponsibleUserId) ? true: false;
// 判断是否已整改,如果已整改则隐藏保存和提交按钮
if (item.CompleteStatus == 1 || !isPowerEdit)
{
this.btnSave.Hidden = true;
this.btnSubmit.Hidden = true;
this.txtRectificationMeasures.Readonly = true;
this.dpkCompletedDate.Readonly = true;
// this.btnAfterImage.Enabled = false;
if (item.CompleteStatus != 1 && !isPowerEdit)
{
ShowNotify("您不是整改责任人,不允许修改!", MessageBoxIcon.Information);
}
}
}
#endregion
#region
/// <summary>
/// 保存按钮
/// </summary>
protected void btnSave_Click(object sender, EventArgs e)
{
SaveData(false);
}
/// <summary>
/// 提交按钮
/// </summary>
protected void btnSubmit_Click(object sender, EventArgs e)
{
SaveData(true);
}
/// <summary>
/// 保存数据
/// </summary>
/// <param name="isSubmit">是否提交</param>
private void SaveData(bool isSubmit)
{
var item = BLL.UnitHazardRegisterItemService.GetUnitHazardRegisterItemById(this.ItemId);
if (item == null)
{
Alert.ShowInTop("问题记录不存在!", MessageBoxIcon.Error);
return;
}
// 验证:如果已整改,不允许修改
if (item.CompleteStatus == 1)
{
Alert.ShowInTop("该问题已整改完成,不允许修改!", MessageBoxIcon.Warning);
return;
}
// 更新明细字段
item.RectificationMeasures = this.txtRectificationMeasures.Text.Trim();
item.CompletedDate = Funs.GetNewDateTime(this.dpkCompletedDate.Text.Trim());
// 如果提交,确保标记为已完成
if (isSubmit)
{
item.CompleteStatus = 1;
if (!item.CompletedDate.HasValue)
{
item.CompletedDate = DateTime.Now;
}
}
// 更新数据库
BLL.UnitHazardRegisterItemService.UpdateUnitHazardRegisterItem(item);
if (isSubmit)
{
// 更新主单状态
UnitHazardRegisterService.UpdateRegisterStatus(this.RegisterId);
}
// 记录日志
string menuId = this.CheckMainType == "0" ?
BLL.Const.UnitHazardRegisterMenu_Safety :
BLL.Const.UnitHazardRegisterMenu_Quality;
BLL.LogService.AddSys_Log(this.CurrUser, item.UnitHazardRegisterItemId,
this.ItemId, menuId, BLL.Const.BtnModify);
ShowNotify(isSubmit ? "提交成功!" : "保存成功!", MessageBoxIcon.Success);
// 关闭窗口
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
#endregion
#region
/// <summary>
/// 查看整改前照片
/// </summary>
protected void btnBeforeImage_Click(object sender, EventArgs e)
{
string menuId = this.CheckMainType == "0" ?
BLL.Const.UnitHazardRegisterMenu_Safety :
BLL.Const.UnitHazardRegisterMenu_Quality;
PageContext.RegisterStartupScript(Window1.GetShowReference(
String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/UnitHazardRegister&menuId={1}&edit=0&type=-1",
this.ItemId, menuId)));
}
/// <summary>
/// 上传和查看整改后照片
/// </summary>
protected void btnAfterImage_Click(object sender, EventArgs e)
{
string menuId = this.CheckMainType == "0" ?
BLL.Const.UnitHazardRegisterMenu_Safety :
BLL.Const.UnitHazardRegisterMenu_Quality;
var item = BLL.UnitHazardRegisterItemService.GetUnitHazardRegisterItemById(this.ItemId);
if (item != null && item.CompleteStatus == 1) //已整改不允许上传
{
PageContext.RegisterStartupScript(Window1.GetShowReference(
String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/UnitHazardRegister/&menuId={1}&edit=1&type=-1 ",
this.ItemId + "-R", menuId)));
}
else
{
PageContext.RegisterStartupScript(Window1.GetShowReference(
String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/UnitHazardRegister/&menuId={1}&edit=1 ",
this.ItemId + "-R", menuId)));
}
}
#endregion
}
}
@@ -0,0 +1,215 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.ZHGL.Supervise
{
public partial class UnitHazardRegisterRecordEdit
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// txtCheckType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtCheckType;
/// <summary>
/// txtProblemType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProblemType;
/// <summary>
/// txtRiskLevel 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRiskLevel;
/// <summary>
/// txtCheckDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtCheckDate;
/// <summary>
/// txtCheckTeam 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtCheckTeam;
/// <summary>
/// txtCheckUnitName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtCheckUnitName;
/// <summary>
/// txtProblemDescription 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtProblemDescription;
/// <summary>
/// txtRectifyRequirement 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtRectifyRequirement;
/// <summary>
/// btnBeforeImage 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.LinkButton btnBeforeImage;
/// <summary>
/// txtRectificationMeasures 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtRectificationMeasures;
/// <summary>
/// txtInsResponsibleUserName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtInsResponsibleUserName;
/// <summary>
/// dpkCompletedDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker dpkCompletedDate;
/// <summary>
/// btnAfterImage 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.LinkButton btnAfterImage;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnSubmit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSubmit;
/// <summary>
/// btnClose 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnClose;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
}
}