759 lines
32 KiB
C#
759 lines
32 KiB
C#
|
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.Customization.CNCCG.HSSE.Check
|
|||
|
{
|
|||
|
public partial class SafetyOfficerCheckPerson : PageBase
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// GV被选择项列表
|
|||
|
/// </summary>
|
|||
|
public List<string> ItemSelectedList
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return (List<string>)ViewState["ItemSelectedList"];
|
|||
|
}
|
|||
|
set
|
|||
|
{
|
|||
|
ViewState["ItemSelectedList"] = value;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
|
|||
|
{
|
|||
|
string rowID = Grid1.DataKeys[e.RowIndex][1].ToString();
|
|||
|
if (e.CommandName == "IsSelected")
|
|||
|
{
|
|||
|
CheckBoxField checkField = (CheckBoxField)Grid1.FindColumn("ckbIsSelected");
|
|||
|
if (checkField.GetCheckedState(e.RowIndex))
|
|||
|
{
|
|||
|
if (!ItemSelectedList.Contains(rowID))
|
|||
|
{
|
|||
|
ItemSelectedList.Add(rowID);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (ItemSelectedList.Contains(rowID))
|
|||
|
{
|
|||
|
ItemSelectedList.Remove(rowID);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 加载页面
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Page_Load(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (!IsPostBack)
|
|||
|
{
|
|||
|
this.ItemSelectedList = new List<string>();
|
|||
|
|
|||
|
//this.btnNew.OnClientClick = Window2.GetShowReference("SafePersonAdd.aspx") + "return false;";
|
|||
|
|
|||
|
if (this.CurrUser != null && this.CurrUser.PageSize.HasValue)
|
|||
|
{
|
|||
|
Grid1.PageSize = this.CurrUser.PageSize.Value;
|
|||
|
}
|
|||
|
this.ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
|
|||
|
// 绑定表格
|
|||
|
this.BindGrid();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
#region 加载数据
|
|||
|
/// <summary>
|
|||
|
/// 绑定数据
|
|||
|
/// </summary>
|
|||
|
private void BindGrid()
|
|||
|
{
|
|||
|
//string strSql = @"SELECT Users.UserId,Users.Account,Users.UserCode,Users.Password,Users.UserName,Depart.DepartName,Users.RoleId,Users.UnitId,Users.IsPost,CASE WHEN Users.IsPost=1 THEN '是' ELSE '否' END AS IsPostName,Users.IdentityCard,Users.Telephone,Users.IsOffice,UnitCode,"
|
|||
|
// + @"Roles.RoleName,Unit.UnitName,Unit.UnitCode"
|
|||
|
// + @" From dbo.Sys_User AS Users"
|
|||
|
// + @" LEFT JOIN Sys_Role AS Roles ON Roles.RoleId=Users.RoleId"
|
|||
|
// + @" LEFT JOIN Base_Unit AS Unit ON Unit.UnitId=Users.UnitId"
|
|||
|
// + @" LEFT JOIN Base_Depart AS Depart ON Depart.DepartId=Users.DepartId"
|
|||
|
// + @" WHERE Users.UserId !='" + Const.sysglyId + "' AND Users.UserId !='" + Const.hfnbdId + "' AND Users.UserId !='" + Const.sedinId + "'";'
|
|||
|
//查询user表里岗位项目角色是群安员的用户
|
|||
|
string strSql = @"select Users.UserId,Users.Username,Users.ProjectId,Users.ProjectRoleId,Users.UnitId,
|
|||
|
case when Safe.SafetyOfficerCheckPersonId is null then '' else Safe.SafetyOfficerCheckPersonId end as SafetyOfficerCheckPersonId,
|
|||
|
case when Safe.State is null then '1' else Safe.State end as State,
|
|||
|
Safe.Sex,Safe.Age,Safe.AffTeam,Safe.AffTeamsGroup,Safe.JobName,Safe.EduLevel,Safe.DismissState,U.UnitName,Safe.DismissDate,p.ProjectName as ProjectName,
|
|||
|
Case Safe.Sex When '1' Then '男' When '2' Then '女' End As SexName from Sys_User Users
|
|||
|
left join SafetyOfficerCheckPerson Safe on Users.UserId=Safe.userid
|
|||
|
left join Base_Unit U on Users.UnitId=U.UnitId
|
|||
|
left join base_project p on Users.ProjectId=p.ProjectId
|
|||
|
where charindex('" + Const.Qay + "',ProjectRoleId)>0 and p.ProjectId is not null";
|
|||
|
// string strSql = @"select Users.UserId,Users.Username,Users.ProjectId,Users.ProjectRoleId,Users.UnitId,
|
|||
|
// case when Safe.SafetyOfficerCheckPersonId is null then '' else Safe.SafetyOfficerCheckPersonId end as SafetyOfficerCheckPersonId,
|
|||
|
//case when Safe.State is null then '1' else Safe.State end as State,
|
|||
|
// Safe.Sex,Safe.Age,Safe.AffTeam,Safe.AffTeamsGroup,Safe.JobName,Safe.EduLevel,Safe.DismissState,U.UnitName,Safe.DismissDate,p.ProjectName as ProjectName,
|
|||
|
// Case Safe.Sex When '1' Then '男' When '2' Then '女' End As SexName from SafetyOfficerCheckPerson SAFE
|
|||
|
// left join Sys_User Users on Users.UserId=Safe.userid
|
|||
|
// left join Base_Unit U on Users.UnitId=U.UnitId
|
|||
|
// left join base_project p on Users.ProjectId=p.ProjectId
|
|||
|
// where 1=1 ";
|
|||
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|||
|
var userId = CurrUser.UserId;
|
|||
|
if (userId == Const.sysglyId || userId == Const.hfnbdId)
|
|||
|
{
|
|||
|
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
//不是管理员只能看到自己项目的群安员
|
|||
|
strSql += " AND Users.ProjectId=@ProjectId ";
|
|||
|
listStr.Add(new SqlParameter("@ProjectId", CurrUser.LoginProjectId));
|
|||
|
}
|
|||
|
|
|||
|
if (!string.IsNullOrEmpty(this.txtUserName.Text.Trim()))
|
|||
|
{
|
|||
|
strSql += " AND Users.UserName LIKE @UserName";
|
|||
|
listStr.Add(new SqlParameter("@UserName", "%" + this.txtUserName.Text.Trim() + "%"));
|
|||
|
}
|
|||
|
if (!string.IsNullOrEmpty(dpHandelStatus.SelectedValue))
|
|||
|
{
|
|||
|
//待提交
|
|||
|
if (dpHandelStatus.SelectedValue == "0")
|
|||
|
{
|
|||
|
strSql += " AND (Safe.State = '0' or Safe.State = '1' or Safe.State is null) ";
|
|||
|
}
|
|||
|
else if (dpHandelStatus.SelectedValue == "1")
|
|||
|
{
|
|||
|
strSql += " AND (Safe.State = '2' or Safe.State = '3') ";
|
|||
|
}
|
|||
|
else if (dpHandelStatus.SelectedValue == "2")
|
|||
|
{
|
|||
|
strSql += " AND (Safe.State = '4') ";
|
|||
|
}
|
|||
|
else if (dpHandelStatus.SelectedValue == "3")
|
|||
|
{
|
|||
|
strSql += " AND (Safe.DismissDate = '4') ";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
SqlParameter[] parameter = listStr.ToArray();
|
|||
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
|
|||
|
Grid1.RecordCount = tb.Rows.Count;
|
|||
|
//tb = GetFilteredTable(Grid1.FilteredData, tb);
|
|||
|
var table = this.GetPagedDataTable(Grid1, tb);
|
|||
|
Grid1.DataSource = table;
|
|||
|
Grid1.DataBind();
|
|||
|
}
|
|||
|
|
|||
|
#region 删除
|
|||
|
/// <summary>
|
|||
|
/// 右键删除事件
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void btnMenuDelete_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (Grid1.SelectedRowIndexArray.Length > 0)
|
|||
|
{
|
|||
|
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
|
|||
|
{
|
|||
|
string rowID = Grid1.DataKeys[rowIndex][1].ToString();
|
|||
|
var getV = Funs.DB.SafetyOfficerCheckPerson.FirstOrDefault(x => x.SafetyOfficerCheckPersonId == rowID);
|
|||
|
if (getV != null)
|
|||
|
{
|
|||
|
BLL.SafetyOfficerCheckPersonService.Delete(rowID);
|
|||
|
}
|
|||
|
}
|
|||
|
this.BindGrid();
|
|||
|
ShowNotify("删除数据成功!", MessageBoxIcon.Success);
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
|
|||
|
#region 查询
|
|||
|
|
|||
|
protected void btnQuery_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
BindGrid();
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 分页
|
|||
|
/// <summary>
|
|||
|
/// 分页
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
|||
|
{
|
|||
|
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 Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
|
|||
|
{
|
|||
|
BindGrid();
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// Grid行双击事件
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
|
|||
|
{
|
|||
|
this.EditData();
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 右键编辑事件
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void btnMenuEdit_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
|
|||
|
this.EditData();
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 恢复正常
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void btnMenuHf_Click(object sender, EventArgs e) {
|
|||
|
if (Grid1.SelectedRowIndexArray.Length == 0)
|
|||
|
{
|
|||
|
Alert.ShowInParent("请至少选择一条记录!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
string uid = Grid1.DataKeys[Grid1.SelectedRowIndex][0].ToString();
|
|||
|
string sid = Grid1.DataKeys[Grid1.SelectedRowIndex][1].ToString();
|
|||
|
Model.SafetyOfficerCheckPerson model = Funs.DB.SafetyOfficerCheckPerson.FirstOrDefault(x => x.SafetyOfficerCheckPersonId == sid);
|
|||
|
if (model == null)
|
|||
|
{
|
|||
|
Alert.ShowInTop("当前群安员尚未任命,无法恢复。", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
else {
|
|||
|
if (model.DismissState != BLL.Const.Safe_Audit3)
|
|||
|
{
|
|||
|
Alert.ShowInTop("当前群安员状态不是已解聘,无法恢复操作。", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
else {
|
|||
|
//恢复操作
|
|||
|
model.DismissState = "1";
|
|||
|
BLL.SafetyOfficerCheckPersonService.Update(model);
|
|||
|
BindGrid();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 批量审批
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void btnAllAudit_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
List<String> ItemSelectedList = new List<string>();
|
|||
|
int[] selections = Grid1.SelectedRowIndexArray;
|
|||
|
foreach (int rowIndex in selections)
|
|||
|
{
|
|||
|
string rowID = Grid1.DataKeys[rowIndex][1].ToString();
|
|||
|
ItemSelectedList.Add(rowID);
|
|||
|
}
|
|||
|
|
|||
|
if (ItemSelectedList.Count == 0)
|
|||
|
{
|
|||
|
|
|||
|
Alert.ShowInParent("请至少选择一条记录!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
else {
|
|||
|
var SafetyOfficerCheckPersonIds = "";
|
|||
|
var index = 0;
|
|||
|
var state = "";
|
|||
|
foreach (var item in ItemSelectedList)
|
|||
|
{
|
|||
|
Model.SafetyOfficerCheckPerson model = Funs.DB.SafetyOfficerCheckPerson.FirstOrDefault(x => x.SafetyOfficerCheckPersonId == item);
|
|||
|
if (model==null)
|
|||
|
{
|
|||
|
Alert.ShowInParent("请先提交群安员信息再进行批量审批。", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
var UserModel = Funs.DB.Sys_User.FirstOrDefault(x => x.UserId == model.UserId);
|
|||
|
var pname = UserModel.UserName;
|
|||
|
if (model.State == BLL.Const.Safe_ReCompile || model.State == BLL.Const.Safe_Compile || model.State == BLL.Const.Safe_Audit3)
|
|||
|
{
|
|||
|
Alert.ShowInParent(pname + "状态尚未进入审批!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
//需要判断每一个的状态是否一致,不一致不能审批
|
|||
|
if (index == 0)
|
|||
|
{
|
|||
|
//第一次进入不做判断
|
|||
|
state = model.State;
|
|||
|
}
|
|||
|
else {
|
|||
|
//两次状态不一致
|
|||
|
if (state != model.State)
|
|||
|
{
|
|||
|
Alert.ShowInParent("选中的数据不是同一个状态,无法批量审批!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
else {
|
|||
|
state = model.State;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
Model.SafetyOfficerCheckPersonApprove approve = Funs.DB.SafetyOfficerCheckPersonApprove.FirstOrDefault(x => x.CheckControlCode == item && x.ApproveDate == null);
|
|||
|
if (approve != null)
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(approve.ApproveMan))
|
|||
|
{
|
|||
|
//如果审批人是自己
|
|||
|
if (this.CurrUser.UserId == approve.ApproveMan || CurrUser.UserId == Const.sysglyId || CurrUser.UserId == Const.hfnbdId)
|
|||
|
{
|
|||
|
SafetyOfficerCheckPersonIds += item + ",";
|
|||
|
}
|
|||
|
else {
|
|||
|
Alert.ShowInParent(pname + "信息您不是当前办理人,无法批量审批!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
else {
|
|||
|
Alert.ShowInParent(pname+"状态尚未进入审批!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
else {
|
|||
|
Alert.ShowInParent(pname + "状态尚未进入审批!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
index += 1;
|
|||
|
}
|
|||
|
SafetyOfficerCheckPersonIds = SafetyOfficerCheckPersonIds.Substring(0, SafetyOfficerCheckPersonIds.Length - 1);
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonApproveAll.aspx?SafetyOfficerCheckPersonIds={0}", SafetyOfficerCheckPersonIds), "批量审批 - "));
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 查看
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void btnMenuView_Click(object sender, EventArgs e) {
|
|||
|
if (Grid1.SelectedRowIndexArray.Length == 0)
|
|||
|
{
|
|||
|
Alert.ShowInParent("请至少选择一条记录!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
string uid = Grid1.DataKeys[Grid1.SelectedRowIndex][0].ToString();
|
|||
|
string sid = Grid1.DataKeys[Grid1.SelectedRowIndex][1].ToString();
|
|||
|
Model.SafetyOfficerCheckPerson model = Funs.DB.SafetyOfficerCheckPerson.FirstOrDefault(x => x.SafetyOfficerCheckPersonId == sid);
|
|||
|
Model.SafetyOfficerCheckPersonApprove approve = Funs.DB.SafetyOfficerCheckPersonApprove.FirstOrDefault(x => x.CheckControlCode == sid);
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonView.aspx?Userid={0}&SafetyOfficerCheckPersonId={1}", uid, sid, "查看 - ")));
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 解聘
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void btnMenuJp_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (Grid1.SelectedRowIndexArray.Length == 0)
|
|||
|
{
|
|||
|
Alert.ShowInParent("请至少选择一条记录!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
string uid = Grid1.DataKeys[Grid1.SelectedRowIndex][0].ToString();
|
|||
|
string sid = Grid1.DataKeys[Grid1.SelectedRowIndex][1].ToString();
|
|||
|
Model.SafetyOfficerCheckPerson model = Funs.DB.SafetyOfficerCheckPerson.FirstOrDefault(x => x.SafetyOfficerCheckPersonId == sid);
|
|||
|
if (model==null)
|
|||
|
{
|
|||
|
Alert.ShowInTop("当前群安员尚未任命,无法解聘。", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
var uname = Funs.DB.Sys_User.FirstOrDefault(x => x.UserId == uid).UserName;
|
|||
|
Window1.Title = uname + "-解聘申请";
|
|||
|
Model.SafetyOfficerCheckPersonApprove approve = Funs.DB.SafetyOfficerCheckPersonApprove.FirstOrDefault(x => x.CheckControlCode == sid+"jp" && x.ApproveDate == null);
|
|||
|
if (approve != null)
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(approve.ApproveMan))
|
|||
|
{
|
|||
|
//如果编写人是自己
|
|||
|
if (this.CurrUser.UserId == model.CheckMan)
|
|||
|
{
|
|||
|
if (model.DismissState == BLL.Const.Safe_Audit3)
|
|||
|
{
|
|||
|
Alert.ShowInTop("当前群安员状态为已解聘,无需重复操作!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
else if (model.DismissState == BLL.Const.Safe_ReCompile || model.DismissState == BLL.Const.Safe_Compile)
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonJpEdit.aspx?Userid={0}&SafetyOfficerCheckPersonId={1}", uid, sid, uname + "解聘申请")));
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
if (this.CurrUser.UserId == approve.ApproveMan || CurrUser.UserId == Const.sysglyId || CurrUser.UserId == Const.hfnbdId)
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonJpEdit.aspx?Userid={0}&SafetyOfficerCheckPersonId={1}", uid, sid, uname + "解聘申请")));
|
|||
|
return;
|
|||
|
}
|
|||
|
else if (model.DismissState == BLL.Const.Safe_Audit3)
|
|||
|
{
|
|||
|
Alert.ShowInTop("当前群安员状态为已解聘,无需重复操作!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("您不是当前办理人,无法操作!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
else if (model.DismissState == BLL.Const.Safe_Audit3)
|
|||
|
{
|
|||
|
Alert.ShowInTop("当前群安员状态为已解聘,无需重复操作!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonJpEdit.aspx?Userid={0}&SafetyOfficerCheckPersonId={1}", uid, sid, uname + "解聘申请")));
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 编辑数据方法
|
|||
|
/// </summary>
|
|||
|
private void EditData()
|
|||
|
{
|
|||
|
if (Grid1.SelectedRowIndexArray.Length == 0)
|
|||
|
{
|
|||
|
Alert.ShowInParent("请至少选择一条记录!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
string uid = Grid1.DataKeys[Grid1.SelectedRowIndex][0].ToString();
|
|||
|
string sid = Grid1.DataKeys[Grid1.SelectedRowIndex][1].ToString();
|
|||
|
Model.SafetyOfficerCheckPerson model = Funs.DB.SafetyOfficerCheckPerson.FirstOrDefault(x => x.SafetyOfficerCheckPersonId == sid);
|
|||
|
Model.SafetyOfficerCheckPersonApprove approve = Funs.DB.SafetyOfficerCheckPersonApprove.FirstOrDefault(x => x.CheckControlCode == sid && x.ApproveDate==null);
|
|||
|
if (approve!=null)
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(approve.ApproveMan))
|
|||
|
{
|
|||
|
//如果编写人是自己
|
|||
|
if (this.CurrUser.UserId==model.CheckMan)
|
|||
|
{
|
|||
|
if (model.State == BLL.Const.Safe_Audit3)
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonView.aspx?Userid={0}&SafetyOfficerCheckPersonId={1}", uid, sid, "查看 - ")));
|
|||
|
return;
|
|||
|
}
|
|||
|
else if (model.State == BLL.Const.Safe_ReCompile || model.State == BLL.Const.Safe_Compile)
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonEdit.aspx?Userid={0}&SafetyOfficerCheckPersonId={1}&type=0", uid, sid, "编辑 - ")));
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
if (this.CurrUser.UserId == approve.ApproveMan || CurrUser.UserId == Const.sysglyId || CurrUser.UserId == Const.hfnbdId)
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonEdit.aspx?Userid={0}&SafetyOfficerCheckPersonId={1}&type=1", uid, sid, "编辑 - ")));
|
|||
|
return;
|
|||
|
}
|
|||
|
else if (model.State == BLL.Const.Safe_Audit3)
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonView.aspx?Userid={0}&SafetyOfficerCheckPersonId={1}", uid, sid, "查看 - ")));
|
|||
|
return;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("您不是当前办理人,无法编辑,请右键查看!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
else if (model==null)
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonEdit.aspx?Userid={0}&SafetyOfficerCheckPersonId={1}&type=1", uid, sid, "编辑 - ")));
|
|||
|
return;
|
|||
|
}
|
|||
|
else if (model.State == BLL.Const.Safe_Audit3)
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonView.aspx?Userid={0}&SafetyOfficerCheckPersonId={1}", uid, sid, "查看 - ")));
|
|||
|
return;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SafePersonEdit.aspx?Userid={0}&SafetyOfficerCheckPersonId={1}&type=1", uid, sid, "编辑 - ")));
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 把状态转换代号为文字形式
|
|||
|
/// </summary>
|
|||
|
/// <param name="state"></param>
|
|||
|
/// <returns></returns>
|
|||
|
public string ConvertState(object state)
|
|||
|
{
|
|||
|
if (state != null)
|
|||
|
{
|
|||
|
if (state.ToString() == BLL.Const.Safe_ReCompile)
|
|||
|
{
|
|||
|
return "重新编制";
|
|||
|
}
|
|||
|
else if (state.ToString() == BLL.Const.Safe_Compile)
|
|||
|
{
|
|||
|
return "待提交";
|
|||
|
}
|
|||
|
else if (state.ToString() == BLL.Const.Safe_Audit1)
|
|||
|
{
|
|||
|
return "安质部部长审批";
|
|||
|
}
|
|||
|
else if (state.ToString() == BLL.Const.Safe_Audit2)
|
|||
|
{
|
|||
|
return "项目经理审批";
|
|||
|
}
|
|||
|
else if (state.ToString() == BLL.Const.Safe_Audit3)
|
|||
|
{
|
|||
|
return "审批完成";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
return "待提交";
|
|||
|
}
|
|||
|
}
|
|||
|
return "";
|
|||
|
}
|
|||
|
|
|||
|
public string ConvertDismissState(object state)
|
|||
|
{
|
|||
|
if (state != null)
|
|||
|
{
|
|||
|
if (state.ToString() == BLL.Const.Safe_ReCompile)
|
|||
|
{
|
|||
|
return "正常";
|
|||
|
}
|
|||
|
else if (state.ToString() == BLL.Const.Safe_Compile)
|
|||
|
{
|
|||
|
return "正常";
|
|||
|
}
|
|||
|
else if (state.ToString() == BLL.Const.Safe_Audit1)
|
|||
|
{
|
|||
|
return "安质部部长审批";
|
|||
|
}
|
|||
|
else if (state.ToString() == BLL.Const.Safe_Audit2)
|
|||
|
{
|
|||
|
return "项目经理审批";
|
|||
|
}
|
|||
|
else if (state.ToString() == BLL.Const.Safe_Audit3)
|
|||
|
{
|
|||
|
return "已解聘";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
return "正常";
|
|||
|
}
|
|||
|
}
|
|||
|
return "";
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 关闭弹出窗
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
|||
|
{
|
|||
|
BindGrid();
|
|||
|
}
|
|||
|
|
|||
|
protected void Window2_Close(object sender, WindowCloseEventArgs e)
|
|||
|
{
|
|||
|
BindGrid();
|
|||
|
}
|
|||
|
#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("群众安全生产监督员汇总表" + filename, System.Text.Encoding.UTF8) + ".xls");
|
|||
|
Response.ContentType = "application/excel";
|
|||
|
Response.ContentEncoding = System.Text.Encoding.UTF8;
|
|||
|
this.Grid1.PageSize = this.Grid1.RecordCount;
|
|||
|
this.BindGrid();
|
|||
|
Response.Write(GetGridTableHtml(Grid1));
|
|||
|
Response.End();
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 导出方法
|
|||
|
/// </summary>
|
|||
|
/// <param name="grid"></param>
|
|||
|
/// <returns></returns>
|
|||
|
public static 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 x:str>{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" && (row.FindControl("lblNumber") as AspNet.Label) != null)
|
|||
|
{
|
|||
|
html = (row.FindControl("lblNumber") as AspNet.Label).Text;
|
|||
|
}
|
|||
|
if (column.ColumnID == "tfTeamType" && (row.FindControl("lbTeamType") as AspNet.Label) != null)
|
|||
|
{
|
|||
|
html = (row.FindControl("lbTeamType") as AspNet.Label).Text;
|
|||
|
}
|
|||
|
if (column.ColumnID == "tfI" && (row.FindControl("tfI") as AspNet.Label) != null)
|
|||
|
{
|
|||
|
html = (row.FindControl("lbI") as AspNet.Label).Text;
|
|||
|
}
|
|||
|
if (column.ColumnID == "tfCM" && (row.FindControl("lblCM") as AspNet.Label) != null)
|
|||
|
{
|
|||
|
html = (row.FindControl("lblCM") as AspNet.Label).Text;
|
|||
|
}
|
|||
|
if (column.ColumnID == "tfOwn" && (row.FindControl("lbOwn") as AspNet.Label) != null)
|
|||
|
{
|
|||
|
html = (row.FindControl("lbOwn") as AspNet.Label).Text;
|
|||
|
}
|
|||
|
if (column.ColumnID == "tfSubcontractor" && (row.FindControl("lbSubcontractor") as AspNet.Label) != null)
|
|||
|
{
|
|||
|
html = (row.FindControl("lbSubcontractor") as AspNet.Label).Text;
|
|||
|
}
|
|||
|
if (column.ColumnID == "tfCompileMan" && (row.FindControl("tfCompileMan") as AspNet.Label) != null)
|
|||
|
{
|
|||
|
html = (row.FindControl("lblCompileMan") as AspNet.Label).Text;
|
|||
|
}
|
|||
|
if (column.ColumnID == "tfSpecialEquipmentId")
|
|||
|
{
|
|||
|
html = (row.FindControl("lblSpecialEquipmentId") as AspNet.Label).Text;
|
|||
|
}
|
|||
|
if (column.ColumnID == "State")
|
|||
|
{
|
|||
|
html = (row.FindControl("labState") as AspNet.Label).Text;
|
|||
|
}
|
|||
|
if (column.ColumnID == "DismissDate")
|
|||
|
{
|
|||
|
html = (row.FindControl("labDisState") as AspNet.Label).Text;
|
|||
|
}
|
|||
|
// 处理CheckBox
|
|||
|
if (html.Contains("f-grid-static-checkbox"))
|
|||
|
{
|
|||
|
if (!html.Contains("f-checked"))
|
|||
|
{
|
|||
|
html = "×";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
html = "√";
|
|||
|
}
|
|||
|
}
|
|||
|
sb.AppendFormat("<td style='vnd.ms-excel.numberformat:@;width:140px;'>{0}</td>", html);
|
|||
|
// sb.AppendFormat("<td>{0}</td>", html);
|
|||
|
}
|
|||
|
|
|||
|
sb.Append("</tr>");
|
|||
|
}
|
|||
|
|
|||
|
sb.Append("</table>");
|
|||
|
|
|||
|
return sb.ToString();
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// DataTable转HTML
|
|||
|
/// </summary>
|
|||
|
/// <param name="table"></param>
|
|||
|
/// <returns></returns>
|
|||
|
public static string GetTableHtml(DataTable table)
|
|||
|
{
|
|||
|
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 (var column in table.Columns)
|
|||
|
{
|
|||
|
sb.AppendFormat("<td style=\"vnd.ms-excel.numberformat:@\">{0}</td>", column.ToString());
|
|||
|
}
|
|||
|
sb.Append("</tr>");
|
|||
|
for (int i = 0; i < table.Rows.Count; i++)
|
|||
|
{
|
|||
|
sb.Append("<tr>");
|
|||
|
for (int j = 0; j < table.Columns.Count; j++)
|
|||
|
{
|
|||
|
string html = table.Rows[i][j].ToString();
|
|||
|
sb.AppendFormat("<td>{0}</td>", html);
|
|||
|
}
|
|||
|
sb.Append("</tr>");
|
|||
|
}
|
|||
|
|
|||
|
sb.Append("</table>");
|
|||
|
|
|||
|
return sb.ToString();
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
}
|
|||
|
}
|