修改进度报表及试车管理

This commit is contained in:
2023-06-19 10:20:55 +08:00
parent 78baadfb7f
commit 966843abbe
39 changed files with 3685 additions and 4335 deletions
@@ -36,7 +36,7 @@ namespace FineUIPro.Web.DataShow
/// </summary>
private void BindGrid()
{
string strSql = @"SELECT Project.ProjectId,Project.ProjectName,Defects_Definition,COUNT(Item.CHT_CheckItemID) AS Counts
string strSql = @"SELECT Project.ProjectId,Project.ProjectName,Project.ProjectCode,Defects_Definition,COUNT(Item.CHT_CheckItemID) AS Counts
FROM CH_CheckItem AS Item
LEFT JOIN CH_Check AS Checks ON Item.CHT_CheckID =Checks.CHT_CheckID
LEFT JOIN Base_Project AS Project ON Checks.ProjectId =Project.ProjectId
@@ -59,7 +59,7 @@ namespace FineUIPro.Web.DataShow
// strSql += " AND h.RegisterDate <=@EndTime";
// listStr.Add(new SqlParameter("@EndTime", this.txtEndTime.Text));
//}
strSql += " GROUP BY Project.ProjectId,Project.ProjectName,Defects_Definition";
strSql += " GROUP BY Project.ProjectId,Project.ProjectName,Project.ProjectCode,Defects_Definition";
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.RecordCount = tb.Rows.Count;
+1 -1
View File
@@ -37,7 +37,7 @@ namespace FineUIPro.Web.DataShow
string strSql = string.Empty;
List<SqlParameter> listStr = new List<SqlParameter>();
strSql = @"SELECT V.LicenseManagerId,V.ProjectId,V.ProjectCode,V.ProjectName,V.LicenseTypeName,V.UnitName,V.UnitTypeName
strSql = @"SELECT V.LicenseManagerId,V.ProjectId,V.ProjectCode,V.ProjectName,V.LicenseTypeName,V.UnitName,V.UnitTypeName,V.IsHighRisk
,V.WorkAreaName,V.CompileDate,V.StartDate,V.EndDate,V.WorkStatesStr,V.LicenseTypeId,V.UnitId,V.LicenseManageContents
,V.CompileMan,V.CompileDate,V.States,V.UserName
FROM View_License_LicenseManager AS V
File diff suppressed because it is too large Load Diff
+32
View File
@@ -1589,6 +1589,10 @@
<Content Include="SHIYE\InformationProject\SafetyBriefingEdit.aspx" />
<Content Include="TestRun\BeforeTestRun\BeforeTestRun.aspx" />
<Content Include="TestRun\BeforeTestRun\BeforeTestRunEdit.aspx" />
<Content Include="TestRun\BeforeTestRun\DeviceRun.aspx" />
<Content Include="TestRun\BeforeTestRun\DeviceRunEdit.aspx" />
<Content Include="TestRun\BeforeTestRun\SetWorkPackage.aspx" />
<Content Include="TestRun\BeforeTestRun\SubSysWorkPackage.aspx" />
<Content Include="TestRun\DriverGoods\GoodsBuy.aspx" />
<Content Include="TestRun\DriverGoods\GoodsBuyEdit.aspx" />
<Content Include="TestRun\DriverGoods\GoodsPlan.aspx" />
@@ -14768,6 +14772,34 @@
<Compile Include="TestRun\BeforeTestRun\BeforeTestRunEdit.aspx.designer.cs">
<DependentUpon>BeforeTestRunEdit.aspx</DependentUpon>
</Compile>
<Compile Include="TestRun\BeforeTestRun\DeviceRun.aspx.cs">
<DependentUpon>DeviceRun.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="TestRun\BeforeTestRun\DeviceRun.aspx.designer.cs">
<DependentUpon>DeviceRun.aspx</DependentUpon>
</Compile>
<Compile Include="TestRun\BeforeTestRun\DeviceRunEdit.aspx.cs">
<DependentUpon>DeviceRunEdit.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="TestRun\BeforeTestRun\DeviceRunEdit.aspx.designer.cs">
<DependentUpon>DeviceRunEdit.aspx</DependentUpon>
</Compile>
<Compile Include="TestRun\BeforeTestRun\SetWorkPackage.aspx.cs">
<DependentUpon>SetWorkPackage.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="TestRun\BeforeTestRun\SetWorkPackage.aspx.designer.cs">
<DependentUpon>SetWorkPackage.aspx</DependentUpon>
</Compile>
<Compile Include="TestRun\BeforeTestRun\SubSysWorkPackage.aspx.cs">
<DependentUpon>SubSysWorkPackage.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="TestRun\BeforeTestRun\SubSysWorkPackage.aspx.designer.cs">
<DependentUpon>SubSysWorkPackage.aspx</DependentUpon>
</Compile>
<Compile Include="TestRun\DriverGoods\GoodsBuy.aspx.cs">
<DependentUpon>GoodsBuy.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
@@ -246,14 +246,11 @@
AllowPaging="false" IsDatabasePaging="false" PageSize="10000"
AllowFilters="true" EnableTextSelection="True">
<Columns>
<f:TemplateField ColumnID="tfPageIndex" Width="55px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center"
EnableLock="true" Locked="False">
<ItemTemplate>
<asp:Label ID="lblPageIndex" runat="server" Text='<%# Grid5.PageIndex * Grid5.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="100px" ColumnID="Name" DataField="Name" FieldType="String"
HeaderText="设备材料分类" HeaderTextAlign="Center" TextAlign="Center">
<f:RenderField Width="60px" ColumnID="Id" DataField="Id" FieldType="String"
HeaderText="序号" HeaderTextAlign="Center" TextAlign="Left" EnableColumnEdit="true">
</f:RenderField>
<f:RenderField Width="270px" ColumnID="Name" DataField="Name" FieldType="String"
HeaderText="" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Unit" DataField="Unit" FieldType="String"
HeaderText="单位" HeaderTextAlign="Center" TextAlign="Center">
@@ -420,6 +420,7 @@ namespace FineUIPro.Web.JDGL.CostAnalysis
//按设备材料分类统计
DataTable table5 = new DataTable();
table5.Columns.Add(new DataColumn("Id", typeof(String)));
table5.Columns.Add(new DataColumn("SupId", typeof(String)));
table5.Columns.Add(new DataColumn("Name", typeof(String)));
table5.Columns.Add(new DataColumn("Unit", typeof(String)));
table5.Columns.Add(new DataColumn("TotalNum", typeof(String)));
@@ -428,61 +429,214 @@ namespace FineUIPro.Web.JDGL.CostAnalysis
table5.Columns.Add(new DataColumn("mRate", typeof(String)));
table5.Columns.Add(new DataColumn("tRate", typeof(String)));
DataRow row5;
var costControls = from x in db.WBS_CostControl where x.ProjectId == this.CurrUser.LoginProjectId select x;
var cnProfessionInits = from x in db.WBS_CnProfessionInit orderby x.SortIndex select x;
var costControls = from x in db.WBS_CostControl
join z in db.WBS_EquipmentMaterialType on x.EquipmentMaterialTypeId equals z.EquipmentMaterialTypeId
join t in db.Wbs_WbsSet on x.WbsSetId equals t.WbsSetId
where x.ProjectId == this.CurrUser.LoginProjectId
select new
{
x.Unit,
x.TotalNum,
z.EquipmentMaterialBigTypeId,
z.EquipmentMaterialTypeId,
t.InstallationId,
};
var costControlDetails = from x in db.WBS_CostControlDetail
join y in db.WBS_CostControl on x.CostControlId equals y.CostControlId
join z in db.WBS_EquipmentMaterialType on y.EquipmentMaterialTypeId equals z.EquipmentMaterialTypeId
join t in db.Wbs_WbsSet on y.WbsSetId equals t.WbsSetId
where x.Months <= Funs.GetNewDateTime(date) && y.ProjectId == this.CurrUser.LoginProjectId
orderby x.Months descending
select new
{
x.CostControlDetailId,
t.InstallationId,
y.EquipmentMaterialTypeId,
z.EquipmentMaterialBigTypeId,
z.EquipmentMaterialTypeName,
x.Months,
x.ThisNum,
};
var equipmentMaterialBigTypes = from x in db.WBS_EquipmentMaterialBigType orderby x.EquipmentMaterialBigTypeCode select x;
var equipmentMaterialTypes = from x in db.WBS_EquipmentMaterialType orderby x.EquipmentMaterialTypeCode select x;
if (equipmentMaterialTypes.Count() > 0)
int v = 1, w = 2, d = 1, f = 1;
foreach (var cn in cnProfessionInits)
{
foreach (var equipmentMaterialType in equipmentMaterialTypes)
row5 = table5.NewRow();
row5[0] = v.ToString();
row5[1] = "0";
row5[2] = cn.CnProfessionName;
table5.Rows.Add(row5);
row5 = table5.NewRow();
row5[0] = v.ToString() + ".1";
row5[1] = v.ToString();
row5[2] = "本专业汇总统计";
table5.Rows.Add(row5);
d = 1;
var bigTypes = equipmentMaterialBigTypes.Where(x => x.CnProfessionId == cn.CnProfessionId).OrderBy(x => x.EquipmentMaterialBigTypeCode);
foreach (var bigType in bigTypes)
{
row5 = table5.NewRow();
row5[0] = equipmentMaterialType.EquipmentMaterialTypeId;
row5[1] = equipmentMaterialType.EquipmentMaterialTypeName;
var list = costControls.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId);
row5[0] = v.ToString() + ".1." + d.ToString();
row5[1] = v.ToString() + ".1";
row5[2] = bigType.EquipmentMaterialBigTypeName;
var list = costControls.Where(x => x.EquipmentMaterialBigTypeId == bigType.EquipmentMaterialBigTypeId);
if (list.Count() > 0)
{
row5[2] = list.First().Unit;
}
row5[3] = list.ToList().Sum(x => x.TotalNum ?? 0);
var list2 = costControlDetails.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId && x.Months == Funs.GetNewDateTime(date));
row5[4] = list2.ToList().Sum(x => x.ThisNum ?? 0);
var list3 = costControlDetails.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId);
row5[5] = list3.ToList().Sum(x => x.ThisNum ?? 0);
if (row5[3].ToString() != "0" && row5[4].ToString() != "0")
{
row5[6] = (Funs.GetNewDecimalOrZero(row5[4].ToString()) / Funs.GetNewDecimalOrZero(row5[3].ToString()) * 100).ToString("0.##") + "%";
}
else
{
row5[6] = "/";
}
if (row5[3].ToString() != "0" && row5[5].ToString() != "0")
{
row5[7] = (Funs.GetNewDecimalOrZero(row5[5].ToString()) / Funs.GetNewDecimalOrZero(row5[3].ToString()) * 100).ToString("0.##") + "%";
}
else
{
row5[7] = "/";
row5[3] = list.First().Unit;
row5[4] = list.ToList().Sum(x => x.TotalNum ?? 0);
var list2 = costControlDetails.Where(x => x.EquipmentMaterialBigTypeId == bigType.EquipmentMaterialBigTypeId && x.Months == Funs.GetNewDateTime(date));
row5[5] = list2.ToList().Sum(x => x.ThisNum ?? 0);
var list3 = costControlDetails.Where(x => x.EquipmentMaterialBigTypeId == bigType.EquipmentMaterialBigTypeId);
row5[6] = list3.ToList().Sum(x => x.ThisNum ?? 0);
if (row5[4].ToString() != "0" && row5[5].ToString() != "0")
{
row5[7] = (Funs.GetNewDecimalOrZero(row5[5].ToString()) / Funs.GetNewDecimalOrZero(row5[4].ToString()) * 100).ToString("0.##") + "%";
}
else
{
row5[7] = "/";
}
if (row5[4].ToString() != "0" && row5[6].ToString() != "0")
{
row5[8] = (Funs.GetNewDecimalOrZero(row5[6].ToString()) / Funs.GetNewDecimalOrZero(row5[4].ToString()) * 100).ToString("0.##") + "%";
}
else
{
row5[8] = "/";
}
}
table5.Rows.Add(row5);
f = 1;
var types = equipmentMaterialTypes.Where(x => x.EquipmentMaterialBigTypeId == bigType.EquipmentMaterialBigTypeId).OrderBy(x => x.EquipmentMaterialTypeCode);
foreach (var equipmentMaterialType in types)
{
row5 = table5.NewRow();
row5[0] = v.ToString() + ".1." + d.ToString() + "." + f.ToString();
row5[1] = v.ToString() + ".1." + d.ToString();
row5[2] = equipmentMaterialType.EquipmentMaterialTypeName;
var lists = costControls.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId);
if (lists.Count() > 0)
{
row5[3] = lists.First().Unit;
row5[4] = lists.ToList().Sum(x => x.TotalNum ?? 0);
var list2s = costControlDetails.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId && x.Months == Funs.GetNewDateTime(date));
row5[5] = list2s.ToList().Sum(x => x.ThisNum ?? 0);
var list3s = costControlDetails.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId);
row5[6] = list3s.ToList().Sum(x => x.ThisNum ?? 0);
if (row5[4].ToString() != "0" && row5[5].ToString() != "0")
{
row5[7] = (Funs.GetNewDecimalOrZero(row5[5].ToString()) / Funs.GetNewDecimalOrZero(row5[4].ToString()) * 100).ToString("0.##") + "%";
}
else
{
row5[7] = "/";
}
if (row5[4].ToString() != "0" && row5[6].ToString() != "0")
{
row5[8] = (Funs.GetNewDecimalOrZero(row5[6].ToString()) / Funs.GetNewDecimalOrZero(row5[4].ToString()) * 100).ToString("0.##") + "%";
}
else
{
row5[8] = "/";
}
}
table5.Rows.Add(row5);
f++;
}
d++;
}
if (table5.Rows.Count > 0)
w = 2;
foreach (var ins in installations)
{
this.Grid5.DataSource = table5;
this.Grid5.DataBind();
row5 = table5.NewRow();
row5[0] = v.ToString() + "." + w.ToString();
row5[1] = v.ToString();
row5[2] = ins.InstallationName;
table5.Rows.Add(row5);
d = 1;
var bigTypes2 = equipmentMaterialBigTypes.Where(x => x.CnProfessionId == cn.CnProfessionId).OrderBy(x => x.EquipmentMaterialBigTypeCode);
foreach (var bigType in bigTypes2)
{
row5 = table5.NewRow();
row5[0] = v.ToString() + "." + w.ToString() + d.ToString();
row5[1] = v.ToString() + "." + w.ToString();
row5[2] = bigType.EquipmentMaterialBigTypeName;
var list = costControls.Where(x => x.EquipmentMaterialBigTypeId == bigType.EquipmentMaterialBigTypeId && x.InstallationId == ins.InstallationId);
if (list.Count() > 0)
{
row5[3] = list.First().Unit;
row5[4] = list.ToList().Sum(x => x.TotalNum ?? 0);
var list2 = costControlDetails.Where(x => x.EquipmentMaterialBigTypeId == bigType.EquipmentMaterialBigTypeId && x.InstallationId == ins.InstallationId && x.Months == Funs.GetNewDateTime(date));
row5[5] = list2.ToList().Sum(x => x.ThisNum ?? 0);
var list3 = costControlDetails.Where(x => x.EquipmentMaterialBigTypeId == bigType.EquipmentMaterialBigTypeId && x.InstallationId == ins.InstallationId);
row5[6] = list3.ToList().Sum(x => x.ThisNum ?? 0);
if (row5[4].ToString() != "0" && row5[5].ToString() != "0")
{
row5[7] = (Funs.GetNewDecimalOrZero(row5[5].ToString()) / Funs.GetNewDecimalOrZero(row5[4].ToString()) * 100).ToString("0.##") + "%";
}
else
{
row5[7] = "/";
}
if (row5[4].ToString() != "0" && row5[6].ToString() != "0")
{
row5[8] = (Funs.GetNewDecimalOrZero(row5[6].ToString()) / Funs.GetNewDecimalOrZero(row5[4].ToString()) * 100).ToString("0.##") + "%";
}
else
{
row5[8] = "/";
}
}
table5.Rows.Add(row5);
f = 1;
var types = equipmentMaterialTypes.Where(x => x.EquipmentMaterialBigTypeId == bigType.EquipmentMaterialBigTypeId).OrderBy(x => x.EquipmentMaterialTypeCode);
foreach (var equipmentMaterialType in types)
{
row5 = table5.NewRow();
row5[0] = v.ToString() + "." + w.ToString() + d.ToString() + "." + f.ToString();
row5[1] = v.ToString() + "." + w.ToString() + d.ToString();
row5[2] = equipmentMaterialType.EquipmentMaterialTypeName;
var lists = costControls.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId && x.InstallationId == ins.InstallationId);
if (lists.Count() > 0)
{
row5[3] = lists.First().Unit;
row5[4] = lists.ToList().Sum(x => x.TotalNum ?? 0);
var list2s = costControlDetails.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId && x.InstallationId == ins.InstallationId && x.Months == Funs.GetNewDateTime(date));
row5[5] = list2s.ToList().Sum(x => x.ThisNum ?? 0);
var list3s = costControlDetails.Where(x => x.EquipmentMaterialTypeId == equipmentMaterialType.EquipmentMaterialTypeId && x.InstallationId == ins.InstallationId);
row5[6] = list3s.ToList().Sum(x => x.ThisNum ?? 0);
if (row5[4].ToString() != "0" && row5[5].ToString() != "0")
{
row5[7] = (Funs.GetNewDecimalOrZero(row5[5].ToString()) / Funs.GetNewDecimalOrZero(row5[4].ToString()) * 100).ToString("0.##") + "%";
}
else
{
row5[7] = "/";
}
if (row5[4].ToString() != "0" && row5[6].ToString() != "0")
{
row5[8] = (Funs.GetNewDecimalOrZero(row5[6].ToString()) / Funs.GetNewDecimalOrZero(row5[4].ToString()) * 100).ToString("0.##") + "%";
}
else
{
row5[8] = "/";
}
}
table5.Rows.Add(row5);
f++;
}
d++;
}
w++;
}
v++;
}
if (table5.Rows.Count > 0)
{
this.Grid5.DataSource = table5;
this.Grid5.DataBind();
}
}
}
@@ -210,15 +210,6 @@ namespace FineUIPro.Web.JDGL.CostAnalysis {
/// </remarks>
protected global::FineUIPro.Grid Grid5;
/// <summary>
/// lblPageIndex 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblPageIndex;
/// <summary>
/// Window1 控件。
/// </summary>
@@ -57,6 +57,10 @@
SortField="EquipmentMaterialBigTypeName" FieldType="String" HeaderText="名称" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="CnProfessionName" DataField="CnProfessionName"
SortField="CnProfessionName" FieldType="String" HeaderText="专业" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="200px" ColumnID="Remark" DataField="Remark"
SortField="Remark" FieldType="String" HeaderText="备注" TextAlign="Center"
HeaderTextAlign="Center">
@@ -42,7 +42,7 @@ namespace FineUIPro.Web.JDGL.WBS
protected DataTable BindData()
{
string strSql = @"select EquipmentMaterialBigTypeId,EquipmentMaterialBigTypeCode,EquipmentMaterialBigTypeName,Remark from [dbo].[WBS_EquipmentMaterialBigType] where 1=1 ";
string strSql = @"select EquipmentMaterialBigTypeId,EquipmentMaterialBigTypeCode,EquipmentMaterialBigTypeName,Remark,CnProfessionName from [dbo].[WBS_EquipmentMaterialBigType] a left join WBS_CnProfessionInit b on a.CnProfessionId=b.CnProfessionId where 1=1 ";
List<SqlParameter> listStr = new List<SqlParameter>();
if (!string.IsNullOrEmpty(this.txtEquipmentMaterialBigTypeCode.Text.Trim()))
@@ -27,6 +27,11 @@
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList runat="server" ID="drpCnProfession" LabelWidth="110px" Label="专业" Required="true" ShowRedStar="true"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtRemark" runat="server" Label="备注"
@@ -15,6 +15,7 @@ namespace FineUIPro.Web.JDGL.WBS
if (!IsPostBack)
{
this.btnClose.OnClientClick = ActiveWindow.GetHideReference();
BLL.CnProfessionInitService.InitCnProfessionInitDropDownList(drpCnProfession, true);
string EquipmentMaterialBigTypeId = Request.Params["EquipmentMaterialBigTypeId"];
if (!string.IsNullOrEmpty(EquipmentMaterialBigTypeId))
{
@@ -24,6 +25,10 @@ namespace FineUIPro.Web.JDGL.WBS
{
this.txtEquipmentMaterialBigTypeCode.Text = EquipmentMaterialBigType.EquipmentMaterialBigTypeCode;
this.txtEquipmentMaterialBigTypeName.Text = EquipmentMaterialBigType.EquipmentMaterialBigTypeName;
if (EquipmentMaterialBigType.CnProfessionId != null)
{
this.drpCnProfession.SelectedValue = EquipmentMaterialBigType.CnProfessionId.ToString();
}
this.txtRemark.Text = EquipmentMaterialBigType.Remark;
}
}
@@ -33,6 +38,11 @@ namespace FineUIPro.Web.JDGL.WBS
protected void btnSave_Click(object sender, EventArgs e)
{
if (this.drpCnProfession.SelectedValue == BLL.Const._Null)
{
ShowNotify("请选择专业!", MessageBoxIcon.Warning);
return;
}
SaveData(true);
}
@@ -42,6 +52,7 @@ namespace FineUIPro.Web.JDGL.WBS
Model.WBS_EquipmentMaterialBigType EquipmentMaterialBigType = new Model.WBS_EquipmentMaterialBigType();
EquipmentMaterialBigType.EquipmentMaterialBigTypeCode = this.txtEquipmentMaterialBigTypeCode.Text.Trim();
EquipmentMaterialBigType.EquipmentMaterialBigTypeName = this.txtEquipmentMaterialBigTypeName.Text.Trim();
EquipmentMaterialBigType.CnProfessionId = Funs.GetNewInt(this.drpCnProfession.SelectedValue);
EquipmentMaterialBigType.Remark = this.txtRemark.Text.Trim();
if (!string.IsNullOrEmpty(EquipmentMaterialBigTypeId))
{
@@ -57,6 +57,15 @@ namespace FineUIPro.Web.JDGL.WBS {
/// </remarks>
protected global::FineUIPro.TextBox txtEquipmentMaterialBigTypeName;
/// <summary>
/// drpCnProfession 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpCnProfession;
/// <summary>
/// txtRemark 控件。
/// </summary>
@@ -27,6 +27,11 @@
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList runat="server" ID="drpCnProfession" LabelWidth="110px" Label="专业" Required="true" ShowRedStar="true" Readonly="true"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtRemark" runat="server" Label="备注"
@@ -16,6 +16,7 @@ namespace FineUIPro.Web.JDGL.WBS
{
this.btnClose.OnClientClick = ActiveWindow.GetHideReference();
string EquipmentMaterialBigTypeId = Request.Params["EquipmentMaterialBigTypeId"];
BLL.CnProfessionInitService.InitCnProfessionInitDropDownList(drpCnProfession, true);
if (!string.IsNullOrEmpty(EquipmentMaterialBigTypeId))
{
@@ -24,6 +25,10 @@ namespace FineUIPro.Web.JDGL.WBS
{
this.txtEquipmentMaterialBigTypeCode.Text = EquipmentMaterialBigType.EquipmentMaterialBigTypeCode;
this.txtEquipmentMaterialBigTypeName.Text = EquipmentMaterialBigType.EquipmentMaterialBigTypeName;
if (EquipmentMaterialBigType.CnProfessionId != null)
{
this.drpCnProfession.SelectedValue = EquipmentMaterialBigType.CnProfessionId.ToString();
}
this.txtRemark.Text = EquipmentMaterialBigType.Remark;
}
}
@@ -57,6 +57,15 @@ namespace FineUIPro.Web.JDGL.WBS {
/// </remarks>
protected global::FineUIPro.TextBox txtEquipmentMaterialBigTypeName;
/// <summary>
/// drpCnProfession 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpCnProfession;
/// <summary>
/// txtRemark 控件。
/// </summary>
@@ -0,0 +1,62 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DeviceRun.aspx.cs" Inherits="FineUIPro.Web.TestRun.BeforeTestRun.DeviceRun" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false" ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items>
<f:Grid ID="Grid1" IsFluid="true" ShowBorder="true" ShowHeader="true" Title="系统划分"
runat="server" EnableCollapse="true" DataKeyNames="PreRunId,ParentId,PreRunLevel" EnableTree="true"
TreeColumn="PreRunName" DataIDField="PreRunId" DataParentIDField="ParentId" OnRowDataBound="Grid1_RowDataBound"
AllowCellEditing="false" ClicksToEdit="1" OnRowCommand="Grid1_RowCommand"
EnableMultiSelect="false" EnableCheckBoxSelect="true" ExpandAllTreeNodes="true">
<Toolbars>
<f:Toolbar ID="Toolbar1" runat="server">
<Items>
<f:TextBox runat="server" ID="sRunName"></f:TextBox>
<f:Button ID="btnSearch" Icon="SystemSearch" ToolTip="搜索" EnablePostBack="true" runat="server" OnClick="btnSearch_Click"></f:Button>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnAdd" Icon="Add" ToolTip="新增" Text="新增" runat="server" OnClick="btnAdd_Click"></f:Button>
<f:Button ID="btnParentAdd" Icon="Add" ToolTip="新增子级别" Text="新增子级别" runat="server" OnClick="btnParentAdd_Click"></f:Button>
<f:Button ID="btnEdit" Icon="BulletEdit" ToolTip="编辑" Text="编辑" runat="server" OnClick="btnEdit_Click"></f:Button>
<f:Button ID="btnDelete" Text="删除" Icon="Delete" OnClick="btnDelete_Click" ConfirmText="删除当前选中数据和所有子节点数据?" runat="server"></f:Button>
<f:Button ID="btnSave" runat="server" Icon="TableSave" Text="保存" OnClick="btnSave_Click"></f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RowNumberField />
<f:RenderField ColumnID="PreRunName" ExpandUnusedSpace="true" Width="150px" DataField="PreRunName" HeaderText="名称">
</f:RenderField>
<f:RenderField ColumnID="PreRunCode" Width="150px" DataField="PreRunCode" HeaderText="编码">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="RunLevelName" DataField="RunLevelName" HeaderText="类型">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="Remark" DataField="Remark" HeaderText="描述">
<Editor>
<f:TextBox ID="txtRemark" Required="true" runat="server">
</f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="OperateTime" DataField="OperateTime" HeaderText="操作日期" FieldType="Date"
Renderer="Date" RendererArgument="yyyy-MM-dd">
</f:RenderField>
<f:LinkButtonField Width="100px" ConfirmText="删除当前选中数据和所有子节点数据?" ConfirmTarget="Top"
CommandName="Delete" Icon="Delete" />
</Columns>
</f:Grid>
</Items>
</f:Panel>
<f:Window ID="Window1" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="true" runat="server" IsModal="true" OnClose="Window1_Close" CloseAction="HidePostBack"
Width="800px" Height="600px">
</f:Window>
</form>
</body>
</html>
@@ -0,0 +1,201 @@
using BLL;
using Model;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.TestRun.BeforeTestRun
{
public partial class DeviceRun : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataBrid();
}
}
#region 数据绑定和事件
/// <summary>
/// 数据绑定
/// </summary>
public void DataBrid()
{
string strSql = @"select a.PreRunId,a.PreRunCode,a.PreRunName,b.ProjectId,b.ProjectName,a.PreRunLevel,
(case a.PreRunLevel when 1 then '装置' when 2 then '工序' when 3 then 'S系统' when 4 then 'SS子系统' else '' end) as RunLevelName,
a.ParentId,a.Remark,a.OperateTime,a.Sort
from PreRun_SysDevice as a
inner join Base_Project as b on a.ProjectId=b.ProjectId where a.ProjectId=@ProjectId ";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
if (!string.IsNullOrEmpty(sRunName.Text.Trim()))
{
strSql += " and a.PreRunName=@PreRunName";
listStr.Add(new SqlParameter("@PreRunName", this.sRunName.Text.Trim()));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
/// <summary>
/// 行点击 事件
/// </summary>
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
{
if (e.CommandName == "Delete")
{
string rowID = e.RowID;
DeleteRowByIDInternal(rowID);
DataBrid();
ShowNotify("删除成功!");
}
}
/// <summary>
/// 行加载事件
/// </summary>
protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
{
}
#endregion
#region 按钮
/// <summary>
/// 搜索
/// </summary>
protected void btnSearch_Click(object sender, EventArgs e)
{
DataBrid();
}
/// <summary>
/// 删除
/// </summary>
protected void btnDelete_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
ShowNotify("至少选择一条数据!");
return;
}
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
DeleteRowByIDInternal(rowID);
}
DataBrid();
ShowNotify("删除成功!");
}
/// <summary>
/// 新增
/// </summary>
protected void btnAdd_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(Window1.GetShowReference($"DeviceRunEdit.aspx?RunId=&ParentId=", "新增"));
}
/// <summary>
/// 添加子级
/// </summary>
protected void btnParentAdd_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
ShowNotify("请选择一条数据!", MessageBoxIcon.Warning);
return;
}
var rowIndex = Grid1.SelectedRowIndex;
var rowId = Grid1.DataKeys[rowIndex][0].ToString();
var runLevel = Grid1.DataKeys[rowIndex][2] != null ? Convert.ToInt32(Grid1.DataKeys[rowIndex][2]) : 1;
if (runLevel > 3)
{
ShowNotify("最小节点无子节点!", MessageBoxIcon.Warning);
return;
}
PageContext.RegisterStartupScript(Window1.GetShowReference($"DeviceRunEdit.aspx?RunId=&ParentId={rowId}", "添加子级"));
}
/// <summary>
/// 编辑
/// </summary>
protected void btnEdit_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
ShowNotify("请选择一条数据!", MessageBoxIcon.Warning);
return;
}
var rowIndex = Grid1.SelectedRowIndex;
var rowId = Grid1.DataKeys[rowIndex][0].ToString();
var parentId = Grid1.DataKeys[rowIndex][1] != null ? Grid1.DataKeys[rowIndex][1].ToString() : string.Empty;
PageContext.RegisterStartupScript(Window1.GetShowReference($"DeviceRunEdit.aspx?RunId={rowId}&ParentId={parentId}", "编辑"));
}
/// <summary>
/// 保存
/// </summary>
protected void btnSave_Click(object sender, EventArgs e)
{
}
/// <summary>
/// 关闭
/// </summary>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
DataBrid();
}
#endregion
#region 私有方法
/// <summary>
/// 根据行ID来删除行数据
/// </summary>
private void DeleteRowByIDInternal(string rowID)
{
var model = Funs.DB.PreRun_SysDevice.FirstOrDefault(p => p.PreRunId == rowID);
if (model != null)
{
Funs.DB.PreRun_SysDevice.DeleteOnSubmit(model);
GetDevice(rowID);
}
Funs.DB.SubmitChanges();
}
/// <summary>
/// 删除
/// </summary>
private void GetDevice(string id)
{
var model = Funs.DB.PreRun_SysDevice.FirstOrDefault(p => p.ParentId == id);
if (model != null)
{
Funs.DB.PreRun_SysDevice.DeleteOnSubmit(model);
GetDevice(model.PreRunId);
}
}
#endregion
}
}
@@ -0,0 +1,141 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.TestRun.BeforeTestRun {
public partial class DeviceRun {
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// sRunName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox sRunName;
/// <summary>
/// btnSearch 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSearch;
/// <summary>
/// btnAdd 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAdd;
/// <summary>
/// btnParentAdd 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnParentAdd;
/// <summary>
/// btnEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnEdit;
/// <summary>
/// btnDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnDelete;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// txtRemark 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRemark;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
}
}
@@ -0,0 +1,79 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DeviceRunEdit.aspx.cs" Inherits="FineUIPro.Web.TestRun.BeforeTestRun.DeviceRunEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>编辑试车管理</title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSave" OnClick="btnSave_Click" Icon="SystemSave" runat="server" ToolTip="保存" ValidateForms="SimpleForm1">
</f:Button>
<f:HiddenField ID="hdAttachUrl" runat="server">
</f:HiddenField>
<f:HiddenField ID="hdId" runat="server"></f:HiddenField>
</Items>
</f:Toolbar>
</Toolbars>
<Rows>
<f:FormRow>
<Items>
<f:ContentPanel ID="ContentPanel2" ShowBorder="true"
BodyPadding="10px" EnableCollapse="true" ShowHeader="false" AutoScroll="true"
runat="server">
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow runat="server" ID="zz" Hidden="true">
<Items>
<f:Label ID="lblzzmc" Label="装置名称" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
<f:Label ID="lblzzbm" Label="装置编码" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
</Items>
</f:FormRow>
<f:FormRow runat="server" ID="gx" Hidden="true">
<Items>
<f:Label ID="lblgxmc" Label="工序名称" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
<f:Label ID="lblgxbm" Label="工序编码" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
</Items>
</f:FormRow>
<f:FormRow runat="server" ID="sxt" Hidden="true">
<Items>
<f:Label ID="lblsxtmc" Label="S系统名称" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
<f:Label ID="lblsxtbm" Label="S系统编码" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtRunName" runat="server" Label="名称" LabelAlign="Right" Required="true" LabelWidth="150px" MaxLength="50">
</f:TextBox>
<f:TextBox ID="txtRunCode" runat="server" Label="编码" LabelAlign="Right" LabelWidth="150px" MaxLength="50">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextArea runat="server" ID="txtRemark" Label="描述" LabelAlign="Right" LabelWidth="150px"></f:TextArea>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</f:ContentPanel>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</form>
</body>
</html>
@@ -0,0 +1,298 @@
using BLL;
using Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.TestRun.BeforeTestRun
{
public partial class DeviceRunEdit : PageBase
{
/// <summary>
/// 上级主键
/// </summary>
public string ParentId
{
get { return (string)ViewState["ParentId"]; }
set { ViewState["ParentId"] = value; }
}
/// <summary>
/// 主键
/// </summary>
public string RunId
{
get { return (string)ViewState["RunId"]; }
set { ViewState["RunId"] = value; }
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.RunId = Request.Params["RunId"];
this.ParentId = Request.Params["ParentId"];
//绑定数据
PageIn();
}
}
/// <summary>
/// 绑定数据
/// </summary>
/// <param name="runId">主键</param>
/// <param name="parentId">上级主键</param>
public void PageIn()
{
var num = 0;
if (!string.IsNullOrWhiteSpace(this.ParentId))
{
var parenLs = GetAllDevices(this.ParentId);
if (parenLs.Count > 0)
{
var itemModel = parenLs.FirstOrDefault(p => p.PreRunId == this.ParentId);
if (itemModel != null)
{
if (itemModel.PreRunLevel == 1)
{
zz.Hidden = false;
var oneModel = parenLs.FirstOrDefault(p => p.PreRunLevel == 1);
if (oneModel != null)
{
lblzzmc.Text = oneModel.PreRunName;
lblzzbm.Text = oneModel.PreRunCode;
if (string.IsNullOrWhiteSpace(this.RunId))
{
num = Funs.DB.PreRun_SysDevice.Count(p => p.ProjectId == this.CurrUser.LoginProjectId && p.PreRunLevel == 2) + 1;
txtRunCode.Text = string.Format("PA{0}", string.Format("{0:d2}", num));
}
txtRunName.Label = "工序名称";
txtRunCode.Label = "工序编码";
}
}
else if (itemModel.PreRunLevel == 2)
{
zz.Hidden = false;
gx.Hidden = false;
var oneModel = parenLs.FirstOrDefault(p => p.PreRunLevel == 1);
if (oneModel != null)
{
lblzzmc.Text = oneModel.PreRunName;
lblzzbm.Text = oneModel.PreRunCode;
}
var twoModel = parenLs.FirstOrDefault(p => p.PreRunLevel == 2);
if (twoModel != null)
{
lblgxmc.Text = twoModel.PreRunName;
lblgxbm.Text = twoModel.PreRunCode;
}
if (string.IsNullOrWhiteSpace(this.RunId))
{
num = Funs.DB.PreRun_SysDevice.Count(p => p.ProjectId == this.CurrUser.LoginProjectId && p.PreRunLevel == 3) + 1;
txtRunCode.Text = string.Format("S{0}", string.Format("{0:d2}", num));
}
txtRunName.Label = "S系统名称";
txtRunCode.Label = "S系统编码";
}
else if (itemModel.PreRunLevel == 3)
{
zz.Hidden = false;
gx.Hidden = false;
sxt.Hidden = false;
var oneModel = parenLs.FirstOrDefault(p => p.PreRunLevel == 1);
if (oneModel != null)
{
lblzzmc.Text = oneModel.PreRunName;
lblzzbm.Text = oneModel.PreRunCode;
}
var twoModel = parenLs.FirstOrDefault(p => p.PreRunLevel == 2);
if (twoModel != null)
{
lblgxmc.Text = twoModel.PreRunName;
lblgxbm.Text = twoModel.PreRunCode;
}
var threeModel = parenLs.FirstOrDefault(p => p.PreRunLevel == 3);
if (threeModel != null)
{
lblsxtmc.Text = threeModel.PreRunName;
lblsxtbm.Text = threeModel.PreRunCode;
}
if (string.IsNullOrWhiteSpace(this.RunId))
{
num = Funs.DB.PreRun_SysDevice.Count(p => p.ProjectId == this.CurrUser.LoginProjectId && p.PreRunLevel == 4) + 1;
txtRunCode.Text = string.Format("SS{0}", string.Format("{0:d2}", num));
}
txtRunName.Label = "SS子系统名称";
txtRunCode.Label = "SS子系统编码";
}
}
}
}
else
{
if (string.IsNullOrWhiteSpace(this.RunId))
{
txtRunName.Label = "装置名称";
txtRunCode.Label = "装置编码";
num = Funs.DB.PreRun_SysDevice.Count(p => p.ProjectId == this.CurrUser.LoginProjectId && p.PreRunLevel == 1) + 1;
txtRunCode.Text = string.Format("P{0}", string.Format("{0:d2}", num));
}
}
if (!string.IsNullOrWhiteSpace(this.RunId))
{
var deviceModel = Funs.DB.PreRun_SysDevice.FirstOrDefault(p => p.PreRunId == this.RunId);
if (deviceModel != null)
{
txtRunCode.Text = deviceModel.PreRunCode;
txtRunName.Text = deviceModel.PreRunName;
txtRemark.Text = deviceModel.Remark;
if (deviceModel.PreRunLevel == 1)
{
txtRunName.Label = "装置名称";
txtRunCode.Label = "装置编码";
}
else if (deviceModel.PreRunLevel == 2)
{
txtRunName.Label = "工序名称";
txtRunCode.Label = "工序编码";
}
else if (deviceModel.PreRunLevel == 3)
{
txtRunName.Label = "S系统名称";
txtRunCode.Label = "S系统编码";
}
else if (deviceModel.PreRunLevel == 4)
{
txtRunName.Label = "SS子系统名称";
txtRunCode.Label = "SS子系统编码";
}
else
{
txtRunName.Label = "装置名称";
txtRunCode.Label = "装置编码";
}
}
}
}
/// <summary>
/// 保存
/// </summary>
protected void btnSave_Click(object sender, EventArgs e)
{
var model = new PreRun_SysDevice();
model.PreRunId = Guid.NewGuid().ToString();
var deviceId = string.Empty;
var processesId = string.Empty;
var systemIdId = string.Empty;
if (!string.IsNullOrWhiteSpace(this.RunId))
{
model = Funs.DB.PreRun_SysDevice.FirstOrDefault(p => p.PreRunId == this.RunId);
}
if (model == null)
{
ShowNotify("传递参数错误!", MessageBoxIcon.Error);
return;
}
model.ProjectId = CurrUser.LoginProjectId;
if (!string.IsNullOrWhiteSpace(this.ParentId))
{
var parenLs = GetAllDevices(this.ParentId);
if (parenLs.Count > 0)
{
var oneModel = parenLs.FirstOrDefault(p => p.PreRunLevel == 1);
if (oneModel != null)
{
model.InstallationId = oneModel.PreRunId;
model.ParentId = oneModel.PreRunId;
model.PreRunLevel = 2;
}
var twoModel = parenLs.FirstOrDefault(p => p.PreRunLevel == 2);
if (twoModel != null)
{
model.ProcessesId = twoModel.PreRunId;
model.ParentId = twoModel.PreRunId;
model.PreRunLevel = 3;
}
var threeModel = parenLs.FirstOrDefault(p => p.PreRunLevel == 3);
if (threeModel != null)
{
model.SystemId = threeModel.PreRunId;
model.ParentId = threeModel.PreRunId;
model.SubsystemId = model.PreRunId;
model.PreRunLevel = 4;
}
}
}
else
{
model.PreRunLevel = 1;
}
model.AddUser = CurrUser.Account;
model.OperateTime = DateTime.Now;
model.Sort = Funs.DB.PreRun_SysDevice.Count(p => p.ProjectId == CurrUser.LoginProjectId) + 1;
model.PreRunCode = txtRunCode.Text;
model.PreRunName = txtRunName.Text;
model.Remark = txtRemark.Text;
if (string.IsNullOrWhiteSpace(this.RunId))
{
if (Funs.DB.PreRun_SysDevice.Count(p => p.PreRunCode == txtRunCode.Text.Trim() && p.ProjectId == this.CurrUser.LoginProjectId) > 0)
{
ShowNotify($"编码{txtRunCode.Text.Trim()}已存在!", MessageBoxIcon.Error);
return;
}
Funs.DB.PreRun_SysDevice.InsertOnSubmit(model);
}
else
{
if (Funs.DB.PreRun_SysDevice.Count(p => p.PreRunCode == txtRunCode.Text.Trim() && p.PreRunId != model.PreRunId && p.ProjectId == this.CurrUser.LoginProjectId) > 0)
{
ShowNotify($"编码{txtRunCode.Text.Trim()}已存在!", MessageBoxIcon.Error);
return;
}
}
Funs.DB.SubmitChanges();
ShowNotify("保存成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
}
#region 私有方法
/// <summary>
/// 根据主键获取所有节点
/// </summary>
/// <returns></returns>
public List<PreRun_SysDevice> GetAllDevices(string parentId)
{
var result = new List<PreRun_SysDevice>();
var ids = new List<string>();
var itemDevice = Funs.DB.PreRun_SysDevice.FirstOrDefault(p => p.PreRunId == parentId);
if (itemDevice != null)
{
ids.Add(itemDevice.PreRunId);
if (!string.IsNullOrWhiteSpace(itemDevice.InstallationId))
{
ids.Add(itemDevice.InstallationId);
}
if (!string.IsNullOrWhiteSpace(itemDevice.ProcessesId))
{
ids.Add(itemDevice.ProcessesId);
}
if (!string.IsNullOrWhiteSpace(itemDevice.SystemId))
{
ids.Add(itemDevice.SystemId);
}
result = Funs.DB.PreRun_SysDevice.Where(p => ids.Contains(p.PreRunId)).ToList();
}
return result;
}
#endregion
}
}
@@ -0,0 +1,213 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.TestRun.BeforeTestRun {
public partial class DeviceRunEdit {
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// hdAttachUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdAttachUrl;
/// <summary>
/// hdId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdId;
/// <summary>
/// ContentPanel2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel ContentPanel2;
/// <summary>
/// Form2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form Form2;
/// <summary>
/// zz 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FormRow zz;
/// <summary>
/// lblzzmc 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblzzmc;
/// <summary>
/// lblzzbm 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblzzbm;
/// <summary>
/// gx 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FormRow gx;
/// <summary>
/// lblgxmc 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblgxmc;
/// <summary>
/// lblgxbm 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblgxbm;
/// <summary>
/// sxt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FormRow sxt;
/// <summary>
/// lblsxtmc 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblsxtmc;
/// <summary>
/// lblsxtbm 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblsxtbm;
/// <summary>
/// txtRunName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRunName;
/// <summary>
/// txtRunCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRunCode;
/// <summary>
/// txtRemark 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtRemark;
}
}
@@ -0,0 +1,149 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SetWorkPackage.aspx.cs" Inherits="FineUIPro.Web.TestRun.BeforeTestRun.SetWorkPackage" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>工作包设置 </title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" Title="工作包设置 " ShowHeader="false" Layout="HBox">
<Items>
<f:Grid ID="Grid1" Title="工作包设置 " ShowHeader="false" EnableCollapse="true" PageSize="15"
ShowBorder="true" AllowPaging="true" IsDatabasePaging="true" runat="server" Width="1000px" EnableColumnLines="true"
SortField="Sort" SortDirection="ASC" OnSort="Grid1_Sort" DataKeyNames="WorkPackId" DataIDField="WorkPackId" OnPageIndexChange="Grid1_PageIndexChange"
AllowFilters="true" OnFilterChange="Grid1_FilterChange" AllowSorting="true">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items>
<f:TextBox ID="txtsWorkPackName" runat="server" Label="检测时机" EmptyText="输入查询条件" AutoPostBack="true" OnTextChanged="TextBox_TextChanged"
Width="250px" LabelWidth="80px">
</f:TextBox>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RowNumberField EnablePagingNumber="true" HeaderText="序号" Width="100px" HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderField Width="260px" ColumnID="WorkPackName" DataField="WorkPackName" FieldType="String"
HeaderText="名称" HeaderTextAlign="Center" TextAlign="Left" SortField="WorkPackName">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="Remark" DataField="Remark" FieldType="String"
HeaderText="备注" HeaderTextAlign="Center" TextAlign="Left" ExpandUnusedSpace="true">
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="rowselect" Handler="onGridRowSelect" />
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
</Listeners>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
</f:DropDownList>
</PageItems>
</f:Grid>
<f:SimpleForm ID="SimpleForm1" runat="server" ShowBorder="true" ShowHeader="false"
LabelWidth="100px" BodyPadding="5px" Width="310px">
<Items>
<f:HiddenField ID="hfFormID" runat="server">
</f:HiddenField>
<f:TextBox ID="txtWorkPackName" Label="名称" ShowRedStar="true" Required="true"
runat="server" LabelAlign="right" FocusOnPageLoad="true">
</f:TextBox>
<f:TextArea ID="txtRemark" Label="备注" runat="server" LabelAlign="right" Height="64px">
</f:TextArea>
</Items>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server">
<Items>
<f:Button ID="btnNew" Text="" Icon="Add" ToolTip="新增" EnablePostBack="false" runat="server">
<Listeners>
<f:Listener Event="click" Handler="onNewButtonClick" />
</Listeners>
</f:Button>
<f:Button ID="btnDelete" Text="" Enabled="false" ToolTip="删除" Icon="Delete" ConfirmText="确定删除当前数据?"
OnClick="btnDelete_Click" runat="server">
</f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="提交数据(新增)" ValidateForms="SimpleForm1"
OnClick="btnSave_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:SimpleForm>
</Items>
</f:Panel>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true"
runat="server" Text="编辑" Icon="TableEdit">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true"
ConfirmText="删除选中行?" ConfirmTarget="Top" runat="server" Text="删除" Icon="Delete">
</f:MenuButton>
</f:Menu>
</form>
<script type="text/javascript">
var menuID = '<%= Menu1.ClientID %>';
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID).show(); //showAt(event.pageX, event.pageY);
return false;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
var gridClientID = '<%= Grid1.ClientID %>';
var btnDeleteClientID = '<%= btnDelete.ClientID %>';
var btnSaveClientID = '<%= btnSave.ClientID %>';
var formClientID = '<%= SimpleForm1.ClientID %>';
var hfFormIDClientID = '<%= hfFormID.ClientID %>';
var txtWorkPackNameClientID = '<%= txtWorkPackName.ClientID %>';
var txtRemarkClientID = '<%= txtRemark.ClientID %>';
function onGridRowSelect(event, rowId) {
var grid = F(gridClientID);
// 启用删除按钮
F(btnDeleteClientID).enable();
// 当前行数据
var rowValue = grid.getRowValue(rowId);
// 使用当前行数据填充表单字段
F(hfFormIDClientID).setValue(rowId);
F(txtWorkPackNameClientID).setValue(rowValue['WorkPackName']);
F(txtRemarkClientID).setValue(rowValue['Remark']);
// 更新提交按钮文本
F(btnSaveClientID).setText('提交数据(编辑)');
}
function onNewButtonClick() {
F(hfFormIDClientID).setValue('');
// 重置表单字段
F(formClientID).reset();
// 清空表格选中行
F(gridClientID).clearSelections();
// 禁用删除按钮
F(btnDeleteClientID).disable();
// 更新提交按钮文本
F(btnSaveClientID).setText('提交数据(新增)');
}
</script>
</body>
</html>
@@ -0,0 +1,261 @@
using BLL;
using Model;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.TestRun.BeforeTestRun
{
public partial class SetWorkPackage : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格
BindGrid();
}
}
#region 绑定数据
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
string strSql = @"select WorkPackId,WorkPackName,Remark,AddTime,Sort from Work_Package WHERE 1=1 ";
List<SqlParameter> listStr = new List<SqlParameter>();
if (!string.IsNullOrEmpty(this.txtsWorkPackName.Text.Trim()))
{
strSql += " AND WorkPackName LIKE @WorkPackName";
listStr.Add(new SqlParameter("@WorkPackName", "%" + this.txtsWorkPackName.Text.Trim() + "%"));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
// 2.获取当前分页数据
Grid1.RecordCount = tb.Rows.Count;
tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
#endregion
#region 分页排序
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
/// <summary>
/// 分页下拉选择
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
BindGrid();
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_FilterChange(object sender, EventArgs e)
{
BindGrid();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
Grid1.SortDirection = e.SortDirection;
Grid1.SortField = e.SortField;
BindGrid();
}
#endregion
#region 删除事件
/// <summary>
/// 删除
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnDelete_Click(object sender, EventArgs e)
{
var isData = Funs.DB.SubSys_WorkPackage.Count(p => p.WorkPackId == hfFormID.Text);
if (isData == 0)
{
var mdoel = Funs.DB.Work_Package.FirstOrDefault(p => p.WorkPackId == hfFormID.Text);
Funs.DB.Work_Package.DeleteOnSubmit(mdoel);
Funs.DB.SubmitChanges();
// 重新绑定表格,并模拟点击[新增按钮]
BindGrid();
PageContext.RegisterStartupScript("onNewButtonClick();");
}
else
{
ShowNotify("子系统已选择此工作包,无法进行删除操作!", MessageBoxIcon.Error);
return;
}
}
/// <summary>
/// 右键删除事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuDelete_Click(object sender, EventArgs e)
{
this.DeleteData();
}
/// <summary>
/// 删除方法
/// </summary>
private void DeleteData()
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
ShowNotify("请选择数据!", MessageBoxIcon.Error);
return;
}
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
var isData = Funs.DB.SubSys_WorkPackage.Count(p => p.WorkPackId == hfFormID.Text);
if (isData == 0)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
var model = Funs.DB.Work_Package.FirstOrDefault(e => e.WorkPackId == rowID);
if (model != null)
{
Funs.DB.Work_Package.DeleteOnSubmit(model);
Funs.DB.SubmitChanges();
ShowNotify("删除成功!", MessageBoxIcon.Error);
return;
}
}
else
{
ShowNotify("子系统已选择此工作包,无法进行删除操作!", MessageBoxIcon.Error);
return;
}
}
BindGrid();
PageContext.RegisterStartupScript("onNewButtonClick();");
}
#endregion
#region 编辑
/// <summary>
/// 右键编辑事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuEdit_Click(object sender, EventArgs e)
{
this.EditData();
}
/// <summary>
/// 编辑数据方法
/// </summary>
private void EditData()
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
string Id = Grid1.SelectedRowID;
var model = Funs.DB.Work_Package.FirstOrDefault(e => e.WorkPackId == Id);
if (model != null)
{
this.txtWorkPackName.Text = model.WorkPackName;
this.txtRemark.Text = model.Remark;
hfFormID.Text = Id;
this.btnDelete.Enabled = true;
}
}
#endregion
#region 提交按钮
/// <summary>
/// 提交按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
string strRowID = hfFormID.Text;
var deteion = Funs.DB.Work_Package.Count(p => p.WorkPackName == txtWorkPackName.Text.Trim() && p.WorkPackId != strRowID);
if (deteion > 0)
{
Alert.ShowInTop("此工作包已存在!", MessageBoxIcon.Warning);
return;
}
if (string.IsNullOrEmpty(strRowID))
{
Work_Package model = new Work_Package();
model.WorkPackId = Guid.NewGuid().ToString();
model.WorkPackName = this.txtWorkPackName.Text.Trim();
model.Remark = this.txtRemark.Text.Trim();
Funs.DB.Work_Package.InsertOnSubmit(model);
Funs.DB.SubmitChanges();
}
else
{
Model.Work_Package model = Funs.DB.Work_Package.FirstOrDefault(p => p.WorkPackId == strRowID);
if (model != null)
{
model.WorkPackName = this.txtWorkPackName.Text.Trim();
model.Remark = this.txtRemark.Text.Trim();
Funs.DB.SubmitChanges();
}
}
// 重新绑定表格,并点击当前编辑或者新增的行
BindGrid();
Alert.ShowInTop("提交成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript("onNewButtonClick();");
}
#endregion
#region 查询
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void TextBox_TextChanged(object sender, EventArgs e)
{
this.BindGrid();
}
#endregion
}
}
@@ -0,0 +1,204 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.TestRun.BeforeTestRun {
public partial class SetWorkPackage {
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// txtsWorkPackName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtsWorkPackName;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.SimpleForm SimpleForm1;
/// <summary>
/// hfFormID 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hfFormID;
/// <summary>
/// txtWorkPackName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtWorkPackName;
/// <summary>
/// txtRemark 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtRemark;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnNew 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// btnDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnDelete;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// Menu1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Menu Menu1;
/// <summary>
/// btnMenuEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuEdit;
/// <summary>
/// btnMenuDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuDelete;
}
}
@@ -0,0 +1,147 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SubSysWorkPackage.aspx.cs" Inherits="FineUIPro.Web.TestRun.BeforeTestRun.SubSysWorkPackage" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>子系统工作包管理</title>
<style>
.f-grid-row .f-grid-cell-inner {
white-space: normal;
word-break: break-all;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
<Items>
<f:Panel runat="server" ID="panelLeftRegion" RegionPosition="Left" RegionSplit="true"
EnableCollapse="true" Width="320px" Title="子系统工作包管理" ShowBorder="true" Layout="VBox"
ShowHeader="false" AutoScroll="true" BodyPadding="5px" IconFont="ArrowCircleLeft">
<%--<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox ID="txtPreRunName" runat="server" EmptyText="输入查询条件" AutoPostBack="true"
Label="名称" LabelWidth="50px" OnTextChanged="txtPreRunName_TextChanged" Width="300px">
</f:TextBox>
</Items>
</f:Toolbar>
</Toolbars>--%>
<Items>
<f:Tree ID="tvControlItem" ShowHeader="false" Title="子系统工作包管理节点树" OnNodeCommand="tvControlItem_NodeCommand"
Height="470px" runat="server" ShowBorder="false" EnableCollapse="true" EnableSingleClickExpand="true"
AutoLeafIdentification="true" EnableSingleExpand="true" EnableTextSelection="true" OnNodeExpand="tvControlItem_NodeExpand">
</f:Tree>
</Items>
</f:Panel>
<f:Panel runat="server" ID="panelCenterRegion" RegionPosition="Center" ShowBorder="true"
Layout="VBox" ShowHeader="false" BodyPadding="5px" IconFont="PlusCircle" Title="子系统工作包管理"
TitleToolTip="子系统工作包管理" AutoScroll="true">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
<Items>
<f:HiddenField runat="server" ID="hdTrustID"></f:HiddenField>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSave" Text="保存" ToolTip="保存" Icon="FilmSave" ValidateForms="SimpleForm1" runat="server" OnClick="btnSave_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Items>
<f:Form ID="SimpleForm1" ShowBorder="true" ShowHeader="false" AutoScroll="true" BodyPadding="10px"
runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow runat="server" ID="zz" Hidden="true">
<Items>
<f:Label ID="lblzzmc" Label="装置名称" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
<f:Label ID="lblzzbm" Label="装置编码" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
</Items>
</f:FormRow>
<f:FormRow runat="server" ID="gx" Hidden="true">
<Items>
<f:Label ID="lblgxmc" Label="工序名称" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
<f:Label ID="lblgxbm" Label="工序编码" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
</Items>
</f:FormRow>
<f:FormRow runat="server" ID="sxt" Hidden="true">
<Items>
<f:Label ID="lblsxtmc" Label="S系统名称" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
<f:Label ID="lblsxtbm" Label="S系统编码" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
</Items>
</f:FormRow>
<f:FormRow runat="server" ID="sszxt" Hidden="true">
<Items>
<f:Label ID="lblszxtmc" Label="SS子系统名称" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
<f:Label ID="lblszxtbm" Label="SS子系统编码" Text="" runat="server" LabelAlign="Right" LabelWidth="150px"></f:Label>
</Items>
</f:FormRow>
<f:FormRow runat="server" ID="gzb" Hidden="true">
<Items>
<f:Grid Height="450px" ID="Grid1" ShowBorder="true" ShowHeader="true" EnableCollapse="true" runat="server" DataIDField="WorkPackId" DataKeyNames="WorkPackId" AllowSorting="true"
SortField="Sort" SortDirection="ASC" EnableColumnLines="true" AllowCellEditing="true" EnableMultiSelect="false" OnRowCommand="Grid1_RowCommand">
<Toolbars>
<f:Toolbar ID="Toolbar1" runat="server">
<Items>
<f:DropDownBox runat="server" ID="drpWorkPack" EmptyText="请从下拉表格中选择" Label="工作包选择" EnableMultiSelect="true" MatchFieldWidth="false"
AutoPostBack="true" OnTextChanged="drpWorkPack_TextChanged">
<PopPanel>
<f:Grid ID="GridWorkPack" ShowBorder="true" ShowHeader="false" runat="server" Width="550px" Height="300px" Hidden="true"
DataIDField="WorkPackId" DataTextField="WorkPackName" EnableMultiSelect="true" KeepCurrentSelection="true"
DataKeyNames="WorkPackId" EnableCheckBoxSelect="true">
<Columns>
<f:BoundField Width="200px" DataField="WorkPackName" DataFormatString="{0}" HeaderText="名称" />
<f:BoundField Width="120px" DataField="Remark" DataFormatString="{0}" HeaderText="备注" />
</Columns>
</f:Grid>
</PopPanel>
</f:DropDownBox>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RowNumberField EnablePagingNumber="true" HeaderText="工作包名称" Width="100px" HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderField HeaderText="工作包编码" ColumnID="WorkPackCode" DataField="WorkPackCode" SortField="WorkPackCode"
FieldType="String" HeaderTextAlign="Center" TextAlign="Center" Width="200px">
<Editor>
<f:TextBox runat="server" ID="txtWorkPackCode"></f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField HeaderText="工作包名称" ColumnID="WorkPackName" DataField="WorkPackName" SortField="WorkPackName"
FieldType="String" HeaderTextAlign="Center" TextAlign="Center" Width="200px">
</f:RenderField>
<f:RenderField HeaderText="备注" ColumnID="Remark" DataField="Remark" SortField="Remark"
FieldType="String" HeaderTextAlign="Center" TextAlign="Center" Width="180px">
<Editor>
<f:TextBox runat="server" ID="txtRemark"></f:TextBox>
</Editor>
</f:RenderField>
<f:LinkButtonField Width="100px" ConfirmText="删除当前选中数据和所有子节点数据?" ConfirmTarget="Top"
CommandName="Delete" Icon="Delete" />
</Columns>
</f:Grid>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:Panel>
</Items>
</f:Panel>
</form>
<script type="text/javascript">
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
return false;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>
@@ -0,0 +1,307 @@
using BLL;
using Model;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.TestRun.BeforeTestRun
{
public partial class SubSysWorkPackage : PageBase
{
/// <summary>
/// 热处理委托主键
/// </summary>
public string TreePreRunId { get { return (string)ViewState["TreePreRunId"]; } set { ViewState["TreePreRunId"] = value; } }
public string SsubSystemId { get { return (string)ViewState["SsubSystemId"]; } set { ViewState["SsubSystemId"] = value; } }
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.InitTreeMenu();//加载树
}
}
#region 加载树
/// <summary>
/// 加载树
/// </summary>
private void InitTreeMenu()
{
this.tvControlItem.Nodes.Clear();
TreeNode rootNode = new TreeNode();
rootNode.Text = "系统划分";
rootNode.NodeID = "0";
rootNode.Expanded = true;
rootNode.ToolTip = "";
rootNode.EnableClickEvent = true;
this.tvControlItem.Nodes.Add(rootNode);
var allPreRunLs = Funs.DB.PreRun_SysDevice.Where(p => p.ProjectId == this.CurrUser.LoginProjectId).ToList();
var onePreRunLs = allPreRunLs.Where(p => p.PreRunLevel == 1);
foreach (var item in onePreRunLs)
{
TreeNode rootUnitNode = new TreeNode();//定义根节点
rootUnitNode.NodeID = item.PreRunId;
rootUnitNode.Text = item.PreRunName;
rootUnitNode.ToolTip = item.PreRunName;
rootUnitNode.CommandName = "";
rootUnitNode.EnableClickEvent = true;
rootUnitNode.EnableExpandEvent = true;
rootNode.Nodes.Add(rootUnitNode);
rootUnitNode.Expanded = true;
var otherPreRunls = allPreRunLs.Where(p => p.PreRunLevel != 1).ToList();
this.BindNodes(rootUnitNode, otherPreRunls, item.PreRunId);
}
}
/// <summary>
/// 绑定树节点
/// </summary>
private void BindNodes(TreeNode node, List<PreRun_SysDevice> list, string parentId)
{
var itemList = list.Where(p => p.ParentId == parentId).ToList();
if (itemList.Count > 0)
{
foreach (var item in itemList)
{
TreeNode newNode = new TreeNode();
newNode.Text = item.PreRunName;
newNode.NodeID = item.PreRunId;
newNode.ToolTip = item.PreRunName;
newNode.CommandName = "";
newNode.EnableClickEvent = true;
node.Nodes.Add(newNode);
BindNodes(newNode, list, item.PreRunId);
}
}
}
/// <summary>
/// 数加载
/// </summary>
protected void tvControlItem_NodeExpand(object sender, TreeNodeEventArgs e)
{
if (e.Node.Nodes != null)
{
e.Node.Nodes.Clear();
}
var allPreRunLs = Funs.DB.PreRun_SysDevice.Where(p => p.ProjectId == this.CurrUser.LoginProjectId).ToList();
this.BindNodes(e.Node, allPreRunLs, e.NodeID);
}
/// <summary>
/// 点击TreeView
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
{
this.TreePreRunId = tvControlItem.SelectedNodeID;
this.PageBase();
}
/// <summary>
/// 数据显示
/// </summary>
public void PageBase()
{
var model = Funs.DB.PreRun_SysDevice.FirstOrDefault(p => p.PreRunId == this.TreePreRunId);
if (model != null)
{
var ids = new List<string>();
if (!string.IsNullOrWhiteSpace(model.InstallationId)) ids.Add(model.InstallationId);
if (!string.IsNullOrWhiteSpace(model.ProcessesId)) ids.Add(model.ProcessesId);
if (!string.IsNullOrWhiteSpace(model.SystemId)) ids.Add(model.SystemId);
if (!string.IsNullOrWhiteSpace(model.SubsystemId)) ids.Add(model.SubsystemId);
var list = Funs.DB.PreRun_SysDevice.Where(p => ids.Contains(p.PreRunId)).ToList();
if (list.Count(p => p.PreRunLevel == 1) > 0)
{
zz.Hidden = false;
lblzzbm.Text = list.FirstOrDefault(p => p.PreRunLevel == 1).PreRunName;
lblzzmc.Text = list.FirstOrDefault(p => p.PreRunLevel == 1).PreRunCode;
}
if (list.Count(p => p.PreRunLevel == 2) > 0)
{
gx.Hidden = false;
lblgxmc.Text = list.FirstOrDefault(p => p.PreRunLevel == 2).PreRunCode;
lblgxbm.Text = list.FirstOrDefault(p => p.PreRunLevel == 2).PreRunName;
}
if (list.Count(p => p.PreRunLevel == 3) > 0)
{
sxt.Hidden = false;
lblsxtmc.Text = list.FirstOrDefault(p => p.PreRunLevel == 3).PreRunCode;
lblsxtbm.Text = list.FirstOrDefault(p => p.PreRunLevel == 3).PreRunName;
}
if (list.Count(p => p.PreRunLevel == 4) > 0)
{
sszxt.Hidden = false;
gzb.Hidden = false;
BridWorkPackGrid();
lblszxtmc.Text = list.FirstOrDefault(p => p.PreRunLevel == 4).PreRunCode;
lblszxtbm.Text = list.FirstOrDefault(p => p.PreRunLevel == 4).PreRunName;
this.SsubSystemId = list.FirstOrDefault(p => p.PreRunLevel == 4).PreRunId;
var workPackages = Funs.DB.SubSys_WorkPackage.Where(p => p.SubSystemId == this.SsubSystemId).ToList();
if (workPackages.Count > 0)
{
var workIds = workPackages.ConvertAll(p => p.WorkPackId);
BridSelectWorkPack(workIds);
drpWorkPack.Values = workIds.ToArray();
}
else
{
Grid1.DataSource = null;
Grid1.DataBind();
}
}
}
}
#endregion
/// <summary>
/// 保存
/// </summary>
protected void btnSave_Click(object sender, EventArgs e)
{
var prerunModel = Funs.DB.PreRun_SysDevice.FirstOrDefault(p => p.PreRunId == this.TreePreRunId);
if (prerunModel != null)
{
if (prerunModel.PreRunLevel == 4)
{
var deleteLs = Funs.DB.SubSys_WorkPackage.Where(p => p.SubSystemId == prerunModel.PreRunId);
Funs.DB.SubSys_WorkPackage.DeleteAllOnSubmit(deleteLs);
Funs.DB.SubmitChanges();
JArray mergedData = Grid1.GetMergedData();
int[] selections = Grid1.SelectedRowIndexArray;
foreach (JObject mergedRow in mergedData)
{
string status = mergedRow.Value<string>("status");
JObject values = mergedRow.Value<JObject>("values");
int i = mergedRow.Value<int>("index");
var workId = Grid1.DataKeys[i][0].ToString();
var model = new SubSys_WorkPackage();
model.SubSysId = Guid.NewGuid().ToString();
model.SubSystemId = prerunModel.PreRunId;
model.WorkPackId = workId;
model.WorkPackCode = !string.IsNullOrWhiteSpace(values.Value<string>("WorkPackCode")) ? values.Value<string>("WorkPackCode") : "WP";
model.Remark = values.Value<string>("Remark");
model.AddTime = DateTime.Now;
model.AddUser = this.CurrUser.UserId;
model.Sort = Funs.DB.SubSys_WorkPackage.Count();
Funs.DB.SubSys_WorkPackage.InsertOnSubmit(model);
}
Funs.DB.SubmitChanges();
ShowNotify("保存成功!", MessageBoxIcon.Success);
}
}
}
/// <summary>
/// 绑定工作包
/// </summary>
public void BridWorkPackGrid()
{
GridWorkPack.DataSource = Funs.DB.Work_Package.OrderBy(p => p.Sort).ToList();
GridWorkPack.DataBind();
}
/// <summary>
/// 绑定选择的工作包
/// </summary>
public void BridSelectWorkPack(List<string> workPackIds)
{
if (!string.IsNullOrWhiteSpace(this.SsubSystemId))
{
var data = from a in Funs.DB.Work_Package.Where(p => workPackIds.Contains(p.WorkPackId))
join b in Funs.DB.SubSys_WorkPackage.Where(p => p.SubSystemId == this.SsubSystemId) on a.WorkPackId equals b.WorkPackId into bb
from t in bb.DefaultIfEmpty()
select new WorkData()
{
WorkPackId = a.WorkPackId,
WorkPackCode = a.WorkPackCode,
WorkPackName = a.WorkPackName,
Sort = a.Sort,
Remark = t.Remark
};
//var list = data.ToList();
//if (list.Count > 0)
//{
// int i = 1;
// list.ForEach(a =>
// {
// var num = Funs.DB.SubSys_WorkPackage.Count(p => p.SubSystemId == this.SsubSystemId) + i;
// a.WorkPackCode = string.Format("WP{0}", string.Format("{0:d2}", num));
// i++;
// });
//}
if (data.Count() > 0)
{
var list = data.OrderBy(p => p.Sort).ToList();
Grid1.DataSource = list;
Grid1.DataBind();
}
else
{
Grid1.DataSource = null;
Grid1.DataBind();
}
}
}
/// <summary>
/// 工作包选择
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void drpWorkPack_TextChanged(object sender, EventArgs e)
{
if (drpWorkPack.Values.Length > 0)
{
BridSelectWorkPack(drpWorkPack.Values.ToList());
}
else
{
Grid1.DataSource = null;
Grid1.DataBind();
}
}
/// <summary>
/// 行点击事件
/// </summary>
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
{
if (e.CommandName == "Delete")
{
string rowID = e.RowID;
var model = Funs.DB.SubSys_WorkPackage.FirstOrDefault(p => p.WorkPackId == rowID);
Funs.DB.SubSys_WorkPackage.DeleteOnSubmit(model);
Funs.DB.SubmitChanges();
var workPackages = Funs.DB.SubSys_WorkPackage.Where(p => p.SubSystemId == this.SsubSystemId).ToList();
var workIds = workPackages.ConvertAll(p => p.WorkPackId);
BridSelectWorkPack(workIds);
drpWorkPack.Values = workIds.ToArray();
ShowNotify("删除成功!");
}
}
public class WorkData
{
public string WorkPackId { get; set; }
public string WorkPackName { get; set; }
public int? Sort { get; set; }
public string Remark { get; set; }
public string WorkPackCode { get; set; }
}
}
}
@@ -0,0 +1,285 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.TestRun.BeforeTestRun {
public partial class SubSysWorkPackage {
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// panelLeftRegion 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel panelLeftRegion;
/// <summary>
/// tvControlItem 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree tvControlItem;
/// <summary>
/// panelCenterRegion 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel panelCenterRegion;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// hdTrustID 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdTrustID;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// zz 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FormRow zz;
/// <summary>
/// lblzzmc 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblzzmc;
/// <summary>
/// lblzzbm 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblzzbm;
/// <summary>
/// gx 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FormRow gx;
/// <summary>
/// lblgxmc 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblgxmc;
/// <summary>
/// lblgxbm 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblgxbm;
/// <summary>
/// sxt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FormRow sxt;
/// <summary>
/// lblsxtmc 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblsxtmc;
/// <summary>
/// lblsxtbm 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblsxtbm;
/// <summary>
/// sszxt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FormRow sszxt;
/// <summary>
/// lblszxtmc 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblszxtmc;
/// <summary>
/// lblszxtbm 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblszxtbm;
/// <summary>
/// gzb 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FormRow gzb;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// drpWorkPack 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownBox drpWorkPack;
/// <summary>
/// GridWorkPack 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid GridWorkPack;
/// <summary>
/// txtWorkPackCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtWorkPackCode;
/// <summary>
/// txtRemark 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRemark;
}
}
@@ -45,7 +45,7 @@ namespace FineUIPro.Web.ZHGL.Person
{
var getData = PersonService.getListData(this.drpProject.SelectedValue, this.drpUnit.SelectedValue, this.drpWorkPost.SelectedValue,
this.txtPersonName.Text.Trim(), this.txtIdCard.Text.Trim(), this.rbIsPostStates.SelectedValue, Grid1);
Grid1.RecordCount = PersonService.count;
Grid1.RecordCount = PersonService.count2;
Grid1.DataSource = getData;
Grid1.DataBind();
}
+3 -2
View File
@@ -1,9 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Tree>
<TreeNode id="F2BC1293-8639-4BD6-8759-648BCF6346E9" Text="设备材料大类" NavigateUrl="JDGL/WBS/EquipmentMaterialBigType.aspx">
<TreeNode id="858E83E9-ADE5-452E-BD65-82D8DFF872C0" Text="分部、工作项及费用清单裁剪" NavigateUrl="JDGL/WBS/WBSSetAudit.aspx">
</TreeNode>
<TreeNode id="82E1EB3B-3589-4C32-9C20-40125CE6EAB4" Text="设备材料分类" NavigateUrl=""><TreeNode id="F2BC1293-8639-4BD6-8759-648BCF6346E9" Text="设备材料大类" NavigateUrl="JDGL/WBS/EquipmentMaterialBigType.aspx"></TreeNode>
<TreeNode id="D00B3C53-2972-4D24-B88F-B38880D4A24F" Text="设备材料分类" NavigateUrl="JDGL/WBS/EquipmentMaterialType.aspx"></TreeNode>
<TreeNode id="858E83E9-ADE5-452E-BD65-82D8DFF872C0" Text="分部、工作项及费用清单裁剪" NavigateUrl="JDGL/WBS/WBSSetAudit.aspx"></TreeNode>
</TreeNode>
<TreeNode id="E3905BF1-289B-4500-BD34-36F97D649AFC" Text="工作量录入" NavigateUrl="JDGL/WBS/WorkloadInput.aspx"></TreeNode>
<TreeNode id="2A3F8526-95C7-4D30-B2DD-DD26696BE150" Text="工作量统计" NavigateUrl="JDGL/WBS/WorkloadStatistics.aspx"></TreeNode>
<TreeNode id="59AAE0F0-2DB6-4065-B304-7E2C56EC3E5D" Text="赢得值曲线" NavigateUrl="JDGL/CostAnalysis/EarnedValueCurve.aspx"></TreeNode>
+4 -1
View File
@@ -34,7 +34,10 @@
<TreeNode id="1EC7978C-7800-45B2-9E80-3334644EF898" Text="开车物资请购管理" NavigateUrl="TestRun/DriverGoods/GoodsBuy.aspx"></TreeNode>
<TreeNode id="AACD667C-5481-425D-819C-3892168DF61E" Text="开车材料跟踪管理" NavigateUrl="TestRun/DriverGoods/MaterialTrace.aspx"></TreeNode>
</TreeNode>
<TreeNode id="AD6E08B6-5571-4FFB-BDBE-9E6811770BD6" Text="预试车管理" NavigateUrl=""><TreeNode id="A5D6EBB7-E7C8-48EE-8DBD-735117D3C62D" Text="单机试车" NavigateUrl="TestRun/BeforeTestRun/BeforeTestRun.aspx?type=1"></TreeNode>
<TreeNode id="AD6E08B6-5571-4FFB-BDBE-9E6811770BD6" Text="预试车管理" NavigateUrl=""><TreeNode id="5C07E135-C3AB-4CE4-97A2-C79970640272" Text="系统划分" NavigateUrl="TestRun/BeforeTestRun/DeviceRun.aspx"></TreeNode>
<TreeNode id="B4702BFB-8CEB-46AD-BDC0-751D146FE228" Text="工作包设置" NavigateUrl="TestRun/BeforeTestRun/SetWorkPackage.aspx"></TreeNode>
<TreeNode id="34719347-E5EE-4491-9E92-B1270C187C7F" Text="工作包裁剪" NavigateUrl="TestRun/BeforeTestRun/SubSysWorkPackage.aspx"></TreeNode>
<TreeNode id="A5D6EBB7-E7C8-48EE-8DBD-735117D3C62D" Text="单机试车" NavigateUrl="TestRun/BeforeTestRun/BeforeTestRun.aspx?type=1"></TreeNode>
<TreeNode id="EC5E63A4-8398-406C-AC79-34851AD49DF2" Text="冲洗吹扫" NavigateUrl="TestRun/BeforeTestRun/BeforeTestRun.aspx?type=2"></TreeNode>
<TreeNode id="C8A9A464-D6F4-4140-82DB-4AFCA26EF2A1" Text="化学清洗" NavigateUrl="TestRun/BeforeTestRun/BeforeTestRun.aspx?type=3"></TreeNode>
<TreeNode id="2348A410-F3A4-450B-A9D1-9CBD942AAA86" Text="烘炉" NavigateUrl="TestRun/BeforeTestRun/BeforeTestRun.aspx?type=4"></TreeNode>
+3
View File
@@ -123,6 +123,9 @@
color: #fff;
border: none !important;
}
.f-widget-content{
color:#FFFFFF;
}
</style>
<style type="text/css">
.titler {
+4 -1
View File
@@ -85,6 +85,7 @@
border: none !important;
font-size: 14px !important;
}
.centerregion .f-widget-header{
height:35px;
}
@@ -157,7 +158,9 @@
transform: translateX(-50%);
}
.f-widget-content{
color:#FFFFFF;
}
/*.item-pbig {
height: 45px;
width: 1000px;