SGGL_JT/SUBQHSE/FineUIPro.Web/Customization/CNCCG/HSSE/Check/SafePersonApproveAll.aspx.cs

254 lines
9.0 KiB
C#

using BLL;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Threading.Tasks;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.Customization.CNCCG.HSSE.Check
{
public partial class SafePersonApproveAll : PageBase
{
/// <summary>
/// 主键逗号分隔
/// </summary>
public string SafetyOfficerCheckPersonId
{
get
{
return (string)ViewState["SafetyOfficerCheckPersonId"];
}
set
{
ViewState["SafetyOfficerCheckPersonId"] = value;
}
}
/// <summary>
/// 办理类型
/// </summary>
public string State
{
get
{
return (string)ViewState["State"];
}
set
{
ViewState["State"] = value;
}
}
/// <summary>
/// 页面加载
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
SafetyOfficerCheckPersonId = Request.Params["SafetyOfficerCheckPersonIds"];
var pModel = Funs.DB.SafetyOfficerCheckPerson.FirstOrDefault(x => x.SafetyOfficerCheckPersonId == SafetyOfficerCheckPersonId.Split(',')[0]);
if (pModel != null)
{
State = pModel.State;
//加载办理步骤
SafetyOfficerCheckPersonService.Init(drpHandleType, State, false);
//加载办理用户
UserService.Init(drpHandleMan, CurrUser.LoginProjectId, false);
HandleMan();
//drpHandleMan.SelectedValue = CurrUser.UserId;
rblIsAgree.Hidden = true;
rblIsAgree.SelectedValue = "true";
//是否同意触发
if (!rblIsAgree.Hidden)
{
HandleType();
}
}
}
}
protected void rblIsAgree_SelectedIndexChanged(object sender, EventArgs e)
{
HandleType();
}
protected void drpHandleType_SelectedIndexChanged(object sender, EventArgs e)
{
HandleMan();
}
/// <summary>
/// 提交事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSubmit_Click(object sender, EventArgs e)
{
if (BLL.CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.SafePersonMenuId, BLL.Const.BtnAdd))
{
SavePauseNotice("submit");
if (string.IsNullOrEmpty(Request.Params["Main"]))
{
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
else
{
PageContext.RegisterStartupScript(String.Format("window.close();"));
}
}
else
{
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
}
}
/// <summary>
/// 提交
/// </summary>
/// <param name="saveType"></param>
private void SavePauseNotice(string saveType)
{
Model.SafetyOfficerCheckPerson model = new Model.SafetyOfficerCheckPerson();
foreach (var item in SafetyOfficerCheckPersonId.Split(','))
{
model = Funs.DB.SafetyOfficerCheckPerson.FirstOrDefault(x => x.SafetyOfficerCheckPersonId == item);
model.State = drpHandleType.SelectedValue.Trim();
Model.SafetyOfficerCheckPersonApprove approve1 = Funs.DB.SafetyOfficerCheckPersonApprove.FirstOrDefault(x => x.CheckControlCode == item && x.ApproveType != "S" && x.ApproveDate == null);
if (approve1 != null && saveType == "submit")
{
approve1.ApproveDate = DateTime.Now;
approve1.ApproveIdea = txtOpinions.Text.Trim();
approve1.IsAgree = Convert.ToBoolean(this.rblIsAgree.SelectedValue);
BLL.SafetyOfficerCheckPersonService.UpdateApprove(approve1);
}
if (saveType == "submit")
{
model.SaveHandleMan = null;
Model.SafetyOfficerCheckPersonApprove approve = new Model.SafetyOfficerCheckPersonApprove();
approve.CheckControlCode = item;
if (this.drpHandleMan.SelectedValue != "0")
{
approve.ApproveMan = this.drpHandleMan.SelectedValue;
}
approve.ApproveType = this.drpHandleType.SelectedValue;
if (this.drpHandleType.SelectedValue == BLL.Const.Safe_Audit3)
{
approve.ApproveDate = DateTime.Now.AddMinutes(1);
}
BLL.SafetyOfficerCheckPersonService.AddApprove(approve);
APICommonService.SendSubscribeMessage(approve.ApproveMan, "群安员任命代办理", this.CurrUser.UserName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
}
model.SafetyOfficerCheckPersonId = item;
BLL.SafetyOfficerCheckPersonService.Update(model);
BLL.LogService.AddSys_Log(this.CurrUser, "", item, BLL.Const.SafePersonMenuId, "批量审批群安员");
}
}
/// <summary>
/// 办理人员的自动筛选
/// </summary>
protected void HandleMan()
{
drpHandleMan.Items.Clear();
//Funs.Bind(drpHandleMan, UserService.GetMainUserList(this.CurrUser.LoginProjectId));
if (!string.IsNullOrEmpty(drpHandleType.SelectedText))
{
if (drpHandleType.SelectedText.Contains("安质部"))
{
UserService.InitUserDropDownList(drpHandleMan, CurrUser.LoginProjectId, false, string.Empty);
}
else
{
UserService.InitUserDropDownList(drpHandleMan, CurrUser.LoginProjectId, false, string.Empty);
}
if (drpHandleType.SelectedValue == BLL.Const.CheckControl_Complete)
{
drpHandleMan.Items.Clear();
drpHandleMan.Enabled = false;
drpHandleMan.Required = false;
}
else
{
drpHandleMan.Enabled = true;
drpHandleMan.Required = true;
}
}
}
/// <summary>
/// 待办事项的下拉框的处理
/// </summary>
public void HandleType()
{
drpHandleType.Items.Clear();
//Funs.Bind(drpHandleType, CheckControlService.GetDHandleTypeByState(State));
SafetyOfficerCheckPersonService.Init(drpHandleType, State, false);
string res = null;
List<string> list = new List<string>();
list.Add(Const.Safe_ReCompile);
list.Add(Const.Safe_Audit1);
var count = drpHandleType.Items.Count;
List<ListItem> listitem = new List<ListItem>();
if (rblIsAgree.SelectedValue.Equals("true"))
{
for (int i = 0; i < count; i++)
{
res = drpHandleType.Items[i].Value;
if (list.Contains(res))
{
var item = (drpHandleType.Items[i]);
listitem.Add(item);
}
}
if (listitem.Count > 0)
{
for (int i = 0; i < listitem.Count; i++)
{
drpHandleType.Items.Remove(listitem[i]);
}
}
}
else
{
for (int i = 0; i < count; i++)
{
res = drpHandleType.Items[i].Value;
if (!list.Contains(res))
{
var item = drpHandleType.Items[i];
listitem.Add(item);
}
}
if (listitem.Count > 0)
{
for (int i = 0; i < listitem.Count; i++)
{
drpHandleType.Items.Remove(listitem[i]);
}
}
}
if (count > 0)
{
drpHandleType.SelectedIndex = 0;
HandleMan();
}
}
}
}