CNCEC_SUBQHSE_WUHUAN/SGGL/FineUIPro.Web/Transfer/PunchlistFromEdit.aspx.cs

272 lines
13 KiB
C#

using BLL;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Xml;
using static System.Windows.Forms.VisualStyles.VisualStyleElement;
namespace FineUIPro.Web.Transfer
{
public partial class PunchlistFromEdit : PageBase
{
#region
/// <summary>
/// 主键
/// </summary>
private string Id
{
get
{
return (string)ViewState["Id"];
}
set
{
ViewState["Id"] = value;
}
}
/// <summary>
/// 项目主键
/// </summary>
public string ProjectId
{
get
{
return (string)ViewState["ProjectId"];
}
set
{
ViewState["ProjectId"] = value;
}
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.Id = Request.Params["Id"];
this.ProjectId = this.CurrUser.LoginProjectId;
ProhibitedFields();
var TransferPunchlistFrom = Funs.DB.Transfer_PunchlistFrom.FirstOrDefault(p => p.Id == this.Id);
if (TransferPunchlistFrom != null)
{
this.txtNum_NO.Text = TransferPunchlistFrom.Num_NO;
this.txtSystem_No.Text = TransferPunchlistFrom.System_No;
this.txtSub_Sys_No.Text = TransferPunchlistFrom.Sub_Sys_No;
this.txtDESCRIPTION.Text = TransferPunchlistFrom.DESCRIPTION;
this.ddlCat.SelectedValue = TransferPunchlistFrom.Cat;
this.txtRaised_By.Text = TransferPunchlistFrom.Raised_By;
if (TransferPunchlistFrom.Date_Raised != null)
this.txtDate_Raised.Text = Convert.ToDateTime(TransferPunchlistFrom.Date_Raised).ToString("yyyy-MM-dd");
this.txtDisc.Text = TransferPunchlistFrom.Disc;
if (TransferPunchlistFrom.IsEng == true)
this.ddlIsEng.SelectedValue = "Y";
else
this.ddlIsEng.SelectedValue = "N";
this.ddlIsMatI.SelectedValue = TransferPunchlistFrom.IsMatI ?? "";
this.txtPunch_Type.SelectedValue = TransferPunchlistFrom.Punch_Type ?? "";
if (TransferPunchlistFrom.Required_Date != null)
this.txtRequired_Date.Text = Convert.ToDateTime(TransferPunchlistFrom.Required_Date).ToString("yyyy-MM-dd");
this.txtAction_By.Text = TransferPunchlistFrom.Action_By;
this.txtPIC.Text = TransferPunchlistFrom.PIC;
this.txtPIC_WUH.Text = TransferPunchlistFrom.PIC_WUH;
this.txtCorrection_Action.Text = TransferPunchlistFrom.Correction_Action;
if (TransferPunchlistFrom.Actual_Date != null)
this.txtActual_Date.Text = Convert.ToDateTime(TransferPunchlistFrom.Actual_Date).ToString("yyyy-MM-dd");
this.txtCleared_By.Text = TransferPunchlistFrom.Cleared_By;
if (TransferPunchlistFrom.Cleared_Date != null)
this.txtCleared_Date.Text = Convert.ToDateTime(TransferPunchlistFrom.Cleared_Date).ToString("yyyy-MM-dd");
this.txtConfirmed_By.Text = TransferPunchlistFrom.Confirmed_By;
if (TransferPunchlistFrom.Confirmed_Date != null)
this.txtConfirmed_Date.Text = Convert.ToDateTime(TransferPunchlistFrom.Confirmed_Date).ToString("yyyy-MM-dd");
this.txtVerified_By.Text = TransferPunchlistFrom.Verified_By;
if (TransferPunchlistFrom.Verified_Date != null)
this.txtVerified_Date.Text = Convert.ToDateTime(TransferPunchlistFrom.Verified_Date).ToString("yyyy-MM-dd");
this.txtRemark.Text = TransferPunchlistFrom.Remark;
}
else
{
var maxNumNO = 0;
var modelTp = Funs.DB.Transfer_PunchlistFrom.OrderByDescending(x => x.Num_NO).FirstOrDefault(x => x.ProjectId == CurrUser.LoginProjectId);
if (modelTp == null)
maxNumNO = 1;
else
maxNumNO = Convert.ToInt32(modelTp.Num_NO) + 1;
this.txtNum_NO.Text = maxNumNO.ToString("0000");
}
}
}
/// <summary>
/// 禁止编辑字段事件触发时。
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ProhibitedFields()
{
var query = (from projectUser in Funs.DB.Project_ProjectUser
join projectUnit in Funs.DB.Project_ProjectUnit on new { projectUser.UnitId, projectUser.ProjectId }
equals new { projectUnit.UnitId, projectUnit.ProjectId } into projectUnitJoin
from projectUnit in projectUnitJoin.DefaultIfEmpty()
join sysConst in Funs.DB.Sys_Const on new
{ GroupId = "ProjectUnitType", ConstValue = projectUnit.UnitType } equals new
{ sysConst.GroupId, sysConst.ConstValue } into sysConstJoin
from sysConst in sysConstJoin.DefaultIfEmpty()
where projectUser.UserId == this.CurrUser.UserId
select sysConst.ConstValue)
.Distinct().FirstOrDefault();
if (query != null && query == "2")
{
this.txtConfirmed_By.Readonly = true;
this.txtConfirmed_Date.Readonly = true;
this.txtVerified_By.Readonly = true;
this.txtVerified_Date.Readonly = true;
}
}
/// <summary>
/// Photoes附件上传
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAttachA_Click(object sender, EventArgs e)
{
AttachFileClick("A");
}
/// <summary>
/// Corrected Photos附件上传
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAttachB_Click(object sender, EventArgs e)
{
AttachFileClick("B");
}
/// <summary>
/// 通过不同的type来保存附件
/// </summary>
/// <param name="type"></param>
private void AttachFileClick(string type)
{
SaveData();
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../AttachFile/webuploader.aspx?type=0&toKeyId={0}_{1}&path=FileUpload/Transfer/PunchlistFrom&menuId={2}", this.Id, type, BLL.Const.PunchlistFromMenuId)));
}
/// <summary>
/// 保存
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
if (SaveData() == 0)
{
return;
}
ShowNotify("保存成功", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
/// <summary>
/// 保存数据
/// </summary>
/// <returns></returns>
private int SaveData()
{
int reutState = 0;
Model.Transfer_PunchlistFrom newTransferFrom = new Model.Transfer_PunchlistFrom()
{
Id = Guid.NewGuid().ToString(),
Num_NO = this.txtNum_NO.Text.Trim(),
ProjectId = this.ProjectId,
System_No = this.txtSystem_No.Text.Trim(),
Sub_Sys_No = this.txtSub_Sys_No.Text.Trim(),
DESCRIPTION = this.txtDESCRIPTION.Text.Trim(),
Cat = this.ddlCat.SelectedValue,
Raised_By = this.txtRaised_By.Text.Trim(),
Date_Raised = Funs.GetNewDateTime(this.txtDate_Raised.Text),
Disc = this.txtDisc.Text.Trim(),
IsEng = this.ddlIsEng.SelectedValue == "Y" ? true : false,
IsMatI = this.ddlIsMatI.SelectedValue,
Punch_Type = this.txtPunch_Type.SelectedValue,
Required_Date = Funs.GetNewDateTime(this.txtRequired_Date.Text),
Action_By = this.txtAction_By.Text.Trim(),
PIC = this.txtPIC.Text.Trim(),
PIC_WUH = this.txtPIC_WUH.Text.Trim(),
Correction_Action = this.txtCorrection_Action.Text.Trim(),
Actual_Date = Funs.GetNewDateTime(this.txtActual_Date.Text),
Cleared_By = this.txtCleared_By.Text.Trim(),
Cleared_Date = Funs.GetNewDateTime(this.txtCleared_Date.Text),
Confirmed_By = this.txtConfirmed_By.Text.Trim(),
Confirmed_Date = Funs.GetNewDateTime(this.txtConfirmed_Date.Text),
Verified_By = this.txtVerified_By.Text.Trim(),
Verified_Date = Funs.GetNewDateTime(this.txtVerified_Date.Text),
Remark = this.txtRemark.Text.Trim()
};
if (newTransferFrom.Cleared_Date == null && newTransferFrom.Confirmed_Date == null && newTransferFrom.Verified_Date == null)
newTransferFrom.Status = "Not Start";
else if (newTransferFrom.Cleared_Date != null && newTransferFrom.Confirmed_Date != null && newTransferFrom.Verified_Date != null)
newTransferFrom.Status = "Completed";
else
newTransferFrom.Status = "In Progress";
var TransferPunchlistFrom = Funs.DB.Transfer_PunchlistFrom.FirstOrDefault(p => p.Id == this.Id);
if (TransferPunchlistFrom == null)
{
if (Funs.DB.Transfer_PunchlistFrom.Where(p => p.ProjectId == this.ProjectId && p.Num_NO == newTransferFrom.Num_NO).Count() > 0)
{
ShowNotify("录入的NO.重复了,不能保存", MessageBoxIcon.Warning);
return reutState;
}
Funs.DB.Transfer_PunchlistFrom.InsertOnSubmit(newTransferFrom);
this.Id = newTransferFrom.Id;
}
else
{
if (Funs.DB.Transfer_PunchlistFrom.Where(p => p.ProjectId == this.ProjectId && p.Num_NO == newTransferFrom.Num_NO && p.Id != TransferPunchlistFrom.Id).Count() > 0)
{
ShowNotify("录入的NO.重复了,不能保存", MessageBoxIcon.Warning);
return reutState;
}
TransferPunchlistFrom.Num_NO = newTransferFrom.Num_NO;
TransferPunchlistFrom.System_No = newTransferFrom.System_No;
TransferPunchlistFrom.Sub_Sys_No = newTransferFrom.Sub_Sys_No;
TransferPunchlistFrom.DESCRIPTION = newTransferFrom.DESCRIPTION;
TransferPunchlistFrom.Cat = newTransferFrom.Cat;
TransferPunchlistFrom.Raised_By = newTransferFrom.Raised_By;
TransferPunchlistFrom.Date_Raised = newTransferFrom.Date_Raised;
TransferPunchlistFrom.Disc = newTransferFrom.Disc;
TransferPunchlistFrom.IsEng = newTransferFrom.IsEng;
TransferPunchlistFrom.IsMatI = newTransferFrom.IsMatI;
TransferPunchlistFrom.Punch_Type = newTransferFrom.Punch_Type;
TransferPunchlistFrom.Required_Date = newTransferFrom.Required_Date;
TransferPunchlistFrom.Action_By = newTransferFrom.Action_By;
TransferPunchlistFrom.PIC = newTransferFrom.PIC;
TransferPunchlistFrom.PIC_WUH = newTransferFrom.PIC_WUH;
TransferPunchlistFrom.Correction_Action = newTransferFrom.Correction_Action;
TransferPunchlistFrom.Actual_Date = newTransferFrom.Actual_Date;
TransferPunchlistFrom.Cleared_By = newTransferFrom.Cleared_By;
TransferPunchlistFrom.Cleared_Date = newTransferFrom.Cleared_Date;
TransferPunchlistFrom.Confirmed_By = newTransferFrom.Confirmed_By;
TransferPunchlistFrom.Confirmed_Date = newTransferFrom.Confirmed_Date;
TransferPunchlistFrom.Verified_By = newTransferFrom.Verified_By;
TransferPunchlistFrom.Verified_Date = newTransferFrom.Verified_Date;
TransferPunchlistFrom.Remark = newTransferFrom.Remark;
TransferPunchlistFrom.Status = newTransferFrom.Status;
}
Funs.DB.SubmitChanges();
reutState = 1;
return reutState;
}
}
}