diff --git a/DataBase/版本日志/HJGLDB_DS_2025-12-19_gf.sql b/DataBase/版本日志/HJGLDB_DS_2025-12-19_gf.sql new file mode 100644 index 0000000..9090609 --- /dev/null +++ b/DataBase/版本日志/HJGLDB_DS_2025-12-19_gf.sql @@ -0,0 +1,105 @@ + +CREATE VIEW [dbo].[View_WelderPerformance] +AS +select v.* from +(SELECT + NEWID() AS Id, + --total.ProjectId, + --project.ProjectCode,--ʩ + '' as ProjectCode, + total.Welder, + wld.wed_code,-- + wld.wed_name,-- + wld.WED_Sex, --Ա + -------------start + CAST(ISNULL(total.totalSize,0) AS DECIMAL(19,2)) AS totalSize, --ܴ羶 + ISNULL(total.totalJoint,0) AS totalJoint, --ܺ + ISNULL(JointNum1.JointNum1,0) AS JointNum1, --һƬ + + ISNULL(JointNum1.JointNum1,0)-ISNULL(JointNoPassNum1.JointNoPassNum1,0) AS JointPassNum1, --һƬϸ񺸿 + ISNULL(JointNoPassNum1.JointNoPassNum1,0) AS RepairJoint1, --һη޺ + ISNULL(RepairJoint2.RepairJoint2,0) AS RepairJoint2, --η޺ + ISNULL(RepairJoint3.RepairJoint3,0) AS RepairJoint3, --η޺ + + CAST((CASE ISNULL((ISNULL(JointNum1.JointNum1,0)-ISNULL(JointNoPassNum1.JointNoPassNum1,0)),0) WHEN 0 THEN 0 + ELSE (CASE(ISNULL(JointNum1.JointNum1,0)) WHEN 0 THEN 0 + ELSE 1.0 * ISNULL((ISNULL(JointNum1.JointNum1,0)-ISNULL(JointNoPassNum1.JointNoPassNum1,0)),0)/(1.0 * JointNum1.JointNum1) + END)END) AS DECIMAL(19,3)) AS JointPassRate , ---һƬںϸ + + ISNULL(JointNum1.totalfilm,0) AS totalfilm, --һƬ + (ISNULL(JointNum1.totalfilm,0)- ISNULL(JointNoPassNum2.JointNoPassFilmNum2,0)) AS totalPassfilm, --һƬϸ + ISNULL(JointNoPassNum2.JointNoPassFilmNum2,0) AS repairFilm1, --һηƬ + + ISNULL(RepairJoint2.repairFilm2,0) AS repairFilm2, --ηƬ + ISNULL(RepairJoint3.repairFilm3,0) AS repairFilm3, --ηƬ + + CAST((CASE (ISNULL(JointNum1.totalfilm,0)- ISNULL(JointNoPassNum2.JointNoPassFilmNum2,0)) WHEN 0 THEN 0 + ELSE (CASE(ISNULL(JointNum1.totalfilm,0)) WHEN 0 THEN 0 + ELSE 1.0 * (ISNULL(JointNum1.totalfilm,0)- ISNULL(JointNoPassNum2.JointNoPassFilmNum2,0))/(1.0 * JointNum1.totalfilm) + END) END) AS DECIMAL(19,3)) AS JointFilmPassRate ---һƬϸ + +FROM + --ֵܴ --ܺ + (SELECT SUM(joint.JOT_Size) AS totalSize,COUNT(*) AS totalJoint + ,joint.Welder + FROM View_JointWelder joint + LEFT JOIN HJGL_BO_WeldReportMain report ON joint.DReportID = report.DReportID + WHERE joint.DReportID IS NOT NULL + GROUP BY joint.Welder) AS total + + +--һƬ , һƬ,һƬϸ + LEFT JOIN (SELECT COUNT(joint.JOT_ID) AS JointNum1, SUM(joint.RT_FilmNum) AS totalfilm, + joint.Welder + FROM dbo.View_JointWelder joint + WHERE joint.PointType='' AND joint.RT_FilmNum IS NOT NULL and joint.RT_FilmNum>0 and (select COUNT(*) from dbo.HJGL_BO_QualityRating a +left join HJGL_CH_TrustItem b on a.CH_TrustItemID=b.CH_TrustItemID +left join HJGL_CH_Trust c on b.CH_TrustID=c.CH_TrustID where a.JOT_ID=joint.JOT_ID and FilmNum is not null and c.CH_NDTMethod='20d2cbca-8b3d-434b-b1c1-181796986fa5')>0 + AND joint.dreportid IS NOT NULL + GROUP BY joint.Welder) AS JointNum1 + ON JointNum1.Welder = total.Welder + + --һƬϸ񺸿 + LEFT JOIN (SELECT COUNT(distinct joint.JOT_ID) AS JointNoPassNum1, + joint.Welder + FROM dbo.HJGL_CH_RepairItemRecord rr + left join dbo.View_JointWelder joint on rr.JOT_ID=joint.JOT_ID + WHERE joint.PointType='' and rr.NDT_ID='20d2cbca-8b3d-434b-b1c1-181796986fa5' + --AND (joint.RT1_RepairFilm IS NOT NULL or (select top 1 CH_TrustItemID from dbo.HJGL_CH_TrustItem ti where ti.JOT_ID=joint.JOT_ID and ti.States='4') is not null) + AND joint.dreportid IS NOT NULL and rr.RepairMark='R1' + GROUP BY joint.Welder) AS JointNoPassNum1 + ON JointNoPassNum1.Welder = total.Welder + --һƬϸƬ + LEFT JOIN (SELECT count(rr.RepairItemRecordId) as JointNoPassFilmNum2, + joint.Welder + FROM dbo.HJGL_CH_RepairItemRecord rr + left join dbo.View_JointWelder joint on rr.JOT_ID=joint.JOT_ID + WHERE joint.PointType='' and rr.NDT_ID='20d2cbca-8b3d-434b-b1c1-181796986fa5' + --AND (joint.RT1_RepairFilm IS NOT NULL or (select top 1 CH_TrustItemID from dbo.HJGL_CH_TrustItem ti where ti.JOT_ID=joint.JOT_ID and ti.States='4') is not null) + AND joint.dreportid IS NOT NULL and rr.RepairMark='R1' + GROUP BY joint.Welder) AS JointNoPassNum2 + ON JointNoPassNum2.Welder = total.Welder + --ηƬ,ηƬ + LEFT JOIN (SELECT COUNT(joint.JOT_ID) AS RepairJoint2, SUM(ISNULL(joint.RT2_RepairFilmNum,0)) AS RepairFilm2, + joint.Welder + FROM dbo.View_JointWelder joint + WHERE joint.PointType='' AND joint.RT2_RepairFilm IS NOT NULL + AND joint.dreportid IS NOT NULL + GROUP BY joint.Welder) AS RepairJoint2 + ON RepairJoint2.Welder = total.Welder + + + + --ηƬ,ηƬ + LEFT JOIN (SELECT COUNT(joint.JOT_ID) AS RepairJoint3, SUM(ISNULL(joint.RT3_RepairFilmNum,0)) AS RepairFilm3, + joint.Welder + FROM dbo.View_JointWelder joint + WHERE joint.PointType='' AND joint.RT3_RepairFilm IS NOT NULL + AND joint.dreportid IS NOT NULL + GROUP BY joint.Welder) AS RepairJoint3 + ON RepairJoint3.Welder = total.Welder +LEFT JOIN dbo.HJGL_BS_Welder wld ON wld.WED_ID=total.Welder) v +where v.JointFilmPassRate>0 and v.JointFilmPassRate<0.965 +GO + + diff --git a/HJGL_DS/FineUIPro.Web/HJGL/CheckManage/QualityRating.aspx.cs b/HJGL_DS/FineUIPro.Web/HJGL/CheckManage/QualityRating.aspx.cs index 4ec0d51..c89c066 100644 --- a/HJGL_DS/FineUIPro.Web/HJGL/CheckManage/QualityRating.aspx.cs +++ b/HJGL_DS/FineUIPro.Web/HJGL/CheckManage/QualityRating.aspx.cs @@ -814,8 +814,8 @@ namespace FineUIPro.Web.HJGL.CheckManage this.QualityRatingId = values.Value("QualityRatingId"); if (trust.CH_NDTMethod == "20d2cbca-8b3d-434b-b1c1-181796986fa5") //RT检测,评定结果不为空才保存拍片记录 { - //if (!string.IsNullOrEmpty(newQualityRating.DefectResult)) - //{ + if (!string.IsNullOrEmpty(newQualityRating.IsPass)) + { filmNum++; if (newQualityRating.RMaterial == true) { @@ -837,25 +837,28 @@ namespace FineUIPro.Web.HJGL.CheckManage newQualityRating.QualityRatingId = this.QualityRatingId; BLL.HJGL_BO_QualityRatingService.UpadteQualityRating(newQualityRating); } - //} + } } else { - var quatlityRating = BLL.HJGL_BO_QualityRatingService.GetQualityRatingById(this.QualityRatingId); - if (quatlityRating == null) + if (!string.IsNullOrEmpty(newQualityRating.IsPass)) { - newQualityRating.QualityRatingId = this.QualityRatingId; - BLL.HJGL_BO_QualityRatingService.AddQualityRating(newQualityRating); - } - else - { - Model.HJGL_BO_QualityRating oldQualityRating = BLL.HJGL_BO_QualityRatingService.GetQualityRatingById(this.QualityRatingId); - if (oldQualityRating != null) + var quatlityRating = BLL.HJGL_BO_QualityRatingService.GetQualityRatingById(this.QualityRatingId); + if (quatlityRating == null) { - newQualityRating.RemakeResult = oldQualityRating.RemakeResult; + newQualityRating.QualityRatingId = this.QualityRatingId; + BLL.HJGL_BO_QualityRatingService.AddQualityRating(newQualityRating); + } + else + { + Model.HJGL_BO_QualityRating oldQualityRating = BLL.HJGL_BO_QualityRatingService.GetQualityRatingById(this.QualityRatingId); + if (oldQualityRating != null) + { + newQualityRating.RemakeResult = oldQualityRating.RemakeResult; + } + newQualityRating.QualityRatingId = this.QualityRatingId; + BLL.HJGL_BO_QualityRatingService.UpadteQualityRating(newQualityRating); } - newQualityRating.QualityRatingId = this.QualityRatingId; - BLL.HJGL_BO_QualityRatingService.UpadteQualityRating(newQualityRating); } } BLL.HJGL_CH_TrustItemService.UpdateTrustItem(trustItem); diff --git a/HJGL_DS/FineUIPro.Web/HJGL/DataIn/WeldReportIn.aspx.cs b/HJGL_DS/FineUIPro.Web/HJGL/DataIn/WeldReportIn.aspx.cs index cfbac69..6f8138a 100644 --- a/HJGL_DS/FineUIPro.Web/HJGL/DataIn/WeldReportIn.aspx.cs +++ b/HJGL_DS/FineUIPro.Web/HJGL/DataIn/WeldReportIn.aspx.cs @@ -605,9 +605,12 @@ namespace FineUIPro.Web.HJGL.DataIn { result += "第" + (i + 2).ToString() + "行," + "该焊口的焊工资质不符合" + "\n"; } - else //D类口暂时不提示 + else { - + if (floorWelderQualifys.Count() == 0 && cellWelderQualifys.Count() == 0) //D类口强制提交时,应至少有焊工证,否则也不可强制提交 + { + result += "第" + (i + 2).ToString() + "行," + "该焊口的焊工资质不符合" + "\n"; + } } } } diff --git a/HJGL_DS/FineUIPro.Web/HJGL/WeldingManage/WeldReportEdit.aspx.cs b/HJGL_DS/FineUIPro.Web/HJGL/WeldingManage/WeldReportEdit.aspx.cs index e045e04..d59553d 100644 --- a/HJGL_DS/FineUIPro.Web/HJGL/WeldingManage/WeldReportEdit.aspx.cs +++ b/HJGL_DS/FineUIPro.Web/HJGL/WeldingManage/WeldReportEdit.aspx.cs @@ -465,6 +465,13 @@ namespace FineUIPro.Web.HJGL.WeldingManage { isAllD = false; } + else + { + if (floorWelderQualifys.Count() == 0 && cellWelderQualifys.Count() == 0) //D类口强制提交时,应至少有焊工证,否则也不可强制提交 + { + isAllD = false; + } + } } } if (eventArg != string.Empty) diff --git a/HJGL_DS/FineUIPro.Web/WeldMat/Stock/StockMoveRecords.aspx.cs b/HJGL_DS/FineUIPro.Web/WeldMat/Stock/StockMoveRecords.aspx.cs index 7d6d40f..1ed337d 100644 --- a/HJGL_DS/FineUIPro.Web/WeldMat/Stock/StockMoveRecords.aspx.cs +++ b/HJGL_DS/FineUIPro.Web/WeldMat/Stock/StockMoveRecords.aspx.cs @@ -170,7 +170,8 @@ namespace FineUIPro.Web.WeldMat.Stock /// protected void btnMoveStore_Click(object sender, EventArgs e) { - if (BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.CLGL_StockMoveRecordsMenuId, BLL.Const.BtnMoveStore)) + //if (BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.CLGL_StockMoveRecordsMenuId, BLL.Const.BtnMoveStore)) + if (this.CurrUser.UserId == "95eae1e8-ddb9-4b76-99f4-78a3636a398b") //焊材移库功能只能赵瑞霞操作 { if (CurrUser.Account != Const.Gly) { diff --git a/HJGL_DS/WebAPI/Controllers/JointInfoController.cs b/HJGL_DS/WebAPI/Controllers/JointInfoController.cs index d4f2bb8..b9ca994 100644 --- a/HJGL_DS/WebAPI/Controllers/JointInfoController.cs +++ b/HJGL_DS/WebAPI/Controllers/JointInfoController.cs @@ -214,6 +214,15 @@ namespace WebAPI.Controllers responeData.message = "该焊口的焊工资质不符合!"; return responeData; } + else + { + if (floorWelderQualifys.Count() == 0 && cellWelderQualifys.Count() == 0) //D类口强制提交时,应至少有焊工证,否则也不可强制提交 + { + responeData.code = 0; + responeData.message = "该焊口的焊工资质不符合!"; + return responeData; + } + } } } BLL.APIJointInfoService.SaveJointInfoForWeldReport(addItem); diff --git a/HJGL_DS/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user b/HJGL_DS/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user index eca38d4..67bbaa5 100644 --- a/HJGL_DS/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user +++ b/HJGL_DS/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user @@ -79,13 +79,13 @@ 09/10/2013 16:29:20 - 11/18/2025 11:30:43 + 12/19/2025 10:46:46 07/28/2025 20:15:00 - 11/18/2025 11:30:43 + 12/19/2025 10:46:46 12/17/2020 21:32:28 @@ -115,10 +115,10 @@ 07/25/2012 11:48:56 - 11/18/2025 11:30:43 + 12/19/2025 10:46:45 - 11/18/2025 11:30:43 + 12/19/2025 10:46:45 03/17/2021 20:03:36 @@ -319,10 +319,10 @@ 02/01/2018 12:20:56 - 11/18/2025 11:30:44 + 12/19/2025 10:46:46 - 11/18/2025 11:30:44 + 12/19/2025 10:46:46 01/23/2014 13:57:34 @@ -448,7 +448,7 @@ 07/03/2024 11:01:07 - 11/18/2025 11:30:50 + 12/19/2025 10:47:09 \ No newline at end of file