xinjiang/SGGL/FineUIPro.Web/CQMS/Information/VisaApplicationView.aspx.cs

685 lines
27 KiB
C#

using BLL;
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.CQMS.Information
{
public partial class VisaApplicationView : PageBase
{
#region
/// <summary>
/// 方案审查主键
/// </summary>
public string VisaApplicationId
{
get
{
return (string)ViewState["VisaApplicationId"];
}
set
{
ViewState["VisaApplicationId"] = value;
}
}
#endregion
#region
/// <summary>
/// 定义会签意见集合
/// </summary>
public static List<Model.CQMS_VisaApplicationApprove> approves = new List<Model.CQMS_VisaApplicationApprove>();
#endregion
public int ContactImg
{
get
{
return Convert.ToInt32(ViewState["ContactImg"]);
}
set
{
ViewState["ContactImg"] = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BLL.SecretLevelService.InitSecretLevelDropDownList(drpSecretLevel, true);
UnitService.InitUnitByProjectIdUnitTypeDropDownList(drpUnit, CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2, true);
BindXMRole();
BindSJRole();
BindCGRole();
BindSGRole();
BindSCRole();
BindYZRole();
BindQTRole();
ContactImg = 0;
//CommonService.GetAllButtonList(CurrUser.LoginProjectId, CurrUser.UserId, Const.VisaApplicationMenuId);
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
VisaApplicationId = Request.Params["visaApplicationId"];
if (!string.IsNullOrWhiteSpace(VisaApplicationId))
{
HFVisaApplicationId.Text = VisaApplicationId;
Model.CQMS_VisaApplication visaApplication = VisaApplicationService.GetVisaApplicationByVisaApplicationId(VisaApplicationId);
txtVisaApplicationCode.Text = visaApplication.VisaApplicationCode;
if (!string.IsNullOrEmpty(visaApplication.SecretLevelId))
{
drpSecretLevel.SelectedValue = visaApplication.SecretLevelId;
}
if (!string.IsNullOrEmpty(visaApplication.UnitId))
{
drpUnit.SelectedValue = visaApplication.UnitId;
BindFBRole();
}
this.txtContractNo.Text = visaApplication.ContractNo;
this.txtTaskTheme.Text = visaApplication.TaskTheme;
if (!string.IsNullOrEmpty(visaApplication.ApplicableProcedures))
{
this.rblApplicableProcedures.SelectedValue = visaApplication.ApplicableProcedures;
}
this.txtReasons.Text = visaApplication.Reasons;
this.txtJobDescription.Text = visaApplication.JobDescription;
if (visaApplication.CompileDate != null)
{
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", visaApplication.CompileDate);
}
if (visaApplication.Edition != null)
{
txtEdition.Text = visaApplication.Edition.ToString();
}
bindApprove();
var xmUserIds = VisaApplicationApproveService.GetUserIdsApprovesBySignType(VisaApplicationId, "XM");
if (xmUserIds.Count > 0)
{
SetCheck(trOne, xmUserIds);
}
var sjUserIds = VisaApplicationApproveService.GetUserIdsApprovesBySignType(VisaApplicationId, "SJ");
if (sjUserIds.Count > 0)
{
SetCheck(trTwo, sjUserIds);
}
var cgUserIds = VisaApplicationApproveService.GetUserIdsApprovesBySignType(VisaApplicationId, "CG");
if (cgUserIds.Count > 0)
{
SetCheck(trThree, cgUserIds);
}
var sgUserIds = VisaApplicationApproveService.GetUserIdsApprovesBySignType(VisaApplicationId, "SG");
if (sgUserIds.Count > 0)
{
SetCheck(trFour, sgUserIds);
}
var scUserIds = VisaApplicationApproveService.GetUserIdsApprovesBySignType(VisaApplicationId, "SC");
if (scUserIds.Count > 0)
{
SetCheck(trFive, scUserIds);
}
var yzUserIds = VisaApplicationApproveService.GetUserIdsApprovesBySignType(VisaApplicationId, "YZ");
if (yzUserIds.Count > 0)
{
SetCheck(trSixe, yzUserIds);
}
var fbUserIds = VisaApplicationApproveService.GetUserIdsApprovesBySignType(VisaApplicationId, "FB");
if (fbUserIds.Count > 0)
{
SetCheck(trSeven, fbUserIds);
}
var qtUserIds = VisaApplicationApproveService.GetUserIdsApprovesBySignType(VisaApplicationId, "QT");
if (qtUserIds.Count > 0)
{
SetCheck(trEight, qtUserIds);
}
if (visaApplication.State == Const.VisaApplication_ReCompile || visaApplication.State == Const.VisaApplication_Compile)
{
}
else if (visaApplication.State == Const.VisaApplication_Audit1)
{
this.trHQ.Hidden = false;
//Panel2.Enabled = false;
}
else if (visaApplication.State == Const.VisaApplication_Audit2)
{
this.trHQ.Hidden = false;
Panel2.Enabled = false;
}
else if (visaApplication.State == Const.VisaApplication_Audit3)
{
this.trEstimatedCost.Hidden = false;
this.trHQ.Hidden = false;
}
else if (visaApplication.State == Const.VisaApplication_Audit4)
{
this.trEstimatedCost.Hidden = false;
if (!string.IsNullOrEmpty(visaApplication.EstimatedCost))
{
this.rblEstimatedCost.SelectedValue = visaApplication.EstimatedCost;
}
this.trHQ.Hidden = false;
}
else if (visaApplication.State == Const.VisaApplication_Audit5)
{
this.trEstimatedCost.Hidden = false;
if (!string.IsNullOrEmpty(visaApplication.EstimatedCost))
{
this.rblEstimatedCost.SelectedValue = visaApplication.EstimatedCost;
}
this.trHQ.Hidden = false;
}
else if (visaApplication.State == Const.VisaApplication_Audit6)
{
this.trEstimatedCost.Hidden = false;
if (!string.IsNullOrEmpty(visaApplication.EstimatedCost))
{
this.rblEstimatedCost.SelectedValue = visaApplication.EstimatedCost;
}
this.trHQ.Hidden = false;
}
else if (visaApplication.State == Const.VisaApplication_Audit7)
{
this.trEstimatedCost.Hidden = false;
if (!string.IsNullOrEmpty(visaApplication.EstimatedCost))
{
this.rblEstimatedCost.SelectedValue = visaApplication.EstimatedCost;
}
this.trHQ.Hidden = false;
}
else if (visaApplication.State == Const.VisaApplication_Audit8)
{
this.trEstimatedCost.Hidden = false;
if (!string.IsNullOrEmpty(visaApplication.EstimatedCost))
{
this.rblEstimatedCost.SelectedValue = visaApplication.EstimatedCost;
}
this.trHQ.Hidden = false;
}
else if (visaApplication.State == Const.VisaApplication_Complete)
{
this.trEstimatedCost.Hidden = false;
if (!string.IsNullOrEmpty(visaApplication.EstimatedCost))
{
this.rblEstimatedCost.SelectedValue = visaApplication.EstimatedCost;
}
this.trHQ.Hidden = false;
this.trApprovalComments.Hidden = false;
if (!string.IsNullOrEmpty(visaApplication.ApprovalComments))
{
this.rblApprovalComments.SelectedValue = visaApplication.ApprovalComments;
}
}
//提交版本人多次修改
//if (visaApplication.CompileMan.Equals(CurrUser.UserId))
//{
// txtVisaApplicationCode.Enabled = true;
// drpUnit.Enabled = true;
// txtCompileDate.Enabled = true;
// ContactImg = 0;
// Panel2.Enabled = true;
// rblIsAgree.Hidden = true;
// rblIsAgree.Required = false;
// options.Hidden = true;
// txtOptions.Required = false;
// optio.Hidden = true;
//}
}
}
}
public string man(Object man)
{
string appman = string.Empty;
if (UserService.GetUserByUserId(man.ToString()) != null)
{
appman = UserService.GetUserByUserId(man.ToString()).UserName;
}
return appman;
}
/// <summary>
/// 审批列表
/// </summary>
private void bindApprove()
{
var list = VisaApplicationApproveService.getListData(VisaApplicationId);
gvApprove.DataSource = list;
gvApprove.DataBind();
}
#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;
}
}
}
/// 加载角色树:动态加载
/// </summary>
private void BindXMRole()
{
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.ProjectManagement2)
&& 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 BindSJRole()
{
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.DesignManager) || p.RoleId.Contains(Const.DesignAssistantManager))
&& 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 BindCGRole()
{
TreeNode rootNode = new TreeNode();//定义根节点
rootNode.Text = "采购";
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.PurchasingManager) || p.RoleId.Contains(Const.PurchasingAssistantManager))
&& 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;
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.SGEngineer) || p.RoleId.Contains(Const.QAManager) || 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 BindSCRole()
{
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.DriveManager) || p.RoleId.Contains(Const.DriveAssistantManager) || p.RoleId.Contains(Const.DriveEngineer))
&& 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 BindYZRole()
{
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 y.UnitType == Const.ProjectUnitType_4 && 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 BindFBRole()
{
TreeNode rootNode = new TreeNode();//定义根节点
rootNode.Text = "分包商";
rootNode.NodeID = "0";
rootNode.Expanded = true;
rootNode.EnableCheckEvent = true;
trSeven.Nodes.Add(rootNode);
trSeven.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 y.UnitId == this.drpUnit.SelectedValue && 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 BindQTRole()
{
TreeNode rootNode = new TreeNode();//定义根节点
rootNode.Text = "其他";
rootNode.NodeID = "0";
rootNode.Expanded = true;
rootNode.EnableCheckEvent = true;
trEight.Nodes.Add(rootNode);
trEight.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 y.UnitType == Const.ProjectUnitType_4 && 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);
}
}
protected void trSeven_NodeCheck(object sender, TreeCheckEventArgs e)
{
if (e.Checked)
{
trSeven.CheckAllNodes(e.Node.Nodes);
}
else
{
trSeven.UncheckAllNodes(e.Node.Nodes);
}
}
protected void trEight_NodeCheck(object sender, TreeCheckEventArgs e)
{
if (e.Checked)
{
trEight.CheckAllNodes(e.Node.Nodes);
}
else
{
trEight.UncheckAllNodes(e.Node.Nodes);
}
}
#endregion
protected void imgBtnFile_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(HFVisaApplicationId.Text)) //新增记录
{
HFVisaApplicationId.Text = SQLHelper.GetNewID(typeof(Model.CQMS_VisaApplication));
}
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/VisaApplication&menuId={2}",
-1, HFVisaApplicationId.Text, Const.VisaApplicationMenuId)));
}
protected void btnapprove_Click(object sender, EventArgs e)
{
//HFVisaApplicationId.Text
var approve = VisaApplicationApproveService.GetVisaApplicationApproveByApproveMan(HFVisaApplicationId.Text, CurrUser.UserId);
if (approve != null)
{
var approveId = approve.VisaApplicationApproveId;
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/VisaApplication&menuId={2}",
-1, approveId, Const.VisaApplicationMenuId)));
}
}
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();
}
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/VisaApplication&menuId={2}",
-1, fileId, Const.VisaApplicationMenuId)));
}
}
}