feat(hjgl):增加焊接日报待审核表格编辑
This commit is contained in:
@@ -382,6 +382,53 @@ namespace BLL
|
||||
}, out totalCount).FirstOrDefault();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 更新待审核明细的实际施工工艺参数。
|
||||
/// </summary>
|
||||
/// <param name="input">待审核明细及四项工艺参数</param>
|
||||
/// <returns>错误信息,空字符串表示成功</returns>
|
||||
public static string UpdateWeldingDailyTempDetailParameters(Model.WeldingDailyTempDetailEditInput input)
|
||||
{
|
||||
if (input == null || string.IsNullOrWhiteSpace(input.TempDetailId)
|
||||
|| string.IsNullOrWhiteSpace(input.ProjectId))
|
||||
{
|
||||
return "待审核明细或项目不能为空";
|
||||
}
|
||||
|
||||
string weldingMethodId = NormalizeOptionalId(input.WeldingMethodId);
|
||||
string weldTypeId = NormalizeOptionalId(input.WeldTypeId);
|
||||
string weldingWire = NormalizeOptionalId(input.WeldingWire);
|
||||
string weldingRod = NormalizeOptionalId(input.WeldingRod);
|
||||
string parameterError = ValidatePendingWeldingParameters(
|
||||
weldingMethodId, weldTypeId, weldingWire, weldingRod);
|
||||
if (!string.IsNullOrEmpty(parameterError))
|
||||
{
|
||||
return parameterError;
|
||||
}
|
||||
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
var detail = db.HJGL_WeldingDailyTempDetail.FirstOrDefault(x =>
|
||||
x.TempDetailId == input.TempDetailId && x.ProjectId == input.ProjectId);
|
||||
if (detail == null)
|
||||
{
|
||||
return "待审核明细不存在";
|
||||
}
|
||||
if (detail.AuditState >= AuditStateApproved)
|
||||
{
|
||||
return "该明细已完成审核,不能修改";
|
||||
}
|
||||
|
||||
// 编辑页只维护临时工艺快照;正式焊口仍在专工审核通过时统一回写。
|
||||
detail.WeldingMethodId = weldingMethodId;
|
||||
detail.WeldTypeId = weldTypeId;
|
||||
detail.WeldingWire = weldingWire;
|
||||
detail.WeldingRod = weldingRod;
|
||||
db.SubmitChanges();
|
||||
}
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 构造待审核查询。PC端列表和接口列表、明细均从这里读取,确保字段映射和待审核状态一致。
|
||||
/// </summary>
|
||||
@@ -1109,6 +1156,11 @@ namespace BLL
|
||||
}
|
||||
}
|
||||
|
||||
private static string NormalizeOptionalId(string value)
|
||||
{
|
||||
return string.IsNullOrWhiteSpace(value) ? null : value.Trim();
|
||||
}
|
||||
|
||||
private static string FirstNotEmpty(params string[] values)
|
||||
{
|
||||
return values == null ? null : values.FirstOrDefault(x => !string.IsNullOrWhiteSpace(x));
|
||||
|
||||
@@ -1719,6 +1719,7 @@
|
||||
<Content Include="HJGL\WeldingManage\WeldMatMatch.aspx" />
|
||||
<Content Include="HJGL\WeldingManage\WeldMatMatchGet.aspx" />
|
||||
<Content Include="HJGL\WeldingManage\WeldReport.aspx" />
|
||||
<Content Include="HJGL\WeldingManage\WeldingDailyTempDetailEdit.aspx" />
|
||||
<Content Include="HJGL\WeldingManage\WeldAppearanceCheck.aspx" />
|
||||
<Content Include="HJGL\WeldingManage\WeldAppearanceCheckEdit.aspx" />
|
||||
<Content Include="HJGL\WeldingManage\WeldReportEdit.aspx" />
|
||||
@@ -11584,6 +11585,13 @@
|
||||
<DependentUpon>WeldReport.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="HJGL\WeldingManage\WeldingDailyTempDetailEdit.aspx.cs">
|
||||
<DependentUpon>WeldingDailyTempDetailEdit.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="HJGL\WeldingManage\WeldingDailyTempDetailEdit.aspx.designer.cs">
|
||||
<DependentUpon>WeldingDailyTempDetailEdit.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="HJGL\WeldingManage\WeldAppearanceCheck.aspx.cs">
|
||||
<DependentUpon>WeldAppearanceCheck.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
@@ -17342,4 +17350,4 @@
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
||||
</Project>
|
||||
|
||||
@@ -266,6 +266,11 @@
|
||||
</Toolbars>
|
||||
<Columns>
|
||||
<f:RowNumberField EnablePagingNumber="true" HeaderText="序号" Width="50px" HeaderTextAlign="Center" TextAlign="Center" />
|
||||
<f:WindowField ColumnID="PendingEdit" HeaderText="操作" Text="编辑" Width="60px"
|
||||
HeaderTextAlign="Center" TextAlign="Center" WindowID="WindowPendingEdit" Locked="true"
|
||||
DataIFrameUrlFields="TempDetailId"
|
||||
DataIFrameUrlFormatString="WeldingDailyTempDetailEdit.aspx?TempDetailId={0}">
|
||||
</f:WindowField>
|
||||
<f:RenderField HeaderText="管线号" ColumnID="PipelineCode" DataField="PipelineCode" FieldType="String"
|
||||
HeaderTextAlign="Center" TextAlign="Left" Width="180px">
|
||||
</f:RenderField>
|
||||
@@ -364,6 +369,10 @@
|
||||
</f:Panel>
|
||||
</Items>
|
||||
</f:Panel>
|
||||
<f:Window ID="WindowPendingEdit" Title="编辑待审核焊接工艺" Hidden="true" EnableIFrame="true"
|
||||
Target="Top" EnableResize="false" runat="server" OnClose="WindowPendingEdit_Close"
|
||||
IsModal="true" Width="680px" Height="320px">
|
||||
</f:Window>
|
||||
<f:Window ID="Window1" Title="弹出窗体" Hidden="true" EnableIFrame="true"
|
||||
EnableMaximize="true" Target="Top" EnableResize="false" runat="server" OnClose="Window1_Close"
|
||||
IsModal="true" Width="1400px" Height="650px">
|
||||
|
||||
@@ -634,6 +634,14 @@ namespace FineUIPro.Web.HJGL.WeldingManage
|
||||
this.BindGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 关闭待审核工艺编辑窗口后刷新当前页。
|
||||
/// </summary>
|
||||
protected void WindowPendingEdit_Close(object sender, WindowCloseEventArgs e)
|
||||
{
|
||||
BindPendingGrid();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查询
|
||||
/// </summary>
|
||||
|
||||
@@ -410,6 +410,11 @@ namespace FineUIPro.Web.HJGL.WeldingManage
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPendingPageSize;
|
||||
|
||||
/// <summary>
|
||||
/// WindowPendingEdit 控件。
|
||||
/// </summary>
|
||||
protected global::FineUIPro.Window WindowPendingEdit;
|
||||
|
||||
/// <summary>
|
||||
/// Window1 控件。
|
||||
/// </summary>
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WeldingDailyTempDetailEdit.aspx.cs" Inherits="FineUIPro.Web.HJGL.WeldingManage.WeldingDailyTempDetailEdit" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title>编辑待审核焊接工艺</title>
|
||||
<base target="_self" />
|
||||
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
|
||||
</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="12px" runat="server">
|
||||
<Rows>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:TextBox ID="txtPipelineCode" runat="server" Label="管线号" Readonly="true" LabelWidth="90px" />
|
||||
<f:TextBox ID="txtWeldJointCode" runat="server" Label="焊口号" Readonly="true" LabelWidth="90px" />
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DropDownList ID="drpWeldingMethod" runat="server" Label="焊接方法"
|
||||
EnableEdit="true" LabelWidth="90px" />
|
||||
<f:DropDownList ID="drpWeldType" runat="server" Label="焊缝类型"
|
||||
EnableEdit="true" LabelWidth="90px" />
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
<f:FormRow>
|
||||
<Items>
|
||||
<f:DropDownList ID="drpWeldingWire" runat="server" Label="焊丝"
|
||||
EnableEdit="true" LabelWidth="90px" />
|
||||
<f:DropDownList ID="drpWeldingRod" runat="server" Label="焊条"
|
||||
EnableEdit="true" LabelWidth="90px" />
|
||||
</Items>
|
||||
</f:FormRow>
|
||||
</Rows>
|
||||
<Toolbars>
|
||||
<f:Toolbar runat="server" Position="Bottom" ToolbarAlign="Right">
|
||||
<Items>
|
||||
<f:Button ID="btnSave" runat="server" Text="保存" Icon="SystemSave" OnClick="btnSave_Click" />
|
||||
<f:Button ID="btnClose" runat="server" Text="关闭" Icon="SystemClose" EnablePostBack="false" />
|
||||
</Items>
|
||||
</f:Toolbar>
|
||||
</Toolbars>
|
||||
</f:Form>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,96 @@
|
||||
using BLL;
|
||||
using System;
|
||||
|
||||
namespace FineUIPro.Web.HJGL.WeldingManage
|
||||
{
|
||||
public partial class WeldingDailyTempDetailEdit : PageBase
|
||||
{
|
||||
private string TempDetailId
|
||||
{
|
||||
get { return (string)ViewState["TempDetailId"]; }
|
||||
set { ViewState["TempDetailId"] = value; }
|
||||
}
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (IsPostBack)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
btnClose.OnClientClick = ActiveWindow.GetHideReference();
|
||||
TempDetailId = Request.Params["TempDetailId"];
|
||||
BindProcessDropDownLists();
|
||||
BindDetail();
|
||||
}
|
||||
|
||||
private void BindProcessDropDownLists()
|
||||
{
|
||||
Base_WeldingMethodService.InitWeldingMethodDropDownList(drpWeldingMethod, true, "请选择");
|
||||
Base_WeldTypeService.InitWeldTypeDropDownList(drpWeldType, "请选择", true);
|
||||
Base_ConsumablesService.InitConsumablesDropDownList(drpWeldingWire, true, "1", "请选择");
|
||||
Base_ConsumablesService.InitConsumablesDropDownList(drpWeldingRod, true, "2", "请选择");
|
||||
}
|
||||
|
||||
private void BindDetail()
|
||||
{
|
||||
var detail = WeldingDailyService.GetWeldingDailyTempDetailById(TempDetailId);
|
||||
if (detail == null || detail.ProjectId != CurrUser.LoginProjectId)
|
||||
{
|
||||
btnSave.Enabled = false;
|
||||
Alert.ShowInTop("待审核明细不存在!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
|
||||
txtPipelineCode.Text = detail.PipelineCode;
|
||||
txtWeldJointCode.Text = detail.WeldJointCode;
|
||||
SetSelectedValue(drpWeldingMethod, detail.WeldingMethodId);
|
||||
SetSelectedValue(drpWeldType, detail.WeldTypeId);
|
||||
SetSelectedValue(drpWeldingWire, detail.WeldingWire);
|
||||
SetSelectedValue(drpWeldingRod, detail.WeldingRod);
|
||||
}
|
||||
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (!CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.PersonId,
|
||||
Const.HJGL_WeldReportMenuId, Const.BtnModify))
|
||||
{
|
||||
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
|
||||
string error = WeldingDailyService.UpdateWeldingDailyTempDetailParameters(
|
||||
new Model.WeldingDailyTempDetailEditInput
|
||||
{
|
||||
TempDetailId = TempDetailId,
|
||||
ProjectId = CurrUser.LoginProjectId,
|
||||
WeldingMethodId = NormalizeSelectedValue(drpWeldingMethod.SelectedValue),
|
||||
WeldTypeId = NormalizeSelectedValue(drpWeldType.SelectedValue),
|
||||
WeldingWire = NormalizeSelectedValue(drpWeldingWire.SelectedValue),
|
||||
WeldingRod = NormalizeSelectedValue(drpWeldingRod.SelectedValue)
|
||||
});
|
||||
if (!string.IsNullOrEmpty(error))
|
||||
{
|
||||
ShowNotify(error, MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
|
||||
LogService.AddLog(CurrUser.PersonId, "编辑焊接日报待审核工艺参数");
|
||||
ShowNotify("保存成功!", MessageBoxIcon.Success);
|
||||
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
|
||||
}
|
||||
|
||||
private static void SetSelectedValue(FineUIPro.DropDownList dropDownList, string value)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(value))
|
||||
{
|
||||
dropDownList.SelectedValue = value;
|
||||
}
|
||||
}
|
||||
|
||||
private static string NormalizeSelectedValue(string value)
|
||||
{
|
||||
return string.IsNullOrEmpty(value) || value == Const._Null ? null : value;
|
||||
}
|
||||
}
|
||||
}
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <自动生成>
|
||||
// 此代码由工具生成。
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.HJGL.WeldingManage
|
||||
{
|
||||
public partial class WeldingDailyTempDetailEdit
|
||||
{
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
protected global::FineUIPro.Form SimpleForm1;
|
||||
protected global::FineUIPro.TextBox txtPipelineCode;
|
||||
protected global::FineUIPro.TextBox txtWeldJointCode;
|
||||
protected global::FineUIPro.DropDownList drpWeldingMethod;
|
||||
protected global::FineUIPro.DropDownList drpWeldType;
|
||||
protected global::FineUIPro.DropDownList drpWeldingWire;
|
||||
protected global::FineUIPro.DropDownList drpWeldingRod;
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
protected global::FineUIPro.Button btnClose;
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
using System;
|
||||
using System;
|
||||
|
||||
namespace Model
|
||||
{
|
||||
@@ -54,6 +54,19 @@ namespace Model
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 焊接日报待审核明细工艺参数编辑对象。
|
||||
/// </summary>
|
||||
public class WeldingDailyTempDetailEditInput
|
||||
{
|
||||
public string TempDetailId { get; set; }
|
||||
public string ProjectId { get; set; }
|
||||
public string WeldingMethodId { get; set; }
|
||||
public string WeldTypeId { get; set; }
|
||||
public string WeldingWire { get; set; }
|
||||
public string WeldingRod { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 焊接日报待审核明细。
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user