This commit is contained in:
2026-07-26 17:52:46 +08:00
parent 7fb6b255d2
commit 4bd992b0a6
13 changed files with 202 additions and 64 deletions
@@ -41,4 +41,7 @@ CREATE TABLE HJGL_DrawingRecognition_PipeLengths (
dn NVARCHAR(50) NULL -- 公称直径(DN
CONSTRAINT PK_HJGL_DrawingRecognition_PipeLengths PRIMARY KEY (id) -- 主键约束
);
GO
GO
ALTER TABLE SGGLDB_SHJ.dbo.HJGL_Pipeline ADD DesignIsHotProess bit NULL;
EXEC SGGLDB_SHJ.sys.sp_addextendedproperty 'MS_Description', N'设计是否需要热处理', 'schema', N'dbo', 'table', N'HJGL_Pipeline', 'column', N'DesignIsHotProess';
@@ -62,16 +62,19 @@ namespace BLL
}
/// <summary>
/// 维护管线材料导入编码,只更新材料编码字段,避免影响材料主编码和焊口关联
/// 维护管线材料主编码和导入材料编码
/// </summary>
/// <param name="pipelineMatId">管线材料ID</param>
/// <param name="mainMaterialCode">材料主编码,可空</param>
/// <param name="materialCode">材料编码</param>
public static void UpdateMaterialCode2(string pipelineMatId, string materialCode)
public static void UpdateMaterialCodes(string pipelineMatId, string mainMaterialCode, string materialCode)
{
Model.SGGLDB db = Funs.DB;
Model.HJGL_PipeLineMat pipeLineMat = db.HJGL_PipeLineMat.FirstOrDefault(e => e.PipeLineMatId == pipelineMatId);
if (pipeLineMat != null)
{
// 主编码与材料编码必须同次提交,避免列表展示到不一致的材料信息。
pipeLineMat.MaterialCode = string.IsNullOrWhiteSpace(mainMaterialCode) ? null : mainMaterialCode.Trim();
pipeLineMat.MaterialCode2 = materialCode;
db.SubmitChanges();
}
@@ -278,10 +278,10 @@ namespace BLL
{
throw new ArgumentException("焊口ID不能为空。");
}
if (string.IsNullOrEmpty(item.GrooveTypeId))
/* if (string.IsNullOrEmpty(item.GrooveTypeId))
{
throw new ArgumentException("坡口类型不能为空。");
}
}*/
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
@@ -290,10 +290,10 @@ namespace BLL
{
throw new ArgumentException("未找到对应焊口。");
}
if (!db.Base_GrooveType.Any(x => x.GrooveTypeId == item.GrooveTypeId))
/* if (!db.Base_GrooveType.Any(x => x.GrooveTypeId == item.GrooveTypeId))
{
throw new ArgumentException("坡口类型不存在。");
}
}*/
var check = string.IsNullOrEmpty(item.FitupCheckId)
? null
@@ -310,7 +310,7 @@ namespace BLL
check.ProjectId = string.IsNullOrEmpty(item.ProjectId) ? weldJoint.ProjectId : item.ProjectId;
check.WeldJointId = item.WeldJointId;
check.GrooveTypeId = item.GrooveTypeId;
//check.GrooveTypeId = item.GrooveTypeId;
check.GrooveProcessType = item.GrooveProcessType;
check.GrooveAngle = item.GrooveAngle;
check.FitupGap = item.FitupGap;
@@ -328,7 +328,7 @@ namespace BLL
check.Remark = item.Remark;
// 组对检查需要同步回写焊口主表,保证焊口基础信息保持最新
weldJoint.GrooveTypeId = item.GrooveTypeId;
// weldJoint.GrooveTypeId = item.GrooveTypeId;
weldJoint.GrooveProcessType = item.GrooveProcessType;
weldJoint.GrooveAngle = item.GrooveAngle;
weldJoint.FitupGap = item.FitupGap;
@@ -573,7 +573,7 @@ namespace FineUIPro.Web.HJGL.DataImport
}
/// <summary>
/// 打开材料编码维护窗口,按管线材料ID维护 HJGL_PipeLineMat.MaterialCode2
/// 打开材料信息维护窗口,按管线材料ID维护材料主编码和材料编码
/// </summary>
private void OpenMaterialCodeEdit(Grid grid)
{
@@ -595,7 +595,7 @@ namespace FineUIPro.Web.HJGL.DataImport
return;
}
PageContext.RegisterStartupScript(Window5.GetShowReference(String.Format("MaterialInformationEdit.aspx?PipeLineMatId={0}", grid.SelectedRowID), "维护材料编码", 500, 180));
PageContext.RegisterStartupScript(Window5.GetShowReference(String.Format("MaterialInformationEdit.aspx?PipeLineMatId={0}", grid.SelectedRowID), "维护材料信息", 500, 300));
}
@@ -15,6 +15,14 @@
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:DropDownList ID="drpMainMaterialCode" runat="server" Label="材料主编码" EnableEdit="true"
AutoPostBack="true" OnSelectedIndexChanged="drpMainMaterialCode_SelectedIndexChanged"
LabelWidth="100px">
</f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtMaterialCode" runat="server" Label="材料编码"
@@ -22,6 +30,20 @@
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtHeatNo" runat="server" Label="炉号"
MaxLength="50" LabelWidth="100px">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtBatchNo" runat="server" Label="批号"
MaxLength="50" LabelWidth="100px">
</f:TextBox>
</Items>
</f:FormRow>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
@@ -1,5 +1,6 @@
using BLL;
using System;
using System.Linq;
namespace FineUIPro.Web.HJGL.DataImport
{
@@ -22,11 +23,16 @@ namespace FineUIPro.Web.HJGL.DataImport
protected void Page_Load(object sender, EventArgs e)
{
this.txtHeatNo.Readonly = true;
this.txtBatchNo.Readonly = true;
if (!IsPostBack)
{
btnClose.OnClientClick = ActiveWindow.GetHideReference();
this.PipeLineMatId = Request.Params["PipeLineMatId"];
BindMainMaterialCodes();
Model.HJGL_PipeLineMat pipeLineMat = PipelineMatService.GetPipeLineMat(this.PipeLineMatId);
if (pipeLineMat == null)
{
@@ -34,12 +40,64 @@ namespace FineUIPro.Web.HJGL.DataImport
return;
}
this.drpMainMaterialCode.SelectedValue = string.IsNullOrEmpty(pipeLineMat.MaterialCode)
? Const._Null
: pipeLineMat.MaterialCode;
this.txtMaterialCode.Text = pipeLineMat.MaterialCode2;
BindMaterialDetails(pipeLineMat.MaterialCode, false);
}
}
/// <summary>
/// 保存材料编码。
/// 绑定材料编码,下拉框保留空选项以支持解除材料主数据关联
/// </summary>
private void BindMainMaterialCodes()
{
this.drpMainMaterialCode.DataTextField = "MaterialCode";
this.drpMainMaterialCode.DataValueField = "MaterialCode";
this.drpMainMaterialCode.DataSource = MaterialCodeLibService.GetMaterialCodeLibList()
.OrderBy(x => x.MaterialCode)
.ToList();
this.drpMainMaterialCode.DataBind();
Funs.FineUIPleaseSelect(this.drpMainMaterialCode, "-请选择-");
}
/// <summary>
/// 材料主编码变化后同步其材料编码、炉号和批号。
/// </summary>
protected void drpMainMaterialCode_SelectedIndexChanged(object sender, EventArgs e)
{
BindMaterialDetails(GetMainMaterialCode(), true);
}
/// <summary>
/// 按材料主编码填充关联信息;清空选择时同步清空联动字段。
/// </summary>
private void BindMaterialDetails(string mainMaterialCode, bool updateMaterialCode)
{
Model.HJGL_MaterialCodeLib material = string.IsNullOrEmpty(mainMaterialCode)
? null
: MaterialCodeLibService.GetMaterialCodeLib(mainMaterialCode);
if (updateMaterialCode)
{
this.txtMaterialCode.Text = material == null ? string.Empty : material.Code;
}
this.txtHeatNo.Text = material == null ? string.Empty : material.HeatNo;
this.txtBatchNo.Text = material == null ? string.Empty : material.BatchNo;
}
/// <summary>
/// 将下拉框的“请选择”值转换为数据库可保存的空值。
/// </summary>
private string GetMainMaterialCode()
{
string value = this.drpMainMaterialCode.SelectedValue;
return string.IsNullOrEmpty(value) || value == Const._Null ? null : value.Trim();
}
/// <summary>
/// 保存材料主编码和材料编码。
/// </summary>
protected void btnSave_Click(object sender, EventArgs e)
{
@@ -49,7 +107,17 @@ namespace FineUIPro.Web.HJGL.DataImport
return;
}
PipelineMatService.UpdateMaterialCode2(this.PipeLineMatId, this.txtMaterialCode.Text.Trim());
string mainMaterialCode = GetMainMaterialCode();
if (!string.IsNullOrEmpty(mainMaterialCode) && MaterialCodeLibService.GetMaterialCodeLib(mainMaterialCode) == null)
{
Alert.ShowInTop("所选材料主编码不存在,请重新选择!", MessageBoxIcon.Warning);
return;
}
PipelineMatService.UpdateMaterialCodes(
this.PipeLineMatId,
mainMaterialCode,
this.txtMaterialCode.Text.Trim());
ShowNotify("保存成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
@@ -41,6 +41,15 @@ namespace FineUIPro.Web.HJGL.DataImport
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// drpMainMaterialCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpMainMaterialCode;
/// <summary>
/// txtMaterialCode 控件。
/// </summary>
@@ -50,6 +59,24 @@ namespace FineUIPro.Web.HJGL.DataImport
/// </remarks>
protected global::FineUIPro.TextBox txtMaterialCode;
/// <summary>
/// txtHeatNo 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtHeatNo;
/// <summary>
/// txtBatchNo 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtBatchNo;
/// <summary>
/// Toolbar1 控件。
/// </summary>
@@ -0,0 +1,18 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Ai辅助单线图自动提取材料表</title>
<link rel="icon" href="/favicon.ico" />
<script type="module" crossorigin src="./ocrz-app.js"></script>
<link rel="stylesheet" crossorigin href="./ocrz-app.css">
</head>
<body>
<div id="app"></div>
<!-- <input id="hdpdfurl2" value="https://equipmentcheck.oss-cn-beijing.aliyuncs.com/03DR-003A-12-C1R_Sht_1.PDF">
<input id="resultdata" value=""> -->
</body>
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -16,7 +16,7 @@
runat="server" BoxFlex="1" EnableColumnLines="true" DataKeyNames="FitupCheckId"
DataIDField="FitupCheckId" AllowPaging="true" IsDatabasePaging="true" PageSize="15"
OnPageIndexChange="Grid1_PageIndexChange" EnableRowDoubleClickEvent="true"
OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="True">
OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="True" >
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
@@ -62,7 +62,7 @@
<f:Grid ID="Grid2" ShowBorder="true" ShowHeader="false" Title="历史记录" IsFluid="true" ForceFit="true"
EnableCollapse="false" runat="server" BoxFlex="1" DataKeyNames="DesignBasisDataImportId"
AllowColumnLocking="true" EnableColumnLines="true" DataIDField="DesignBasisDataImportId"
AllowSorting="true" SortField="CreateDate" SortDirection="ASC" EnableMultiSelect="false"
AllowSorting="true" SortField="CreateDate" SortDirection="ASC" EnableMultiSelect="false" Height="250"
IsDatabasePaging="false" AllowPaging="true" PageSize="300" EnableBigDataRowTip="false" EnableBigData="true">
<Columns>
<f:RowNumberField EnablePagingNumber="true" HeaderText="编号"
+11 -15
View File
@@ -27,13 +27,11 @@
</TreeNode>
<TreeNode id="1C6F9CA9-FDAC-4CE5-A19C-5536538851E1" Text="试压包划分" NavigateUrl="HJGL/TestPackage/TestPackageEdit.aspx"></TreeNode>
<TreeNode id="8IDKGJE2-09B1-4607-DCS2-DCC3O48F080F" Text="数据导入" NavigateUrl=""><TreeNode id="32F5CC8C-E0F4-456C-AB88-77E36269FA50" Text="焊接设计基础数据导入" NavigateUrl="HJGL/WeldingManage/WeldJointList.aspx"></TreeNode>
<TreeNode id="EFD1E914-E79C-4F5E-A2F7-CFF4F7821284" Text="管线导入" NavigateUrl="HJGL/DataImport/PipeLineInAuto.aspx"></TreeNode>
<TreeNode id="34BAD63E-EF7C-4D7E-8641-C706BBFCD85F" Text="轴测图识别" NavigateUrl="HJGL/DataImport/DrawingRecognition.aspx"></TreeNode>
</TreeNode>
<TreeNode id="1EE36752-6077-47C9-AFF0-5372B862FF61" Text="管线划分" NavigateUrl="HJGL/PreDesign/PipelingDivide.aspx"></TreeNode>
<TreeNode id="EF6B01AF-D038-4A38-BFAF-D89130D60DE6" Text="材料信息导入" NavigateUrl="HJGL/DataImport/MaterialInformation.aspx"></TreeNode>
<TreeNode id="1E36EA73-D536-4215-BFB9-A8771937BD89" Text="工厂预制管理" NavigateUrl=""><TreeNode id="53948077-B51D-4FF3-BFB0-AB4E27C42875" Text="排产计划" NavigateUrl="HJGL/PreDesign/ProductionSchedulingPlan.aspx"></TreeNode>
<TreeNode id="8255554C-0A92-4C7B-BF19-779AF0220A8C" Text="预制组件管理" NavigateUrl="HJGL/PreDesign/PrePipeline.aspx"></TreeNode>
<TreeNode id="1E36EA73-D536-4215-BFB9-A8771937BD89" Text="工厂预制管理" NavigateUrl=""><TreeNode id="8255554C-0A92-4C7B-BF19-779AF0220A8C" Text="预制组件管理" NavigateUrl="HJGL/PreDesign/PrePipeline.aspx"></TreeNode>
<TreeNode id="F18CFC0E-47E0-477A-9AB3-72B88D438299" Text="堆场规划" NavigateUrl="HJGL/PreDesign/YardPlanning.aspx"></TreeNode>
<TreeNode id="BD9C587E-17C2-49F1-82AE-A05117E41D89" Text="安装清单" NavigateUrl="HJGL/PreDesign/InstallList.aspx"></TreeNode>
<TreeNode id="25DED954-10C9-47CC-99F2-C44FDE9E0A81" Text="包装管理" NavigateUrl="HJGL/PreDesign/PackagingManage.aspx"></TreeNode>
@@ -59,20 +57,12 @@
<TreeNode id="63CD1C52-1A87-4946-9CA7-8C3C2CB0CA2E" Text="焊接工艺规程编制" NavigateUrl="HJGL/WPQ/WPQList.aspx"></TreeNode>
<TreeNode id="66290870-2B12-46CA-8E5D-8CB7233ACB8C" Text="焊接施工基础数据录入" NavigateUrl="HJGL/WeldingManage/WeldingConDate.aspx"></TreeNode>
</TreeNode>
<TreeNode id="43F92EA7-462F-41E6-8D8A-243C03A5317E" Text="信息查询" NavigateUrl=""><TreeNode id="A98C7295-5735-4C8A-9565-7635A9C5D258" Text="管线信息总览" NavigateUrl="HJGL/InfoQuery/PipelineQuery.aspx"></TreeNode>
<TreeNode id="6B16D1D4-FBDA-4B2B-AE0A-B465C686C27D" Text="轴测图" NavigateUrl="HJGL/JoinMarking/JointShow.aspx"></TreeNode>
<TreeNode id="F4275A19-A72E-448E-B0C1-07DB2FCEE224" Text="焊口台账总览" NavigateUrl="HJGL/InfoQuery/JointQuery.aspx"></TreeNode>
<TreeNode id="E642C8A1-5D56-4A0C-89E2-304E0421D281" Text="管道材料信息总览" NavigateUrl="HJGL/InfoQuery/MaterialOverview.aspx"></TreeNode>
<TreeNode id="B5DD3FA8-28F9-49F4-AF3E-9916A65A1C7F" Text="管长信息总览" NavigateUrl="HJGL/InfoQuery/PipeLengthOverview.aspx"></TreeNode>
</TreeNode>
<TreeNode id="D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F001" Text="焊前管理" NavigateUrl=""><TreeNode id="D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F002" Text="下料抽检记录台账" NavigateUrl="HJGL/PreWeld/CuttingCheck.aspx"></TreeNode>
<TreeNode id="D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F003" Text="组对抽检列表台账" NavigateUrl="HJGL/PreWeld/FitupCheck.aspx"></TreeNode>
</TreeNode>
<TreeNode id="4D36E99E-B3D8-4C61-826A-CBD98EC51515" Text="焊接过程管理" NavigateUrl=""><TreeNode id="E6F6982A-48C7-455C-8EBB-CC7088EBF15A" Text="焊接施工计划" NavigateUrl="HJGL/WeldingManage/WeldingPlan.aspx"></TreeNode>
<TreeNode id="ADC7EA61-6313-4DF9-913F-E9207F6525CA" Text="材料匹配(工厂预制)" NavigateUrl="HJGL/WeldingManage/WeldMatMatch.aspx?PipeArea=1"></TreeNode>
<TreeNode id="4D36E99E-B3D8-4C61-826A-CBD98EC51515" Text="焊接过程管理" NavigateUrl=""><TreeNode id="ADC7EA61-6313-4DF9-913F-E9207F6525CA" Text="材料匹配(工厂预制)" NavigateUrl="HJGL/WeldingManage/WeldMatMatch.aspx?PipeArea=1"></TreeNode>
<TreeNode id="164E056C-30C9-4C29-A6B6-AF0F0C943A59" Text="材料匹配(现场安装)" NavigateUrl="HJGL/WeldingManage/WeldMatMatch.aspx?PipeArea=2"></TreeNode>
<TreeNode id="C1EACB23-A029-4DE7-886D-7772D9DDE735" Text="焊口二次设计" NavigateUrl="HJGL/WeldingManage/JotTwoDesign.aspx"></TreeNode>
<TreeNode id="6ce0b6bc-aa4d-4f0d-9f1f-75a553810793" Text="焊接任务单" NavigateUrl="HJGL/WeldingManage/WeldTask.aspx"></TreeNode>
<TreeNode id="D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F002" Text="管道下料检查记录" NavigateUrl="HJGL/PreWeld/CuttingCheck.aspx"></TreeNode>
<TreeNode id="D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F003" Text="组对检查记录" NavigateUrl="HJGL/PreWeld/FitupCheck.aspx"></TreeNode>
<TreeNode id="5TYHMD2F-2582-4DEB-905E-6E9DCFEFBGHO" Text="焊接日报" NavigateUrl="HJGL/WeldingManage/WeldReport.aspx"></TreeNode>
</TreeNode>
<TreeNode id="3363C60A-E1ED-445B-BC93-DF2BE04D9759" Text="无损检测管理" NavigateUrl=""><TreeNode id="3ACE25CE-C5CE-4CEC-AD27-0D5CF1DF2F01" Text="点口管理" NavigateUrl="HJGL/PointTrust/PointBatch.aspx"></TreeNode>
@@ -105,4 +95,10 @@
<TreeNode id="2C66A01D-B53F-46A1-89F0-30ED137C7498" Text="检测结果汇总" NavigateUrl="HJGL/WeldingReport/CheckResult.aspx"></TreeNode>
<TreeNode id="6035E549-66FF-4B6D-989B-BE99C9EF5EB7" Text="焊接数据" NavigateUrl="ZHGL/DataSync/ProjectDataSync/Project_HJGLData_HJGL.aspx"></TreeNode>
</TreeNode>
</Tree>
<TreeNode id="43F92EA7-462F-41E6-8D8A-243C03A5317E" Text="信息查询" NavigateUrl=""><TreeNode id="A98C7295-5735-4C8A-9565-7635A9C5D258" Text="管线信息总览" NavigateUrl="HJGL/InfoQuery/PipelineQuery.aspx"></TreeNode>
<TreeNode id="6B16D1D4-FBDA-4B2B-AE0A-B465C686C27D" Text="轴测图" NavigateUrl="HJGL/JoinMarking/JointShow.aspx"></TreeNode>
<TreeNode id="F4275A19-A72E-448E-B0C1-07DB2FCEE224" Text="焊口台账总览" NavigateUrl="HJGL/InfoQuery/JointQuery.aspx"></TreeNode>
<TreeNode id="E642C8A1-5D56-4A0C-89E2-304E0421D281" Text="管道材料信息总览" NavigateUrl="HJGL/InfoQuery/MaterialOverview.aspx"></TreeNode>
<TreeNode id="B5DD3FA8-28F9-49F4-AF3E-9916A65A1C7F" Text="管长信息总览" NavigateUrl="HJGL/InfoQuery/PipeLengthOverview.aspx"></TreeNode>
</TreeNode>
</Tree>