From 2736e8ad89c9395b873399b8bf48ec570ea83c7c Mon Sep 17 00:00:00 2001 From: fei550 <1420031550@qq.com> Date: Wed, 17 Jun 2026 14:22:06 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E5=A2=9E=E5=8A=A0=E7=84=8A=E5=89=8D?= =?UTF-8?q?=E7=AE=A1=E7=90=86=EF=BC=8C=E6=9D=90=E6=96=99=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E6=9D=A1=E7=A0=81=E6=89=AB=E7=A0=81=E6=8E=A5=E5=8F=A3=EF=BC=8C?= =?UTF-8?q?=E6=9D=90=E6=96=99=E4=BF=A1=E6=81=AF=E5=AF=BC=E5=85=A5=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E6=97=A0=E7=82=89=E6=89=B9=E5=8F=B7/=E6=9C=89?= =?UTF-8?q?=E7=82=89=E6=89=B9=E5=8F=B7=20=E5=A4=9A=E7=A7=8D=E5=AF=BC?= =?UTF-8?q?=E5=85=A5=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...LDB_V2026-06-17-lpf - (焊前管理菜单脚本).sql | 34 + ...SGGLDB_V2026-06-17-lpf(焊前管理建表脚本).sql | 103 ++ SGGL/BLL/API/APIBaseInfoService.cs | 21 + .../API/HJGL/APIPreWeldInspectionService.cs | 161 +++ SGGL/BLL/BLL.csproj | 2 + SGGL/BLL/CLGL/TwInOutplanmasterService.cs | 10 +- SGGL/BLL/CLGL/TwInputdetailBarCodeService.cs | 6 +- SGGL/BLL/Common/Const.cs | 15 + .../HJGL/BaseInfo/MaterialCodeLibService.cs | 21 + .../WeldingManage/PreWeldInspectionService.cs | 151 +++ SGGL/FineUIPro.Web/CLGL/InputMaster.aspx | 10 +- .../Excel/DataIn/PipelineMatWithBatch.xlsx | Bin 0 -> 5338 bytes .../File/Fastreport/发票存货入库单.frx | 12 +- .../File/Fastreport/发票存货出库单.frx | 12 +- SGGL/FineUIPro.Web/File/Fastreport/发货单.frx | 6 +- .../File/Fastreport/材料入库单.frx | 10 +- .../File/Fastreport/材料入库条码.frx | 29 +- .../File/Fastreport/材料入库计划单.frx | 10 +- .../File/Fastreport/材料出库单.frx | 10 +- .../File/Fastreport/材料出库计划单.frx | 10 +- .../File/Fastreport/组件打印.frx | 8 +- SGGL/FineUIPro.Web/File/Fastreport/装箱单.frx | 16 +- SGGL/FineUIPro.Web/FineUIPro.Web.csproj | 32 + .../HJGL/PreWeld/CuttingCheck.aspx | 85 ++ .../HJGL/PreWeld/CuttingCheck.aspx.cs | 74 ++ .../PreWeld/CuttingCheck.aspx.designer.cs | 143 +++ .../HJGL/PreWeld/CuttingCheckEdit.aspx | 65 ++ .../HJGL/PreWeld/CuttingCheckEdit.aspx.cs | 92 ++ .../PreWeld/CuttingCheckEdit.aspx.designer.cs | 116 +++ .../HJGL/PreWeld/FitupCheck.aspx | 85 ++ .../HJGL/PreWeld/FitupCheck.aspx.cs | 74 ++ .../HJGL/PreWeld/FitupCheck.aspx.designer.cs | 143 +++ .../HJGL/PreWeld/FitupCheckEdit.aspx | 82 ++ .../HJGL/PreWeld/FitupCheckEdit.aspx.cs | 133 +++ .../PreWeld/FitupCheckEdit.aspx.designer.cs | 143 +++ .../HJGL/WeldingManage/PipelineMatIn.aspx | 2 + .../HJGL/WeldingManage/PipelineMatIn.aspx.cs | 46 +- .../PipelineMatIn.aspx.designer.cs | 9 + SGGL/FineUIPro.Web/common/Menu_HJGL.xml | 3 + .../APIItem/HJGL/PreWeldInspectionItem.cs | 110 ++ .../Model/CLGL/Tw_InputDetailBarCodeOutput.cs | 2 + .../HJGL/MaterialCodeLibBarCodeOutput.cs | 14 + SGGL/Model/Model.cs | 985 ++++++++++++++++++ SGGL/Model/Model.csproj | 2 + SGGL/WebAPI/Controllers/BaseInfoController.cs | 41 + .../PreWeldInspectionController.cs | 77 ++ SGGL/WebAPI/ErrLog.txt | 174 ++++ SGGL/WebAPI/Global.asax.cs | 4 +- SGGL/WebAPI/WebAPI.csproj | 3 +- 49 files changed, 3307 insertions(+), 89 deletions(-) create mode 100644 DataBase/版本日志/SGGLDB_V2026-06-17-lpf - (焊前管理菜单脚本).sql create mode 100644 DataBase/版本日志/SGGLDB_V2026-06-17-lpf(焊前管理建表脚本).sql create mode 100644 SGGL/BLL/API/HJGL/APIPreWeldInspectionService.cs create mode 100644 SGGL/BLL/HJGL/WeldingManage/PreWeldInspectionService.cs create mode 100644 SGGL/FineUIPro.Web/File/Excel/DataIn/PipelineMatWithBatch.xlsx create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx.cs create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx.designer.cs create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx.cs create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx.designer.cs create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx.cs create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx.designer.cs create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx.cs create mode 100644 SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx.designer.cs create mode 100644 SGGL/Model/APIItem/HJGL/PreWeldInspectionItem.cs create mode 100644 SGGL/Model/HJGL/MaterialCodeLibBarCodeOutput.cs create mode 100644 SGGL/WebAPI/Controllers/HJGL/WeldingManage/PreWeldInspectionController.cs diff --git a/DataBase/版本日志/SGGLDB_V2026-06-17-lpf - (焊前管理菜单脚本).sql b/DataBase/版本日志/SGGLDB_V2026-06-17-lpf - (焊前管理菜单脚本).sql new file mode 100644 index 00000000..c01551ca --- /dev/null +++ b/DataBase/版本日志/SGGLDB_V2026-06-17-lpf - (焊前管理菜单脚本).sql @@ -0,0 +1,34 @@ +INSERT INTO Sys_Menu (MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES (N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F001',N'焊前管理',NULL,N'',45,N'0',N'Menu_HJGL',0,0,1); +INSERT INTO Sys_Menu (MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES (N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F003',N'组对抽检列表台账',NULL,N'HJGL/PreWeld/FitupCheck.aspx',20,N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F001',N'Menu_HJGL',0,1,1); +GO + +INSERT INTO Sys_ButtonToMenu (ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES (NEWID(),N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F003',N'增加',2); + GO + INSERT INTO Sys_ButtonToMenu (ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES (NEWID(),N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F003',N'保存',6); + GO + INSERT INTO Sys_ButtonToMenu (ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES (NEWID(),N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F003',N'删除',4); + GO + INSERT INTO Sys_ButtonToMenu (ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES (NEWID(),N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F003',N'修改',3); + GO + +GO +INSERT INTO Sys_Menu (MenuId,MenuName,Icon,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES (N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F002',N'下料抽检记录台账',NULL,N'HJGL/PreWeld/CuttingCheck.aspx',10,N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F001',N'Menu_HJGL',0,1,1); + +INSERT INTO Sys_ButtonToMenu (ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES (NEWID(),N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F002',N'增加',2); + GO + INSERT INTO Sys_ButtonToMenu (ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES (NEWID(),N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F002',N'保存',6); + GO + INSERT INTO Sys_ButtonToMenu (ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES (NEWID(),N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F002',N'删除',4); + GO + INSERT INTO Sys_ButtonToMenu (ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES (NEWID(),N'D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F002',N'修改',3); + GO + +GO \ No newline at end of file diff --git a/DataBase/版本日志/SGGLDB_V2026-06-17-lpf(焊前管理建表脚本).sql b/DataBase/版本日志/SGGLDB_V2026-06-17-lpf(焊前管理建表脚本).sql new file mode 100644 index 00000000..d6d5f433 --- /dev/null +++ b/DataBase/版本日志/SGGLDB_V2026-06-17-lpf(焊前管理建表脚本).sql @@ -0,0 +1,103 @@ +/* 焊前管理 - 下料抽检记录台账 */ +IF OBJECT_ID(N'dbo.HJGL_PreWeldCuttingCheck', N'U') IS NULL +BEGIN + CREATE TABLE dbo.HJGL_PreWeldCuttingCheck + ( + CuttingCheckId NVARCHAR(50) NOT NULL, + ProjectId NVARCHAR(50) NULL, + WeldJointId NVARCHAR(50) NOT NULL, + + IsMaterialCodeBatchNoAccurate BIT NOT NULL CONSTRAINT DF_PreWeldCuttingCheck_CodeBatch DEFAULT(0), + IsMaterialQuantityAccurate BIT NOT NULL CONSTRAINT DF_PreWeldCuttingCheck_Quantity DEFAULT(0), + IsQualified BIT NOT NULL CONSTRAINT DF_PreWeldCuttingCheck_Qualified DEFAULT(0), + + CheckPerson NVARCHAR(50) NULL, + CheckTime DATETIME NULL, + + CreateUser NVARCHAR(50) NULL, + CreateTime DATETIME NULL, + Remark NVARCHAR(500) NULL, + + CONSTRAINT PK_HJGL_PreWeldCuttingCheck PRIMARY KEY (CuttingCheckId), + CONSTRAINT FK_PreWeldCuttingCheck_WeldJoint FOREIGN KEY (WeldJointId) + REFERENCES dbo.HJGL_WeldJoint(WeldJointId) + ); + + CREATE UNIQUE INDEX UX_PreWeldCuttingCheck_WeldJointId + ON dbo.HJGL_PreWeldCuttingCheck(WeldJointId); + + CREATE INDEX IX_PreWeldCuttingCheck_Project_CheckTime + ON dbo.HJGL_PreWeldCuttingCheck(ProjectId, CheckTime); +END +GO + + +/* 焊前管理 - 组对抽检列表台账 */ +IF OBJECT_ID(N'dbo.HJGL_PreWeldFitupCheck', N'U') IS NULL +BEGIN + CREATE TABLE dbo.HJGL_PreWeldFitupCheck + ( + FitupCheckId NVARCHAR(50) NOT NULL, + ProjectId NVARCHAR(50) NULL, + WeldJointId NVARCHAR(50) NOT NULL, + + GrooveTypeId NVARCHAR(50) NOT NULL, + GrooveProcessType NVARCHAR(100) NULL, + GrooveAngle DECIMAL(18, 2) NULL, + FitupGap DECIMAL(18, 2) NULL, + Misalignment DECIMAL(18, 2) NULL, + + CheckPerson NVARCHAR(50) NULL, + CheckTime DATETIME NULL, + + CreateUser NVARCHAR(50) NULL, + CreateTime DATETIME NULL, + Remark NVARCHAR(500) NULL, + + CONSTRAINT PK_HJGL_PreWeldFitupCheck PRIMARY KEY (FitupCheckId), + CONSTRAINT FK_PreWeldFitupCheck_WeldJoint FOREIGN KEY (WeldJointId) + REFERENCES dbo.HJGL_WeldJoint(WeldJointId), + CONSTRAINT FK_PreWeldFitupCheck_GrooveType FOREIGN KEY (GrooveTypeId) + REFERENCES dbo.Base_GrooveType(GrooveTypeId) + ); + + CREATE UNIQUE INDEX UX_PreWeldFitupCheck_WeldJointId + ON dbo.HJGL_PreWeldFitupCheck(WeldJointId); + + CREATE INDEX IX_PreWeldFitupCheck_Project_CheckTime + ON dbo.HJGL_PreWeldFitupCheck(ProjectId, CheckTime); + + CREATE INDEX IX_PreWeldFitupCheck_GrooveTypeId + ON dbo.HJGL_PreWeldFitupCheck(GrooveTypeId); +END +GO + + +/* 焊口主表增加组对抽检回写字段 */ +IF COL_LENGTH('dbo.HJGL_WeldJoint', 'GrooveProcessType') IS NULL +BEGIN + ALTER TABLE dbo.HJGL_WeldJoint + ADD GrooveProcessType NVARCHAR(100) NULL; +END +GO + +IF COL_LENGTH('dbo.HJGL_WeldJoint', 'GrooveAngle') IS NULL +BEGIN + ALTER TABLE dbo.HJGL_WeldJoint + ADD GrooveAngle DECIMAL(18, 2) NULL; +END +GO + +IF COL_LENGTH('dbo.HJGL_WeldJoint', 'FitupGap') IS NULL +BEGIN + ALTER TABLE dbo.HJGL_WeldJoint + ADD FitupGap DECIMAL(18, 2) NULL; +END +GO + +IF COL_LENGTH('dbo.HJGL_WeldJoint', 'Misalignment') IS NULL +BEGIN + ALTER TABLE dbo.HJGL_WeldJoint + ADD Misalignment DECIMAL(18, 2) NULL; +END +GO \ No newline at end of file diff --git a/SGGL/BLL/API/APIBaseInfoService.cs b/SGGL/BLL/API/APIBaseInfoService.cs index ef753abe..1a965528 100644 --- a/SGGL/BLL/API/APIBaseInfoService.cs +++ b/SGGL/BLL/API/APIBaseInfoService.cs @@ -208,6 +208,27 @@ namespace BLL return getDataLists; } } + + /// + /// 获取坡口类型 + /// + /// + public static List getGrooveType() + { + using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) + { + var getDataLists = (from x in db.Base_GrooveType + orderby x.GrooveTypeCode + select new Model.BaseInfoItem + { + BaseInfoId = x.GrooveTypeId, + BaseInfoCode = x.GrooveTypeCode, + BaseInfoName = x.GrooveTypeName + } + ).ToList(); + return getDataLists; + } + } #endregion #region 根据类型获取巡检隐患类型表 diff --git a/SGGL/BLL/API/HJGL/APIPreWeldInspectionService.cs b/SGGL/BLL/API/HJGL/APIPreWeldInspectionService.cs new file mode 100644 index 00000000..6fe3a872 --- /dev/null +++ b/SGGL/BLL/API/HJGL/APIPreWeldInspectionService.cs @@ -0,0 +1,161 @@ +using System; +using System.Collections.Generic; +using System.Linq; + +namespace BLL +{ + /// + /// 小程序焊前抽检接口服务 + /// + public static class APIPreWeldInspectionService + { + /// + /// 根据焊口ID获取焊前抽检基础信息 + /// + /// 焊口ID + /// 焊口基础信息 + public static Model.PreWeldJointItem GetPreWeldJointByWeldJointId(string weldJointId) + { + using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) + { + var query = from x in db.HJGL_WeldJoint + join g in db.Base_GrooveType on x.GrooveTypeId equals g.GrooveTypeId into grooveTypes + from g in grooveTypes.DefaultIfEmpty() + where x.WeldJointId == weldJointId + select new Model.PreWeldJointItem + { + WeldJointId = x.WeldJointId, + WeldJointCode = x.WeldJointCode, + PipelineId = x.PipelineId, + PipelineCode = x.PipelineCode, + ProjectId = x.ProjectId, + GrooveTypeId = x.GrooveTypeId, + GrooveTypeCode = g == null ? string.Empty : g.GrooveTypeCode, + GrooveTypeName = g == null ? string.Empty : g.GrooveTypeName, + GrooveProcessType = x.GrooveProcessType, + GrooveAngle = x.GrooveAngle, + FitupGap = x.FitupGap, + Misalignment = x.Misalignment + }; + + return query.FirstOrDefault(); + } + } + + /// + /// 保存下料抽检,已存在同一焊口记录时更新原记录 + /// + /// 下料抽检参数 + public static void SaveCuttingCheck(Model.PreWeldCuttingCheckItem item) + { + if (item == null) + { + throw new ArgumentNullException("item"); + } + if (string.IsNullOrEmpty(item.WeldJointId)) + { + throw new ArgumentException("焊口ID不能为空。"); + } + + using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) + { + var weldJoint = db.HJGL_WeldJoint.FirstOrDefault(x => x.WeldJointId == item.WeldJointId); + if (weldJoint == null) + { + throw new ArgumentException("未找到对应焊口。"); + } + + var check = db.HJGL_PreWeldCuttingCheck.FirstOrDefault(x => x.WeldJointId == item.WeldJointId); + if (check == null) + { + check = new Model.HJGL_PreWeldCuttingCheck + { + CuttingCheckId = Guid.NewGuid().ToString(), + WeldJointId = item.WeldJointId, + ProjectId = string.IsNullOrEmpty(item.ProjectId) ? weldJoint.ProjectId : item.ProjectId, + CreateUser = item.CreateUser ?? item.CheckPerson, + CreateTime = DateTime.Now + }; + db.HJGL_PreWeldCuttingCheck.InsertOnSubmit(check); + } + + check.ProjectId = string.IsNullOrEmpty(item.ProjectId) ? weldJoint.ProjectId : item.ProjectId; + check.IsMaterialCodeBatchNoAccurate = item.IsMaterialCodeBatchNoAccurate; + check.IsMaterialQuantityAccurate = item.IsMaterialQuantityAccurate; + // 下料抽检合格规则:材料编码及炉批号、材料数量两个检查项均准确才合格。 + check.IsQualified = item.IsMaterialCodeBatchNoAccurate && item.IsMaterialQuantityAccurate; + check.CheckPerson = item.CheckPerson; + check.CheckTime = item.CheckTime ?? DateTime.Now; + check.Remark = item.Remark; + + db.SubmitChanges(); + } + } + + /// + /// 保存组对抽检,已存在同一焊口记录时更新原记录并回写焊口主表 + /// + /// 组对抽检参数 + public static void SaveFitupCheck(Model.PreWeldFitupCheckItem item) + { + if (item == null) + { + throw new ArgumentNullException("item"); + } + if (string.IsNullOrEmpty(item.WeldJointId)) + { + throw new ArgumentException("焊口ID不能为空。"); + } + if (string.IsNullOrEmpty(item.GrooveTypeId)) + { + throw new ArgumentException("坡口类型不能为空。"); + } + + using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) + { + var weldJoint = db.HJGL_WeldJoint.FirstOrDefault(x => x.WeldJointId == item.WeldJointId); + if (weldJoint == null) + { + throw new ArgumentException("未找到对应焊口。"); + } + if (!db.Base_GrooveType.Any(x => x.GrooveTypeId == item.GrooveTypeId)) + { + throw new ArgumentException("坡口类型不存在。"); + } + + var check = db.HJGL_PreWeldFitupCheck.FirstOrDefault(x => x.WeldJointId == item.WeldJointId); + if (check == null) + { + check = new Model.HJGL_PreWeldFitupCheck + { + FitupCheckId = Guid.NewGuid().ToString(), + WeldJointId = item.WeldJointId, + ProjectId = string.IsNullOrEmpty(item.ProjectId) ? weldJoint.ProjectId : item.ProjectId, + CreateUser = item.CreateUser ?? item.CheckPerson, + CreateTime = DateTime.Now + }; + db.HJGL_PreWeldFitupCheck.InsertOnSubmit(check); + } + + check.ProjectId = string.IsNullOrEmpty(item.ProjectId) ? weldJoint.ProjectId : item.ProjectId; + check.GrooveTypeId = item.GrooveTypeId; + check.GrooveProcessType = item.GrooveProcessType; + check.GrooveAngle = item.GrooveAngle; + check.FitupGap = item.FitupGap; + check.Misalignment = item.Misalignment; + check.CheckPerson = item.CheckPerson; + check.CheckTime = item.CheckTime ?? DateTime.Now; + check.Remark = item.Remark; + + // 组对抽检字段需同步回写焊口主表,供焊口台账和后续业务复用。 + weldJoint.GrooveTypeId = item.GrooveTypeId; + weldJoint.GrooveProcessType = item.GrooveProcessType; + weldJoint.GrooveAngle = item.GrooveAngle; + weldJoint.FitupGap = item.FitupGap; + weldJoint.Misalignment = item.Misalignment; + + db.SubmitChanges(); + } + } + } +} diff --git a/SGGL/BLL/BLL.csproj b/SGGL/BLL/BLL.csproj index e4612de1..5dd3238a 100644 --- a/SGGL/BLL/BLL.csproj +++ b/SGGL/BLL/BLL.csproj @@ -203,6 +203,7 @@ + @@ -461,6 +462,7 @@ + diff --git a/SGGL/BLL/CLGL/TwInOutplanmasterService.cs b/SGGL/BLL/CLGL/TwInOutplanmasterService.cs index 0a610bb6..ad3fbe48 100644 --- a/SGGL/BLL/CLGL/TwInOutplanmasterService.cs +++ b/SGGL/BLL/CLGL/TwInOutplanmasterService.cs @@ -247,6 +247,12 @@ namespace BLL try { temeplateDtoIns = MiniExcel.Query(path, startCell: "A1").ToList(); + foreach (var item in temeplateDtoIns) + { + item.MaterialCode = item.MaterialCode.Trim(); + item.HeatNo = item.HeatNo.Trim(); + item.BatchNo = item.BatchNo.Trim(); + } } catch (Exception ex) { @@ -621,12 +627,12 @@ namespace BLL private static string CleanImportText(string value) { - return Convert.ToString(value).Replace("\n", "").Replace(" ", "").Replace("\t", "").Replace("\r", "").Trim(); + return (value ?? string.Empty).Replace("\n", "").Replace(" ", "").Replace("\t", "").Replace("\r", "").Trim(); } private static string CleanImportDateText(string value) { - return Convert.ToString(value).Replace("\n", "").Replace("\t", " ").Replace("\r", "").Trim(); + return (value ?? string.Empty).Replace("\n", "").Replace("\t", " ").Replace("\r", "").Trim(); } private static bool TryParseImportDate(string value, out DateTime date) diff --git a/SGGL/BLL/CLGL/TwInputdetailBarCodeService.cs b/SGGL/BLL/CLGL/TwInputdetailBarCodeService.cs index cec3453e..714ed8ef 100644 --- a/SGGL/BLL/CLGL/TwInputdetailBarCodeService.cs +++ b/SGGL/BLL/CLGL/TwInputdetailBarCodeService.cs @@ -50,7 +50,9 @@ namespace BLL BatchNo = mat.BatchNo, MaterialName = mat.MaterialName, MaterialDef = mat.MaterialDef, - BarCode = x.BarCode + MaterialSpec = mat.MaterialSpec, + MaterialUnit = mat.MaterialUnit, + BarCode = x.MaterialCode }; return q.ToList(); @@ -119,7 +121,7 @@ namespace BLL /// public static string BuildBarCode(Tw_InputMaster inputMaster, Tw_InputDetail inputDetail, string barCodeDetailId) { - return "IB" + barCodeDetailId.Replace("-", string.Empty).ToUpperInvariant(); + return inputDetail == null ? string.Empty : inputDetail.MaterialCode; } } } diff --git a/SGGL/BLL/Common/Const.cs b/SGGL/BLL/Common/Const.cs index cd0cb11a..8878a8ea 100644 --- a/SGGL/BLL/Common/Const.cs +++ b/SGGL/BLL/Common/Const.cs @@ -2939,6 +2939,16 @@ namespace BLL /// 焊接日常管理 /// public const string HJGL_WeldReportMenuId = "5TYHMD2F-2582-4DEB-905E-6E9DCFEFBGHO"; + + /// + /// 下料抽检记录台账 + /// + public const string HJGL_PreWeldCuttingCheckMenuId = "D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F002"; + + /// + /// 组对抽检列表台账 + /// + public const string HJGL_PreWeldFitupCheckMenuId = "D1B5A8B7-5D2A-4C51-9B7E-6A2F15B7F003"; #endregion #region 预制设计 @@ -3456,6 +3466,11 @@ namespace BLL /// public const string PipelineMatTemplateUrl = "File\\Excel\\DataIn\\PipelineMat.xlsx"; + /// + /// 管线材料导入模板(包含炉号、批号) + /// + public const string PipelineMatWithBatchTemplateUrl = "File\\Excel\\DataIn\\PipelineMatWithBatch.xlsx"; + /// /// 材料信息数据导入模板 /// diff --git a/SGGL/BLL/HJGL/BaseInfo/MaterialCodeLibService.cs b/SGGL/BLL/HJGL/BaseInfo/MaterialCodeLibService.cs index c2ab5c3e..5a6f49f5 100644 --- a/SGGL/BLL/HJGL/BaseInfo/MaterialCodeLibService.cs +++ b/SGGL/BLL/HJGL/BaseInfo/MaterialCodeLibService.cs @@ -14,6 +14,27 @@ { return Funs.DB.HJGL_MaterialCodeLib.FirstOrDefault(e => e.MaterialCode == materialCode); } + + /// + /// 根据材料主编码获取条码扫码所需的材料信息。 + /// + public static Model.MaterialCodeLibBarCodeOutput GetBarCodeMaterialInfo(string materialCode) + { + return (from x in Funs.DB.HJGL_MaterialCodeLib + where x.MaterialCode == materialCode + select new Model.MaterialCodeLibBarCodeOutput + { + MaterialCode = x.MaterialCode, + Code = x.Code, + HeatNo = x.HeatNo, + BatchNo = x.BatchNo, + MaterialName = x.MaterialName, + MaterialDef = x.MaterialDef, + MaterialSpec = x.MaterialSpec, + MaterialUnit = x.MaterialUnit + }).FirstOrDefault(); + } + public static List GetMaterialCodeLibList() { var q = (from x in Funs.DB.HJGL_MaterialCodeLib select x).ToList(); diff --git a/SGGL/BLL/HJGL/WeldingManage/PreWeldInspectionService.cs b/SGGL/BLL/HJGL/WeldingManage/PreWeldInspectionService.cs new file mode 100644 index 00000000..71f0d24a --- /dev/null +++ b/SGGL/BLL/HJGL/WeldingManage/PreWeldInspectionService.cs @@ -0,0 +1,151 @@ +using System; +using System.Collections.Generic; +using System.Linq; + +namespace BLL +{ + /// + /// 焊前抽检台账服务 + /// + public static class PreWeldInspectionService + { + /// + /// 获取下料抽检台账 + /// + public static Tuple, int> GetCuttingCheckList(string projectId, string pipelineCode, string weldJointCode, int pageIndex, int pageSize) + { + using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) + { + var query = from c in db.HJGL_PreWeldCuttingCheck + join w in db.HJGL_WeldJoint on c.WeldJointId equals w.WeldJointId + join p in db.Person_Persons on c.CheckPerson equals p.PersonId into persons + from p in persons.DefaultIfEmpty() + where string.IsNullOrEmpty(projectId) || c.ProjectId == projectId || w.ProjectId == projectId + select new + { + c, + w, + CheckPersonName = p == null ? string.Empty : p.PersonName + }; + + if (!string.IsNullOrEmpty(pipelineCode)) + { + query = query.Where(x => x.w.PipelineCode.Contains(pipelineCode)); + } + if (!string.IsNullOrEmpty(weldJointCode)) + { + query = query.Where(x => x.w.WeldJointCode.Contains(weldJointCode)); + } + + int total = query.Count(); + var data = query.OrderByDescending(x => x.c.CheckTime) + .Skip(pageIndex * pageSize) + .Take(pageSize) + .Select(x => new Model.PreWeldCuttingCheckItem + { + CuttingCheckId = x.c.CuttingCheckId, + ProjectId = x.c.ProjectId, + WeldJointId = x.c.WeldJointId, + PipelineCode = x.w.PipelineCode, + WeldJointCode = x.w.WeldJointCode, + IsMaterialCodeBatchNoAccurate = x.c.IsMaterialCodeBatchNoAccurate, + IsMaterialQuantityAccurate = x.c.IsMaterialQuantityAccurate, + IsQualified = x.c.IsQualified, + CheckPerson = x.c.CheckPerson, + CheckPersonName = x.CheckPersonName, + CheckTime = x.c.CheckTime, + CreateUser = x.c.CreateUser, + CreateTime = x.c.CreateTime, + Remark = x.c.Remark + }) + .ToList(); + + return Tuple.Create(data, total); + } + } + + /// + /// 获取组对抽检台账 + /// + public static Tuple, int> GetFitupCheckList(string projectId, string pipelineCode, string weldJointCode, int pageIndex, int pageSize) + { + using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) + { + var query = from f in db.HJGL_PreWeldFitupCheck + join w in db.HJGL_WeldJoint on f.WeldJointId equals w.WeldJointId + join g in db.Base_GrooveType on f.GrooveTypeId equals g.GrooveTypeId into grooveTypes + from g in grooveTypes.DefaultIfEmpty() + join p in db.Person_Persons on f.CheckPerson equals p.PersonId into persons + from p in persons.DefaultIfEmpty() + where string.IsNullOrEmpty(projectId) || f.ProjectId == projectId || w.ProjectId == projectId + select new + { + f, + w, + g, + CheckPersonName = p == null ? string.Empty : p.PersonName + }; + + if (!string.IsNullOrEmpty(pipelineCode)) + { + query = query.Where(x => x.w.PipelineCode.Contains(pipelineCode)); + } + if (!string.IsNullOrEmpty(weldJointCode)) + { + query = query.Where(x => x.w.WeldJointCode.Contains(weldJointCode)); + } + + int total = query.Count(); + var data = query.OrderBy(x => x.w.PipelineCode).ThenBy(x => x.w.WeldJointCode) + .Skip(pageIndex * pageSize) + .Take(pageSize) + .Select(x => new Model.PreWeldFitupCheckItem + { + FitupCheckId = x.f.FitupCheckId, + ProjectId = x.f.ProjectId, + WeldJointId = x.w.WeldJointId, + PipelineCode = x.w.PipelineCode, + WeldJointCode = x.w.WeldJointCode, + GrooveTypeId = x.f.GrooveTypeId, + GrooveTypeCode = x.g == null ? string.Empty : x.g.GrooveTypeCode, + GrooveTypeName = x.g == null ? string.Empty : x.g.GrooveTypeName, + GrooveProcessType = x.f.GrooveProcessType, + GrooveAngle = x.f.GrooveAngle, + FitupGap = x.f.FitupGap, + Misalignment = x.f.Misalignment, + CheckPerson = x.f.CheckPerson, + CheckPersonName = x.CheckPersonName, + CheckTime = x.f.CheckTime, + CreateUser = x.f.CreateUser, + CreateTime = x.f.CreateTime, + Remark = x.f.Remark + }) + .ToList(); + + return Tuple.Create(data, total); + } + } + + /// + /// 获取下料抽检实体 + /// + public static Model.HJGL_PreWeldCuttingCheck GetCuttingCheckById(string cuttingCheckId) + { + using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) + { + return db.HJGL_PreWeldCuttingCheck.FirstOrDefault(x => x.CuttingCheckId == cuttingCheckId); + } + } + + /// + /// 获取组对抽检实体 + /// + public static Model.HJGL_PreWeldFitupCheck GetFitupCheckByWeldJointId(string weldJointId) + { + using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) + { + return db.HJGL_PreWeldFitupCheck.FirstOrDefault(x => x.WeldJointId == weldJointId); + } + } + } +} diff --git a/SGGL/FineUIPro.Web/CLGL/InputMaster.aspx b/SGGL/FineUIPro.Web/CLGL/InputMaster.aspx index 6d157b9a..19c3dd18 100644 --- a/SGGL/FineUIPro.Web/CLGL/InputMaster.aspx +++ b/SGGL/FineUIPro.Web/CLGL/InputMaster.aspx @@ -159,7 +159,7 @@ FieldType="String" HeaderText="材料名称" TextAlign="Left" HeaderTextAlign="Center"> + FieldType="String" HeaderText="材料描述" TextAlign="Left" HeaderTextAlign="Center" > @@ -203,7 +203,13 @@ FieldType="String" HeaderText="材料名称" TextAlign="Left" HeaderTextAlign="Center"> + FieldType="String" HeaderText="材料描述" TextAlign="Left" HeaderTextAlign="Center" > + + + + diff --git a/SGGL/FineUIPro.Web/File/Excel/DataIn/PipelineMatWithBatch.xlsx b/SGGL/FineUIPro.Web/File/Excel/DataIn/PipelineMatWithBatch.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..fe6cc8cd4b519b11b815210705919039b4f91d76 GIT binary patch literal 5338 zcmZ`-1yq!4*B!tCL`tLwq`N~}5P_jPB&C&{K^QPKCKsLKj! zso@NDa^W#|a^imJ=%6~NdZ&#S7jwQv%dI{s?0ycu?8C71ra^AkpgK0k!1LYhTT&1Y zj~-AKcPKq`U83AR_p+k^e>dKvafWlrzTWp?@0Y#G_>g`Pm6QZIH1{#uvmC$r2JzvF zd|s@tSRdsEKX)CBf9zf*rpesCs4pm1$wE^+Lxn@Q=E)=(eot96fdhCQuH8qXoxa)& zy|4ndU^S3w{E-4)weL6{8UUb+4glQ!cM6tJXX~FibjC_6ckmJhUH8U%i7P4>2SV`K z(~Sv@HJXB84R}J13iQa!le)@j*Wt$Qrjyk^P@ zs2ZFAM88mzP+6VY#oqV00Y-bZhWp1~ zT<_{}wBq9(|AnDULAYR~gYfVBu7dL|;+nML=?l%vcNEmL$_L+$k}13Ss1FlUNX_=@ zygWl2nHx@|k8$$Z$~{C3W?~Nq%g-*`uVUUrRMEe;ejNU=ab+u5`&`n!dBdH}A=ps( zJOlK6WhODs%W#i=4Ss3!ikr1)omp(X9ddU^Elaw29R_SkD=;yQK1KhNyEWzuQC=Vb zAVvWI+(U8q(t!tNW9?}D>(2L+y=?rrU*TdHqB=#ZDDeH% zFpFs%&KeEVnhXA3)8~tZtmyMax{(Ky==+g0Zgt*(H+va zJ9@X9hu@r%Q$OcU+vZsFE_%(RWkoHyBL7-48xms~@Z!M_hP*6gQ8D1ui%|(Qaq+IV zIRUKLg_vS$OxGei$MNFASydf+)u82!B;;pW@~_U~_wm<)BZI%%?0mlbigR83;dSxc zmhjq@GvE|qXzL2x+^%!?n#C>l3zHAueOmmaobqMAk2kPo$yy2%foK)h+Y69(zbk{M zBjFjJSYw9__B$axUByA@POd*N#FWI6gEKCXz&h>68=n-X$$%qf>)NKDS`HQU&)mFB7BSyvR9 z*ww)r50B6FlI~8f^yYMa!eBb$bf;L#$J4@Z*NJ>%&yvW}Z)Z^e)?-oosPERxp1FZV z5p)avM>)}?W~N}wy&d8Ly!!Bd!gQxxpwN8jCz*gv%?_4WeP8#i3BZm3*qx%DdreI! z0gFeH)5K25lIOBo(n$=5|%jTK1#0?8uz z+&_}h^U)ADp}j)XCyl8{$UFTNYdeMlEys>$*SEI$?Of*C^O?2cfEp>vDv`Xi{-J>r zz2p`}3@4AkLb3ANJ0LVNEo-q3`1{wsK^2oTOWFZD)VXxWHM?JI9q2zYT7sMj$iKuq z6xsn3=IaeGhQhY;ElTQGGclM;850fY42)LLVn<*Zgq(9_CA%EJDrmHWRhuJ|Uy{LF zZ87xJ&pES%+lh?jx_g@=JNDY!N1I3ZEaOE6dh7f%J{l=ryo&f0>>&gr7t+bsZ%2&v z`ZmdygD@MnXuD{YMQ9dt}P+s3N0HVCAT`vbqSk{4cL z5@Q*p(U9QVh zCS#b%iCnNeyRscNVaXio=Q)tq8+>YUQZehyL%i!Eh*aSD9IJ9~(3amD9DPZh5-DaP z7g@!U#!uIbmfSt#CuClZ(*hUZaor0UDh-A#QkAsZtZ<}V3uTR5?fXQH9aZMN>&-~e8YE)fR>iR*E zu@QF2f*E!G&Sqr1Z1pn0Hm+#mi28uCxFId>`B=j-cx5cVqmc%ivKCLgwjs@MaFNT5I{s|1wIjny?YzX8^H12Cp)RqtM&b?9?_jh~ zS;gEqm{d(NZI#}sg`DoVsj)0Z5;sev?yX(VTh%wOTkXPYW~(8FjRz+KuF8QW6Uru2 zPR8|1c|y(HNRi{WJ)^Zmu^>L1NikW#ssipf1vM-|#3#)gSH7I9*7)p+!RWsF{!bIhDqFjmyzP!B1Uj$Qm?(usF^QT3xH^xi`QbElfVm8n236!wIsU)nMW5#g^ z-n0iF4B$^svDUcACT=W+u&OLw+*haUrbrizI9x_x;~p4hWTuPUhdM1YMp4IitoOue z6yLLI?5O=PAh+frNORZ|Yjh?tNzLZ%nZ_1r*$pS+*GrTY>U(1)*wk^l4%SmlH!Ncf zw{g4O*rYo=)7fJ9>9F*}cXpvxBgr!4%k5+D)85f^_o;goGHU$oikeGeqLV$diX!?T zTc?UB!vJ*>*5U=`tsFu5PW*}W{o*UYpStNSevux5(v9dH008foZd_m<4%RL|YY(aS zSJW3?!pk^TnhM2DCOeH-j2L!0znYO9KaevhKXQ5EuNQhI1IDLBYBNuaPbq6&Vcr*4 zP3f$*`6yk)zU1KneI~J#XHdQ?(l{%S7a-Foml5Js+L)j@3Oy;wy$sq)dUsKV$oCv-6c&TpK>k!Va9>={?Lia~1=yfL_XhwKxj-7*`$pypAbO&TcWE0RLgc$4wP; zak*X6KC*>SGbnQpxG1d9fF`xLN2IuxuHadHNMpRot<3SN2jH=xG~&@!C##6y7$pBd zxw+Zwn83D-_xK!n0|)aLM!{sYF0Mz{#{IS#pJH2L@fue3Hl73&f+vnbr0v{t^^sIt z=Njt!&o`Ddu9VM*KUh9@OnP8_fXUnEak_MMwU(gH5^5$OXe`|Jg)qBtz3YPevn*b& z#RKXOh@@5tiAkuz81A;S=LU`)MTXcU)NGIR6HH091gx{wTI6h8gzQT8<5L;kM{l#V za^#Wne?he>4`^RBqcEfDZd<%iKPnmWqzYcCJD}%)S3eewT9Hxu@z>(1XyM0;xI8vG zMgMIZ15W|gN^fPN)AO;48DGCnKZU_*`=;sBK#7M~`sx|Uge6+9h$@x#n=w0Dpsfnp zKJ}F%t*s5d{rDXx-F`_2F4%r$79Y)7$mK_fWz0w~1(F$ib{O~ePq4(90&@y!&^~9N z(UGI)-<7YxrNzRf>p)=9G{4PS@?saeG~j-X_NQzgEAHJNLdi7`C0&$q0jAE@4lX?0 zKkv1%eGqg$Tsa?W_`^i`&MXW4O7jpxsd?t~kY_~lQFq(t-c_*$Oli@%t}m~CTkhS& zI4a-@8Liytyorw^Jp=uCP2UagD_7=rpkD(92ii&X;T>mppSw!yHS8cOVP zu`#xb>Cm-c-8)j&c9ogxOLs8k5Ef>s4xTZWhbatzjWWW+KBngt^04!c%xU5YIVd@U zoyn1sN3|G*uYj%K{B}-IJ~)fy&|tULZT;1_kSTWL_1H9@==*MJyJcl=i*jj3OfJeM z|6Vy}B2&$3#*imfoJV<1Ij-E8$i+KUmizLvH6D^H1M(|Pa>WIqkc1RO=r$?IlaJ(4 z%-J-Kw?CANP~CqxgB7!~Bg3!7-DNwv$YaEduj0c%L+3d5JVYFL%kV*E%TI^Ga&nn=j z2xE_TGNfJnMC)j)=Ut($RRzsbnWhy_cE$6!$DKBjdL6DFdt*FGujz?rL~Sbg z?vim59o_4EH_rExRB z%_04F05hzAo&NX8elx($+4P?Pb$&(If1lvLPO3Mf+?-VYiQs}XdgG@+^osparRMh{!4{w VC<8HnehCNl_CfiC9MR9G{{vG`K^Xu5 literal 0 HcmV?d00001 diff --git a/SGGL/FineUIPro.Web/File/Fastreport/发票存货入库单.frx b/SGGL/FineUIPro.Web/File/Fastreport/发票存货入库单.frx index 8a323cc9..e4df21c6 100644 --- a/SGGL/FineUIPro.Web/File/Fastreport/发票存货入库单.frx +++ b/SGGL/FineUIPro.Web/File/Fastreport/发票存货入库单.frx @@ -1,5 +1,5 @@  - + using System; using System.Collections; using System.Collections.Generic; @@ -94,7 +94,7 @@ namespace FastReport } - + @@ -134,8 +134,8 @@ namespace FastReport - - + + @@ -167,7 +167,7 @@ namespace FastReport - + @@ -228,7 +228,7 @@ namespace FastReport - + diff --git a/SGGL/FineUIPro.Web/File/Fastreport/发票存货出库单.frx b/SGGL/FineUIPro.Web/File/Fastreport/发票存货出库单.frx index 35711973..3a640b1c 100644 --- a/SGGL/FineUIPro.Web/File/Fastreport/发票存货出库单.frx +++ b/SGGL/FineUIPro.Web/File/Fastreport/发票存货出库单.frx @@ -1,5 +1,5 @@  - + using System; using System.Collections; using System.Collections.Generic; @@ -96,7 +96,7 @@ namespace FastReport } - + @@ -139,8 +139,8 @@ namespace FastReport - - + + @@ -166,7 +166,7 @@ namespace FastReport - + @@ -227,7 +227,7 @@ namespace FastReport - + diff --git a/SGGL/FineUIPro.Web/File/Fastreport/发货单.frx b/SGGL/FineUIPro.Web/File/Fastreport/发货单.frx index ff204e02..c4d76467 100644 --- a/SGGL/FineUIPro.Web/File/Fastreport/发货单.frx +++ b/SGGL/FineUIPro.Web/File/Fastreport/发货单.frx @@ -1,5 +1,5 @@  - + using System; using System.Collections; using System.Collections.Generic; @@ -42,7 +42,7 @@ namespace FastReport } - + @@ -71,7 +71,7 @@ namespace FastReport - + diff --git a/SGGL/FineUIPro.Web/File/Fastreport/材料入库单.frx b/SGGL/FineUIPro.Web/File/Fastreport/材料入库单.frx index 4b64d246..85cbaff0 100644 --- a/SGGL/FineUIPro.Web/File/Fastreport/材料入库单.frx +++ b/SGGL/FineUIPro.Web/File/Fastreport/材料入库单.frx @@ -1,5 +1,5 @@  - + using System; using System.Collections; using System.Collections.Generic; @@ -84,7 +84,7 @@ namespace FastReport } - + @@ -137,7 +137,7 @@ namespace FastReport - + @@ -161,7 +161,7 @@ namespace FastReport - + @@ -198,7 +198,7 @@ namespace FastReport - + diff --git a/SGGL/FineUIPro.Web/File/Fastreport/材料入库条码.frx b/SGGL/FineUIPro.Web/File/Fastreport/材料入库条码.frx index 0df764c4..db3a94ea 100644 --- a/SGGL/FineUIPro.Web/File/Fastreport/材料入库条码.frx +++ b/SGGL/FineUIPro.Web/File/Fastreport/材料入库条码.frx @@ -1,26 +1,5 @@ - - - using System; -using System.Collections; -using System.Collections.Generic; -using System.ComponentModel; -using System.Windows.Forms; -using System.Drawing; -using System.Data; -using FastReport; -using FastReport.Data; -using FastReport.Dialog; -using FastReport.Barcode; -using FastReport.Table; -using FastReport.Utils; - -namespace FastReport -{ - public class ReportScript - { - } -} - + + @@ -34,8 +13,8 @@ namespace FastReport - - + + diff --git a/SGGL/FineUIPro.Web/File/Fastreport/材料入库计划单.frx b/SGGL/FineUIPro.Web/File/Fastreport/材料入库计划单.frx index 92f84e74..4950808b 100644 --- a/SGGL/FineUIPro.Web/File/Fastreport/材料入库计划单.frx +++ b/SGGL/FineUIPro.Web/File/Fastreport/材料入库计划单.frx @@ -1,5 +1,5 @@  - + using System; using System.Collections; using System.Collections.Generic; @@ -84,7 +84,7 @@ namespace FastReport } - + @@ -137,7 +137,7 @@ namespace FastReport - + @@ -161,7 +161,7 @@ namespace FastReport - + @@ -195,7 +195,7 @@ namespace FastReport - + diff --git a/SGGL/FineUIPro.Web/File/Fastreport/材料出库单.frx b/SGGL/FineUIPro.Web/File/Fastreport/材料出库单.frx index 81a439cb..6c73c25e 100644 --- a/SGGL/FineUIPro.Web/File/Fastreport/材料出库单.frx +++ b/SGGL/FineUIPro.Web/File/Fastreport/材料出库单.frx @@ -1,5 +1,5 @@  - + using System; using System.Collections; using System.Collections.Generic; @@ -84,7 +84,7 @@ namespace FastReport } - + @@ -137,7 +137,7 @@ namespace FastReport - + @@ -161,7 +161,7 @@ namespace FastReport - + @@ -198,7 +198,7 @@ namespace FastReport - + diff --git a/SGGL/FineUIPro.Web/File/Fastreport/材料出库计划单.frx b/SGGL/FineUIPro.Web/File/Fastreport/材料出库计划单.frx index b0a5e3d0..ecac1ae2 100644 --- a/SGGL/FineUIPro.Web/File/Fastreport/材料出库计划单.frx +++ b/SGGL/FineUIPro.Web/File/Fastreport/材料出库计划单.frx @@ -1,5 +1,5 @@  - + using System; using System.Collections; using System.Collections.Generic; @@ -84,7 +84,7 @@ namespace FastReport } - + @@ -137,7 +137,7 @@ namespace FastReport - + @@ -161,7 +161,7 @@ namespace FastReport - + @@ -195,7 +195,7 @@ namespace FastReport - + diff --git a/SGGL/FineUIPro.Web/File/Fastreport/组件打印.frx b/SGGL/FineUIPro.Web/File/Fastreport/组件打印.frx index 8bdea399..e631d637 100644 --- a/SGGL/FineUIPro.Web/File/Fastreport/组件打印.frx +++ b/SGGL/FineUIPro.Web/File/Fastreport/组件打印.frx @@ -1,5 +1,5 @@  - + using System; using System.Collections; using System.Collections.Generic; @@ -99,7 +99,7 @@ namespace FastReport } - + @@ -149,7 +149,7 @@ namespace FastReport - + @@ -165,7 +165,7 @@ namespace FastReport - + diff --git a/SGGL/FineUIPro.Web/File/Fastreport/装箱单.frx b/SGGL/FineUIPro.Web/File/Fastreport/装箱单.frx index 97891a02..3adf14b6 100644 --- a/SGGL/FineUIPro.Web/File/Fastreport/装箱单.frx +++ b/SGGL/FineUIPro.Web/File/Fastreport/装箱单.frx @@ -1,5 +1,5 @@  - + using System; using System.Collections; using System.Collections.Generic; @@ -42,7 +42,7 @@ namespace FastReport } - + @@ -63,9 +63,9 @@ namespace FastReport - + - + @@ -99,7 +99,7 @@ namespace FastReport - + @@ -116,9 +116,9 @@ namespace FastReport - + - + @@ -138,6 +138,6 @@ namespace FastReport - + diff --git a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj index 3aa70c7b..8adc138b 100644 --- a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj +++ b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj @@ -1647,6 +1647,10 @@ + + + + @@ -11037,6 +11041,34 @@ PackagingManageView.aspx + + CuttingCheck.aspx + ASPXCodeBehind + + + CuttingCheck.aspx + + + CuttingCheckEdit.aspx + ASPXCodeBehind + + + CuttingCheckEdit.aspx + + + FitupCheck.aspx + ASPXCodeBehind + + + FitupCheck.aspx + + + FitupCheckEdit.aspx + ASPXCodeBehind + + + FitupCheckEdit.aspx + InstallList.aspx ASPXCodeBehind diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx new file mode 100644 index 00000000..8e127ee3 --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx @@ -0,0 +1,85 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CuttingCheck.aspx.cs" Inherits="FineUIPro.Web.HJGL.PreWeld.CuttingCheck" %> + + + + + 下料抽检记录台账 + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx.cs b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx.cs new file mode 100644 index 00000000..aa1cfa99 --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx.cs @@ -0,0 +1,74 @@ +using BLL; +using System; + +namespace FineUIPro.Web.HJGL.PreWeld +{ + public partial class CuttingCheck : PageBase + { + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + ddlPageSize.SelectedValue = Grid1.PageSize.ToString(); + BindGrid(); + } + } + + private void BindGrid() + { + var result = PreWeldInspectionService.GetCuttingCheckList( + CurrUser.LoginProjectId, + txtPipelineCode.Text.Trim(), + txtWeldJointCode.Text.Trim(), + Grid1.PageIndex, + Grid1.PageSize); + Grid1.RecordCount = result.Item2; + Grid1.DataSource = result.Item1; + Grid1.DataBind(); + } + + protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) + { + Grid1.PageIndex = e.NewPageIndex; + BindGrid(); + } + + protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) + { + Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); + BindGrid(); + } + + protected void Window1_Close(object sender, WindowCloseEventArgs e) + { + BindGrid(); + } + + protected void btnQuery_Click(object sender, EventArgs e) + { + Grid1.PageIndex = 0; + BindGrid(); + } + + protected void btnNew_Click(object sender, EventArgs e) + { + if (CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.PersonId, Const.HJGL_PreWeldCuttingCheckMenuId, Const.BtnAdd)) + { + PageContext.RegisterStartupScript(Window1.GetShowReference("CuttingCheckEdit.aspx")); + } + } + + protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e) + { + if (Grid1.SelectedRowIndexArray.Length == 0) + { + Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); + return; + } + if (CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.PersonId, Const.HJGL_PreWeldCuttingCheckMenuId, Const.BtnModify)) + { + PageContext.RegisterStartupScript(Window1.GetShowReference(string.Format("CuttingCheckEdit.aspx?CuttingCheckId={0}", Grid1.SelectedRowID))); + } + } + } +} diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx.designer.cs b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx.designer.cs new file mode 100644 index 00000000..1f0181e6 --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheck.aspx.designer.cs @@ -0,0 +1,143 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.HJGL.PreWeld +{ + + + public partial class CuttingCheck + { + + /// + /// form1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + + /// + /// PageManager1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.PageManager PageManager1; + + /// + /// Panel1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel1; + + /// + /// Grid1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid1; + + /// + /// Toolbar2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar2; + + /// + /// txtPipelineCode 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtPipelineCode; + + /// + /// txtWeldJointCode 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtWeldJointCode; + + /// + /// btnQuery 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnQuery; + + /// + /// ToolbarFill1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ToolbarFill ToolbarFill1; + + /// + /// btnNew 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnNew; + + /// + /// ToolbarSeparator1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1; + + /// + /// ToolbarText1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ToolbarText ToolbarText1; + + /// + /// ddlPageSize 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DropDownList ddlPageSize; + + /// + /// Window1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Window Window1; + } +} diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx new file mode 100644 index 00000000..b6fe93ad --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx @@ -0,0 +1,65 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CuttingCheckEdit.aspx.cs" Inherits="FineUIPro.Web.HJGL.PreWeld.CuttingCheckEdit" %> + + + + + 编辑下料抽检 + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx.cs b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx.cs new file mode 100644 index 00000000..ee6b9114 --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx.cs @@ -0,0 +1,92 @@ +using BLL; +using System; +using System.Linq; + +namespace FineUIPro.Web.HJGL.PreWeld +{ + public partial class CuttingCheckEdit : PageBase + { + public string CuttingCheckId + { + get { return (string)ViewState["CuttingCheckId"]; } + set { ViewState["CuttingCheckId"] = value; } + } + + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + btnClose.OnClientClick = ActiveWindow.GetHideReference(); + CuttingCheckId = Request.Params["CuttingCheckId"]; + BindWeldJoint(); + if (!string.IsNullOrEmpty(CuttingCheckId)) + { + BindData(); + } + else + { + dpCheckTime.SelectedDate = DateTime.Now; + } + } + } + + private void BindWeldJoint() + { + using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) + { + var data = (from x in db.HJGL_WeldJoint + where x.ProjectId == CurrUser.LoginProjectId + orderby x.PipelineCode, x.WeldJointCode + select new + { + x.WeldJointId, + WeldJointName = x.PipelineCode + " / " + x.WeldJointCode + }).ToList(); + drpWeldJoint.DataTextField = "WeldJointName"; + drpWeldJoint.DataValueField = "WeldJointId"; + drpWeldJoint.DataSource = data; + drpWeldJoint.DataBind(); + } + } + + private void BindData() + { + var model = PreWeldInspectionService.GetCuttingCheckById(CuttingCheckId); + if (model == null) + { + return; + } + + drpWeldJoint.SelectedValue = model.WeldJointId; + chkMaterialCodeBatchNo.Checked = model.IsMaterialCodeBatchNoAccurate; + chkMaterialQuantity.Checked = model.IsMaterialQuantityAccurate; + dpCheckTime.SelectedDate = model.CheckTime; + txtRemark.Text = model.Remark; + } + + protected void btnSave_Click(object sender, EventArgs e) + { + if (!CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.PersonId, Const.HJGL_PreWeldCuttingCheckMenuId, Const.BtnSave)) + { + Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning); + return; + } + + var item = new Model.PreWeldCuttingCheckItem + { + ProjectId = CurrUser.LoginProjectId, + WeldJointId = drpWeldJoint.SelectedValue, + IsMaterialCodeBatchNoAccurate = chkMaterialCodeBatchNo.Checked, + IsMaterialQuantityAccurate = chkMaterialQuantity.Checked, + CheckPerson = CurrUser.PersonId, + CheckTime = dpCheckTime.SelectedDate ?? DateTime.Now, + CreateUser = CurrUser.PersonId, + Remark = txtRemark.Text.Trim() + }; + + APIPreWeldInspectionService.SaveCuttingCheck(item); + ShowNotify("保存成功!", MessageBoxIcon.Success); + PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference()); + } + } +} diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx.designer.cs new file mode 100644 index 00000000..940ccf53 --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/CuttingCheckEdit.aspx.designer.cs @@ -0,0 +1,116 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.HJGL.PreWeld +{ + + + public partial class CuttingCheckEdit + { + + /// + /// form1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + + /// + /// PageManager1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.PageManager PageManager1; + + /// + /// SimpleForm1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form SimpleForm1; + + /// + /// drpWeldJoint 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DropDownList drpWeldJoint; + + /// + /// chkMaterialCodeBatchNo 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.CheckBox chkMaterialCodeBatchNo; + + /// + /// chkMaterialQuantity 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.CheckBox chkMaterialQuantity; + + /// + /// dpCheckTime 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DatePicker dpCheckTime; + + /// + /// txtRemark 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txtRemark; + + /// + /// Toolbar1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar1; + + /// + /// btnSave 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnSave; + + /// + /// btnClose 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnClose; + } +} diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx new file mode 100644 index 00000000..f925885f --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx @@ -0,0 +1,85 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FitupCheck.aspx.cs" Inherits="FineUIPro.Web.HJGL.PreWeld.FitupCheck" %> + + + + + 组对抽检列表台账 + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx.cs b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx.cs new file mode 100644 index 00000000..d9113eea --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx.cs @@ -0,0 +1,74 @@ +using BLL; +using System; + +namespace FineUIPro.Web.HJGL.PreWeld +{ + public partial class FitupCheck : PageBase + { + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + ddlPageSize.SelectedValue = Grid1.PageSize.ToString(); + BindGrid(); + } + } + + private void BindGrid() + { + var result = PreWeldInspectionService.GetFitupCheckList( + CurrUser.LoginProjectId, + txtPipelineCode.Text.Trim(), + txtWeldJointCode.Text.Trim(), + Grid1.PageIndex, + Grid1.PageSize); + Grid1.RecordCount = result.Item2; + Grid1.DataSource = result.Item1; + Grid1.DataBind(); + } + + protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) + { + Grid1.PageIndex = e.NewPageIndex; + BindGrid(); + } + + protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) + { + Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); + BindGrid(); + } + + protected void Window1_Close(object sender, WindowCloseEventArgs e) + { + BindGrid(); + } + + protected void btnQuery_Click(object sender, EventArgs e) + { + Grid1.PageIndex = 0; + BindGrid(); + } + + protected void btnNew_Click(object sender, EventArgs e) + { + if (CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.PersonId, Const.HJGL_PreWeldFitupCheckMenuId, Const.BtnAdd)) + { + PageContext.RegisterStartupScript(Window1.GetShowReference("FitupCheckEdit.aspx")); + } + } + + protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e) + { + if (Grid1.SelectedRowIndexArray.Length == 0) + { + Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); + return; + } + if (CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.PersonId, Const.HJGL_PreWeldFitupCheckMenuId, Const.BtnModify)) + { + PageContext.RegisterStartupScript(Window1.GetShowReference(string.Format("FitupCheckEdit.aspx?WeldJointId={0}", Grid1.SelectedRowID))); + } + } + } +} diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx.designer.cs b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx.designer.cs new file mode 100644 index 00000000..36fe2914 --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheck.aspx.designer.cs @@ -0,0 +1,143 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.HJGL.PreWeld +{ + + + public partial class FitupCheck + { + + /// + /// form1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + + /// + /// PageManager1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.PageManager PageManager1; + + /// + /// Panel1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Panel Panel1; + + /// + /// Grid1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Grid Grid1; + + /// + /// Toolbar2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar2; + + /// + /// txtPipelineCode 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtPipelineCode; + + /// + /// txtWeldJointCode 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtWeldJointCode; + + /// + /// btnQuery 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnQuery; + + /// + /// ToolbarFill1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ToolbarFill ToolbarFill1; + + /// + /// btnNew 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnNew; + + /// + /// ToolbarSeparator1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1; + + /// + /// ToolbarText1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ToolbarText ToolbarText1; + + /// + /// ddlPageSize 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DropDownList ddlPageSize; + + /// + /// Window1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Window Window1; + } +} diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx new file mode 100644 index 00000000..280c2da3 --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx @@ -0,0 +1,82 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FitupCheckEdit.aspx.cs" Inherits="FineUIPro.Web.HJGL.PreWeld.FitupCheckEdit" %> + + + + + 编辑组对抽检 + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx.cs b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx.cs new file mode 100644 index 00000000..dd4ab52e --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx.cs @@ -0,0 +1,133 @@ +using BLL; +using System; +using System.Linq; + +namespace FineUIPro.Web.HJGL.PreWeld +{ + public partial class FitupCheckEdit : PageBase + { + public string WeldJointId + { + get { return (string)ViewState["WeldJointId"]; } + set { ViewState["WeldJointId"] = value; } + } + + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + btnClose.OnClientClick = ActiveWindow.GetHideReference(); + WeldJointId = Request.Params["WeldJointId"]; + BindWeldJoint(); + BindGrooveType(); + if (!string.IsNullOrEmpty(WeldJointId)) + { + BindData(); + } + else + { + dpCheckTime.SelectedDate = DateTime.Now; + } + } + } + + private void BindWeldJoint() + { + using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) + { + var data = (from x in db.HJGL_WeldJoint + where x.ProjectId == CurrUser.LoginProjectId + orderby x.PipelineCode, x.WeldJointCode + select new + { + x.WeldJointId, + WeldJointName = x.PipelineCode + " / " + x.WeldJointCode + }).ToList(); + drpWeldJoint.DataTextField = "WeldJointName"; + drpWeldJoint.DataValueField = "WeldJointId"; + drpWeldJoint.DataSource = data; + drpWeldJoint.DataBind(); + } + } + + private void BindGrooveType() + { + drpGrooveType.DataTextField = "BaseInfoName"; + drpGrooveType.DataValueField = "BaseInfoId"; + drpGrooveType.DataSource = APIBaseInfoService.getGrooveType(); + drpGrooveType.DataBind(); + } + + private void BindData() + { + var model = PreWeldInspectionService.GetFitupCheckByWeldJointId(WeldJointId); + var weldJoint = APIPreWeldInspectionService.GetPreWeldJointByWeldJointId(WeldJointId); + if (weldJoint != null) + { + drpWeldJoint.SelectedValue = weldJoint.WeldJointId; + drpWeldJoint.Enabled = false; + drpGrooveType.SelectedValue = weldJoint.GrooveTypeId; + txtGrooveProcessType.Text = weldJoint.GrooveProcessType; + if (weldJoint.GrooveAngle.HasValue) + { + numGrooveAngle.Text = weldJoint.GrooveAngle.Value.ToString(); + } + if (weldJoint.FitupGap.HasValue) + { + numFitupGap.Text = weldJoint.FitupGap.Value.ToString(); + } + if (weldJoint.Misalignment.HasValue) + { + numMisalignment.Text = weldJoint.Misalignment.Value.ToString(); + } + } + if (model != null) + { + drpGrooveType.SelectedValue = model.GrooveTypeId; + txtGrooveProcessType.Text = model.GrooveProcessType; + if (model.GrooveAngle.HasValue) + { + numGrooveAngle.Text = model.GrooveAngle.Value.ToString(); + } + if (model.FitupGap.HasValue) + { + numFitupGap.Text = model.FitupGap.Value.ToString(); + } + if (model.Misalignment.HasValue) + { + numMisalignment.Text = model.Misalignment.Value.ToString(); + } + dpCheckTime.SelectedDate = model.CheckTime; + txtRemark.Text = model.Remark; + } + } + + protected void btnSave_Click(object sender, EventArgs e) + { + if (!CommonService.GetAllButtonPowerList(CurrUser.LoginProjectId, CurrUser.PersonId, Const.HJGL_PreWeldFitupCheckMenuId, Const.BtnSave)) + { + Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning); + return; + } + + var item = new Model.PreWeldFitupCheckItem + { + ProjectId = CurrUser.LoginProjectId, + WeldJointId = drpWeldJoint.SelectedValue, + GrooveTypeId = drpGrooveType.SelectedValue, + GrooveProcessType = txtGrooveProcessType.Text.Trim(), + GrooveAngle = string.IsNullOrWhiteSpace(numGrooveAngle.Text) ? (decimal?)null : Convert.ToDecimal(numGrooveAngle.Text), + FitupGap = string.IsNullOrWhiteSpace(numFitupGap.Text) ? (decimal?)null : Convert.ToDecimal(numFitupGap.Text), + Misalignment = string.IsNullOrWhiteSpace(numMisalignment.Text) ? (decimal?)null : Convert.ToDecimal(numMisalignment.Text), + CheckPerson = CurrUser.PersonId, + CheckTime = dpCheckTime.SelectedDate ?? DateTime.Now, + CreateUser = CurrUser.PersonId, + Remark = txtRemark.Text.Trim() + }; + + APIPreWeldInspectionService.SaveFitupCheck(item); + ShowNotify("保存成功!", MessageBoxIcon.Success); + PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference()); + } + } +} diff --git a/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx.designer.cs b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx.designer.cs new file mode 100644 index 00000000..61e38245 --- /dev/null +++ b/SGGL/FineUIPro.Web/HJGL/PreWeld/FitupCheckEdit.aspx.designer.cs @@ -0,0 +1,143 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.HJGL.PreWeld +{ + + + public partial class FitupCheckEdit + { + + /// + /// form1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + + /// + /// PageManager1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.PageManager PageManager1; + + /// + /// SimpleForm1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form SimpleForm1; + + /// + /// drpWeldJoint 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DropDownList drpWeldJoint; + + /// + /// drpGrooveType 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DropDownList drpGrooveType; + + /// + /// txtGrooveProcessType 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextBox txtGrooveProcessType; + + /// + /// numGrooveAngle 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.NumberBox numGrooveAngle; + + /// + /// numFitupGap 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.NumberBox numFitupGap; + + /// + /// numMisalignment 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.NumberBox numMisalignment; + + /// + /// dpCheckTime 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DatePicker dpCheckTime; + + /// + /// txtRemark 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txtRemark; + + /// + /// Toolbar1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar1; + + /// + /// btnSave 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnSave; + + /// + /// btnClose 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnClose; + } +} diff --git a/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx b/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx index de5ae6ab..bbc8655f 100644 --- a/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx +++ b/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx @@ -22,6 +22,8 @@ + + diff --git a/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx.cs b/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx.cs index 34e12ba8..122caf0c 100644 --- a/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx.cs +++ b/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx.cs @@ -117,8 +117,8 @@ namespace FineUIPro.Web.HJGL.WeldingManage if (e.EventArgument == "Confirm_OK") { string rootPath = Server.MapPath("~/"); - string uploadfilepath = rootPath + Const.PipelineMatTemplateUrl; - string filePath = Const.PipelineMatTemplateUrl; + string filePath = ckIncludeBatch.Checked ? Const.PipelineMatWithBatchTemplateUrl : Const.PipelineMatTemplateUrl; + string uploadfilepath = rootPath + filePath; string fileName = Path.GetFileName(filePath); FileInfo info = new FileInfo(uploadfilepath); long fileSize = info.Length; @@ -137,8 +137,11 @@ namespace FineUIPro.Web.HJGL.WeldingManage { Model.ResponeData responeData = new Model.ResponeData(); List result = new List(); + bool includeBatch = ckIncludeBatch.Checked; + int minColumnCount = includeBatch ? 7 : 5; - if (count < 5) + matList.Clear(); + if (count < minColumnCount) { responeData.code = 0; responeData.message = "导入Excel格式错误!Excel只有" + count.ToString().Trim() + "列"; @@ -204,14 +207,38 @@ namespace FineUIPro.Web.HJGL.WeldingManage if (pds[i].D != null && !string.IsNullOrEmpty(pds[i].D.ToString())) { string materialCode = pds[i].D.ToString().Trim(); - var lib = from x in Funs.DB.HJGL_MaterialCodeLib where x.Code == materialCode select x; - if (lib.Count() > 0) + item.MaterialCode2 = materialCode; + if (includeBatch) { - item.MaterialCode2 = materialCode; + string heatNo = pds[i].F == null ? string.Empty : pds[i].F.ToString().Trim(); + string batchNo = pds[i].G == null ? string.Empty : pds[i].G.ToString().Trim(); + if (string.IsNullOrEmpty(heatNo)) + { + result.Add((i + 2) + "Line, [炉号] 不能为空
"); + } + if (string.IsNullOrEmpty(batchNo)) + { + result.Add((i + 2) + "Line, [批号] 不能为空
"); + } + + string mainMaterialCode = materialCode + "-" + heatNo + "-" + batchNo; + var lib = from x in Funs.DB.HJGL_MaterialCodeLib where x.MaterialCode == mainMaterialCode select x; + if (lib.Count() > 0) + { + item.MaterialCode = lib.First().MaterialCode; + } + else + { + result.Add("第" + (i + 2).ToString() + "行,材料编码库不存在此材料主编码-" + mainMaterialCode + "
"); + } } else { - result.Add("第" + (i + 2).ToString() + "行,材料编码库不存在此材料编码-" + materialCode + "
"); + var lib = from x in Funs.DB.HJGL_MaterialCodeLib where x.Code == materialCode select x; + if (lib.Count() == 0) + { + result.Add("第" + (i + 2).ToString() + "行,材料编码库不存在此材料编码-" + materialCode + "
"); + } } } else @@ -252,7 +279,9 @@ namespace FineUIPro.Web.HJGL.WeldingManage // result.Add((i + 2) + "Line, [预制组件] 不能为空
"); } } - var model = matList.Where(x => x.PipelineId == item.PipelineId && x.MaterialCode2 == item.MaterialCode2 && x.WeldJointId == item.WeldJointId && x.PrefabricatedComponents == item.PrefabricatedComponents); + var model = includeBatch + ? matList.Where(x => x.PipelineId == item.PipelineId && x.MaterialCode == item.MaterialCode && x.WeldJointId == item.WeldJointId && x.PrefabricatedComponents == item.PrefabricatedComponents) + : matList.Where(x => x.PipelineId == item.PipelineId && x.MaterialCode2 == item.MaterialCode2 && x.WeldJointId == item.WeldJointId && x.PrefabricatedComponents == item.PrefabricatedComponents); if (model.Count() == 0) { matList.Add(item); @@ -488,6 +517,7 @@ namespace FineUIPro.Web.HJGL.WeldingManage && x.WeldJointId == item.WeldJointId && x.PipelineId == item.PipelineId && x.PrefabricatedComponents == item.PrefabricatedComponents + && (string.IsNullOrEmpty(item.MaterialCode) || x.MaterialCode == item.MaterialCode) select x; if (pipeLineMat.Count() == 0 || pipeLineMat == null) { diff --git a/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx.designer.cs b/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx.designer.cs index 9d1c6152..d4dcfb29 100644 --- a/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx.designer.cs +++ b/SGGL/FineUIPro.Web/HJGL/WeldingManage/PipelineMatIn.aspx.designer.cs @@ -68,6 +68,15 @@ namespace FineUIPro.Web.HJGL.WeldingManage /// protected global::FineUIPro.DropDownList DrpType; + /// + /// ckIncludeBatch 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.CheckBox ckIncludeBatch; + /// /// hdFileName 控件。 /// diff --git a/SGGL/FineUIPro.Web/common/Menu_HJGL.xml b/SGGL/FineUIPro.Web/common/Menu_HJGL.xml index 7b7f8d23..d21fac20 100644 --- a/SGGL/FineUIPro.Web/common/Menu_HJGL.xml +++ b/SGGL/FineUIPro.Web/common/Menu_HJGL.xml @@ -44,6 +44,9 @@ + + + diff --git a/SGGL/Model/APIItem/HJGL/PreWeldInspectionItem.cs b/SGGL/Model/APIItem/HJGL/PreWeldInspectionItem.cs new file mode 100644 index 00000000..125ea362 --- /dev/null +++ b/SGGL/Model/APIItem/HJGL/PreWeldInspectionItem.cs @@ -0,0 +1,110 @@ +using System; + +namespace Model +{ + /// + /// 焊前抽检焊口信息 + /// + public class PreWeldJointItem + { + public string WeldJointId { get; set; } + + public string WeldJointCode { get; set; } + + public string PipelineId { get; set; } + + public string PipelineCode { get; set; } + + public string ProjectId { get; set; } + + public string GrooveTypeId { get; set; } + + public string GrooveTypeCode { get; set; } + + public string GrooveTypeName { get; set; } + + public string GrooveProcessType { get; set; } + + public decimal? GrooveAngle { get; set; } + + public decimal? FitupGap { get; set; } + + public decimal? Misalignment { get; set; } + } + + /// + /// 下料抽检保存参数 + /// + public class PreWeldCuttingCheckItem + { + public string CuttingCheckId { get; set; } + + public string ProjectId { get; set; } + + public string WeldJointId { get; set; } + + public string PipelineCode { get; set; } + + public string WeldJointCode { get; set; } + + public bool IsMaterialCodeBatchNoAccurate { get; set; } + + public bool IsMaterialQuantityAccurate { get; set; } + + public bool IsQualified { get; set; } + + public string CheckPerson { get; set; } + + public string CheckPersonName { get; set; } + + public DateTime? CheckTime { get; set; } + + public string CreateUser { get; set; } + + public DateTime? CreateTime { get; set; } + + public string Remark { get; set; } + } + + /// + /// 组对抽检保存参数 + /// + public class PreWeldFitupCheckItem + { + public string FitupCheckId { get; set; } + + public string ProjectId { get; set; } + + public string WeldJointId { get; set; } + + public string PipelineCode { get; set; } + + public string WeldJointCode { get; set; } + + public string GrooveTypeId { get; set; } + + public string GrooveTypeCode { get; set; } + + public string GrooveTypeName { get; set; } + + public string GrooveProcessType { get; set; } + + public decimal? GrooveAngle { get; set; } + + public decimal? FitupGap { get; set; } + + public decimal? Misalignment { get; set; } + + public string CheckPerson { get; set; } + + public string CheckPersonName { get; set; } + + public DateTime? CheckTime { get; set; } + + public string CreateUser { get; set; } + + public DateTime? CreateTime { get; set; } + + public string Remark { get; set; } + } +} diff --git a/SGGL/Model/CLGL/Tw_InputDetailBarCodeOutput.cs b/SGGL/Model/CLGL/Tw_InputDetailBarCodeOutput.cs index c432dfac..b429880d 100644 --- a/SGGL/Model/CLGL/Tw_InputDetailBarCodeOutput.cs +++ b/SGGL/Model/CLGL/Tw_InputDetailBarCodeOutput.cs @@ -12,6 +12,8 @@ namespace Model public string BatchNo { get; set; } public string MaterialName { get; set; } public string MaterialDef { get; set; } + public string MaterialSpec { get; set; } + public string MaterialUnit { get; set; } public string BarCode { get; set; } } } diff --git a/SGGL/Model/HJGL/MaterialCodeLibBarCodeOutput.cs b/SGGL/Model/HJGL/MaterialCodeLibBarCodeOutput.cs new file mode 100644 index 00000000..f03c5adc --- /dev/null +++ b/SGGL/Model/HJGL/MaterialCodeLibBarCodeOutput.cs @@ -0,0 +1,14 @@ +namespace Model +{ + public class MaterialCodeLibBarCodeOutput + { + public string MaterialCode { get; set; } + public string Code { get; set; } + public string HeatNo { get; set; } + public string BatchNo { get; set; } + public string MaterialName { get; set; } + public string MaterialDef { get; set; } + public string MaterialSpec { get; set; } + public string MaterialUnit { get; set; } + } +} diff --git a/SGGL/Model/Model.cs b/SGGL/Model/Model.cs index b6bf7b35..cc35937e 100644 --- a/SGGL/Model/Model.cs +++ b/SGGL/Model/Model.cs @@ -719,6 +719,12 @@ namespace Model partial void InsertHJGL_PipeLineMat(HJGL_PipeLineMat instance); partial void UpdateHJGL_PipeLineMat(HJGL_PipeLineMat instance); partial void DeleteHJGL_PipeLineMat(HJGL_PipeLineMat instance); + partial void InsertHJGL_PreWeldCuttingCheck(HJGL_PreWeldCuttingCheck instance); + partial void UpdateHJGL_PreWeldCuttingCheck(HJGL_PreWeldCuttingCheck instance); + partial void DeleteHJGL_PreWeldCuttingCheck(HJGL_PreWeldCuttingCheck instance); + partial void InsertHJGL_PreWeldFitupCheck(HJGL_PreWeldFitupCheck instance); + partial void UpdateHJGL_PreWeldFitupCheck(HJGL_PreWeldFitupCheck instance); + partial void DeleteHJGL_PreWeldFitupCheck(HJGL_PreWeldFitupCheck instance); partial void InsertHJGL_PreWeldingDaily(HJGL_PreWeldingDaily instance); partial void UpdateHJGL_PreWeldingDaily(HJGL_PreWeldingDaily instance); partial void DeleteHJGL_PreWeldingDaily(HJGL_PreWeldingDaily instance); @@ -3818,6 +3824,22 @@ namespace Model } } + public System.Data.Linq.Table HJGL_PreWeldCuttingCheck + { + get + { + return this.GetTable(); + } + } + + public System.Data.Linq.Table HJGL_PreWeldFitupCheck + { + get + { + return this.GetTable(); + } + } + public System.Data.Linq.Table HJGL_PreWeldingDaily { get @@ -21461,6 +21483,8 @@ namespace Model private EntitySet _HJGL_WeldJoint; + private EntitySet _HJGL_PreWeldFitupCheck; + #region 可扩展性方法定义 partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); @@ -21478,6 +21502,7 @@ namespace Model public Base_GrooveType() { this._HJGL_WeldJoint = new EntitySet(new Action(this.attach_HJGL_WeldJoint), new Action(this.detach_HJGL_WeldJoint)); + this._HJGL_PreWeldFitupCheck = new EntitySet(new Action(this.attach_HJGL_PreWeldFitupCheck), new Action(this.detach_HJGL_PreWeldFitupCheck)); OnCreated(); } @@ -21574,6 +21599,19 @@ namespace Model } } + [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_PreWeldFitupCheck_GrooveType", Storage="_HJGL_PreWeldFitupCheck", ThisKey="GrooveTypeId", OtherKey="GrooveTypeId", DeleteRule="NO ACTION")] + public EntitySet HJGL_PreWeldFitupCheck + { + get + { + return this._HJGL_PreWeldFitupCheck; + } + set + { + this._HJGL_PreWeldFitupCheck.Assign(value); + } + } + public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; @@ -21605,6 +21643,18 @@ namespace Model this.SendPropertyChanging(); entity.Base_GrooveType = null; } + + private void attach_HJGL_PreWeldFitupCheck(HJGL_PreWeldFitupCheck entity) + { + this.SendPropertyChanging(); + entity.Base_GrooveType = this; + } + + private void detach_HJGL_PreWeldFitupCheck(HJGL_PreWeldFitupCheck entity) + { + this.SendPropertyChanging(); + entity.Base_GrooveType = null; + } } [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Base_HSSEStandardListType")] @@ -106196,6 +106246,781 @@ namespace Model } } + [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.HJGL_PreWeldCuttingCheck")] + public partial class HJGL_PreWeldCuttingCheck : INotifyPropertyChanging, INotifyPropertyChanged + { + + private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty); + + private string _CuttingCheckId; + + private string _ProjectId; + + private string _WeldJointId; + + private bool _IsMaterialCodeBatchNoAccurate; + + private bool _IsMaterialQuantityAccurate; + + private bool _IsQualified; + + private string _CheckPerson; + + private System.Nullable _CheckTime; + + private string _CreateUser; + + private System.Nullable _CreateTime; + + private string _Remark; + + private EntityRef _HJGL_WeldJoint; + + #region 可扩展性方法定义 + partial void OnLoaded(); + partial void OnValidate(System.Data.Linq.ChangeAction action); + partial void OnCreated(); + partial void OnCuttingCheckIdChanging(string value); + partial void OnCuttingCheckIdChanged(); + partial void OnProjectIdChanging(string value); + partial void OnProjectIdChanged(); + partial void OnWeldJointIdChanging(string value); + partial void OnWeldJointIdChanged(); + partial void OnIsMaterialCodeBatchNoAccurateChanging(bool value); + partial void OnIsMaterialCodeBatchNoAccurateChanged(); + partial void OnIsMaterialQuantityAccurateChanging(bool value); + partial void OnIsMaterialQuantityAccurateChanged(); + partial void OnIsQualifiedChanging(bool value); + partial void OnIsQualifiedChanged(); + partial void OnCheckPersonChanging(string value); + partial void OnCheckPersonChanged(); + partial void OnCheckTimeChanging(System.Nullable value); + partial void OnCheckTimeChanged(); + partial void OnCreateUserChanging(string value); + partial void OnCreateUserChanged(); + partial void OnCreateTimeChanging(System.Nullable value); + partial void OnCreateTimeChanged(); + partial void OnRemarkChanging(string value); + partial void OnRemarkChanged(); + #endregion + + public HJGL_PreWeldCuttingCheck() + { + this._HJGL_WeldJoint = default(EntityRef); + OnCreated(); + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CuttingCheckId", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)] + public string CuttingCheckId + { + get + { + return this._CuttingCheckId; + } + set + { + if ((this._CuttingCheckId != value)) + { + this.OnCuttingCheckIdChanging(value); + this.SendPropertyChanging(); + this._CuttingCheckId = value; + this.SendPropertyChanged("CuttingCheckId"); + this.OnCuttingCheckIdChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectId", DbType="NVarChar(50)")] + public string ProjectId + { + get + { + return this._ProjectId; + } + set + { + if ((this._ProjectId != value)) + { + this.OnProjectIdChanging(value); + this.SendPropertyChanging(); + this._ProjectId = value; + this.SendPropertyChanged("ProjectId"); + this.OnProjectIdChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WeldJointId", DbType="NVarChar(50) NOT NULL", CanBeNull=false)] + public string WeldJointId + { + get + { + return this._WeldJointId; + } + set + { + if ((this._WeldJointId != value)) + { + if (this._HJGL_WeldJoint.HasLoadedOrAssignedValue) + { + throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException(); + } + this.OnWeldJointIdChanging(value); + this.SendPropertyChanging(); + this._WeldJointId = value; + this.SendPropertyChanged("WeldJointId"); + this.OnWeldJointIdChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsMaterialCodeBatchNoAccurate", DbType="Bit NOT NULL")] + public bool IsMaterialCodeBatchNoAccurate + { + get + { + return this._IsMaterialCodeBatchNoAccurate; + } + set + { + if ((this._IsMaterialCodeBatchNoAccurate != value)) + { + this.OnIsMaterialCodeBatchNoAccurateChanging(value); + this.SendPropertyChanging(); + this._IsMaterialCodeBatchNoAccurate = value; + this.SendPropertyChanged("IsMaterialCodeBatchNoAccurate"); + this.OnIsMaterialCodeBatchNoAccurateChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsMaterialQuantityAccurate", DbType="Bit NOT NULL")] + public bool IsMaterialQuantityAccurate + { + get + { + return this._IsMaterialQuantityAccurate; + } + set + { + if ((this._IsMaterialQuantityAccurate != value)) + { + this.OnIsMaterialQuantityAccurateChanging(value); + this.SendPropertyChanging(); + this._IsMaterialQuantityAccurate = value; + this.SendPropertyChanged("IsMaterialQuantityAccurate"); + this.OnIsMaterialQuantityAccurateChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsQualified", DbType="Bit NOT NULL")] + public bool IsQualified + { + get + { + return this._IsQualified; + } + set + { + if ((this._IsQualified != value)) + { + this.OnIsQualifiedChanging(value); + this.SendPropertyChanging(); + this._IsQualified = value; + this.SendPropertyChanged("IsQualified"); + this.OnIsQualifiedChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CheckPerson", DbType="NVarChar(50)")] + public string CheckPerson + { + get + { + return this._CheckPerson; + } + set + { + if ((this._CheckPerson != value)) + { + this.OnCheckPersonChanging(value); + this.SendPropertyChanging(); + this._CheckPerson = value; + this.SendPropertyChanged("CheckPerson"); + this.OnCheckPersonChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CheckTime", DbType="DateTime")] + public System.Nullable CheckTime + { + get + { + return this._CheckTime; + } + set + { + if ((this._CheckTime != value)) + { + this.OnCheckTimeChanging(value); + this.SendPropertyChanging(); + this._CheckTime = value; + this.SendPropertyChanged("CheckTime"); + this.OnCheckTimeChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CreateUser", DbType="NVarChar(50)")] + public string CreateUser + { + get + { + return this._CreateUser; + } + set + { + if ((this._CreateUser != value)) + { + this.OnCreateUserChanging(value); + this.SendPropertyChanging(); + this._CreateUser = value; + this.SendPropertyChanged("CreateUser"); + this.OnCreateUserChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CreateTime", DbType="DateTime")] + public System.Nullable CreateTime + { + get + { + return this._CreateTime; + } + set + { + if ((this._CreateTime != value)) + { + this.OnCreateTimeChanging(value); + this.SendPropertyChanging(); + this._CreateTime = value; + this.SendPropertyChanged("CreateTime"); + this.OnCreateTimeChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remark", DbType="NVarChar(500)")] + public string Remark + { + get + { + return this._Remark; + } + set + { + if ((this._Remark != value)) + { + this.OnRemarkChanging(value); + this.SendPropertyChanging(); + this._Remark = value; + this.SendPropertyChanged("Remark"); + this.OnRemarkChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_PreWeldCuttingCheck_WeldJoint", Storage="_HJGL_WeldJoint", ThisKey="WeldJointId", OtherKey="WeldJointId", IsForeignKey=true)] + public HJGL_WeldJoint HJGL_WeldJoint + { + get + { + return this._HJGL_WeldJoint.Entity; + } + set + { + HJGL_WeldJoint previousValue = this._HJGL_WeldJoint.Entity; + if (((previousValue != value) + || (this._HJGL_WeldJoint.HasLoadedOrAssignedValue == false))) + { + this.SendPropertyChanging(); + if ((previousValue != null)) + { + this._HJGL_WeldJoint.Entity = null; + previousValue.HJGL_PreWeldCuttingCheck = null; + } + this._HJGL_WeldJoint.Entity = value; + if ((value != null)) + { + value.HJGL_PreWeldCuttingCheck = this; + this._WeldJointId = value.WeldJointId; + } + else + { + this._WeldJointId = default(string); + } + this.SendPropertyChanged("HJGL_WeldJoint"); + } + } + } + + public event PropertyChangingEventHandler PropertyChanging; + + public event PropertyChangedEventHandler PropertyChanged; + + protected virtual void SendPropertyChanging() + { + if ((this.PropertyChanging != null)) + { + this.PropertyChanging(this, emptyChangingEventArgs); + } + } + + protected virtual void SendPropertyChanged(String propertyName) + { + if ((this.PropertyChanged != null)) + { + this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); + } + } + } + + [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.HJGL_PreWeldFitupCheck")] + public partial class HJGL_PreWeldFitupCheck : INotifyPropertyChanging, INotifyPropertyChanged + { + + private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty); + + private string _FitupCheckId; + + private string _ProjectId; + + private string _WeldJointId; + + private string _GrooveTypeId; + + private string _GrooveProcessType; + + private System.Nullable _GrooveAngle; + + private System.Nullable _FitupGap; + + private System.Nullable _Misalignment; + + private string _CheckPerson; + + private System.Nullable _CheckTime; + + private string _CreateUser; + + private System.Nullable _CreateTime; + + private string _Remark; + + private EntityRef _Base_GrooveType; + + private EntityRef _HJGL_WeldJoint; + + #region 可扩展性方法定义 + partial void OnLoaded(); + partial void OnValidate(System.Data.Linq.ChangeAction action); + partial void OnCreated(); + partial void OnFitupCheckIdChanging(string value); + partial void OnFitupCheckIdChanged(); + partial void OnProjectIdChanging(string value); + partial void OnProjectIdChanged(); + partial void OnWeldJointIdChanging(string value); + partial void OnWeldJointIdChanged(); + partial void OnGrooveTypeIdChanging(string value); + partial void OnGrooveTypeIdChanged(); + partial void OnGrooveProcessTypeChanging(string value); + partial void OnGrooveProcessTypeChanged(); + partial void OnGrooveAngleChanging(System.Nullable value); + partial void OnGrooveAngleChanged(); + partial void OnFitupGapChanging(System.Nullable value); + partial void OnFitupGapChanged(); + partial void OnMisalignmentChanging(System.Nullable value); + partial void OnMisalignmentChanged(); + partial void OnCheckPersonChanging(string value); + partial void OnCheckPersonChanged(); + partial void OnCheckTimeChanging(System.Nullable value); + partial void OnCheckTimeChanged(); + partial void OnCreateUserChanging(string value); + partial void OnCreateUserChanged(); + partial void OnCreateTimeChanging(System.Nullable value); + partial void OnCreateTimeChanged(); + partial void OnRemarkChanging(string value); + partial void OnRemarkChanged(); + #endregion + + public HJGL_PreWeldFitupCheck() + { + this._Base_GrooveType = default(EntityRef); + this._HJGL_WeldJoint = default(EntityRef); + OnCreated(); + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FitupCheckId", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)] + public string FitupCheckId + { + get + { + return this._FitupCheckId; + } + set + { + if ((this._FitupCheckId != value)) + { + this.OnFitupCheckIdChanging(value); + this.SendPropertyChanging(); + this._FitupCheckId = value; + this.SendPropertyChanged("FitupCheckId"); + this.OnFitupCheckIdChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectId", DbType="NVarChar(50)")] + public string ProjectId + { + get + { + return this._ProjectId; + } + set + { + if ((this._ProjectId != value)) + { + this.OnProjectIdChanging(value); + this.SendPropertyChanging(); + this._ProjectId = value; + this.SendPropertyChanged("ProjectId"); + this.OnProjectIdChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WeldJointId", DbType="NVarChar(50) NOT NULL", CanBeNull=false)] + public string WeldJointId + { + get + { + return this._WeldJointId; + } + set + { + if ((this._WeldJointId != value)) + { + if (this._HJGL_WeldJoint.HasLoadedOrAssignedValue) + { + throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException(); + } + this.OnWeldJointIdChanging(value); + this.SendPropertyChanging(); + this._WeldJointId = value; + this.SendPropertyChanged("WeldJointId"); + this.OnWeldJointIdChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_GrooveTypeId", DbType="NVarChar(50) NOT NULL", CanBeNull=false)] + public string GrooveTypeId + { + get + { + return this._GrooveTypeId; + } + set + { + if ((this._GrooveTypeId != value)) + { + if (this._Base_GrooveType.HasLoadedOrAssignedValue) + { + throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException(); + } + this.OnGrooveTypeIdChanging(value); + this.SendPropertyChanging(); + this._GrooveTypeId = value; + this.SendPropertyChanged("GrooveTypeId"); + this.OnGrooveTypeIdChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_GrooveProcessType", DbType="NVarChar(100)")] + public string GrooveProcessType + { + get + { + return this._GrooveProcessType; + } + set + { + if ((this._GrooveProcessType != value)) + { + this.OnGrooveProcessTypeChanging(value); + this.SendPropertyChanging(); + this._GrooveProcessType = value; + this.SendPropertyChanged("GrooveProcessType"); + this.OnGrooveProcessTypeChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_GrooveAngle", DbType="Decimal(18,2)")] + public System.Nullable GrooveAngle + { + get + { + return this._GrooveAngle; + } + set + { + if ((this._GrooveAngle != value)) + { + this.OnGrooveAngleChanging(value); + this.SendPropertyChanging(); + this._GrooveAngle = value; + this.SendPropertyChanged("GrooveAngle"); + this.OnGrooveAngleChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FitupGap", DbType="Decimal(18,2)")] + public System.Nullable FitupGap + { + get + { + return this._FitupGap; + } + set + { + if ((this._FitupGap != value)) + { + this.OnFitupGapChanging(value); + this.SendPropertyChanging(); + this._FitupGap = value; + this.SendPropertyChanged("FitupGap"); + this.OnFitupGapChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Misalignment", DbType="Decimal(18,2)")] + public System.Nullable Misalignment + { + get + { + return this._Misalignment; + } + set + { + if ((this._Misalignment != value)) + { + this.OnMisalignmentChanging(value); + this.SendPropertyChanging(); + this._Misalignment = value; + this.SendPropertyChanged("Misalignment"); + this.OnMisalignmentChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CheckPerson", DbType="NVarChar(50)")] + public string CheckPerson + { + get + { + return this._CheckPerson; + } + set + { + if ((this._CheckPerson != value)) + { + this.OnCheckPersonChanging(value); + this.SendPropertyChanging(); + this._CheckPerson = value; + this.SendPropertyChanged("CheckPerson"); + this.OnCheckPersonChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CheckTime", DbType="DateTime")] + public System.Nullable CheckTime + { + get + { + return this._CheckTime; + } + set + { + if ((this._CheckTime != value)) + { + this.OnCheckTimeChanging(value); + this.SendPropertyChanging(); + this._CheckTime = value; + this.SendPropertyChanged("CheckTime"); + this.OnCheckTimeChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CreateUser", DbType="NVarChar(50)")] + public string CreateUser + { + get + { + return this._CreateUser; + } + set + { + if ((this._CreateUser != value)) + { + this.OnCreateUserChanging(value); + this.SendPropertyChanging(); + this._CreateUser = value; + this.SendPropertyChanged("CreateUser"); + this.OnCreateUserChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CreateTime", DbType="DateTime")] + public System.Nullable CreateTime + { + get + { + return this._CreateTime; + } + set + { + if ((this._CreateTime != value)) + { + this.OnCreateTimeChanging(value); + this.SendPropertyChanging(); + this._CreateTime = value; + this.SendPropertyChanged("CreateTime"); + this.OnCreateTimeChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remark", DbType="NVarChar(500)")] + public string Remark + { + get + { + return this._Remark; + } + set + { + if ((this._Remark != value)) + { + this.OnRemarkChanging(value); + this.SendPropertyChanging(); + this._Remark = value; + this.SendPropertyChanged("Remark"); + this.OnRemarkChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_PreWeldFitupCheck_GrooveType", Storage="_Base_GrooveType", ThisKey="GrooveTypeId", OtherKey="GrooveTypeId", IsForeignKey=true)] + public Base_GrooveType Base_GrooveType + { + get + { + return this._Base_GrooveType.Entity; + } + set + { + Base_GrooveType previousValue = this._Base_GrooveType.Entity; + if (((previousValue != value) + || (this._Base_GrooveType.HasLoadedOrAssignedValue == false))) + { + this.SendPropertyChanging(); + if ((previousValue != null)) + { + this._Base_GrooveType.Entity = null; + previousValue.HJGL_PreWeldFitupCheck.Remove(this); + } + this._Base_GrooveType.Entity = value; + if ((value != null)) + { + value.HJGL_PreWeldFitupCheck.Add(this); + this._GrooveTypeId = value.GrooveTypeId; + } + else + { + this._GrooveTypeId = default(string); + } + this.SendPropertyChanged("Base_GrooveType"); + } + } + } + + [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_PreWeldFitupCheck_WeldJoint", Storage="_HJGL_WeldJoint", ThisKey="WeldJointId", OtherKey="WeldJointId", IsForeignKey=true)] + public HJGL_WeldJoint HJGL_WeldJoint + { + get + { + return this._HJGL_WeldJoint.Entity; + } + set + { + HJGL_WeldJoint previousValue = this._HJGL_WeldJoint.Entity; + if (((previousValue != value) + || (this._HJGL_WeldJoint.HasLoadedOrAssignedValue == false))) + { + this.SendPropertyChanging(); + if ((previousValue != null)) + { + this._HJGL_WeldJoint.Entity = null; + previousValue.HJGL_PreWeldFitupCheck = null; + } + this._HJGL_WeldJoint.Entity = value; + if ((value != null)) + { + value.HJGL_PreWeldFitupCheck = this; + this._WeldJointId = value.WeldJointId; + } + else + { + this._WeldJointId = default(string); + } + this.SendPropertyChanged("HJGL_WeldJoint"); + } + } + } + + public event PropertyChangingEventHandler PropertyChanging; + + public event PropertyChangedEventHandler PropertyChanged; + + protected virtual void SendPropertyChanging() + { + if ((this.PropertyChanging != null)) + { + this.PropertyChanging(this, emptyChangingEventArgs); + } + } + + protected virtual void SendPropertyChanged(String propertyName) + { + if ((this.PropertyChanged != null)) + { + this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); + } + } + } + [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.HJGL_PreWeldingDaily")] public partial class HJGL_PreWeldingDaily : INotifyPropertyChanging, INotifyPropertyChanged { @@ -109613,6 +110438,14 @@ namespace Model private string _Y2; + private string _GrooveProcessType; + + private System.Nullable _GrooveAngle; + + private System.Nullable _FitupGap; + + private System.Nullable _Misalignment; + private EntitySet _HJGL_Batch_BatchTrustItem; private EntitySet _HJGL_Batch_PointBatchItem; @@ -109657,6 +110490,10 @@ namespace Model private EntitySet _HJGL_HotProess_TrustItem; + private EntityRef _HJGL_PreWeldCuttingCheck; + + private EntityRef _HJGL_PreWeldFitupCheck; + #region 可扩展性方法定义 partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); @@ -109771,6 +110608,14 @@ namespace Model partial void OnX2Changed(); partial void OnY2Changing(string value); partial void OnY2Changed(); + partial void OnGrooveProcessTypeChanging(string value); + partial void OnGrooveProcessTypeChanged(); + partial void OnGrooveAngleChanging(System.Nullable value); + partial void OnGrooveAngleChanged(); + partial void OnFitupGapChanging(System.Nullable value); + partial void OnFitupGapChanged(); + partial void OnMisalignmentChanging(System.Nullable value); + partial void OnMisalignmentChanged(); #endregion public HJGL_WeldJoint() @@ -109797,6 +110642,8 @@ namespace Model this._WPQ_WPQList = default(EntityRef); this._HJGL_HotProess_Report = new EntitySet(new Action(this.attach_HJGL_HotProess_Report), new Action(this.detach_HJGL_HotProess_Report)); this._HJGL_HotProess_TrustItem = new EntitySet(new Action(this.attach_HJGL_HotProess_TrustItem), new Action(this.detach_HJGL_HotProess_TrustItem)); + this._HJGL_PreWeldCuttingCheck = default(EntityRef); + this._HJGL_PreWeldFitupCheck = default(EntityRef); OnCreated(); } @@ -110960,6 +111807,86 @@ namespace Model } } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_GrooveProcessType", DbType="NVarChar(100)")] + public string GrooveProcessType + { + get + { + return this._GrooveProcessType; + } + set + { + if ((this._GrooveProcessType != value)) + { + this.OnGrooveProcessTypeChanging(value); + this.SendPropertyChanging(); + this._GrooveProcessType = value; + this.SendPropertyChanged("GrooveProcessType"); + this.OnGrooveProcessTypeChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_GrooveAngle", DbType="Decimal(18,2)")] + public System.Nullable GrooveAngle + { + get + { + return this._GrooveAngle; + } + set + { + if ((this._GrooveAngle != value)) + { + this.OnGrooveAngleChanging(value); + this.SendPropertyChanging(); + this._GrooveAngle = value; + this.SendPropertyChanged("GrooveAngle"); + this.OnGrooveAngleChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FitupGap", DbType="Decimal(18,2)")] + public System.Nullable FitupGap + { + get + { + return this._FitupGap; + } + set + { + if ((this._FitupGap != value)) + { + this.OnFitupGapChanging(value); + this.SendPropertyChanging(); + this._FitupGap = value; + this.SendPropertyChanged("FitupGap"); + this.OnFitupGapChanged(); + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Misalignment", DbType="Decimal(18,2)")] + public System.Nullable Misalignment + { + get + { + return this._Misalignment; + } + set + { + if ((this._Misalignment != value)) + { + this.OnMisalignmentChanging(value); + this.SendPropertyChanging(); + this._Misalignment = value; + this.SendPropertyChanged("Misalignment"); + this.OnMisalignmentChanged(); + } + } + } + [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_HJGL_Batch_BatchTrustItem_HJGL_WeldJoint", Storage="_HJGL_Batch_BatchTrustItem", ThisKey="WeldJointId", OtherKey="WeldJointId", DeleteRule="NO ACTION")] public EntitySet HJGL_Batch_BatchTrustItem { @@ -111561,6 +112488,64 @@ namespace Model } } + [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_PreWeldCuttingCheck_WeldJoint", Storage="_HJGL_PreWeldCuttingCheck", ThisKey="WeldJointId", OtherKey="WeldJointId", IsUnique=true, IsForeignKey=false, DeleteRule="NO ACTION")] + public HJGL_PreWeldCuttingCheck HJGL_PreWeldCuttingCheck + { + get + { + return this._HJGL_PreWeldCuttingCheck.Entity; + } + set + { + HJGL_PreWeldCuttingCheck previousValue = this._HJGL_PreWeldCuttingCheck.Entity; + if (((previousValue != value) + || (this._HJGL_PreWeldCuttingCheck.HasLoadedOrAssignedValue == false))) + { + this.SendPropertyChanging(); + if ((previousValue != null)) + { + this._HJGL_PreWeldCuttingCheck.Entity = null; + previousValue.HJGL_WeldJoint = null; + } + this._HJGL_PreWeldCuttingCheck.Entity = value; + if ((value != null)) + { + value.HJGL_WeldJoint = this; + } + this.SendPropertyChanged("HJGL_PreWeldCuttingCheck"); + } + } + } + + [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_PreWeldFitupCheck_WeldJoint", Storage="_HJGL_PreWeldFitupCheck", ThisKey="WeldJointId", OtherKey="WeldJointId", IsUnique=true, IsForeignKey=false, DeleteRule="NO ACTION")] + public HJGL_PreWeldFitupCheck HJGL_PreWeldFitupCheck + { + get + { + return this._HJGL_PreWeldFitupCheck.Entity; + } + set + { + HJGL_PreWeldFitupCheck previousValue = this._HJGL_PreWeldFitupCheck.Entity; + if (((previousValue != value) + || (this._HJGL_PreWeldFitupCheck.HasLoadedOrAssignedValue == false))) + { + this.SendPropertyChanging(); + if ((previousValue != null)) + { + this._HJGL_PreWeldFitupCheck.Entity = null; + previousValue.HJGL_WeldJoint = null; + } + this._HJGL_PreWeldFitupCheck.Entity = value; + if ((value != null)) + { + value.HJGL_WeldJoint = this; + } + this.SendPropertyChanged("HJGL_PreWeldFitupCheck"); + } + } + } + public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; diff --git a/SGGL/Model/Model.csproj b/SGGL/Model/Model.csproj index 415dbd1a..e293ab7c 100644 --- a/SGGL/Model/Model.csproj +++ b/SGGL/Model/Model.csproj @@ -126,6 +126,7 @@ + @@ -251,6 +252,7 @@ + diff --git a/SGGL/WebAPI/Controllers/BaseInfoController.cs b/SGGL/WebAPI/Controllers/BaseInfoController.cs index fd81e265..435289f4 100644 --- a/SGGL/WebAPI/Controllers/BaseInfoController.cs +++ b/SGGL/WebAPI/Controllers/BaseInfoController.cs @@ -189,6 +189,27 @@ namespace WebAPI.Controllers return responeData; } + /// + /// 根据材料主编码获取材料信息 + /// + /// + /// + public Model.ResponeData GetMaterialInfoByMaterialCode(string materialCode) + { + var responeData = new Model.ResponeData(); + try + { + responeData.data = BLL.MaterialCodeLibService.GetBarCodeMaterialInfo(materialCode); + } + catch (Exception ex) + { + responeData.code = 0; + responeData.message = ex.Message; + } + + return responeData; + } + /// /// 获取探伤类型 /// @@ -229,6 +250,26 @@ namespace WebAPI.Controllers return responeData; } + /// + /// 获取坡口类型 + /// + /// + public Model.ResponeData getGrooveType() + { + var responeData = new Model.ResponeData(); + try + { + responeData.data = BLL.APIBaseInfoService.getGrooveType(); + } + catch (Exception ex) + { + responeData.code = 0; + responeData.message = ex.Message; + } + + return responeData; + } + #endregion #region 获取专项检查处理措施 diff --git a/SGGL/WebAPI/Controllers/HJGL/WeldingManage/PreWeldInspectionController.cs b/SGGL/WebAPI/Controllers/HJGL/WeldingManage/PreWeldInspectionController.cs new file mode 100644 index 00000000..5e4547a2 --- /dev/null +++ b/SGGL/WebAPI/Controllers/HJGL/WeldingManage/PreWeldInspectionController.cs @@ -0,0 +1,77 @@ +using BLL; +using System; +using System.Web.Http; + +namespace WebAPI.Controllers.HJGL.WeldingManage +{ + /// + /// 焊前抽检接口 + /// + public class PreWeldInspectionController : ApiController + { + /// + /// 根据焊口ID获取焊前抽检基础信息 + /// + /// 焊口ID + /// + public Model.ResponeData getPreWeldJointByWeldJointId(string WeldJointId) + { + var responeData = new Model.ResponeData(); + try + { + responeData.data = APIPreWeldInspectionService.GetPreWeldJointByWeldJointId(WeldJointId); + } + catch (Exception ex) + { + responeData.code = 0; + responeData.message = ex.Message; + } + + return responeData; + } + + /// + /// 保存下料抽检记录 + /// + /// 下料抽检参数 + /// + [HttpPost] + public Model.ResponeData SaveCuttingCheck([FromBody] Model.PreWeldCuttingCheckItem item) + { + var responeData = new Model.ResponeData(); + try + { + APIPreWeldInspectionService.SaveCuttingCheck(item); + } + catch (Exception ex) + { + responeData.code = 0; + responeData.message = ex.Message; + } + + return responeData; + } + + /// + /// 保存组对抽检记录 + /// + /// 组对抽检参数 + /// + [HttpPost] + public Model.ResponeData SaveFitupCheck([FromBody] Model.PreWeldFitupCheckItem item) + { + var responeData = new Model.ResponeData(); + try + { + APIPreWeldInspectionService.SaveFitupCheck(item); + } + catch (Exception ex) + { + responeData.code = 0; + responeData.message = ex.Message; + } + + return responeData; + } + } +} diff --git a/SGGL/WebAPI/ErrLog.txt b/SGGL/WebAPI/ErrLog.txt index 0ad4fbbd..007307b4 100644 --- a/SGGL/WebAPI/ErrLog.txt +++ b/SGGL/WebAPI/ErrLog.txt @@ -201,3 +201,177 @@ IP地址:::1 出错时间:03/04/2025 14:46:02 + +错误信息开始=====> +错误类型:InvalidOperationException +错误信息:“~/Views/Home/Index.cshtml”处的视图必须派生自 WebViewPage 或 WebViewPage。 +错误堆栈: + 在 System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) + 在 System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass3_1.b__5(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.<>c.b__152_1(IAsyncResult asyncResult, ExecuteCoreState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.<>c.b__20_1(IAsyncResult asyncResult, ProcessRequestState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) + 在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() + 在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) + 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +出错时间:06/16/2026 23:10:50 +出错文件:http://localhost:1766/ +IP地址:::1 + +出错时间:06/16/2026 23:10:50 + + +错误信息开始=====> +错误类型:InvalidOperationException +错误信息:“~/Views/Home/Index.cshtml”处的视图必须派生自 WebViewPage 或 WebViewPage。 +错误堆栈: + 在 System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) + 在 System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass3_1.b__5(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.<>c.b__152_1(IAsyncResult asyncResult, ExecuteCoreState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.<>c.b__20_1(IAsyncResult asyncResult, ProcessRequestState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) + 在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() + 在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) + 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +出错时间:06/16/2026 23:17:56 +出错文件:http://localhost:1766/ +IP地址:::1 + +出错时间:06/16/2026 23:17:56 + + +错误信息开始=====> +错误类型:InvalidOperationException +错误信息:“~/Views/Home/Index.cshtml”处的视图必须派生自 WebViewPage 或 WebViewPage。 +错误堆栈: + 在 System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) + 在 System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass3_1.b__5(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.<>c.b__152_1(IAsyncResult asyncResult, ExecuteCoreState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.<>c.b__20_1(IAsyncResult asyncResult, ProcessRequestState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) + 在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() + 在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) + 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +出错时间:06/16/2026 23:20:08 +出错文件:http://localhost:1766/ +IP地址:::1 + +出错时间:06/16/2026 23:20:10 + + +错误信息开始=====> +错误类型:InvalidOperationException +错误信息:“~/Views/Home/Index.cshtml”处的视图必须派生自 WebViewPage 或 WebViewPage。 +错误堆栈: + 在 System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) + 在 System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass3_1.b__5(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.<>c.b__152_1(IAsyncResult asyncResult, ExecuteCoreState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.<>c.b__20_1(IAsyncResult asyncResult, ProcessRequestState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) + 在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() + 在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) + 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +出错时间:06/16/2026 23:21:02 +出错文件:http://localhost:1766/ +IP地址:::1 + +出错时间:06/16/2026 23:21:02 + + +错误信息开始=====> +错误类型:InvalidOperationException +错误信息:“~/Views/Home/Index.cshtml”处的视图必须派生自 WebViewPage 或 WebViewPage。 +错误堆栈: + 在 System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) + 在 System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass3_1.b__5(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.<>c.b__152_1(IAsyncResult asyncResult, ExecuteCoreState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.<>c.b__20_1(IAsyncResult asyncResult, ProcessRequestState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) + 在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() + 在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) + 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +出错时间:06/17/2026 09:41:57 +出错文件:http://localhost:1766/ +IP地址:::1 + +出错时间:06/17/2026 09:41:57 + + +错误信息开始=====> +错误类型:InvalidOperationException +错误信息:“~/Views/Home/Index.cshtml”处的视图必须派生自 WebViewPage 或 WebViewPage。 +错误堆栈: + 在 System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) + 在 System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) + 在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass3_1.b__5(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.<>c.b__152_1(IAsyncResult asyncResult, ExecuteCoreState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.<>c.b__20_1(IAsyncResult asyncResult, ProcessRequestState innerState) + 在 System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) + 在 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) + 在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() + 在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) + 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +出错时间:06/17/2026 12:57:31 +出错文件:http://localhost:1766/ +IP地址:::1 + +出错时间:06/17/2026 12:57:31 + diff --git a/SGGL/WebAPI/Global.asax.cs b/SGGL/WebAPI/Global.asax.cs index 529ee841..46b022f1 100644 --- a/SGGL/WebAPI/Global.asax.cs +++ b/SGGL/WebAPI/Global.asax.cs @@ -8,7 +8,7 @@ using System.Web.Http; using System.Web.Mvc; using System.Web.Optimization; using System.Web.Routing; -using WebAPI.Log; +using WebAPI; namespace WebAPI { @@ -33,7 +33,7 @@ namespace WebAPI // 使api返回为json GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear(); - GlobalConfiguration.Configuration.MessageHandlers.Add(new CustomMessageHandler()); + // GlobalConfiguration.Configuration.MessageHandlers.Add(new CustomMessageHandler()); } /// diff --git a/SGGL/WebAPI/WebAPI.csproj b/SGGL/WebAPI/WebAPI.csproj index f74dbd39..7cb6cf85 100644 --- a/SGGL/WebAPI/WebAPI.csproj +++ b/SGGL/WebAPI/WebAPI.csproj @@ -213,6 +213,7 @@ + @@ -259,7 +260,6 @@ Global.asax - @@ -319,6 +319,7 @@ +