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

534 lines
23 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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 WorkOrderEdit : PageBase
{
#region
/// <summary>
/// 方案审查主键
/// </summary>
public string WorkOrderId
{
get
{
return (string)ViewState["WorkOrderId"];
}
set
{
ViewState["WorkOrderId"] = value;
}
}
#endregion
#region
/// <summary>
/// 定义会签意见集合
/// </summary>
public static List<Model.CQMS_WorkOrderApprove> approves = new List<Model.CQMS_WorkOrderApprove>();
#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);
ContactImg = 0;
//CommonService.GetAllButtonList(CurrUser.LoginProjectId, CurrUser.UserId, Const.WorkOrderMenuId);
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
WorkOrderId = Request.Params["workOrderId"];
if (!string.IsNullOrWhiteSpace(WorkOrderId))
{
HFWorkOrderId.Text = WorkOrderId;
Model.CQMS_WorkOrder workOrder = WorkOrderService.GetWorkOrderByWorkOrderId(WorkOrderId);
txtWorkOrderCode.Text = workOrder.WorkOrderCode;
if (!string.IsNullOrEmpty(workOrder.SecretLevelId))
{
drpSecretLevel.SelectedValue = workOrder.SecretLevelId;
}
if (!string.IsNullOrEmpty(workOrder.UnitId))
{
drpUnit.SelectedValue = workOrder.UnitId;
}
this.txtContractNo.Text = workOrder.ContractNo;
this.txtTaskTheme.Text = workOrder.TaskTheme;
this.txtContentDescription.Text = workOrder.ContentDescription;
this.txtImplementationRequirements.Text = workOrder.ImplementationRequirements;
if (workOrder.CompileDate != null)
{
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", workOrder.CompileDate);
}
if (workOrder.Edition != null)
{
txtEdition.Text = workOrder.Edition.ToString();
}
bindApprove();
if (workOrder.State == Const.WorkOrder_Compile)
{
agree.Hidden = true;
options.Hidden = true;
optio.Hidden = true;
WorkOrderService.Init(drpHandleType, Const.WorkOrder_Compile, false);
UserService.InitUserProjectIdUnitTypeDropDownList(drpHandleMan, CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_1, false);
}
else if (workOrder.State == Const.VisaApplication_ReCompile) //重报
{
this.trNext.Hidden = true;
agree.Hidden = true;
options.Hidden = true;
optio.Hidden = true;
}
else if (workOrder.State == Const.WorkOrder_Audit1)
{
NoEdit();
WorkOrderService.Init(drpHandleType, Const.WorkOrder_Audit1, false);
this.drpHandleMan.Enabled = false;
this.drpHandleMan.Required = false;
this.drpHandleMan.Items.Clear();
}
}
else
{
agree.Hidden = true;
txtEdition.Text = "0";
options.Hidden = true;
optio.Hidden = true;
plApprove2.Hidden = true;
WorkOrderService.Init(drpHandleType, Const.WorkOrder_Compile, false);
UserService.InitUserProjectIdUnitTypeDropDownList(drpHandleMan, CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_1, false);
//txtWorkOrderCode.Text = SQLHelper.RunProcNewId2("SpGetNewCode3ByProjectId", "dbo.CQMS_WorkOrder", "Code", CurrUser.LoginProjectId);
}
}
}
private void NoEdit()
{
txtWorkOrderCode.Enabled = false;
drpSecretLevel.Enabled = false;
drpUnit.Enabled = false;
txtContractNo.Enabled = false;
txtTaskTheme.Enabled = false;
txtContentDescription.Enabled = false;
txtImplementationRequirements.Enabled = false;
txtCompileDate.Enabled = false;
txtEdition.Enabled = false;
ContactImg = -1;
}
/// <summary>
/// 审批列表
/// </summary>
private void bindApprove()
{
var list = WorkOrderApproveService.getListData(WorkOrderId);
gvApprove.DataSource = list;
gvApprove.DataBind();
}
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.WorkOrderMenuId, Const.BtnSave))
{
SaveWorkOrder("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, "submmit");
}
/// <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.WorkOrderMenuId, buttonName))
{
string err = string.Empty;
if (this.drpSecretLevel.SelectedValue == BLL.Const._Null)
{
err += "请选择密级,";
}
if (this.drpUnit.SelectedValue == BLL.Const._Null)
{
err += "请选择分包单位,";
}
//if (!AttachFileService.Getfile(HFWorkOrderId.Text, Const.WorkOrderMenuId))
//{
// err += "请上传附件,";
//}
//if (trOne.Nodes[0].Nodes.Count == 0 && trTwo.Nodes.Count == 0 && trThree.Nodes.Count == 0 &&
// trFour.Nodes.Count == 0 && trFive.Nodes.Count == 0 && trSixe.Nodes.Count == 0)
//{
// 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(WorkOrderId))
{//更新时操作
if (tip == "save")
{
EditConstructSol("save");
}
else
{
EditConstructSol("submit");
}
}
else
{
if (tip == "save")
{
SaveWorkOrder("save");
}
else
{
SaveWorkOrder("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.CQMS_WorkOrder workOrder = new Model.CQMS_WorkOrder();
workOrder.WorkOrderCode = txtWorkOrderCode.Text.Trim();
workOrder.SecretLevelId = this.drpSecretLevel.SelectedValue;
workOrder.ProjectId = CurrUser.LoginProjectId;
workOrder.UnitId = this.drpUnit.SelectedValue;
workOrder.ContractNo = this.txtContractNo.Text.Trim();
workOrder.TaskTheme = this.txtTaskTheme.Text.Trim();
workOrder.ContentDescription = this.txtContentDescription.Text.Trim();
workOrder.ImplementationRequirements = this.txtImplementationRequirements.Text.Trim();
int edtion = Convert.ToInt32(txtEdition.Text);
workOrder.Edition = edtion;
if (!string.IsNullOrEmpty(txtCompileDate.Text.Trim()))
{
workOrder.CompileDate = Convert.ToDateTime(txtCompileDate.Text.Trim());
}
if (!string.IsNullOrEmpty(WorkOrderId))
{
workOrder.WorkOrderId = WorkOrderId;
Model.CQMS_WorkOrder workOrder1 = WorkOrderService.GetWorkOrderByWorkOrderId(WorkOrderId);
if (saveType == "submit")
{
Model.CQMS_WorkOrderApprove approve = WorkOrderApproveService.GetConstructSoluAppByApproveMan(WorkOrderId, CurrUser.UserId, Convert.ToInt32(workOrder1.Edition));
if (approve != null)
{
approve.IsAgree = Convert.ToBoolean(this.rblIsAgree.SelectedValue);
approve.ApproveIdea = this.txtOptions.Text.Trim();
approve.ApproveDate = DateTime.Now;
WorkOrderApproveService.UpdateWorkOrderApprove(approve);
}
if (workOrder1.State == BLL.Const.WorkOrder_Compile)
{
workOrder.State = this.drpHandleType.SelectedValue;
Model.CQMS_WorkOrderApprove reApprove = new Model.CQMS_WorkOrderApprove();
reApprove.WorkOrderId = workOrder.WorkOrderId;
reApprove.ApproveMan = this.drpHandleMan.SelectedValue;
reApprove.ApproveType = this.drpHandleType.SelectedValue;
reApprove.Edition = edtion;
WorkOrderApproveService.AddWorkOrderApprove(reApprove);
}
else if (workOrder1.State == BLL.Const.WorkOrder_ReCompile)
{
//获取上个版次不同意的审批记录
List<Model.CQMS_WorkOrderApprove> lastNotAggreeApproves = BLL.WorkOrderApproveService.GetNotAggreeApprovesByWorkOrderIdAndEdtion(WorkOrderId, workOrder1.Edition.Value - 1);
workOrder.State = lastNotAggreeApproves[0].ApproveType;
foreach (var item in lastNotAggreeApproves)
{
Model.CQMS_WorkOrderApprove reApprove = new Model.CQMS_WorkOrderApprove();
reApprove.WorkOrderId = workOrder.WorkOrderId;
reApprove.ApproveMan = item.ApproveMan;
reApprove.ApproveType = item.ApproveType;
reApprove.Edition = edtion;
WorkOrderApproveService.AddWorkOrderApprove(reApprove);
}
}
else if (workOrder1.State == BLL.Const.WorkOrder_Audit1)
{
if (this.rblIsAgree.SelectedValue == "true") //同意
{
workOrder.State = this.drpHandleType.SelectedValue;
Model.CQMS_WorkOrderApprove reApprove = new Model.CQMS_WorkOrderApprove();
reApprove.WorkOrderId = workOrder.WorkOrderId;
if (!string.IsNullOrEmpty(this.drpHandleMan.SelectedValue))
{
reApprove.ApproveMan = this.drpHandleMan.SelectedValue;
}
reApprove.ApproveType = this.drpHandleType.SelectedValue;
reApprove.Edition = edtion;
WorkOrderApproveService.AddWorkOrderApprove(reApprove);
}
else //不同意
{
workOrder.State = Const.VisaApplication_ReCompile;
workOrder.Edition = edtion + 1;
Model.CQMS_WorkOrderApprove reApprove = new Model.CQMS_WorkOrderApprove();
reApprove.WorkOrderId = workOrder.WorkOrderId;
reApprove.ApproveMan = workOrder1.CompileMan;
reApprove.ApproveType = Const.WorkOrder_ReCompile;
reApprove.Edition = edtion + 1;
WorkOrderApproveService.AddWorkOrderApprove(reApprove);
}
}
WorkOrderService.UpdateWorkOrder(workOrder);
}
LogService.AddSys_Log(CurrUser, workOrder.WorkOrderCode, WorkOrderId, Const.WorkOrderMenuId, "修改工程签证工作委托单");
}
}
#endregion
#region
/// <summary>
/// 保存方案审查
/// </summary>
/// <param name="saveType">保存类型</param>
private void SaveWorkOrder(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.CQMS_WorkOrder workOrder = new Model.CQMS_WorkOrder();
workOrder.WorkOrderCode = txtWorkOrderCode.Text.Trim();
workOrder.SecretLevelId = this.drpSecretLevel.SelectedValue;
workOrder.ProjectId = CurrUser.LoginProjectId;
workOrder.UnitId = this.drpUnit.SelectedValue;
workOrder.ContractNo = this.txtContractNo.Text.Trim();
workOrder.TaskTheme = this.txtTaskTheme.Text.Trim();
workOrder.ContentDescription = this.txtContentDescription.Text.Trim();
workOrder.ImplementationRequirements = this.txtImplementationRequirements.Text.Trim();
int edtion = Convert.ToInt32(txtEdition.Text);
workOrder.Edition = edtion;
if (!string.IsNullOrEmpty(txtCompileDate.Text.Trim()))
{
workOrder.CompileDate = Convert.ToDateTime(txtCompileDate.Text.Trim());
}
if (saveType == "submit")
{
workOrder.State = Const.WorkOrder_Audit1;
}
else
{
workOrder.State = Const.WorkOrder_Compile;
}
if (!string.IsNullOrEmpty(HFWorkOrderId.Text))
{
workOrder.WorkOrderId = HFWorkOrderId.Text;
}
else
{
workOrder.WorkOrderId = SQLHelper.GetNewID(typeof(Model.CQMS_WorkOrder));
}
workOrder.CompileMan = CurrUser.UserId;
workOrder.Edition = Convert.ToInt32(txtEdition.Text);
//if (!string.IsNullOrEmpty(HFWorkOrderId.Text))
//{
// WorkOrderService.UpdateWorkOrder(workOrder);
//}
//else
//{
WorkOrderService.AddWorkOrder(workOrder);
//}
if (saveType == "submit")
{
Model.CQMS_WorkOrderApprove approve1 = new Model.CQMS_WorkOrderApprove();
approve1.WorkOrderId = workOrder.WorkOrderId;
approve1.ApproveDate = DateTime.Now;
approve1.ApproveMan = this.CurrUser.UserId;
approve1.ApproveType = Const.WorkOrder_Compile;
approve1.Edition = Convert.ToInt32(txtEdition.Text);
WorkOrderApproveService.AddWorkOrderApprove(approve1);
Model.CQMS_WorkOrderApprove approve2 = new Model.CQMS_WorkOrderApprove();
approve2.WorkOrderId = workOrder.WorkOrderId;
approve2.ApproveMan = this.drpHandleMan.SelectedValue;
approve2.ApproveType = Const.WorkOrder_Audit1;
approve2.Edition = Convert.ToInt32(txtEdition.Text);
WorkOrderApproveService.AddWorkOrderApprove(approve2);
}
else
{
Model.CQMS_WorkOrderApprove approve1 = new Model.CQMS_WorkOrderApprove();
approve1.WorkOrderId = workOrder.WorkOrderId;
approve1.ApproveMan = this.CurrUser.UserId;
approve1.ApproveType = Const.WorkOrder_Compile;
approve1.Edition = Convert.ToInt32(txtEdition.Text);
WorkOrderApproveService.AddWorkOrderApprove(approve1);
}
LogService.AddSys_Log(CurrUser, workOrder.WorkOrderCode, WorkOrderId, Const.WorkOrderMenuId, "添加工程签证工作委托单");
//}
//提交
//if (saveType == "submit")
//{
// countersign(workOrder.WorkOrderId);
//}
//LogService.AddSys_Log(CurrUser, workOrder.WorkOrderCode, WorkOrderId, Const.WorkOrderMenuId, "编制工程签证工作委托单");
}
#endregion
protected void imgBtnFile_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(HFWorkOrderId.Text)) //新增记录
{
HFWorkOrderId.Text = SQLHelper.GetNewID(typeof(Model.CQMS_WorkOrder));
}
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/WorkOrder&menuId={2}",
ContactImg, HFWorkOrderId.Text, Const.WorkOrderMenuId)));
}
protected void btnapprove_Click(object sender, EventArgs e)
{
//HFWorkOrderId.Text
var approve = WorkOrderApproveService.GetWorkOrderApproveByApproveMan(HFWorkOrderId.Text, CurrUser.UserId);
if (approve != null)
{
var approveId = approve.WorkOrderApproveId;
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(
String.Format("../../AttachFile/webuploader.aspx?type={0}&toKeyId={1}&path=FileUpload/WorkOrder&menuId={2}",
0, approveId, Const.WorkOrderMenuId)));
}
}
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/WorkOrder&menuId={2}",
-1, fileId, Const.WorkOrderMenuId)));
}
protected void drpHandleType_SelectedIndexChanged(object sender, EventArgs e)
{
if (this.drpHandleType.SelectedValue == BLL.Const.WorkOrder_Complete) //审批完成
{
this.drpHandleMan.Enabled = false;
this.drpHandleMan.Required = false;
this.drpHandleMan.Items.Clear();
}
else
{
this.drpHandleMan.Enabled = true;
this.drpHandleMan.Required = true;
UserService.InitUserProjectIdUnitTypeDropDownList(drpHandleMan, CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_1, false);
}
}
protected void rblIsAgree_SelectedIndexChanged(object sender, EventArgs e)
{
if (this.rblIsAgree.SelectedValue == "false")
{
this.drpHandleType.SelectedValue = BLL.Const.WorkOrder_ReCompile;
this.drpHandleMan.Enabled = true;
this.drpHandleMan.Required = true;
Model.CQMS_WorkOrderApprove approve = BLL.WorkOrderApproveService.GetCompile(this.WorkOrderId);
if (approve != null)
{
List<Model.Sys_User> list = new List<Model.Sys_User>();
Model.Sys_User compileMan = BLL.UserService.GetUserByUserId(approve.ApproveMan);
list.Add(compileMan);
drpHandleMan.DataValueField = "UserId";
drpHandleMan.DataTextField = "UserName";
this.drpHandleMan.DataSource = list;
this.drpHandleMan.DataBind();
}
}
else
{
this.drpHandleType.SelectedValue = BLL.Const.WorkOrder_Complete;
this.drpHandleMan.Enabled = false;
this.drpHandleMan.Required = false;
this.drpHandleMan.Items.Clear();
}
}
}
}