156 lines
6.0 KiB
C#
156 lines
6.0 KiB
C#
using BLL;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Linq;
|
|
|
|
|
|
namespace FineUIPro.Web.Transfer
|
|
{
|
|
public partial class InstrumentationEdit : 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)
|
|
{
|
|
Id = Request.Params["Id"];
|
|
ProjectId = this.CurrUser.LoginProjectId;
|
|
if (!string.IsNullOrEmpty(Id))
|
|
{
|
|
var model = Funs.DB.Transfer_Instrumentation.FirstOrDefault(x => x.Id == Id);
|
|
if (model != null)
|
|
{
|
|
txtSN.Text = model.SN.ToString();
|
|
txtINSTRUMENTATION.Text = model.INSTRUMENTATION;
|
|
txtSystemName.Text = model.SystemName;
|
|
txtSubsystem.Text = model.Subsystem;
|
|
txtTest_Package.Text = model.Test_Package;
|
|
ddlInstallationCalibration.SelectedValue = model.InstallationCalibration;
|
|
//ddlPipingPressuretest.SelectedValue = model.PipingPressuretest;
|
|
//ddlPipingLeak.SelectedValue = model.PipingLeak;
|
|
ddlPipingBlowing.SelectedValue = model.PipingBlowing;
|
|
ddlLooptest.SelectedValue = model.Looptest;
|
|
//ddlCalibration.SelectedValue = model.Calibration;
|
|
txtDescriptions.Text = model.Descriptions;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
var model = Funs.DB.Transfer_Instrumentation.OrderByDescending(x => x.SN).FirstOrDefault(x => x.ProjectId == CurrUser.LoginProjectId);
|
|
if (model == null)
|
|
txtSN.Text = "1001";
|
|
else
|
|
txtSN.Text = (model.SN + 1).ToString();
|
|
}
|
|
}
|
|
}
|
|
|
|
protected void btnSave_Click(object sender, EventArgs e)
|
|
{
|
|
var model = new Model.Transfer_Instrumentation
|
|
{
|
|
SN = Convert.ToInt32(txtSN.Text),
|
|
ProjectId = ProjectId,
|
|
INSTRUMENTATION = txtINSTRUMENTATION.Text,
|
|
SystemName = txtSystemName.Text,
|
|
Subsystem = txtSubsystem.Text,
|
|
Test_Package = txtTest_Package.Text,
|
|
InstallationCalibration = ddlInstallationCalibration.SelectedValue,
|
|
//PipingPressuretest = ddlPipingPressuretest.SelectedValue,
|
|
//PipingLeak = ddlPipingLeak.SelectedValue,
|
|
PipingBlowing = ddlPipingBlowing.SelectedValue,
|
|
Looptest = ddlLooptest.SelectedValue,
|
|
//Calibration= ddlCalibration.SelectedValue,
|
|
Descriptions = txtDescriptions.Text
|
|
|
|
};
|
|
|
|
#region 判断状态
|
|
var listObj = new List<string>();
|
|
listObj.Add(model.InstallationCalibration);
|
|
//listObj.Add(model.PipingPressuretest);
|
|
//listObj.Add(model.PipingLeak);
|
|
listObj.Add(model.PipingBlowing);
|
|
listObj.Add(model.Looptest);
|
|
//listObj.Add(model.Calibration);
|
|
|
|
//全是NA或Completed 状态是Completed
|
|
if (listObj.Where(x => x == "NA" || x == "Completed").ToList().Count == 3)
|
|
{
|
|
model.FINAL_Status = "Completed";
|
|
}
|
|
//如果全是NA或Not Start 就是 Not Start
|
|
else if (listObj.Where(x => x == "NA" || x == "Not Start").ToList().Count == 3)
|
|
{
|
|
model.FINAL_Status = "Not Start";
|
|
}
|
|
|
|
//如果其中有一项是In progress 或Not Start 是 In progress
|
|
else if (listObj.Where(x => x == "In progress" || x == "Not Start").ToList().Count >= 1)
|
|
{
|
|
model.FINAL_Status = "In progress";
|
|
}
|
|
|
|
#endregion
|
|
if (!string.IsNullOrEmpty(Id))
|
|
{
|
|
var newModel = Funs.DB.Transfer_Instrumentation.FirstOrDefault(x => x.Id == Id);
|
|
if (newModel != null)
|
|
{
|
|
newModel.SN = model.SN;
|
|
newModel.INSTRUMENTATION = txtINSTRUMENTATION.Text;
|
|
newModel.SystemName = txtSystemName.Text;
|
|
newModel.Subsystem = txtSubsystem.Text;
|
|
newModel.Test_Package = txtTest_Package.Text;
|
|
newModel.InstallationCalibration = ddlInstallationCalibration.SelectedValue;
|
|
//newModel.PipingPressuretest = ddlPipingPressuretest.SelectedValue;
|
|
//newModel.PipingLeak = ddlPipingLeak.SelectedValue;
|
|
newModel.PipingBlowing = ddlPipingBlowing.SelectedValue;
|
|
newModel.Looptest = ddlLooptest.SelectedValue;
|
|
//newModel.Calibration = ddlCalibration.SelectedValue;
|
|
newModel.FINAL_Status = model.FINAL_Status;
|
|
newModel.Descriptions = txtDescriptions.Text;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
model.Id = Id = Guid.NewGuid().ToString();
|
|
Funs.DB.Transfer_Instrumentation.InsertOnSubmit(model);
|
|
}
|
|
Funs.DB.SubmitChanges();
|
|
ShowNotify("保存成功", MessageBoxIcon.Success);
|
|
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
|
|
}
|
|
}
|
|
} |