1628 lines
73 KiB
C#
1628 lines
73 KiB
C#
using BLL;
|
||
using Model;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.Diagnostics;
|
||
using System.Linq;
|
||
using System.Runtime.CompilerServices;
|
||
using System.Web;
|
||
using System.Web.UI;
|
||
using System.Web.UI.WebControls;
|
||
using AspNet = System.Web.UI.WebControls;
|
||
|
||
namespace FineUIPro.Web.HSSE.SolutionNew
|
||
{
|
||
public partial class EditConstructSolution : PageBase
|
||
{
|
||
#region 定义变量
|
||
/// <summary>
|
||
/// 方案审查主键
|
||
/// </summary>
|
||
public string ConstructSolutionId
|
||
{
|
||
get
|
||
{
|
||
return (string)ViewState["ConstructSolutionId"];
|
||
}
|
||
set
|
||
{
|
||
ViewState["ConstructSolutionId"] = value;
|
||
}
|
||
}
|
||
public string State
|
||
{
|
||
get
|
||
{
|
||
return (string)ViewState["State"];
|
||
}
|
||
set
|
||
{
|
||
ViewState["State"] = value;
|
||
}
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 定义集合
|
||
/// <summary>
|
||
/// 定义会签意见集合
|
||
/// </summary>
|
||
public static List<Model.Solution_HSSEConstructSolutionApprove> approves = new List<Model.Solution_HSSEConstructSolutionApprove>();
|
||
#endregion
|
||
|
||
public int ContactImg
|
||
{
|
||
get
|
||
{
|
||
return Convert.ToInt32(ViewState["ContactImg"]);
|
||
}
|
||
set
|
||
{
|
||
ViewState["ContactImg"] = value;
|
||
}
|
||
}
|
||
|
||
public string lastCanRemoveApproveId
|
||
{
|
||
|
||
get
|
||
{
|
||
return (string)ViewState["lastCanRemoveApproveId"];
|
||
}
|
||
set
|
||
{
|
||
ViewState["lastCanRemoveApproveId"] = value;
|
||
}
|
||
}
|
||
|
||
protected void Page_Load(object sender, EventArgs e)
|
||
{
|
||
if (!IsPostBack)
|
||
{
|
||
var unitWork = UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
|
||
var unitWorks = from x in unitWork
|
||
select
|
||
new
|
||
{
|
||
UnitWorkId = x.UnitWorkId,
|
||
UnitWorkName = x.UnitWorkCode + "-" + x.UnitWorkName + BLL.UnitWorkService.GetProjectType(x.ProjectType)
|
||
};
|
||
gvUnitWork.DataSource = unitWorks;
|
||
gvUnitWork.DataBind();
|
||
var gvCNProfessional = CNProfessionalService.GetList();
|
||
gvCNPro.DataSource = gvCNProfessional;
|
||
gvCNPro.DataBind();
|
||
ListItem[] lis = new ListItem[1];
|
||
lis[0] = new ListItem("0.0", "0");
|
||
drpEdition.DataValueField = "Value";
|
||
drpEdition.DataTextField = "Text";
|
||
drpEdition.DataSource = lis;
|
||
drpEdition.DataBind();
|
||
drpEdition.SelectedValue = "0";
|
||
BLL.SolutionTempleteTypeService.InitSolutionTempleteDropDownList(drpModelType, false,"HSSE");
|
||
BLL.SpecialSchemeTypeService.InitSpecialSchemeTypeDropDownList(drpSpecialType,1, false);
|
||
UnitService.InitUnitByProjectIdUnitTypeDropDownList(drpUnit, CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2, false);
|
||
|
||
if (this.CurrUser.UnitId != null && this.CurrUser.UnitId != Const.UnitId_CD && this.CurrUser.UnitId != Const.hfnbdId)
|
||
{
|
||
drpUnit.SelectedValue = this.CurrUser.UnitId;
|
||
drpUnit.Enabled = false;
|
||
}
|
||
BindZYRole();
|
||
BindZLRole();
|
||
BindAQRole();
|
||
BindKZRole();
|
||
BindSGRole();
|
||
BindXMRole();
|
||
ContactImg = 0;
|
||
//CommonService.GetAllButtonList(CurrUser.LoginProjectId, CurrUser.UserId, Const.CQMSConstructSolutionMenuId);
|
||
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
|
||
ConstructSolutionId = Request.Params["constructSolutionId"];
|
||
this.State = "1";
|
||
if (!string.IsNullOrWhiteSpace(ConstructSolutionId))
|
||
{
|
||
HFConstructSolutionId.Text = ConstructSolutionId;
|
||
Model.Solution_HSSEConstructSolution constructSolution = HSSEConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
||
txtCode.Text = constructSolution.Code;
|
||
this.State = constructSolution.State;
|
||
if (!string.IsNullOrEmpty(constructSolution.UnitId))
|
||
{
|
||
drpUnit.SelectedValue = constructSolution.UnitId;
|
||
}
|
||
if (!string.IsNullOrEmpty(constructSolution.SolutionType))
|
||
{
|
||
drpModelType.SelectedValue = constructSolution.SolutionType;
|
||
|
||
if (this.drpModelType.SelectedItem.Text == "施工组织设计")
|
||
{
|
||
this.drpSpecialType.Enabled = false;
|
||
this.drpSpecialType.SelectedValue = null;
|
||
this.drpSpecialType.Required = false;
|
||
}
|
||
else if (this.drpModelType.SelectedItem.Text == "一般方案")
|
||
{
|
||
BLL.SpecialSchemeTypeService.InitSpecialSchemeTypeDropDownList(drpSpecialType, 2, false);
|
||
this.drpSpecialType.Enabled = true;
|
||
this.drpSpecialType.Required = true;
|
||
}
|
||
else
|
||
{
|
||
BLL.SpecialSchemeTypeService.InitSpecialSchemeTypeDropDownList(drpSpecialType, 1, false);
|
||
this.drpSpecialType.Enabled = true;
|
||
this.drpSpecialType.Required = true;
|
||
}
|
||
}
|
||
if (!string.IsNullOrEmpty(constructSolution.SpecialSchemeTypeId))
|
||
{
|
||
drpSpecialType.SelectedValue = constructSolution.SpecialSchemeTypeId;
|
||
}
|
||
if (constructSolution.CompileDate != null)
|
||
{
|
||
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", constructSolution.CompileDate);
|
||
}
|
||
txtSolutionName.Text = constructSolution.SolutionName;
|
||
if (!string.IsNullOrEmpty(constructSolution.UnitWorkIds))
|
||
{
|
||
if (constructSolution.UnitWorkIds.Length > 0)
|
||
{
|
||
txtUnitWork.Values = constructSolution.UnitWorkIds.Split(',');
|
||
}
|
||
}
|
||
if (!string.IsNullOrEmpty(constructSolution.CNProfessionalCodes))
|
||
{
|
||
if (constructSolution.CNProfessionalCodes.Length > 0)
|
||
{
|
||
txtCNProfessional.Values = constructSolution.CNProfessionalCodes.Split(',');
|
||
}
|
||
}
|
||
if (constructSolution.Edition != null)
|
||
{
|
||
drpEdition.Items.Clear();
|
||
|
||
ListItem[] list = new ListItem[constructSolution.Edition.Value+1];
|
||
for (int i = 0; i <= constructSolution.Edition.Value; i++)
|
||
{
|
||
list[i] = new ListItem((i/10.0).ToString("#0.0"), ""+i);
|
||
}
|
||
drpEdition.DataValueField = "Value";
|
||
drpEdition.DataTextField = "Text";
|
||
drpEdition.DataSource = list;
|
||
drpEdition.DataBind();
|
||
drpEdition.SelectedIndex = constructSolution.Edition.Value;
|
||
|
||
if (constructSolution.Edition.Value == 0 && constructSolution.State == Const.CQMSConstructSolution_Compile)
|
||
{
|
||
imgBtnFile2.Hidden = true;
|
||
}
|
||
else if ( constructSolution.State == Const.CQMSConstructSolution_Audit)
|
||
{
|
||
imgBtnFile2.Hidden = true;
|
||
}
|
||
}
|
||
bindApprove();
|
||
|
||
var zyUserIds =HSSEConstructSolutionApproveService.GetUserIdsApprovesBySignType(ConstructSolutionId, "ZY");
|
||
if (zyUserIds.Count > 0&& constructSolution.State != Const.CQMSConstructSolution_ReCompile)
|
||
{
|
||
SetCheck(trOne, zyUserIds);
|
||
}
|
||
var zlUserIds = HSSEConstructSolutionApproveService.GetUserIdsApprovesBySignType(ConstructSolutionId, "ZL");
|
||
if (zlUserIds.Count > 0&& constructSolution.State != Const.CQMSConstructSolution_ReCompile)
|
||
{
|
||
SetCheck(trTwo, zlUserIds);
|
||
}
|
||
var aqUserIds = HSSEConstructSolutionApproveService.GetUserIdsApprovesBySignType(ConstructSolutionId, "AQ");
|
||
if (aqUserIds.Count > 0&& constructSolution.State != Const.CQMSConstructSolution_ReCompile)
|
||
{
|
||
SetCheck(trThree, aqUserIds);
|
||
}
|
||
var kzUserIds = HSSEConstructSolutionApproveService.GetUserIdsApprovesBySignType(ConstructSolutionId, "KZ");
|
||
if (kzUserIds.Count > 0&& constructSolution.State != Const.CQMSConstructSolution_ReCompile)
|
||
{
|
||
SetCheck(trFour, kzUserIds);
|
||
}
|
||
var sgUserIds = HSSEConstructSolutionApproveService.GetUserIdsApprovesBySignType(ConstructSolutionId, "SG");
|
||
if (sgUserIds.Count > 0&& constructSolution.State != Const.CQMSConstructSolution_ReCompile)
|
||
{
|
||
SetCheck(trFive, sgUserIds);
|
||
}
|
||
var xmUserIds = HSSEConstructSolutionApproveService.GetUserIdsApprovesBySignType(ConstructSolutionId, "XM");
|
||
if (xmUserIds.Count > 0&& constructSolution.State != Const.CQMSConstructSolution_ReCompile)
|
||
{
|
||
SetCheck(trSixe, xmUserIds);
|
||
}
|
||
|
||
|
||
Model.Solution_HSSEConstructSolutionApprove curapprove = HSSEConstructSolutionApproveService.GetConstructSoluAppByApproveMan(ConstructSolutionId, CurrUser.UserId, Convert.ToInt32(constructSolution.Edition));
|
||
if (curapprove != null)
|
||
{
|
||
initDropSameGroup(this.drpSameGroup, curapprove.SignType);
|
||
switch (curapprove.SignType)
|
||
{
|
||
case "ZY":
|
||
this.drpSameGroup.SelectedValueArray = zyUserIds.ToArray();
|
||
break;
|
||
case "ZL":
|
||
this.drpSameGroup.SelectedValueArray = zlUserIds.ToArray();
|
||
break;
|
||
case "AQ":
|
||
this.drpSameGroup.SelectedValueArray = aqUserIds.ToArray();
|
||
|
||
break;
|
||
case "KZ":
|
||
this.drpSameGroup.SelectedValueArray = kzUserIds.ToArray();
|
||
break;
|
||
case "SG":
|
||
this.drpSameGroup.SelectedValueArray = sgUserIds.ToArray();
|
||
break;
|
||
case "Xm":
|
||
this.drpSameGroup.SelectedValueArray = xmUserIds.ToArray();
|
||
break;
|
||
}
|
||
}
|
||
|
||
if (constructSolution.State == Const.CQMSConstructSolution_ReCompile)
|
||
{
|
||
agree.Hidden = true;
|
||
options.Hidden = true;
|
||
optio.Hidden = true;
|
||
var disAgreeMans = Funs.DB.Solution_HSSEConstructSolutionApprove.Where(x => x.ConstructSolutionId == constructSolution.ConstructSolutionId && x.Edition + 1 == constructSolution.Edition && x.IsAgree == false).Select(x => x.ApproveMan).ToList();
|
||
Panel2.Enabled = false;
|
||
|
||
SetCheck(trOne, disAgreeMans);
|
||
SetCheck(trTwo, disAgreeMans);
|
||
SetCheck(trThree, disAgreeMans);
|
||
SetCheck(trFour, disAgreeMans);
|
||
SetCheck(trFive, disAgreeMans);
|
||
SetCheck(trSixe, disAgreeMans);
|
||
|
||
}
|
||
if (constructSolution.State == Const.CQMSConstructSolution_Audit)
|
||
{
|
||
|
||
txtProjectName.Enabled = false;
|
||
txtCode.Enabled = false;
|
||
drpUnit.Enabled = false;
|
||
drpModelType.Enabled = false;
|
||
drpSpecialType.Enabled = false;
|
||
txtCompileDate.Enabled = false;
|
||
txtSolutionName.Enabled = false;
|
||
txtCNProfessional.Enabled = false;
|
||
txtUnitWork.Enabled = false;
|
||
ContactImg = -1;
|
||
Panel2.Enabled = false;
|
||
}
|
||
//提交版本人多次修改
|
||
if (constructSolution.CompileMan.Equals(CurrUser.UserId))
|
||
{
|
||
txtProjectName.Enabled = true;
|
||
txtCode.Enabled = true;
|
||
drpUnit.Enabled = true;
|
||
drpModelType.Enabled = true;
|
||
drpSpecialType.Enabled = true;
|
||
txtCompileDate.Enabled = true;
|
||
txtSolutionName.Enabled = true;
|
||
txtCNProfessional.Enabled = true;
|
||
txtUnitWork.Enabled = true;
|
||
ContactImg = 0;
|
||
if (constructSolution.State != Const.CQMSConstructSolution_ReCompile)//重新编辑时不允许修改上次不同意的人
|
||
{
|
||
Panel2.Enabled = true;
|
||
}
|
||
rblIsAgree.Hidden = true;
|
||
rblIsAgree.Required = false;
|
||
options.Hidden = true;
|
||
txtOptions.Required = false;
|
||
optio.Hidden = true;
|
||
if (constructSolution.State != Const.CQMSConstructSolution_ReCompile && constructSolution.State != Const.CQMSConstructSolution_Compile)
|
||
{
|
||
this.btnSubmit.Hidden = true;
|
||
this.btnSave.Hidden = true;
|
||
}
|
||
}
|
||
//if (!string.IsNullOrEmpty(countersign.CVRole))
|
||
//{
|
||
// GetCheck(tvCV.Nodes[0].ChildNodes, countersign.CVRole);
|
||
//}
|
||
if (this.drpModelType.SelectedItem.Text == "施工组织设计")
|
||
{
|
||
drpSpecialType.Enabled = false;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
agree.Hidden = true;
|
||
options.Hidden = true;
|
||
optio.Hidden = true;
|
||
plApprove2.Hidden = true;
|
||
imgBtnFile2.Hidden = true;
|
||
// txtCode.Text = SQLHelper.RunProcNewId2("SpGetNewCode3ByProjectId", "dbo.Solution_HSSEConstructSolution", "Code", CurrUser.LoginProjectId);
|
||
|
||
}
|
||
|
||
txtProjectName.Text = ProjectService.GetProjectByProjectId(CurrUser.LoginProjectId).ProjectName;
|
||
}
|
||
}
|
||
/// <summary>
|
||
/// 审批列表
|
||
/// </summary>
|
||
private void bindApprove()
|
||
{
|
||
var list = HSSEConstructSolutionApproveService.getListData(ConstructSolutionId);
|
||
if (list.Count() > 0)
|
||
{
|
||
var last = list.LastOrDefault();
|
||
if (last.ApproveMan == CurrUser.UserId)
|
||
{
|
||
lastCanRemoveApproveId = last.ConstructSolutionApproveId;
|
||
}
|
||
}
|
||
|
||
gvApprove.DataSource = list;
|
||
gvApprove.DataBind();
|
||
}
|
||
|
||
/// <summary>
|
||
/// 最后一行
|
||
/// </summary>
|
||
/// <param name="type"></param>
|
||
/// <param name="res"></param>
|
||
/// <returns></returns>
|
||
public bool IsLast(Object approveId)
|
||
{
|
||
if ((string)approveId == lastCanRemoveApproveId)
|
||
{
|
||
return true;
|
||
}
|
||
else
|
||
{
|
||
return false;
|
||
}
|
||
|
||
}
|
||
|
||
|
||
public string man(Object man)
|
||
{
|
||
string appman = string.Empty;
|
||
if (UserService.GetUserByUserId(man.ToString()) != null)
|
||
{
|
||
appman = UserService.GetUserByUserId(man.ToString()).UserName;
|
||
}
|
||
return appman;
|
||
}
|
||
|
||
#region 保存/提交
|
||
protected void btnSave_Click(object sender, EventArgs e)
|
||
{
|
||
//validate(Const.BtnSave, "save");
|
||
if (CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.UserId, Const.CQMSConstructSolutionMenuId, Const.BtnSave))
|
||
{
|
||
SaveHSSEConstructSolution("save");
|
||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||
Alert.ShowInTop("保存成功!", MessageBoxIcon.Success);
|
||
}
|
||
else
|
||
{
|
||
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
||
}
|
||
}
|
||
protected void btnSubmit_Click(object sender, EventArgs e)
|
||
{
|
||
validate(Const.BtnSubmit, "submit");
|
||
}
|
||
|
||
/// <summary>
|
||
/// 保存验证
|
||
/// </summary>
|
||
/// <param name="buttonName"></param>
|
||
/// <param name="tip"></param>
|
||
public void validate(string buttonName, string tip)
|
||
{
|
||
if (CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.UserId, Const.CQMSConstructSolutionMenuId, buttonName))
|
||
{
|
||
string err = string.Empty;
|
||
var edition = this.drpEdition.SelectedValue;
|
||
|
||
if (!AttachFileService.Getfile(HFConstructSolutionId.Text+ edition, Const.CQMSConstructSolutionMenuId))
|
||
{
|
||
err += "请上传附件,";
|
||
}
|
||
|
||
if (this.drpModelType.SelectedItem.Text != "施工组织设计")
|
||
{
|
||
if (drpSpecialType.SelectedValue == BLL.Const._Null)
|
||
{
|
||
err += "请选择在分部分项工程,";
|
||
}
|
||
}
|
||
|
||
//if (string.IsNullOrEmpty(hdFilePath.Value))
|
||
//{
|
||
// err += "请上传附件,";
|
||
//}
|
||
if (drpEdition.SelectedValue == "0" && buttonName == "提交")
|
||
{
|
||
if (!nodesCheckd(trOne))
|
||
{
|
||
err += "请选择专业工程师,";
|
||
}
|
||
//if (!nodesCheckd(trTwo))
|
||
//{
|
||
// err += "请选择质量工程师,";
|
||
//}
|
||
if (!nodesCheckd(trThree))
|
||
{
|
||
err += "请选择HSE工程师,";
|
||
}
|
||
|
||
if (!nodesCheckd(trFive))
|
||
{
|
||
err += "请选择施工经理,";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
|
||
List<FineUIPro.Tree> list = new List<FineUIPro.Tree>();
|
||
list.Add(trOne);
|
||
list.Add(trTwo);
|
||
list.Add(trThree);
|
||
list.Add(trFour);
|
||
list.Add(trFive);
|
||
list.Add(trSixe);
|
||
var res = false;
|
||
foreach (var item in list)
|
||
{
|
||
if (nodesCheckd(item))
|
||
{
|
||
res = true;
|
||
break;
|
||
}
|
||
}
|
||
if (!res)
|
||
{
|
||
err += "请选择总包会签人员,";
|
||
}
|
||
}
|
||
if (!string.IsNullOrWhiteSpace(err))
|
||
{
|
||
err = err.Substring(0, err.LastIndexOf(","));
|
||
err += "!";
|
||
}
|
||
if (!string.IsNullOrWhiteSpace(err))
|
||
{
|
||
Alert.ShowInTop(err, MessageBoxIcon.Warning);
|
||
return;
|
||
}
|
||
if (!string.IsNullOrWhiteSpace(ConstructSolutionId))
|
||
{//更新时操作
|
||
if (tip == "save")
|
||
{
|
||
EditConstructSol("save");
|
||
}
|
||
else
|
||
{
|
||
EditConstructSol("submit");
|
||
}
|
||
|
||
}
|
||
else
|
||
{
|
||
if (tip == "save")
|
||
{
|
||
SaveHSSEConstructSolution("save");
|
||
}
|
||
else
|
||
{
|
||
SaveHSSEConstructSolution("submit");
|
||
}
|
||
//添加时操作
|
||
}
|
||
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
||
if (tip == "save")
|
||
{
|
||
tip = "保存成功!";
|
||
}
|
||
else
|
||
{
|
||
tip = "提交成功!";
|
||
}
|
||
Alert.ShowInTop(tip, MessageBoxIcon.Success);
|
||
}
|
||
else
|
||
{
|
||
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// 编辑时候保存
|
||
/// </summary>
|
||
private void EditConstructSol(string saveType)
|
||
{
|
||
Model.Solution_HSSEConstructSolution constructSolution = new Model.Solution_HSSEConstructSolution();
|
||
constructSolution.Code = txtCode.Text.Trim();
|
||
constructSolution.ProjectId = CurrUser.LoginProjectId;
|
||
if (drpUnit.SelectedValue != BLL.Const._Null)
|
||
{
|
||
constructSolution.UnitId = drpUnit.SelectedValue;
|
||
}
|
||
if (drpModelType.SelectedValue != BLL.Const._Null)
|
||
{
|
||
constructSolution.SolutionType = drpModelType.SelectedValue;
|
||
}
|
||
if (drpSpecialType.SelectedValue != BLL.Const._Null )
|
||
{
|
||
constructSolution.SpecialSchemeTypeId = drpSpecialType.SelectedValue;
|
||
}
|
||
constructSolution.SolutionName = txtSolutionName.Text.Trim();
|
||
int edtion = Convert.ToInt32(this.drpEdition.SelectedValue);
|
||
constructSolution.Edition = edtion;
|
||
if (!string.IsNullOrEmpty(txtCompileDate.Text.Trim()))
|
||
{
|
||
constructSolution.CompileDate = Convert.ToDateTime(txtCompileDate.Text.Trim());
|
||
}
|
||
|
||
if (txtUnitWork.Values.Length > 0)
|
||
{
|
||
constructSolution.UnitWorkIds = string.Join(",", txtUnitWork.Values);
|
||
}
|
||
if (txtCNProfessional.Values.Length > 0)
|
||
{
|
||
constructSolution.CNProfessionalCodes = string.Join(",", txtCNProfessional.Values);
|
||
}
|
||
if (!string.IsNullOrEmpty(ConstructSolutionId))
|
||
{
|
||
constructSolution.ConstructSolutionId = ConstructSolutionId;
|
||
|
||
Model.Solution_HSSEConstructSolution constructSolution1 = HSSEConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
||
if (saveType == "submit")
|
||
{
|
||
if (CurrUser.UserId != constructSolution1.CompileMan) //办理人不是编制人,提示查看审批信息
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove sApprove = new Model.Solution_HSSEConstructSolutionApprove();
|
||
sApprove.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
||
sApprove.ApproveMan = constructSolution1.CompileMan;
|
||
sApprove.ApproveType = "S";
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(sApprove);
|
||
|
||
if (constructSolution1.State == Const.CQMSConstructSolution_Audit)
|
||
{
|
||
constructSolution.State = constructSolution1.State;
|
||
|
||
}
|
||
else
|
||
{
|
||
constructSolution.State = Const.CQMSConstructSolution_Audit;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
countersign(constructSolution.ConstructSolutionId);
|
||
constructSolution.State = constructSolution1.State;
|
||
}
|
||
|
||
if (!CurrUser.UserId.Equals(constructSolution1.CompileMan))
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove approve = HSSEConstructSolutionApproveService.GetConstructSoluAppByApproveMan(ConstructSolutionId, CurrUser.UserId, Convert.ToInt32(constructSolution1.Edition));
|
||
if (approve == null)
|
||
{
|
||
approve = new Model.Solution_HSSEConstructSolutionApprove();
|
||
approve.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
||
// approve.ApproveDate = DateTime.Now;
|
||
approve.ApproveMan = this.CurrUser.UserId;
|
||
approve.ApproveType = Const.CQMSConstructSolution_Compile;
|
||
approve.Edition = Convert.ToInt32(this.drpEdition.SelectedValue);
|
||
}
|
||
|
||
if (saveType == "submit")
|
||
{
|
||
approve.ApproveDate = DateTime.Now;
|
||
}
|
||
if (rblIsAgree.SelectedIndex == 2)
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove curapprove = approve;// HSSEConstructSolutionApproveService.GetConstructSoluAppByApproveMan(ConstructSolutionId, CurrUser.UserId, Convert.ToInt32(constructSolution.Edition));
|
||
foreach (var id in this.drpSameGroup.SelectedValueArray)
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove hasapprove = HSSEConstructSolutionApproveService.GetConstructSoluAppByApproveMan(ConstructSolutionId, id, Convert.ToInt32(constructSolution.Edition));
|
||
if (hasapprove == null)
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove newapprove = new Model.Solution_HSSEConstructSolutionApprove();
|
||
newapprove.ConstructSolutionId = curapprove.ConstructSolutionId;
|
||
newapprove.ApproveMan = id;
|
||
newapprove.ApproveType = curapprove.ApproveType;
|
||
newapprove.SignType = curapprove.SignType;
|
||
|
||
|
||
newapprove.Edition = curapprove.Edition; ;
|
||
// delSolutionApprove(curapprove.ConstructSolutionId, id, curapprove.SignType);
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(newapprove);
|
||
APICommonService.SendSubscribeMessage(approve.ApproveMan, "施工方案待办理", this.CurrUser.UserName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
|
||
}
|
||
}
|
||
|
||
approve.SignType = "S";
|
||
approve.IsAgree = true;
|
||
}
|
||
else
|
||
{
|
||
approve.IsAgree = Convert.ToBoolean(rblIsAgree.SelectedValue);
|
||
}
|
||
approve.ApproveIdea = txtOptions.Text.Trim();
|
||
if (string.IsNullOrEmpty(approve.ConstructSolutionApproveId))
|
||
{
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
||
}
|
||
else
|
||
{
|
||
HSSEConstructSolutionApproveService.UpdateConstructSolutionApprove(approve);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if (saveType == "submit")
|
||
{
|
||
if (constructSolution1.State == Const.CQMSConstructSolution_Audit)//==会签状态升级版本
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove reApprove = new Model.Solution_HSSEConstructSolutionApprove();
|
||
reApprove.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
||
reApprove.ApproveDate = DateTime.Now;
|
||
reApprove.ApproveMan = constructSolution1.CompileMan;
|
||
reApprove.ApproveType = Const.CQMSConstructSolution_ReCompile;
|
||
//edtion++;
|
||
reApprove.Edition = edtion;
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(reApprove);
|
||
}
|
||
else
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove approves = HSSEConstructSolutionApproveService.GetConstructSolApproveByApproveMan(ConstructSolutionId, constructSolution1.CompileMan);
|
||
if (approves == null)
|
||
{
|
||
approves = new Model.Solution_HSSEConstructSolutionApprove();
|
||
approves.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
||
// approve.ApproveDate = DateTime.Now;
|
||
approves.ApproveMan = this.CurrUser.UserId;
|
||
approves.ApproveType = Const.CQMSConstructSolution_Compile;
|
||
approves.Edition = Convert.ToInt32(this.drpEdition.SelectedValue);
|
||
approves.Edition = Convert.ToInt32(edtion);
|
||
approves.IsAgree = Convert.ToBoolean(rblIsAgree.SelectedValue);
|
||
approves.ApproveIdea = txtOptions.Text.Trim();
|
||
approves.ApproveDate = DateTime.Now;
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(approves);
|
||
|
||
}
|
||
else
|
||
{
|
||
approves.ApproveDate = DateTime.Now;
|
||
HSSEConstructSolutionApproveService.UpdateConstructSolutionApprove(approves);
|
||
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
}
|
||
else
|
||
{
|
||
constructSolution.State = constructSolution1.State;
|
||
}
|
||
//提交时候,更新状态,打回的时候升级版本
|
||
if (CurrUser.UserId.Equals(constructSolution1.CompileMan))
|
||
{
|
||
//if (constructSolution1.State != Const.CQMSConstructSolution_Audit)
|
||
//{
|
||
// edtion++;
|
||
//}
|
||
//constructSolution.Edition = Convert.ToInt32(edtion);
|
||
constructSolution.State = Const.CQMSConstructSolution_Audit;
|
||
}
|
||
HSSEConstructSolutionService.UpdateConstructSolution(constructSolution);
|
||
//判断状态,全部会签同意,则审批完成
|
||
if (saveType == "submit")
|
||
{
|
||
List<Model.Solution_HSSEConstructSolutionApprove> allApproves = HSSEConstructSolutionApproveService.GetHandleConstructSolutionApprovesByConstructSolutionId(ConstructSolutionId, constructSolution.Edition == null ? 0 : Convert.ToInt32(constructSolution.Edition));
|
||
var count = allApproves.Where(p => p.ApproveDate != null && p.IsAgree != null && Convert.ToBoolean(p.IsAgree)).Count();//查询会签同意的
|
||
var fcount = allApproves.Where(p => p.ApproveDate != null && p.IsAgree != null && !Convert.ToBoolean(p.IsAgree)).Count();//查询会签不同意的
|
||
if ((count + fcount) == allApproves.Count)
|
||
{
|
||
if (count == allApproves.Count)
|
||
{
|
||
var cons = HSSEConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
||
cons.State = Const.CQMSConstructSolution_Complete;
|
||
cons.CompileDate = DateTime.Now;
|
||
HSSEConstructSolutionService.UpdateConstructSolution(cons);
|
||
}
|
||
//有不同意意见,打回重新编制
|
||
if (fcount > 0)
|
||
{
|
||
var cons = HSSEConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
||
Model.Solution_HSSEConstructSolutionApprove reApprove = new Model.Solution_HSSEConstructSolutionApprove();
|
||
reApprove.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
||
reApprove.ApproveMan = cons.CompileMan;
|
||
reApprove.ApproveType = Const.CQMSConstructSolution_ReCompile;
|
||
edtion++;
|
||
reApprove.Edition = edtion;
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(reApprove);
|
||
|
||
cons.State = Const.CQMSConstructSolution_ReCompile;
|
||
cons.Edition = edtion;
|
||
cons.CompileDate = DateTime.Now;
|
||
constructSolution.State = Const.CQMSConstructSolution_ReCompile;
|
||
HSSEConstructSolutionService.UpdateConstructSolution(cons);
|
||
}
|
||
}
|
||
|
||
}
|
||
LogService.AddSys_Log(CurrUser, constructSolution.Code, ConstructSolutionId, Const.CQMSConstructSolutionMenuId, "修改施工方案");
|
||
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
#region 添加时候的保存
|
||
|
||
/// <summary>
|
||
/// 保存方案审查
|
||
/// </summary>
|
||
/// <param name="saveType">保存类型</param>
|
||
private void SaveHSSEConstructSolution(string saveType)
|
||
{
|
||
//if (tvHSE.CheckedNodes.Count == 0 || (tvHSE.CheckedNodes.Count > 0 && tvHSE.CheckedNodes[0].Value == "0"))
|
||
//{
|
||
// ScriptManager.RegisterStartupScript(this, typeof(string), "_alert", "alert('请选择HSE会签人员!')", true);
|
||
// return;
|
||
//}
|
||
Model.Solution_HSSEConstructSolution constructSolution = new Model.Solution_HSSEConstructSolution();
|
||
constructSolution.Code = txtCode.Text.Trim();
|
||
constructSolution.ProjectId = CurrUser.LoginProjectId;
|
||
if (drpUnit.SelectedValue != BLL.Const._Null)
|
||
{
|
||
constructSolution.UnitId = drpUnit.SelectedValue;
|
||
}
|
||
if (drpModelType.SelectedValue != BLL.Const._Null)
|
||
{
|
||
constructSolution.SolutionType = drpModelType.SelectedValue;
|
||
}
|
||
if (drpSpecialType.SelectedValue != BLL.Const._Null)
|
||
{
|
||
constructSolution.SpecialSchemeTypeId = drpSpecialType.SelectedValue;
|
||
}
|
||
constructSolution.SolutionName = txtSolutionName.Text.Trim();
|
||
if (!string.IsNullOrEmpty(txtCompileDate.Text.Trim()))
|
||
{
|
||
constructSolution.CompileDate = Convert.ToDateTime(txtCompileDate.Text.Trim());
|
||
}
|
||
if (txtUnitWork.Values.Length > 0)
|
||
{
|
||
constructSolution.UnitWorkIds = string.Join(",", txtUnitWork.Values);
|
||
}
|
||
if (txtCNProfessional.Values.Length > 0)
|
||
{
|
||
constructSolution.CNProfessionalCodes = string.Join(",", txtCNProfessional.Values);
|
||
}
|
||
if (!string.IsNullOrEmpty(HFConstructSolutionId.Text))
|
||
{
|
||
constructSolution.ConstructSolutionId = HFConstructSolutionId.Text;
|
||
}
|
||
else
|
||
{
|
||
constructSolution.ConstructSolutionId = SQLHelper.GetNewID(typeof(Model.Solution_HSSEConstructSolution));
|
||
}
|
||
|
||
if (saveType == "submit")
|
||
{
|
||
constructSolution.State = Const.CQMSConstructSolution_Audit;
|
||
}
|
||
else
|
||
{
|
||
|
||
Model.Solution_HSSEConstructSolution cs = HSSEConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
||
if (cs != null)
|
||
{
|
||
constructSolution.State = cs.State;
|
||
}
|
||
else
|
||
{
|
||
constructSolution.State = Const.CQMSConstructSolution_Compile;
|
||
}
|
||
|
||
}
|
||
|
||
constructSolution.CompileMan = CurrUser.UserId;
|
||
constructSolution.Edition = Convert.ToInt32(this.drpEdition.SelectedValue);
|
||
if (!string.IsNullOrEmpty(HFConstructSolutionId.Text))
|
||
{
|
||
HSSEConstructSolutionService.UpdateConstructSolution(constructSolution);
|
||
}
|
||
else
|
||
{
|
||
HSSEConstructSolutionService.AddConstructSolution(constructSolution);
|
||
}
|
||
|
||
if (saveType == "submit")
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove approve1 = new Model.Solution_HSSEConstructSolutionApprove();
|
||
approve1.ConstructSolutionId = constructSolution.ConstructSolutionId;
|
||
approve1.ApproveDate = DateTime.Now;
|
||
approve1.ApproveMan = this.CurrUser.UserId;
|
||
approve1.ApproveType = Const.CQMSConstructSolution_Compile;
|
||
approve1.Edition = Convert.ToInt32(this.drpEdition.SelectedValue);
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(approve1);
|
||
}
|
||
|
||
|
||
|
||
LogService.AddSys_Log(CurrUser, constructSolution.Code, ConstructSolutionId, Const.CQMSConstructSolutionMenuId, "添加施工方案");
|
||
|
||
//}
|
||
|
||
//提交
|
||
if (saveType == "submit")
|
||
{
|
||
countersign(constructSolution.ConstructSolutionId);
|
||
}
|
||
LogService.AddSys_Log(CurrUser, constructSolution.Code, ConstructSolutionId, Const.CQMSConstructSolutionMenuId, "编制方案审查");
|
||
|
||
}
|
||
#endregion
|
||
|
||
/// <summary>
|
||
/// 删除未选择的代办记录
|
||
/// </summary>
|
||
/// <param name="constructSolutionId"></param>
|
||
private void delSolutionApprove(string constructSolutionId, string man, string signType)
|
||
{
|
||
var count = HSSEConstructSolutionApproveService.getListSolutionApproveCount(constructSolutionId, man, signType);
|
||
if (count > 0)
|
||
{
|
||
HSSEConstructSolutionApproveService.delSolutionApprove(constructSolutionId, man);
|
||
}
|
||
}
|
||
|
||
|
||
|
||
/// <summary>
|
||
/// 会签
|
||
/// </summary>
|
||
private void countersign(string constructSolutionId)
|
||
{
|
||
var solution = HSSEConstructSolutionService.GetConstructSolutionByConstructSolutionId(constructSolutionId);
|
||
if (trOne.Nodes[0].Nodes.Count > 0)
|
||
{
|
||
foreach (TreeNode tn in trOne.Nodes[0].Nodes)
|
||
{
|
||
if (tn.Checked)
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove approve = new Model.Solution_HSSEConstructSolutionApprove();
|
||
approve.ConstructSolutionId = constructSolutionId;
|
||
approve.ApproveMan = tn.NodeID;
|
||
approve.ApproveType = Const.CQMSConstructSolution_Audit;
|
||
approve.SignType = "ZY";
|
||
int edtion = Convert.ToInt32(this.drpEdition.SelectedValue);
|
||
if (solution != null)
|
||
{
|
||
// edtion++;
|
||
}
|
||
approve.Edition = edtion;
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "ZY");
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
||
APICommonService.SendSubscribeMessage(approve.ApproveMan, "施工方案待办理", this.CurrUser.UserName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
|
||
}
|
||
else
|
||
{
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "ZY");
|
||
}
|
||
|
||
}
|
||
}
|
||
if (trTwo.Nodes[0].Nodes.Count > 0)
|
||
{
|
||
|
||
foreach (TreeNode tn in trTwo.Nodes[0].Nodes)
|
||
{
|
||
if (tn.Checked)
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove approve = new Model.Solution_HSSEConstructSolutionApprove();
|
||
approve.ConstructSolutionId = constructSolutionId;
|
||
approve.ApproveMan = tn.NodeID;
|
||
approve.ApproveType = Const.CQMSConstructSolution_Audit;
|
||
approve.SignType = "ZL";
|
||
int edtion = Convert.ToInt32(this.drpEdition.SelectedValue);
|
||
if (solution != null)
|
||
{
|
||
// edtion++;
|
||
}
|
||
approve.Edition = edtion;
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "ZL");
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
||
APICommonService.SendSubscribeMessage(approve.ApproveMan, "施工方案待办理", this.CurrUser.UserName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
|
||
}
|
||
else
|
||
{
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "ZL");
|
||
}
|
||
|
||
}
|
||
}
|
||
if (trThree.Nodes[0].Nodes.Count > 0)
|
||
{
|
||
|
||
foreach (TreeNode tn in trThree.Nodes[0].Nodes)
|
||
{
|
||
if (tn.Checked)
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove approve = new Model.Solution_HSSEConstructSolutionApprove();
|
||
approve.ConstructSolutionId = constructSolutionId;
|
||
approve.ApproveMan = tn.NodeID;
|
||
approve.ApproveType = Const.CQMSConstructSolution_Audit;
|
||
approve.SignType = "AQ";
|
||
int edtion = Convert.ToInt32(this.drpEdition.SelectedValue);
|
||
if (solution != null)
|
||
{
|
||
// edtion++;
|
||
}
|
||
approve.Edition = edtion;
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "AQ");
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
||
APICommonService.SendSubscribeMessage(approve.ApproveMan, "施工方案待办理", this.CurrUser.UserName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
|
||
}
|
||
else
|
||
{
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "AQ");
|
||
}
|
||
|
||
}
|
||
}
|
||
if (trFour.Nodes[0].Nodes.Count > 0)
|
||
{
|
||
|
||
foreach (TreeNode tn in trFour.Nodes[0].Nodes)
|
||
{
|
||
if (tn.Checked)
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove approve = new Model.Solution_HSSEConstructSolutionApprove();
|
||
approve.ConstructSolutionId = constructSolutionId;
|
||
approve.ApproveMan = tn.NodeID;
|
||
approve.ApproveType = Const.CQMSConstructSolution_Audit;
|
||
approve.SignType = "KZ";
|
||
int edtion = Convert.ToInt32(this.drpEdition.SelectedValue);
|
||
if (solution != null)
|
||
{
|
||
// edtion++;
|
||
}
|
||
approve.Edition = edtion;
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "KZ");
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
||
APICommonService.SendSubscribeMessage(approve.ApproveMan, "施工方案待办理", this.CurrUser.UserName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
|
||
|
||
}
|
||
else
|
||
{
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "KZ");
|
||
}
|
||
|
||
}
|
||
}
|
||
if (trFive.Nodes[0].Nodes.Count > 0)
|
||
{
|
||
|
||
foreach (TreeNode tn in trFive.Nodes[0].Nodes)
|
||
{
|
||
if (tn.Checked)
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove approve = new Model.Solution_HSSEConstructSolutionApprove();
|
||
approve.ConstructSolutionId = constructSolutionId;
|
||
approve.ApproveMan = tn.NodeID;
|
||
approve.ApproveType = Const.CQMSConstructSolution_Audit;
|
||
approve.SignType = "SG";
|
||
int edtion = Convert.ToInt32(this.drpEdition.SelectedValue);
|
||
//if (solution != null)
|
||
//{
|
||
// edtion++;
|
||
//}
|
||
approve.Edition = edtion;
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "SG");
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
||
APICommonService.SendSubscribeMessage(approve.ApproveMan, "施工方案待办理", this.CurrUser.UserName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
|
||
}
|
||
else
|
||
{
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "SG");
|
||
}
|
||
}
|
||
}
|
||
if (trSixe.Nodes[0].Nodes.Count > 0)
|
||
{
|
||
|
||
foreach (TreeNode tn in trSixe.Nodes[0].Nodes)
|
||
{
|
||
if (tn.Checked)
|
||
{
|
||
Model.Solution_HSSEConstructSolutionApprove approve = new Model.Solution_HSSEConstructSolutionApprove();
|
||
approve.ConstructSolutionId = constructSolutionId;
|
||
approve.ApproveMan = tn.NodeID;
|
||
approve.ApproveType = Const.CQMSConstructSolution_Audit;
|
||
approve.SignType = "XM";
|
||
int edtion = Convert.ToInt32(this.drpEdition.SelectedValue);
|
||
//if (solution != null)
|
||
//{
|
||
// edtion++;
|
||
//}
|
||
approve.Edition = edtion;
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "XM");
|
||
HSSEConstructSolutionApproveService.AddConstructSolutionApprove(approve);
|
||
APICommonService.SendSubscribeMessage(approve.ApproveMan, "安全施工方案待办理", this.CurrUser.UserName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
|
||
}
|
||
else
|
||
{
|
||
delSolutionApprove(constructSolutionId, tn.NodeID, "XM");
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
#region 动态加载角色树
|
||
|
||
/// <summary>
|
||
/// 设置树的节点选择
|
||
/// </summary>
|
||
/// <param name="nodes"></param>
|
||
/// <param name="role"></param>
|
||
private void SetCheck(Tree tree, List<string> userIds)
|
||
{
|
||
foreach (TreeNode tn in tree.Nodes[0].Nodes)
|
||
{
|
||
if (userIds.Contains(tn.NodeID))
|
||
{
|
||
tn.Checked = true;
|
||
}
|
||
}
|
||
}
|
||
|
||
private void initDropSameGroup(DropDownList drop , string type)
|
||
{
|
||
List<Sys_User> users = new List<Sys_User>();
|
||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||
{
|
||
switch (type)
|
||
{
|
||
case "ZY":
|
||
var userListzy = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where p.RoleId.Contains(Const.ZBCNEngineer)
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
select x;
|
||
users = userListzy.ToList();
|
||
break;
|
||
case "ZL":
|
||
var userListzl = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where (p.RoleId.Contains(Const.QAManager) || p.RoleId.Contains(Const.CQEngineer))
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
orderby x.UserCode
|
||
select x;
|
||
users = userListzl.ToList();
|
||
break;
|
||
case "AQ":
|
||
var userListaq = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where (p.RoleId.Contains(Const.HSSEManager) || p.RoleId.Contains(Const.HSSEEngineer))
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
orderby x.UserCode
|
||
select x;
|
||
users = userListaq.ToList();
|
||
|
||
break;
|
||
case "KZ":
|
||
var userListkz = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where (p.RoleId.Contains(Const.ControlManager) || p.RoleId.Contains(Const.KZEngineer))
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
orderby x.UserCode
|
||
select x;
|
||
users = userListkz.ToList();
|
||
break;
|
||
case "SG":
|
||
var userListsg = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where (p.RoleId.Contains(Const.ConstructionManager) || p.RoleId.Contains(Const.ConstructionAssistantManager))
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
orderby x.UserCode
|
||
select x;
|
||
users = userListsg.ToList();
|
||
break;
|
||
case "Xm":
|
||
var userListxm = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where p.RoleId.Contains(Const.ProjectManager)
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
orderby x.UserCode
|
||
select x;
|
||
users = userListxm.ToList();
|
||
break;
|
||
}
|
||
}
|
||
drop.DataTextField = "UserName";
|
||
drop.DataValueField = "UserId";
|
||
drop.DataSource = users;
|
||
drop.DataBind();
|
||
}
|
||
/// 加载角色树:动态加载
|
||
/// </summary>
|
||
private void BindZYRole()
|
||
{
|
||
|
||
TreeNode rootNode = new TreeNode();//定义根节点
|
||
rootNode.Text = "专业工程师";
|
||
rootNode.NodeID = "0";
|
||
rootNode.Expanded = true;
|
||
rootNode.EnableCheckEvent = true;
|
||
trOne.Nodes.Add(rootNode);
|
||
trOne.EnableCheckBox = true;
|
||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||
{
|
||
var userList = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where p.RoleId.Contains(Const.ZBCNEngineer)
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
select x;
|
||
//var ss = LINQToDataTable(userList);
|
||
foreach (var u in userList)
|
||
{
|
||
TreeNode Node = new TreeNode();
|
||
Node.Text = u.UserName;
|
||
Node.NodeID = u.UserId;
|
||
Node.EnableCheckEvent = true;
|
||
rootNode.Nodes.Add(Node);
|
||
}
|
||
}
|
||
|
||
}
|
||
private void BindZLRole()
|
||
{
|
||
TreeNode rootNode = new TreeNode();//定义根节点
|
||
rootNode.Text = "质量组";
|
||
rootNode.NodeID = "0";
|
||
rootNode.Expanded = true;
|
||
rootNode.EnableCheckEvent = true;
|
||
trTwo.Nodes.Add(rootNode);
|
||
trTwo.EnableCheckBox = true;
|
||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||
{
|
||
var userList = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where (p.RoleId.Contains(Const.QAManager) || p.RoleId.Contains(Const.CQEngineer))
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
orderby x.UserCode
|
||
select x;
|
||
foreach (var u in userList)
|
||
{
|
||
TreeNode roleNode = new TreeNode();
|
||
roleNode.Text = u.UserName;
|
||
roleNode.NodeID = u.UserId;
|
||
rootNode.Nodes.Add(roleNode);
|
||
}
|
||
}
|
||
}
|
||
/// <summary>
|
||
/// 判断是否有选择
|
||
/// </summary>
|
||
/// <param name="node"></param>
|
||
/// <returns></returns>
|
||
public Boolean nodesCheckd(Tree node)
|
||
{
|
||
bool res = false;
|
||
if (node.Nodes[0].Nodes.Count > 0)
|
||
{
|
||
foreach (var item in node.Nodes[0].Nodes)
|
||
{
|
||
if (item.Checked)
|
||
{
|
||
res = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
return res;
|
||
}
|
||
|
||
private void BindAQRole()
|
||
{
|
||
TreeNode rootNode = new TreeNode();//定义根节点
|
||
rootNode.Text = "HSE组";
|
||
rootNode.NodeID = "0";
|
||
rootNode.Expanded = true;
|
||
rootNode.EnableCheckEvent = true;
|
||
trThree.Nodes.Add(rootNode);
|
||
trThree.EnableCheckBox = true;
|
||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||
{
|
||
var userList = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where (p.RoleId.Contains(Const.HSSEManager) || p.RoleId.Contains(Const.HSSEEngineer))
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
orderby x.UserCode
|
||
select x;
|
||
foreach (var u in userList)
|
||
{
|
||
TreeNode roleNode = new TreeNode();
|
||
roleNode.Text = u.UserName;
|
||
roleNode.NodeID = u.UserId;
|
||
rootNode.Nodes.Add(roleNode);
|
||
}
|
||
}
|
||
}
|
||
|
||
private void BindKZRole()
|
||
{
|
||
TreeNode rootNode = new TreeNode();//定义根节点
|
||
rootNode.Text = "控制组";
|
||
rootNode.NodeID = "0";
|
||
rootNode.Expanded = true;
|
||
rootNode.EnableCheckEvent = true;
|
||
trFour.Nodes.Add(rootNode);
|
||
trFour.EnableCheckBox = true;
|
||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||
{
|
||
var userList = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where (p.RoleId.Contains(Const.ControlManager) || p.RoleId.Contains(Const.KZEngineer))
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
orderby x.UserCode
|
||
select x;
|
||
foreach (var u in userList)
|
||
{
|
||
TreeNode roleNode = new TreeNode();
|
||
roleNode.Text = u.UserName;
|
||
roleNode.NodeID = u.UserId;
|
||
rootNode.Nodes.Add(roleNode);
|
||
}
|
||
}
|
||
}
|
||
|
||
private void BindSGRole()
|
||
{
|
||
|
||
TreeNode rootNode = new TreeNode();//定义根节点
|
||
rootNode.Text = "施工经理";
|
||
rootNode.NodeID = "0";
|
||
rootNode.Expanded = true;
|
||
rootNode.EnableCheckEvent = true;
|
||
trFive.Nodes.Add(rootNode);
|
||
trFive.EnableCheckBox = true;
|
||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||
{
|
||
var userList = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where (p.RoleId.Contains(Const.ConstructionManager) || p.RoleId.Contains(Const.ConstructionAssistantManager))
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
orderby x.UserCode
|
||
select x;
|
||
foreach (var u in userList)
|
||
{
|
||
TreeNode roleNode = new TreeNode();
|
||
roleNode.Text = u.UserName;
|
||
roleNode.NodeID = u.UserId;
|
||
rootNode.Nodes.Add(roleNode);
|
||
}
|
||
}
|
||
}
|
||
|
||
private void BindXMRole()
|
||
{
|
||
|
||
TreeNode rootNode = new TreeNode();//定义根节点
|
||
rootNode.Text = "项目经理";
|
||
rootNode.NodeID = "0";
|
||
rootNode.Expanded = true;
|
||
rootNode.EnableCheckEvent = true;
|
||
trSixe.Nodes.Add(rootNode);
|
||
trSixe.EnableCheckBox = true;
|
||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||
{
|
||
var userList = from x in db.Sys_User
|
||
join y in db.Project_ProjectUnit
|
||
on x.UnitId equals y.UnitId
|
||
join p in db.Project_ProjectUser
|
||
on x.UserId equals p.UserId
|
||
where p.RoleId.Contains(Const.ProjectManager)
|
||
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
|
||
orderby x.UserCode
|
||
select x;
|
||
foreach (var u in userList)
|
||
{
|
||
TreeNode roleNode = new TreeNode();
|
||
roleNode.Text = u.UserName;
|
||
roleNode.NodeID = u.UserId;
|
||
rootNode.Nodes.Add(roleNode);
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
#region 树结构的全选
|
||
protected void trOne_NodeCheck(object sender, TreeCheckEventArgs e)
|
||
{
|
||
if (e.Checked)
|
||
{
|
||
trOne.CheckAllNodes(e.Node.Nodes);
|
||
}
|
||
else
|
||
{
|
||
trOne.UncheckAllNodes(e.Node.Nodes);
|
||
}
|
||
}
|
||
|
||
protected void trTwo_NodeCheck(object sender, TreeCheckEventArgs e)
|
||
{
|
||
if (e.Checked)
|
||
{
|
||
trTwo.CheckAllNodes(e.Node.Nodes);
|
||
}
|
||
else
|
||
{
|
||
trTwo.UncheckAllNodes(e.Node.Nodes);
|
||
}
|
||
}
|
||
|
||
protected void trThree_NodeCheck(object sender, TreeCheckEventArgs e)
|
||
{
|
||
if (e.Checked)
|
||
{
|
||
trThree.CheckAllNodes(e.Node.Nodes);
|
||
}
|
||
else
|
||
{
|
||
trThree.UncheckAllNodes(e.Node.Nodes);
|
||
}
|
||
}
|
||
|
||
protected void trFour_NodeCheck(object sender, TreeCheckEventArgs e)
|
||
{
|
||
if (e.Checked)
|
||
{
|
||
trFour.CheckAllNodes(e.Node.Nodes);
|
||
}
|
||
else
|
||
{
|
||
trFour.UncheckAllNodes(e.Node.Nodes);
|
||
}
|
||
}
|
||
|
||
protected void trFive_NodeCheck(object sender, TreeCheckEventArgs e)
|
||
{
|
||
if (e.Checked)
|
||
{
|
||
trFive.CheckAllNodes(e.Node.Nodes);
|
||
}
|
||
else
|
||
{
|
||
trFive.UncheckAllNodes(e.Node.Nodes);
|
||
}
|
||
|
||
}
|
||
|
||
protected void trSixe_NodeCheck(object sender, TreeCheckEventArgs e)
|
||
{
|
||
if (e.Checked)
|
||
{
|
||
trSixe.CheckAllNodes(e.Node.Nodes);
|
||
}
|
||
else
|
||
{
|
||
trSixe.UncheckAllNodes(e.Node.Nodes);
|
||
}
|
||
}
|
||
|
||
|
||
#endregion
|
||
|
||
protected void imgBtnFile_Click(object sender, EventArgs e)
|
||
{
|
||
if (string.IsNullOrEmpty(HFConstructSolutionId.Text)) //新增记录
|
||
{
|
||
HFConstructSolutionId.Text = SQLHelper.GetNewID(typeof(Model.Solution_HSSEConstructSolution));
|
||
}
|
||
if (this.drpEdition.SelectedValue == "0" && this.imgBtnFile2.Hidden && this.State==Const.CQMSConstructSolution_Compile)//编辑的时候,查看当前版本
|
||
{
|
||
var edition = this.drpEdition.SelectedValue;
|
||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
|
||
String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/Solution&menuId={2}",
|
||
0, HFConstructSolutionId.Text + edition, Const.CQMSConstructSolutionMenuId)));
|
||
}
|
||
else if( this.State == Const.CQMSConstructSolution_ReCompile &&( this.drpEdition.SelectedIndex+1) == this.drpEdition.Items.Count)//编辑的时候,查看当前版本
|
||
{
|
||
var edition = this.drpEdition.SelectedValue;
|
||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
|
||
String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/Solution&menuId={2}",
|
||
0, HFConstructSolutionId.Text + edition, Const.CQMSConstructSolutionMenuId)));
|
||
}else
|
||
{
|
||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
|
||
String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/Solution&menuId={2}",
|
||
-1, HFConstructSolutionId.Text + this.drpEdition.SelectedValue, Const.CQMSConstructSolutionMenuId)));
|
||
|
||
}
|
||
|
||
}
|
||
protected void imgBtnFile_Click2(object sender, EventArgs e)
|
||
{
|
||
if (string.IsNullOrEmpty(HFConstructSolutionId.Text)) //新增记录
|
||
{
|
||
HFConstructSolutionId.Text = SQLHelper.GetNewID(typeof(Model.Solution_HSSEConstructSolution));
|
||
}
|
||
|
||
var edition = this.drpEdition.SelectedValue;
|
||
if (this.imgBtnFile2.Hidden == false)
|
||
{
|
||
edition = "" + (Convert.ToInt32(this.drpEdition.SelectedValue) - 1);
|
||
}
|
||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
|
||
String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/Solution&menuId={2}",
|
||
-1, HFConstructSolutionId.Text + edition, Const.CQMSConstructSolutionMenuId)));
|
||
|
||
|
||
|
||
}
|
||
protected void btnapprove_Click(object sender, EventArgs e)
|
||
{
|
||
//HFConstructSolutionId.Text
|
||
var approve = HSSEConstructSolutionApproveService.GetConstructSolutionApproveByApproveMan(HFConstructSolutionId.Text, CurrUser.UserId);
|
||
if (approve != null)
|
||
{
|
||
var approveId = approve.ConstructSolutionApproveId;
|
||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
|
||
String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/Solution&menuId={2}",
|
||
0, approveId, Const.CQMSConstructSolutionMenuId)));
|
||
}
|
||
|
||
}
|
||
|
||
protected void rblIsAgree_CheckedChanged(object sender, EventArgs e)
|
||
{
|
||
if (this.rblIsAgree.SelectedIndex == 2)
|
||
{
|
||
sameGroup.Hidden = false;
|
||
optio.Hidden =true ;
|
||
options.Hidden = true;
|
||
}
|
||
else
|
||
{
|
||
sameGroup.Hidden = true;
|
||
optio.Hidden = false;
|
||
options.Hidden = false;
|
||
|
||
}
|
||
}
|
||
|
||
protected void gvApprove_RowCommand(object sender, GridCommandEventArgs e)
|
||
{
|
||
object[] keys = gvApprove.DataKeys[e.RowIndex];
|
||
string fileId = string.Empty;
|
||
if (keys == null)
|
||
{
|
||
return;
|
||
}
|
||
else
|
||
{
|
||
fileId = keys[0].ToString();
|
||
|
||
var appr = Funs.DB.Solution_HSSEConstructSolutionApprove.Where(u => u.ConstructSolutionApproveId == fileId).FirstOrDefault();
|
||
if (appr.ApproveType == Const.CQMSConstructSolution_Compile || appr.ApproveType == Const.CQMSConstructSolution_ReCompile)
|
||
{
|
||
fileId = appr.ConstructSolutionId + appr.Edition;
|
||
}
|
||
}
|
||
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
|
||
String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/Solution&menuId={2}",
|
||
-1, fileId, Const.CQMSConstructSolutionMenuId)));
|
||
}
|
||
/// <summary>
|
||
/// 根据施工方案加载专项施工方案
|
||
/// </summary>
|
||
/// <param name="sender"></param>
|
||
/// <param name="e"></param>
|
||
protected void drpModelType_SelectedIndexChanged(object sender, EventArgs e)
|
||
{
|
||
if (drpModelType.SelectedValue != BLL.Const._Null)
|
||
{
|
||
if (this.drpModelType.SelectedItem.Text == "施工组织设计")
|
||
{
|
||
this.drpSpecialType.Enabled = false;
|
||
this.drpSpecialType.SelectedValue = null;
|
||
this.drpSpecialType.Required = false;
|
||
}
|
||
else if (this.drpModelType.SelectedItem.Text == "一般方案")
|
||
{
|
||
BLL.SpecialSchemeTypeService.InitSpecialSchemeTypeDropDownList(drpSpecialType, 2, false);
|
||
this.drpSpecialType.Enabled = true;
|
||
this.drpSpecialType.Required = true;
|
||
}
|
||
else
|
||
{
|
||
BLL.SpecialSchemeTypeService.InitSpecialSchemeTypeDropDownList(drpSpecialType, 1, false);
|
||
this.drpSpecialType.Enabled = true;
|
||
this.drpSpecialType.Required = true;
|
||
}
|
||
}
|
||
}
|
||
|
||
|
||
/// <summary>
|
||
/// 审批列表删除记录
|
||
/// </summary>
|
||
/// <param name="sender"></param>
|
||
/// <param name="e"></param>
|
||
protected void btnRevoke_Click(object sender, EventArgs e)
|
||
{
|
||
System.Web.UI.WebControls.Button btn = (System.Web.UI.WebControls.Button)sender;
|
||
|
||
// 获取点击按钮所在的行索引
|
||
int rowIndex = (btn.NamingContainer as IDataItemContainer).DisplayIndex;
|
||
|
||
var ID = gvApprove.DataKeys[rowIndex][0];
|
||
|
||
var approve = Funs.DB.Solution_HSSEConstructSolutionApprove.Where(x => x.ConstructSolutionApproveId == ID).FirstOrDefault();
|
||
if (approve != null)
|
||
{
|
||
approve.ApproveDate = null;
|
||
approve.ApproveIdea = null;
|
||
approve.IsAgree = null;
|
||
Funs.DB.SubmitChanges();
|
||
}
|
||
|
||
//更新方案状态
|
||
Model.Solution_HSSEConstructSolution constructSolution = HSSEConstructSolutionService.GetConstructSolutionByConstructSolutionId(ConstructSolutionId);
|
||
var ApproveModel = HSSEConstructSolutionApproveService.getListData(ConstructSolutionId).LastOrDefault() ;
|
||
if (constructSolution != null)
|
||
{
|
||
if (ApproveModel != null)
|
||
{
|
||
constructSolution.State = ApproveModel.ApproveType;
|
||
}
|
||
else
|
||
{
|
||
constructSolution.State = Const.CQMSConstructSolution_Compile;
|
||
}
|
||
}
|
||
HSSEConstructSolutionService.UpdateConstructSolution(constructSolution);
|
||
bindApprove();
|
||
}
|
||
|
||
|
||
}
|
||
} |