SGGL_JT/SUBQHSE/FineUIPro.Web/CQMS/Comprehensive/DesignChangeOrderEdit.aspx.cs

289 lines
12 KiB
C#

using BLL;
using BLL.CQMS.Comprehensive;
using System;
using System.Linq;
namespace FineUIPro.Web.CQMS.Comprehensive
{
public partial class DesignChangeOrderEdit : PageBase
{
#region
/// <summary>
/// 主键
/// </summary>
public string DesignChangeOrderId
{
get
{
return (string)ViewState["DesignChangeOrderId"];
}
set
{
ViewState["DesignChangeOrderId"] = value;
}
}
#endregion
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GetButtonPower();
BLL.CNProfessionalService.InitCNProfessionalDownList(this.drpCNProfessionalId, true);
BLL.UnitWorkService.InitUnitWorkDownList(this.drpUnitWorks, this.CurrUser.LoginProjectId, false);
BLL.UnitService.InitProjectUnitDropDownList(this.drpUnitIds, this.CurrUser.LoginProjectId, false);
this.btnSave.Hidden = true;
this.DesignChangeOrderId = Request.Params["DesignChangeOrderId"];
Model.Comprehensive_DesignChangeOrder designChangeOrder = BLL.DesignChangeOrderService.GetDesignChangeOrderById(this.DesignChangeOrderId);
if (designChangeOrder != null)
{
this.DesignChangeOrderId = designChangeOrder.DesignChangeOrderId;
this.hdAttachUrl.Text = this.DesignChangeOrderId;
if (!string.IsNullOrEmpty(designChangeOrder.CNProfessionalId))
{
this.drpCNProfessionalId.SelectedValue = designChangeOrder.CNProfessionalId;
}
if (!string.IsNullOrEmpty(designChangeOrder.UnitWorkId))
{
this.drpUnitWorks.SelectedValueArray = designChangeOrder.UnitWorkId.Split(',');
}
this.txtChangeOrderCode.Text = designChangeOrder.ChangeOrderCode;
this.txtChangeReason.Text = designChangeOrder.ChangeReason;
this.txtContents.Text = designChangeOrder.Contents;
if (designChangeOrder.IssuedDate != null)
{
this.txtIssuedDate.Text = string.Format("{0:yyyy-MM-dd}", designChangeOrder.IssuedDate);
}
if (designChangeOrder.ApprovalDate != null)
{
this.txtApprovalDate.Text = string.Format("{0:yyyy-MM-dd}", designChangeOrder.ApprovalDate);
}
if (!string.IsNullOrEmpty(designChangeOrder.UnitId))
{
this.drpUnitIds.SelectedValueArray = designChangeOrder.UnitId.Split(',');
}
if (designChangeOrder.CompleteDate != null)
{
this.txtCompleteDate.Text = string.Format("{0:yyyy-MM-dd}", designChangeOrder.CompleteDate);
}
this.txtImplementationFrontState.Text = designChangeOrder.ImplementationFrontState;
var currApprove = DesignChangeOrderApproveService.GetCurrentApprove(designChangeOrder.DesignChangeOrderId);
if (currApprove != null)
{ //重新编制 编制人 可以 显示 提交 保存按钮
if (currApprove.ApproveType == BLL.Const.Comprehensive_ReCompile && designChangeOrder.CompileMan == CurrUser.UserId)
{
this.btnSave.Hidden = false;
}//审核状态 审核人 可以显示 提交 保存按钮
else if (currApprove.ApproveType == BLL.Const.Comprehensive_Audit && currApprove.ApproveMan == CurrUser.UserId)
{
//审核状态不可编辑
Readonly();
this.btnSave.Hidden = false;
}
}//没有当前审核人,已完成状态 或者 待提交状态
else
{
if (designChangeOrder.Status == BLL.Const.Comprehensive_Compile && designChangeOrder.CompileMan == CurrUser.UserId)
{
this.btnSave.Hidden = false;
}
}
}
else
{
this.txtIssuedDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
this.txtApprovalDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
this.txtCompleteDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
this.btnSave.Hidden = false;
}
}
}
/// <summary>
/// 禁止编辑
/// </summary>
public void Readonly()
{
this.txtApprovalDate.Readonly = true;
txtChangeOrderCode.Readonly = true;
txtChangeReason.Readonly = true;
txtCompleteDate.Readonly = true;
txtContents.Readonly = true;
txtImplementationFrontState.Readonly = true;
txtIssuedDate.Readonly = true;
drpCNProfessionalId.Readonly = true;
drpUnitIds.Readonly = true;
drpUnitWorks.Readonly = true;
// this.btnAttach.Enabled = false;
}
#endregion
#region
/// <summary>
/// 保存按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
if (drpCNProfessionalId.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择专业!", MessageBoxIcon.Warning);
return;
}
Model.Comprehensive_DesignChangeOrder designChangeOrder = new Model.Comprehensive_DesignChangeOrder();
designChangeOrder.ProjectId = this.CurrUser.LoginProjectId;
if (this.drpCNProfessionalId.SelectedValue != BLL.Const._Null)
{
designChangeOrder.CNProfessionalId = this.drpCNProfessionalId.SelectedValue;
}
designChangeOrder.ChangeOrderCode = this.txtChangeOrderCode.Text.Trim();
designChangeOrder.ChangeReason = this.txtChangeReason.Text.Trim();
designChangeOrder.Contents = this.txtContents.Text.Trim();
designChangeOrder.IssuedDate = Funs.GetNewDateTime(this.txtIssuedDate.Text);
designChangeOrder.ApprovalDate = Funs.GetNewDateTime(this.txtApprovalDate.Text);
designChangeOrder.CompleteDate = Funs.GetNewDateTime(this.txtCompleteDate.Text);
designChangeOrder.ImplementationFrontState = this.txtImplementationFrontState.Text.Trim();
string unitWorks = string.Empty;
var unitWorksList = this.drpUnitWorks.SelectedValueArray;
foreach (var item in unitWorksList)
{
unitWorks += item + ",";
}
if (!string.IsNullOrEmpty(unitWorks))
{
unitWorks = unitWorks.Substring(0, unitWorks.LastIndexOf(','));
}
designChangeOrder.UnitWorkId = unitWorks;
string unitIds = string.Empty;
var unitLists = this.drpUnitIds.SelectedValueArray;
foreach (var item in unitLists)
{
unitIds += item + ",";
}
if (!string.IsNullOrEmpty(unitIds))
{
unitIds = unitIds.Substring(0, unitIds.LastIndexOf(','));
}
designChangeOrder.UnitId = unitIds;
if (string.IsNullOrEmpty(this.DesignChangeOrderId))
{
if (!string.IsNullOrEmpty(this.hdAttachUrl.Text))
{
designChangeOrder.DesignChangeOrderId = this.hdAttachUrl.Text;
}
else
{
designChangeOrder.DesignChangeOrderId = SQLHelper.GetNewID(typeof(Model.Comprehensive_DesignChangeOrder));
this.hdAttachUrl.Text = designChangeOrder.DesignChangeOrderId;
}
var sour = Funs.DB.AttachFile.FirstOrDefault(x => x.ToKeyId == designChangeOrder.DesignChangeOrderId);
if (sour == null || string.IsNullOrEmpty(sour.AttachUrl))
{
Alert.ShowInTop("请上传附件!", MessageBoxIcon.Warning);
return;
}
designChangeOrder.CompileMan = this.CurrUser.UserId;
designChangeOrder.CompileDate = DateTime.Now;
designChangeOrder.Status = BLL.Const.Comprehensive_Compile;
BLL.DesignChangeOrderService.AddDesignChangeOrder(designChangeOrder);
}
else
{
designChangeOrder.DesignChangeOrderId = this.DesignChangeOrderId;
var sour = Funs.DB.AttachFile.FirstOrDefault(x => x.ToKeyId == designChangeOrder.DesignChangeOrderId);
if (sour == null || string.IsNullOrEmpty(sour.AttachUrl))
{
Alert.ShowInTop("请上传附件!", MessageBoxIcon.Warning);
return;
}
var model = Funs.DB.Comprehensive_DesignChangeOrder.Where(u => u.DesignChangeOrderId == this.DesignChangeOrderId).FirstOrDefault();
if (model != null)
{
designChangeOrder.Status = model.Status;
}
BLL.DesignChangeOrderService.UpdateDesignChangeOrder(designChangeOrder);
}
ShowNotify("保存成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
#endregion
#region
/// <summary>
/// 附件上传
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAttach_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(this.hdAttachUrl.Text)) //新增记录
{
this.hdAttachUrl.Text = SQLHelper.GetNewID(typeof(Model.Comprehensive_DesignChangeOrder));
}
Model.Comprehensive_DesignChangeOrder designChangeOrder = BLL.DesignChangeOrderService.GetDesignChangeOrderById(this.DesignChangeOrderId);
if (designChangeOrder == null || ((designChangeOrder.CompileMan == CurrUser.UserId && designChangeOrder.Status == BLL.Const.Comprehensive_Compile) || (designChangeOrder.CompileMan == CurrUser.UserId && designChangeOrder.Status == BLL.Const.Comprehensive_ReCompile)))
{
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/DesignChangeOrder&menuId={1}", this.hdAttachUrl.Text, BLL.Const.DesignChangeOrderMenuId)));
}
else
{
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=-1&toKeyId={0}&path=FileUpload/CQMS/DesignChangeOrder&menuId={1}", this.hdAttachUrl.Text, BLL.Const.DesignChangeOrderMenuId)));
}
}
#endregion
#region
/// <summary>
/// 获取按钮权限
/// </summary>
/// <param name="button"></param>
/// <returns></returns>
private void GetButtonPower()
{
if (Request.Params["value"] == BLL.Const._Null)
{
return;
}
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.DesignChangeOrderMenuId);
if (buttonList.Count > 0)
{
if (buttonList.Contains(BLL.Const.BtnSave))
{
this.btnSave.Hidden = false;
}
}
}
#endregion
}
}