From 4bd42dd36a3ecfffd4b3f10a25fd60af5e0ac60a Mon Sep 17 00:00:00 2001 From: wendy <408182087@qq.com> Date: Mon, 13 Jul 2026 11:13:27 +0800 Subject: [PATCH] 20260713 --- .../版本日志/HJGLDB_DS_2026-07-13_bwj.sql | 151 ++++++++ .../HJGL_DataIn/工艺管线参数信息导入模板.xls | Bin 96256 -> 84480 bytes .../Excel/HJGL_DataIn/焊口信息导入模板.xls | Bin 48640 -> 68608 bytes .../Excel/HJGL_DataIn/焊接记录导入模板.xls | Bin 22528 -> 144384 bytes .../FineUIPro.Web/FineUIPro.Web.csproj.user | 2 +- .../CheckManage/QualityRatingDataIn.aspx.cs | 177 ++++++++- .../HJGL/DataIn/WeldReportIn.aspx.cs | 9 +- .../WelderDailyWorkExceptionWarning.aspx | 217 ++++++----- .../WelderDailyWorkExceptionWarning.aspx.cs | 359 ++++-------------- ...DailyWorkExceptionWarning.aspx.designer.cs | 44 +-- HJGL_DS/FineUIPro.Web/Web.config | 4 +- HJGL_DS/WebAPI/WebAPI.csproj.user | 2 +- 12 files changed, 523 insertions(+), 442 deletions(-) create mode 100644 DataBase/版本日志/HJGLDB_DS_2026-07-13_bwj.sql diff --git a/DataBase/版本日志/HJGLDB_DS_2026-07-13_bwj.sql b/DataBase/版本日志/HJGLDB_DS_2026-07-13_bwj.sql new file mode 100644 index 0000000..fe0b586 --- /dev/null +++ b/DataBase/版本日志/HJGLDB_DS_2026-07-13_bwj.sql @@ -0,0 +1,151 @@ + +ALTER PROCEDURE [dbo].[Sp_WeekWelding] +( + @StartWeldingDate DATETIME, + @EndWeldingDate DATETIME, + @WelderCode NVARCHAR(20) = NULL +) +AS +BEGIN + SET NOCOUNT ON; + + DECLARE @Sql NVARCHAR(MAX) + DECLARE @ColList NVARCHAR(MAX) = '' + DECLARE @ColNameList NVARCHAR(MAX) = '' + DECLARE @FinalDateCols NVARCHAR(MAX) = '' + + ;WITH DateCalendar AS ( + SELECT CAST(@StartWeldingDate AS DATE) AS WeldDay + UNION ALL + SELECT DATEADD(DAY, 1, WeldDay) + FROM DateCalendar + WHERE WeldDay < CAST(@EndWeldingDate AS DATE) + ) + SELECT + @ColList += ISNULL(',[' + CONVERT(VARCHAR, WeldDay, 23) + ']',''), + @ColNameList += ISNULL(',ISNULL([' + CONVERT(VARCHAR, WeldDay, 23) + '],0) AS [' + CONVERT(VARCHAR, WeldDay, 23) + ']',''), + @FinalDateCols += ISNULL(',t.[' + CONVERT(VARCHAR, WeldDay, 23) + ']','') + FROM DateCalendar + ORDER BY WeldDay + + SET @ColList = STUFF(@ColList,1,1,'') + SET @ColNameList = STUFF(@ColNameList,1,1,'') + SET @FinalDateCols = STUFF(@FinalDateCols,1,1,'') + + -- ̬תSQL + SET @Sql = N' + WITH DailyDataAll AS ( + SELECT + welder.WED_Code AS WelderCode, + CONVERT(DATE, daily.JOT_WeldDate) AS WeldDay, + SUM(ISNULL(jot.JOT_DoneDin, 0)) AS DailyWeldingSize + FROM HJGL_PW_JointInfo jot + LEFT JOIN dbo.HJGL_PW_IsoInfo pipe ON pipe.ISO_ID = jot.ISO_ID + LEFT JOIN HJGL_BO_WeldReportMain daily ON jot.DReportID = daily.DReportID + LEFT JOIN dbo.HJGL_BS_Welder welder ON welder.WED_ID = jot.JOT_FloorWelder + WHERE + daily.JOT_WeldDate >= @StartWeldingDate + AND daily.JOT_WeldDate < DATEADD(DAY, 1, @EndWeldingDate) + AND jot.JOT_Size <> jot.JOT_DoneDin + AND (@WelderCode IS NULL OR welder.WED_Code = @WelderCode) + GROUP BY welder.WED_Code, CONVERT(DATE, daily.JOT_WeldDate) + ), + FilterWelder AS ( + SELECT DISTINCT WelderCode + FROM DailyDataAll + WHERE DailyWeldingSize > 40 + ), + DailyData AS ( + SELECT a.* + FROM DailyDataAll a + INNER JOIN FilterWelder f ON a.WelderCode = f.WelderCode + ) + SELECT + pvt.WelderCode, + ' + @ColNameList + ' + FROM DailyData + PIVOT ( + SUM(DailyWeldingSize) + FOR WeldDay IN (' + @ColList + ') + ) pvt + ORDER BY pvt.WelderCode; + ' + + -- ʱֻ + CREATE TABLE #TempResult + ( + WelderCode NVARCHAR(50) + ); + + DECLARE @AddColSql NVARCHAR(MAX) = '' + ;WITH DateCalendar AS ( + SELECT CAST(@StartWeldingDate AS DATE) AS WeldDay + UNION ALL + SELECT DATEADD(DAY, 1, WeldDay) + FROM DateCalendar + WHERE WeldDay < CAST(@EndWeldingDate AS DATE) + ) + SELECT @AddColSql += 'ALTER TABLE #TempResult ADD [' + CONVERT(VARCHAR, WeldDay, 23) + '] FLOAT DEFAULT 0;' + FROM DateCalendar + ORDER BY WeldDay + EXEC(@AddColSql); + + -- ִж̬PIVOTдʱ + INSERT INTO #TempResult EXEC sp_executesql @Sql, + N'@StartWeldingDate DATETIME,@EndWeldingDate DATETIME,@WelderCode NVARCHAR(20)', + @StartWeldingDate,@EndWeldingDate,@WelderCode; + + -- ѯĿ + CREATE TABLE #WelderProject + ( + WelderCode NVARCHAR(50), + ProjectNames NVARCHAR(MAX) + ); + + INSERT INTO #WelderProject(WelderCode,ProjectNames) + SELECT DISTINCT + welder.WED_Code, + ISNULL(STUFF(( + SELECT DISTINCT ',' + proj.ProjectCode + FROM HJGL_PW_JointInfo jot2 + LEFT JOIN HJGL_PW_IsoInfo pipe2 ON pipe2.ISO_ID = jot2.ISO_ID + LEFT JOIN dbo.Base_Project proj ON proj.ProjectId = pipe2.ProjectId + LEFT JOIN HJGL_BO_WeldReportMain daily2 ON jot2.DReportID = daily2.DReportID + LEFT JOIN dbo.HJGL_BS_Welder welder2 ON welder2.WED_ID = jot2.JOT_FloorWelder + WHERE welder2.WED_Code = welder.WED_Code + AND daily2.JOT_WeldDate >= @StartWeldingDate + AND daily2.JOT_WeldDate < DATEADD(DAY, 1, @EndWeldingDate) + AND jot2.JOT_Size <> jot2.JOT_DoneDin + FOR XML PATH(''), TYPE + ).value('.','NVARCHAR(MAX)'),1,1,''),'') AS ProjectNames + FROM HJGL_PW_JointInfo jot + LEFT JOIN dbo.HJGL_PW_IsoInfo pipe ON pipe.ISO_ID = jot.ISO_ID + LEFT JOIN HJGL_BO_WeldReportMain daily ON jot.DReportID = daily.DReportID + LEFT JOIN dbo.HJGL_BS_Welder welder ON welder.WED_ID = jot.JOT_FloorWelder + WHERE + daily.JOT_WeldDate >= @StartWeldingDate + AND daily.JOT_WeldDate < DATEADD(DAY, 1, @EndWeldingDate) + AND jot.JOT_Size <> jot.JOT_DoneDin + AND (@WelderCode IS NULL OR welder.WED_Code = @WelderCode); + + -- ̬ƴSQL + DECLARE @FinalSql NVARCHAR(MAX) = N' + SELECT + t.WelderCode, + wp.ProjectNames, + ' + @FinalDateCols + ' + FROM #TempResult t + INNER JOIN #WelderProject wp ON t.WelderCode = wp.WelderCode + ORDER BY t.WelderCode; + ' + EXEC(@FinalSql); + + -- ʱ + DROP TABLE IF EXISTS #TempResult; + DROP TABLE IF EXISTS #WelderProject; +END + + +GO + + diff --git a/HJGL_DS/FineUIPro.Web/File/Excel/HJGL_DataIn/工艺管线参数信息导入模板.xls b/HJGL_DS/FineUIPro.Web/File/Excel/HJGL_DataIn/工艺管线参数信息导入模板.xls index fbfc92cc876c54b68c314bb6ed328c98578351dd..f336f3279df36dcf1eb8fb21d70538b59b8c684d 100644 GIT binary patch literal 84480 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 diff --git a/HJGL_DS/FineUIPro.Web/File/Excel/HJGL_DataIn/焊口信息导入模板.xls b/HJGL_DS/FineUIPro.Web/File/Excel/HJGL_DataIn/焊口信息导入模板.xls index fdbb3c05beb7e324be520a1e9de9ba57efd2a61d..6eef8e56e3603236d23bda3dffeb7cbacb7494ce 100644 GIT binary patch literal 68608 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 delta 11250 zcmcIqd3;n=mOift*&wp-TPcVEQc2aTR3$-$n-r-^ASnWgL_ky!Y_Qo;TM>P@p|rLv zPZ4bu+-}*+?vo(}cbOsR}K62zp4(!~vKA~2ph~Ye? z4{w=&-PW9iy+RM|zWDEr2OPTm-90xwbHHDdb9HFxLv4q0KFG@ntq-mD5A;kq3;b}= zAbdBqe-Bv@a;}@(JUvGJX(vWJ;%#c5Xni^qjC_ngK;Om_;%OhPqkj(d6y8CE9eJWYUHm;>5>Jr- zEfbf23twR6Lo}$%1i|=3g?8Sfa(e@vV&xs0Y@L{BlGQ&)cj&+GM1lB2E=VHMl&2fj zwx?HFp+FmX!=cejGyUMaNp#<@cv``JA}+fAgs7 z;ZHAa8!;@^v+Z#4W~Z&`q&u9p8^-SrZ7r>J=J@l6h5e?JdOLG{r?lMvGSb^Q12wm; zxNKYB{x4;Dm|SXJylBz+v8(Ag`t(Zwjp~-6Oh51BqY#bw!l7?yT2W8bdpK?P)qL)B zi?%HBubL9i?@km=t&YY0-BW636cNQDv9j{iYJ9tmD-dVQMQh`VSp~|g zOClbNb|lMU3F#H{`_-P{jqcOIzs$vS7>}pYp)=qz$92TUQuZYIRm_P!C1`i7DLZXn%R__`w6(nLYb-bBDg{R-CO))sFLzPmdgctwWD8W)TlpvD^OS^zkj&Kfnod zma|HDMuY_-lBz{|gUZohIx{>NmI@#48jn_1VDkj|%hSWA=9A-6lt$BW**L{;7&g$* zfJ)J7icp+f%F+^=Kw;PgaI2@~bPlbcr6?CuB|1l`j#|jym_Esqutk^Mc$SQ8N#>}w zWr3Np>R2=(p0f1;If1pB7fhXzXref%WE4(`n}}9GB5Wqih?gg3^2kV7Jds_JUC>xP zM4*2#ooFZ^CytoPF-Wkq!d3U4gCTHj)nV;yFj=%YpqeoSrWTN_3rqucm&0jp_7j;g zx$IG1;m^*DD@4?Bkx8|GMds9j{fMxZWH>Xkv_|q94%gME{AV-6>JcnAMQX~LTo(zb zj#av)@Jq*B2%y@HCBv<$ns71lDHikpnwh?wTjMb|+|m?x zV+gW39*++UOgOW;G+9<1Pej8FX*Zl|h#`7zkFZFjlH~E2VONd?R}^={=-7NgsA6qF zwaQ;v7w#b~!Jz);x=~($W06!kF40t0@N!}?9=qI)BJc*82ldEo)N#F3C*qMB4k8h+ z4cD+^vH}C7lF{K@ufiEw%1JCqHI%w;N$q*3#!90lwdq!lv8g_sXh4+V8i>ET$$znK zP%-a!b4z0w<6uOIFqvifXldc*8WH-WWrJzLv=vkW`k;Fhyi+2Cr!2wZDan^nsS zZHT*3hVf)Hi@j=Gv3$|e@@N#xM@*Hm80HK18{eWoI7!tF#p?WJ^@FD)j2Uh`Q8NLt zVh4`aqm^(C&>TLOxH=PYik0g|NL&;`!V2l{tdDwNnlW6ok`G11(hTKCD}zc!loiqp zMI{5qb)yMP+{{`Hr@_}@<;~R*Hx^9|A*Y$D z0;0U44og4HWl2mgM;@^KI85cc3X!x*pGfQJ%rw>Hkn>5lM|SPnOE2{MOig=7s4sr= zpD8EY))D0;h-Se~hrI)~N0Mj`?g19Uw!!X$9R*QURuEkS`y6a93~VZiHo@Kv`#0D= zRYYe)DvMxu!M+bW9&t~ZNaVw|!G;ij);pQ#c2u5%&BvPaPC)>$26hwd4%olI7M@Bp z8{)VI_8r(SU?*aAQzsGK0{awfKK3CznTUU37s2j=-38kXJNq?k9c-;3x)Jtf*iT^x z_OB*72TMN>_9@s$VGs9gd;jeBd*pucJvgp!dwS{CacyUAJM7>#YTou0_rWt z!$1GU9m9IyN#Y1rNPC@T|H~Z%CJmrw8dTtL8tPG|p`3Uba1u zIJQO9o2~!n9m9$-KzHZlWe?0mw^_H&#XAW&X~sYjd3#gWvixE zOwwK}Lqp@Ya@-pDAMVak4yWr#5Z6Imc>E8x^|t)6bX&fEe9ln6 z?WO*?yi=c#@guL6dK`VOoIv@Z-tgx7V7Wxd=|#*r7A|Drx>>j!3)j6P=jkLIQP+v{ zEL^^YE3j~d7Osbd^H@GzCoZyZ$62^u7OuC2>to^i2AtPvtNU3T`&+mH7H*)08)V@I zcjCMt$3r@i0XNjb4YP2=E!+qTH`2n5^16`!z}dVG{9G9=yCvglmLDZ}_gL|xCW&Hx5MQ@8wSbbQ326teAPk&iG^}GSfGY*dn4O8P$qNceI%2Ws1FO);MOnj85H=u`?2^$)rSRa z2)92n&fp-R&Ff??SAAH|p23r2;4~y~dd?H4a&=;X8^ZmO3^Y_Gql+$=$&%{Bf;WVF zCh-{-`1HO~d@9w4F91WhjS`>X!CX793MQMVPJBfexhG)}jR>47H%LIIs1IKuhH!r+ z1C0zO+josjHc5R(i4X3%#Aj6Cvv{NU82IeRrNXy!OGDmp8cSTp;8QB!T94i!ku8@Mt8lmdB8Ci#}h5wSPOTOg)6pjrUQ!)(08ae{>_v2YO! zS8CzPI&+@GgDlO4E87H)DEj!$A1p`pos&kusb&G-#ktM;$gT8;m*)>3}Y4+Fm`euLI({p+=s z_Fw*RlpKs1M8ZEW#VFJ8h#4G+tQ|vqu=C6;8Y7Paj94y)_!wuzLNW4)z=$PcFiOzI z;xM?&3=qr0;Kf#epa&0dx^aej?FT`=Oz;$S>oT{)?SW-H=!8k(bs6KM#KFfu4-(9ju*ICqBTDdMad zIunRbpTl_STpH?l%y4};UU%!qfB35+f7CYvJw6c(`gWCRwS}v(a48En#lqEExHRXX z>%3RVd3UkxHB!>S;si+KenH*3KpTEvsBJ3KSO6L zV&NH@uZSgQ@QymTC|GO;Z>j^tGBdPL5d;RbND(W`5I<1!e5@%$-ggwToD3~i#6mK7 z9Ui!{gbbahh{a>*yNXyf1~172Pu7c}Wr|oS2CvbBHr9y2%k%)TIt;C3{c$ub3`46F zu_6rK%Li?&1w(5Tu?h^GuZZ(+=mJHYc|#W};+z}8TO65zvu%i9Q1E=5W`pT$u z4XxEi&aI(K6meD!@v}B}sR1s&=&}DR!=VZOJ0lLa*zJ*(0;m)ye3oYCt3wLh7 zb$*Qdj>U1YggB`7F0^D=gef3%AO`t+sG$JPUcgg}cDQ zU1;IHXW=fga2G4bQa*Z^uC+K`V&T?VxJxbEWfrc>f<4hEix8K!>XYSXXuTp9o}tSX zvE&S0p@_w1=t@N_GecJ?Vu2aL>m`|im1SsyBG#0lYk)kyJXlVKuGK~slA(=?SVD%r zuZYEC=sHEL8bf${B~!3o4E;b6E5*kdsRS|2! zkgteUVCY6goPR?%DdNl!D`W<{KBL)#T`nho6|sHPA{2E$vmk#lPZZ{cJZ z&Z?o?6mdQc-L8l;Y4FNjj*;~MU5}B=E!-6r?n(=Hm4&<7!fgn+&d10#7RPHX+(rxc zeG7M;g}c5Jr^m<-I+4LKa)X82WZ^bjxGffLtA+EsTvhS_b)&`cCJVRC!rg4)wp+Mc zlI&;A>!Xh-ZL-on>Gqh6?3(wGx6Q*@W0=M~*8=;w;=5%dd1_X_%@qWc8Bpy+-y`tz*L9Z%$OwenJ9v8Gv(N6@u&Od|vqtqtw z4Q<>d=uJgW2zpD=lY-t>v|G?Sihe3+zoMrEy{l-Cpx-I_nV|OwPr*F>(*obu#%BZ_ zP_$Rj?-e~O=z}1Ewcj9tA8O0<(sEGI&jo#?=of9* zL(sppC-6;yf78ad1pTX`w*~!O(K~|vP0@Zq|E}m=L0>8QouL0v^q!!v6}>O$PefN{Jo%W6n!A*ABsK{beI!(SPrs-LLAZNj|Ab51fq*S2*O{@1br+hr09==x+(fZ zP>!Nc1$9^SCqcQ2J`vz zGnCJ(!MaY6pydzj^gQYYWg$v~{DFPI)Zh>7EHd1N(`)$T=H6V`-Fbamu9H)+e(y^D Tf4NRK|Mg|@-6q$0uKRxhEBQ&x diff --git a/HJGL_DS/FineUIPro.Web/File/Excel/HJGL_DataIn/焊接记录导入模板.xls b/HJGL_DS/FineUIPro.Web/File/Excel/HJGL_DataIn/焊接记录导入模板.xls index 20aee66836b4b83e4f5750f31590b7e536d0f110..c5ca1025fd7db2bef4a3e2e31e1eb904dff3ca24 100644 GIT binary patch literal 144384 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 delta 1183 zcmbW0T}TvB6vxjwJI>CmrtY#^t!djQnmf9VTKOPah*|AJfk6)i5@;C&lI=@itO)g> zFS3^$vWMuQ2Low!$)yN#AxH^9p`cm=p~zmsm!A4?yLWb%hM4W4GYoU@@7#0$XU;u$ z_=_?e$8l{R0)Ti;D+j3N12NysWHMO@kkmDbV~ixK1twF>Eu7*#kXyJpbKxw;q+VY* zvXUO#c#q3HUkCP9rLl%Dm}l3esAKR1upiPdx0Dl86)q+h!4y;F`%al_5;zi%fR(ZS%<7Uh)3-3pS7I;P?Lo3$`aH#-a<+^|G6U_^IZG=TaZd;C^*d!zb znhS8%mQxhA*$M!-3h?Fvyw#Q?wA%^;w3+KAQPRXUbyca@vTI23!jK}$oVTMe+IeL# zvFM4EBrXSvJ>h$G!X-m@e_vljzX_$#a?C;+1$onDAx)FYc9^tmn(se}P3wWJDO4cE z(WTD_Kj9;m@z63zoNxSq-VAtnna>0PN;ti!0qjI}JKl>^?0bBNbG-xLK_{@&OLr5= znKd8zs@R>EBTg-=!1gTk;1M>m5OubZ2j*ljKGjl9ou6kfy57$pS>E8YA~?*+EP8-f zBWJwd#f@NZUmXlg1(uwPJVNH~V&a`_v6EdQfwu$9?x@ true - Debug|Any CPU + Release|Any CPU diff --git a/HJGL_DS/FineUIPro.Web/HJGL/CheckManage/QualityRatingDataIn.aspx.cs b/HJGL_DS/FineUIPro.Web/HJGL/CheckManage/QualityRatingDataIn.aspx.cs index a4aa4ce..fb20fec 100644 --- a/HJGL_DS/FineUIPro.Web/HJGL/CheckManage/QualityRatingDataIn.aspx.cs +++ b/HJGL_DS/FineUIPro.Web/HJGL/CheckManage/QualityRatingDataIn.aspx.cs @@ -1,6 +1,7 @@ using BLL; using BLL.Common; using Model; +using NPOI.SS.Formula.Functions; using System; using System.Collections.Generic; using System.Data; @@ -32,6 +33,32 @@ namespace FineUIPro.Web.HJGL.CheckManage } } + private string BatchId + { + get + { + return (string)ViewState["BatchId"]; + } + set + { + + ViewState["BatchId"] = value; + } + } + + private string ISO_ID + { + get + { + return (string)ViewState["ISO_ID"]; + } + set + { + + ViewState["ISO_ID"] = value; + } + } + /// /// 错误集合 /// @@ -347,8 +374,8 @@ namespace FineUIPro.Web.HJGL.CheckManage percent[UserId] = (int)(100 * i / ir); string errInfo = string.Empty; string unitId = string.Empty; - string batchId = string.Empty; - string isoId = string.Empty; + //string batchId = string.Empty; + //string isoId = string.Empty; string jotId = string.Empty; int filmNum = 0; int rMatNum = 0; @@ -385,7 +412,7 @@ namespace FineUIPro.Web.HJGL.CheckManage } else { - batchId = getBatch.BatchId; + this.BatchId = getBatch.BatchId; } } else @@ -401,8 +428,8 @@ namespace FineUIPro.Web.HJGL.CheckManage } else { - isoId = getIso.ISO_ID; - newQualityRating.ISO_ID = isoId; + this.ISO_ID = getIso.ISO_ID; + newQualityRating.ISO_ID = this.ISO_ID; } } else @@ -411,7 +438,7 @@ namespace FineUIPro.Web.HJGL.CheckManage } if (!string.IsNullOrEmpty(tempData.Value4.Trim())) { - var getJoint = jointInfos.FirstOrDefault(x => x.ISO_ID == isoId && x.JOT_JointNo == tempData.Value4.Trim()); + var getJoint = jointInfos.FirstOrDefault(x => x.ISO_ID == this.ISO_ID && x.JOT_JointNo == tempData.Value4.Trim()); if (getJoint == null) { errInfo += "焊口号[" + tempData.Value4.Trim() + "]该管线下不存在;"; @@ -606,7 +633,7 @@ namespace FineUIPro.Web.HJGL.CheckManage } trustItem = (from x in db.HJGL_CH_TrustItem join y in db.HJGL_CH_Trust on x.CH_TrustID equals y.CH_TrustID - where y.BatchId == batchId && x.JOT_ID == jotId && x.States == "1" + where y.BatchId == this.BatchId && x.JOT_ID == jotId && x.States == "1" && y.CH_NDTMethod == "20d2cbca-8b3d-434b-b1c1-181796986fa5" select x).FirstOrDefault(); if (trustItem != null) @@ -722,8 +749,142 @@ namespace FineUIPro.Web.HJGL.CheckManage BLL.HJGL_PW_JointInfoService.JointFileNumWriteBack(jotId, qualityRating.Count()); BLL.HJGL_PW_JointInfoService.JointRMaterialWriteBack(jotId, totalRMatNum); BLL.HJGL_PW_JointInfoService.JointCheckStateWriteBack(jotId, "20d2cbca-8b3d-434b-b1c1-181796986fa5", trustItem.States); - BLL.HJGL_CH_TrustItemService.UpdateTrustItem(trustItem); + BLL.HJGL_CH_TrustItemService.UpdateTrustItem(trustItem); } + + #region 生成返修通知单 + //bool isExitNotOKItem = false; //是否存在不合格项 + List qualityRatingLists = new List(); + var cH_TrustItemIDs = from x in Funs.DB.HJGL_CH_TrustItem + join y in Funs.DB.HJGL_CH_Trust on x.CH_TrustID equals y.CH_TrustID + join j in Funs.DB.HJGL_PW_JointInfo on x.JOT_ID equals j.JOT_ID + where y.BatchId == this.BatchId && j.ISO_ID == this.ISO_ID + && y.CH_NDTMethod == "20d2cbca-8b3d-434b-b1c1-181796986fa5" + select x.CH_TrustItemID; + foreach (var CH_TrustItemID in cH_TrustItemIDs) + { + if (!string.IsNullOrEmpty(CH_TrustItemID)) + { + var trustItem = BLL.HJGL_CH_TrustItemService.GetTrustItemByID(CH_TrustItemID); + var jot = BLL.HJGL_PW_JointInfoService.GetJointInfoByJotID(trustItem.JOT_ID); + var trust = BLL.HJGL_TrustManageEditService.GetCH_TrustByID(trustItem.CH_TrustID); + Model.HJGL_BS_NDTType ndt = null; + if (trust.CH_NDTMethod != null) + { + ndt = BLL.HJGL_TestingService.GetTestingByTestingId(trust.CH_NDTMethod); + } + string defectNatures = string.Empty; + qualityRatingLists = BLL.HJGL_BO_QualityRatingService.GetQualityRatingByTrustDetailId(CH_TrustItemID); + qualityRatingLists = qualityRatingLists.Where(x => x.IsPass == "不合格").ToList(); // 获取不合格的项 + if (qualityRatingLists.Count() > 0) + { + //isExitNotOKItem = true; + foreach (var item in qualityRatingLists) + { + var oldRepairItemRecord = (from x in Funs.DB.HJGL_CH_RepairItemRecord + where x.JOT_ID == item.JOT_ID && x.TrustItemID == item.CH_TrustItemID && x.FilmNum == item.FilmNum + select x).FirstOrDefault(); + if (oldRepairItemRecord == null) + { + if (ndt != null && ndt.NDT_Code.Contains("RT")) + { + if (item.RMaterial == true) + { + defectNatures += "R母材,"; + } + if (item.Cack == true) + { + defectNatures += "裂纹,"; + } + if (item.NotFusion == true) + { + defectNatures += "未熔合,"; + } + if (item.NotPenetration == true) + { + defectNatures += "未焊透,"; + } + if (item.StripDefects == true) + { + defectNatures += "条状缺陷,"; + } + if (item.CircularDefects == true) + { + defectNatures += "圆形缺陷,"; + } + if (item.DeepHoleDefects == true) + { + defectNatures += "深孔缺陷,"; + } + if (item.RootsConcave == true) + { + defectNatures += "根部内凹,"; + } + if (item.RootsBiteEdge == true) + { + defectNatures += "根部咬边,"; + } + if (item.PseudoDefects == true) + { + defectNatures += "伪缺陷,"; + } + } + else + { + if (!string.IsNullOrEmpty(item.DefectNature)) + { + defectNatures = "缺陷性质:" + item.DefectNature + ","; + } + if (item.DefectLocation != null) + { + defectNatures = defectNatures + "缺陷位置:" + item.DefectLocation + ","; + } + if (item.DefectSize != null) + { + defectNatures = defectNatures + "缺陷尺寸:" + item.DefectSize + ","; + } + } + + if (!string.IsNullOrEmpty(defectNatures)) + { + defectNatures = defectNatures.Substring(0, defectNatures.LastIndexOf(",")); + } + + Model.HJGL_CH_RepairItemRecord newRepairItemRecord = new Model.HJGL_CH_RepairItemRecord(); + newRepairItemRecord.RepairItemRecordId = SQLHelper.GetNewID(typeof(Model.HJGL_CH_RepairItemRecord)); + newRepairItemRecord.ProjectId = trust.ProjectId; + newRepairItemRecord.ISO_ID = jot.ISO_ID; + newRepairItemRecord.JOT_ID = trustItem.JOT_ID; + newRepairItemRecord.FilmNum = item.FilmNum; + newRepairItemRecord.DefectNature = defectNatures; + newRepairItemRecord.TrustItemID = trustItem.CH_TrustItemID; + newRepairItemRecord.BatchId = trust.BatchId; + newRepairItemRecord.RepairMark = "R1"; + newRepairItemRecord.FeedbackDate = DateTime.Now; + newRepairItemRecord.NDT_ID = trust.CH_NDTMethod; + newRepairItemRecord.SignMan = this.CurrUser.UserName; + newRepairItemRecord.SignDate = DateTime.Now; + BLL.HJGL_CH_RepairItemRecordService.AddCH_RepairItemRecord(newRepairItemRecord); + + defectNatures = string.Empty; + } + } + + trustItem.ReportNoticeDate = DateTime.Now; + BLL.HJGL_CH_TrustItemService.UpdateTrustItem(trustItem); + } + } + } + //if (isExitNotOKItem) + //{ + // Alert.ShowInTop("成功生成返修通知单!", MessageBoxIcon.Success); + //} + //else + //{ + // Alert.ShowInTop("无不合格的项,请提交!", MessageBoxIcon.Warning); + // return; + //} + #endregion } #endregion diff --git a/HJGL_DS/FineUIPro.Web/HJGL/DataIn/WeldReportIn.aspx.cs b/HJGL_DS/FineUIPro.Web/HJGL/DataIn/WeldReportIn.aspx.cs index 6f8138a..cbc2691 100644 --- a/HJGL_DS/FineUIPro.Web/HJGL/DataIn/WeldReportIn.aspx.cs +++ b/HJGL_DS/FineUIPro.Web/HJGL/DataIn/WeldReportIn.aspx.cs @@ -325,8 +325,9 @@ namespace FineUIPro.Web.HJGL.DataIn var locationItems = BLL.DropListService.HJGL_JOT_LocationItem(); var welders = from x in db.HJGL_BS_Welder select x; var weldMethods = from x in db.HJGL_BS_WeldMethod select x; - var weldMats = from x in db.HJGL_BS_WeldMaterial where x.WMT_MatType == "2" select x; //焊条 - var weldSilks = from x in db.HJGL_BS_WeldMaterial where x.WMT_MatType == "1" select x; //焊丝 + //var weldMats = from x in db.HJGL_BS_WeldMaterial where x.WMT_MatType == "2" select x; //焊条 + //var weldSilks = from x in db.HJGL_BS_WeldMaterial where x.WMT_MatType == "1" select x; //焊丝 + var weldMaterials = from x in db.View_WeldInfoDropDownLists select x; //焊材 var welderQualifiedProjects = from x in db.HJGL_BS_WelderQualifiedProject select x; int ir = pds.Rows.Count; List jots = new List(); @@ -353,8 +354,8 @@ namespace FineUIPro.Web.HJGL.DataIn var floorWelderMan = welders.FirstOrDefault(x => x.WED_Code == col5); var locationItem = locationItems.FirstOrDefault(x => x.Text == col8); var weldMethod = weldMethods.FirstOrDefault(x => x.WME_Name == col12); - var weldMat = weldMats.FirstOrDefault(x => x.WMT_MatCode == col13); - var weldSilk = weldSilks.FirstOrDefault(x => x.WMT_MatCode == col14); + var weldMat = weldMaterials.FirstOrDefault(x => x.WeldTypeName.Contains("焊条") && x.WeldName == col13); + var weldSilk = weldMaterials.FirstOrDefault(x => x.WeldTypeName.Contains("焊丝") && x.WeldName == col14); if (joint == null) { if (string.IsNullOrEmpty(col0) || string.IsNullOrEmpty(col1) || string.IsNullOrEmpty(col2)) diff --git a/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx b/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx index d268bd9..8824e69 100644 --- a/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx +++ b/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx @@ -4,114 +4,127 @@ - + 焊工单日工作量异常预警 - + } +
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx.cs b/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx.cs index a46cd5c..019bfc6 100644 --- a/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx.cs +++ b/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx.cs @@ -1,33 +1,28 @@ -using System; +using BLL; +using System; using System.Collections.Generic; -using System.Data.SqlClient; using System.Data; -using BLL; -using System.Text; -using AspNet = System.Web.UI.WebControls; -using NPOI.SS.UserModel; -using NPOI.XSSF.UserModel; -using System.IO; +using System.Data.SqlClient; using System.Linq; -using System.Web.UI.DataVisualization.Charting; -using FineUIPro.Web.common; namespace FineUIPro.Web.HJGL.WeldingReport { public partial class WelderDailyWorkExceptionWarning : PageBase { + #region 加载页面 + /// + /// 加载页面 + /// + /// + /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { - this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString(); - - this.drpProjectId.DataTextField = "ProjectCode"; - this.drpProjectId.DataValueField = "ProjectId"; - this.drpProjectId.DataSource = BLL.Base_ProjectService.GetProjectListByUserId(this.CurrUser.UserId, "1"); - this.drpProjectId.DataBind(); - Funs.FineUIPleaseSelect(this.drpProjectId); - this.drpProjectId.SelectedValue = this.CurrUser.LoginProjectId; + DateTime today = DateTime.Now.Date; + DateTime monthStart = today.AddMonths(-1).AddDays(1); + txtStartWeldingDate.Text = monthStart.ToString("yyyy-MM-dd"); + txtEndWeldingDate.Text = today.ToString("yyyy-MM-dd"); } } @@ -36,185 +31,57 @@ namespace FineUIPro.Web.HJGL.WeldingReport /// private void BindGrid() { - List listStr = new List(); - if (!string.IsNullOrEmpty(this.drpProjectId.SelectedValue) && this.drpProjectId.SelectedValue != BLL.Const._Null) + string startDate = txtStartWeldingDate.Text.Trim(); + string endDate = txtEndWeldingDate.Text.Trim(); + + List listParams = new List { - listStr.Add(new SqlParameter("@ProjectId", this.drpProjectId.SelectedValue)); - } - else + new SqlParameter("@StartWeldingDate", startDate), + new SqlParameter("@EndWeldingDate", endDate) + }; + if (!string.IsNullOrEmpty(txtWelderCode.Text.Trim())) { - Alert.ShowInTop("请选择施工号!", MessageBoxIcon.Warning); - return; + listParams.Add(new SqlParameter("@WelderCode", txtWelderCode.Text.Trim())); } - if (!string.IsNullOrEmpty(this.txtWeldingDate.Text.Trim())) + DataTable dt = SQLHelper.GetDataTableRunProc("Sp_WeekWelding", listParams.ToArray()); + + // 取出dt中所有日期字段(排除固定两列) + var dateCols = dt.Columns.Cast() + .Where(dc => dc.ColumnName != "WelderCode" && dc.ColumnName != "ProjectNames") + .Select(dc => dc.ColumnName) + .ToList(); + + int dateColIndex = 0; + // 遍历Grid所有列,只修改日期RenderField + foreach (var col in Grid1.Columns) { - listStr.Add(new SqlParameter("@WeldingDate", this.txtWeldingDate.Text.Trim())); + RenderField rf = col as RenderField; + if (rf == null) continue; + // 跳过基础固定列 + if (rf.ColumnID == "WelderCode" || rf.ColumnID == "ProjectNames") + continue; + + // 有对应查询日期则更新表头、绑定字段 + if (dateColIndex < dateCols.Count) + { + rf.Hidden = false; + string dateStr = dateCols[dateColIndex]; + rf.HeaderText = dateStr; + rf.ColumnID = dateStr; + rf.DataField = dateStr; + dateColIndex++; + } + else + { + // 查询区间不足31天,隐藏多余的列 + rf.Hidden = true; + } } - else - { - Alert.ShowInTop("请选择焊接日期!", MessageBoxIcon.Warning); - return; - } - if (!string.IsNullOrEmpty(this.txtWelderCode.Text.Trim())) - { - listStr.Add(new SqlParameter("@WelderCode", this.txtWelderCode.Text.Trim())); - } - else - { - listStr.Add(new SqlParameter("@WelderCode", null)); - } - SqlParameter[] parameter = listStr.ToArray(); - DataTable tb = SQLHelper.GetDataTableRunProc("Sp_WeekWelding", parameter); - this.Grid1.RecordCount = tb.Rows.Count; - var table = this.GetPagedDataTable(Grid1, tb); - Grid1.DataSource = table; + Grid1.RecordCount = dt.Rows.Count; + Grid1.DataSource = dt; Grid1.DataBind(); - - foreach (GridColumn column in Grid1.Columns) - { - if (column.ColumnID == "week1") - { - column.HeaderText = txtWeldingDate.Text; - } - if (column.ColumnID == "week2") - { - column.HeaderText = string.Format("{0:yyyy-MM-dd}", Convert.ToDateTime(txtWeldingDate.Text).AddDays(1)); - } - if (column.ColumnID == "week3") - { - column.HeaderText = string.Format("{0:yyyy-MM-dd}", Convert.ToDateTime(txtWeldingDate.Text).AddDays(2)); - } - if (column.ColumnID == "week4") - { - column.HeaderText = string.Format("{0:yyyy-MM-dd}", Convert.ToDateTime(txtWeldingDate.Text).AddDays(3)); - } - if (column.ColumnID == "week5") - { - column.HeaderText = string.Format("{0:yyyy-MM-dd}", Convert.ToDateTime(txtWeldingDate.Text).AddDays(4)); - } - if (column.ColumnID == "week6") - { - column.HeaderText = string.Format("{0:yyyy-MM-dd}", Convert.ToDateTime(txtWeldingDate.Text).AddDays(5)); - } - if (column.ColumnID == "week7") - { - column.HeaderText = string.Format("{0:yyyy-MM-dd}", Convert.ToDateTime(txtWeldingDate.Text).AddDays(6)); - } - } - - } - - protected void Grid1_RowDataBound(object sender, GridRowEventArgs e) - { - DataRowView row = e.DataItem as DataRowView; - double week1Num = Convert.ToDouble(row["week1"]); - RenderField week1 = Grid1.FindColumn("week1") as RenderField; - if (week1Num >= 50 && week1Num < 60) - { - e.CellCssClasses[week1.ColumnIndex] = "color2"; - } - if (week1Num >= 60) - { - e.CellCssClasses[week1.ColumnIndex] = "color1"; - } - - double week2Num = Convert.ToDouble(row["week2"]); - RenderField week2 = Grid1.FindColumn("week2") as RenderField; - if (week2Num >= 50 && week2Num < 60) - { - e.CellCssClasses[week2.ColumnIndex] = "color2"; - } - if (week2Num >= 60) - { - e.CellCssClasses[week2.ColumnIndex] = "color1"; - } - - double week3Num = Convert.ToDouble(row["week3"]); - RenderField week3 = Grid1.FindColumn("week3") as RenderField; - if (week3Num >= 50 && week3Num < 60) - { - e.CellCssClasses[week3.ColumnIndex] = "color2"; - } - if (week3Num >= 60) - { - e.CellCssClasses[week3.ColumnIndex] = "color1"; - } - - double week4Num = Convert.ToDouble(row["week4"]); - RenderField week4 = Grid1.FindColumn("week4") as RenderField; - if (week4Num >= 50 && week4Num < 60) - { - e.CellCssClasses[week4.ColumnIndex] = "color2"; - } - if (week4Num >= 60) - { - e.CellCssClasses[week4.ColumnIndex] = "color1"; - } - - double week5Num = Convert.ToDouble(row["week5"]); - RenderField week5 = Grid1.FindColumn("week5") as RenderField; - if (week5Num >= 50 && week5Num < 60) - { - e.CellCssClasses[week5.ColumnIndex] = "color2"; - } - if (week5Num >= 60) - { - e.CellCssClasses[week5.ColumnIndex] = "color1"; - } - - double week6Num = Convert.ToDouble(row["week6"]); - RenderField week6 = Grid1.FindColumn("week6") as RenderField; - if (week6Num >= 50 && week6Num < 60) - { - e.CellCssClasses[week6.ColumnIndex] = "color2"; - } - if (week6Num >= 60) - { - e.CellCssClasses[week6.ColumnIndex] = "color1"; - } - - double week7Num = Convert.ToDouble(row["week7"]); - RenderField week7 = Grid1.FindColumn("week7") as RenderField; - if (week7Num >= 50 && week7Num < 60) - { - e.CellCssClasses[week7.ColumnIndex] = "color2"; - } - if (week7Num >= 60) - { - e.CellCssClasses[week7.ColumnIndex] = "color1"; - } - } - - /// - /// 改变索引事件 - /// - /// - /// - protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) - { - BindGrid(); - } - - /// - /// 分页下拉选择事件 - /// - /// - /// - protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) - { - Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); - BindGrid(); - } - - /// - /// 排序 - /// - /// - /// - protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e) - { - this.BindGrid(); } + #endregion #region 统计按钮事件 /// @@ -224,102 +91,26 @@ namespace FineUIPro.Web.HJGL.WeldingReport /// protected void BtnAnalyse_Click(object sender, EventArgs e) { + string startDate = txtStartWeldingDate.Text.Trim(); + string endDate = txtEndWeldingDate.Text.Trim(); + if (string.IsNullOrEmpty(startDate) || string.IsNullOrEmpty(endDate)) + { + Alert.ShowInTop("请选择焊接起止日期", MessageBoxIcon.Warning); + return; + } + if (Convert.ToDateTime(startDate) > Convert.ToDateTime(endDate)) + { + Alert.ShowInTop("起始日期不能大于结束日期", MessageBoxIcon.Warning); + return; + } + int dayDiff = (Convert.ToDateTime(endDate) - Convert.ToDateTime(startDate)).Days + 1; + if (dayDiff > 31) + { + Alert.ShowInTop("查询区间不能超过31天,请缩小日期范围", MessageBoxIcon.Warning); + return; + } BindGrid(); } #endregion - - #region 导出按钮 - /// 导出按钮 - /// - /// - /// - protected void btnOut_Click(object sender, EventArgs e) - { - Response.ClearContent(); - string filename = Funs.GetNewFileName(); - Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("焊工单日工作量异常预警" + filename, System.Text.Encoding.UTF8) + ".xls"); - Response.ContentType = "application/excel"; - Response.ContentEncoding = System.Text.Encoding.UTF8; - Response.Write(GetGridTableHtml(Grid1)); - Response.End(); - } - - /// - /// 导出方法 - /// - /// - /// - private string GetGridTableHtml(Grid grid) - { - StringBuilder sb = new StringBuilder(); - grid.PageSize = 10000; - BindGrid(); - sb.Append(""); - sb.Append(""); - sb.Append(""); - foreach (GridColumn column in grid.Columns) - { - sb.AppendFormat("", column.HeaderText); - } - sb.Append(""); - foreach (GridRow row in grid.Rows) - { - sb.Append(""); - foreach (GridColumn column in grid.Columns) - { - string html = row.Values[column.ColumnIndex].ToString(); - if (column.ColumnID == "tfNumber") - { - html = (row.FindControl("labNumber") as AspNet.Label).Text; - } - sb.AppendFormat("", html); - } - - sb.Append(""); - } - - sb.Append("
{0}
{0}
"); - - return sb.ToString(); - } - #endregion - - #region NPOI私有方法 - private XSSFSheet ExcelCreateRow(XSSFSheet ws, XSSFWorkbook hssfworkbook, int sRows, int eRows, ICellStyle style, int cStart, int cEnd, bool istitle = false) - { - for (int i = sRows; i <= eRows; i++) - { - ws.CreateRow(i); - if (istitle) - { - ws.GetRow(i).HeightInPoints = - i == sRows ? 49.75f : - i == (sRows + 1) ? 13.75f : - 38f; - } - else - { - ws.GetRow(i).HeightInPoints = 38f; - } - for (int j = cStart; j <= cEnd; j++) - { - ws.GetRow(i).CreateCell(j); - ws.GetRow(i).GetCell(j).CellStyle = style; - } - } - return ws; - } - - private ICellStyle SetStyle(XSSFWorkbook ws, BorderStyle top, BorderStyle bottom, BorderStyle left, BorderStyle right) - { - ICellStyle style = ws.CreateCellStyle(); - style.BorderLeft = left; - style.BorderRight = right; - style.BorderTop = top; - style.BorderBottom = bottom; - - return style; - } - #endregion } } \ No newline at end of file diff --git a/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx.designer.cs b/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx.designer.cs index a3b49a6..4aeb0c3 100644 --- a/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx.designer.cs +++ b/HJGL_DS/FineUIPro.Web/HJGL/WeldingReport/WelderDailyWorkExceptionWarning.aspx.designer.cs @@ -60,22 +60,22 @@ namespace FineUIPro.Web.HJGL.WeldingReport protected global::FineUIPro.Toolbar Toolbar1; /// - /// drpProjectId 控件。 + /// txtStartWeldingDate 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.DropDownList drpProjectId; + protected global::FineUIPro.DatePicker txtStartWeldingDate; /// - /// txtWeldingDate 控件。 + /// txtEndWeldingDate 控件。 /// /// /// 自动生成的字段。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// - protected global::FineUIPro.DatePicker txtWeldingDate; + protected global::FineUIPro.DatePicker txtEndWeldingDate; /// /// txtWelderCode 控件。 @@ -104,15 +104,6 @@ namespace FineUIPro.Web.HJGL.WeldingReport /// protected global::FineUIPro.Button BtnAnalyse; - /// - /// btnOut 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.Button btnOut; - /// /// labNumber 控件。 /// @@ -121,32 +112,5 @@ namespace FineUIPro.Web.HJGL.WeldingReport /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// protected global::System.Web.UI.WebControls.Label labNumber; - - /// - /// ToolbarSeparator1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1; - - /// - /// ToolbarText1 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.ToolbarText ToolbarText1; - - /// - /// ddlPageSize 控件。 - /// - /// - /// 自动生成的字段。 - /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 - /// - protected global::FineUIPro.DropDownList ddlPageSize; } } diff --git a/HJGL_DS/FineUIPro.Web/Web.config b/HJGL_DS/FineUIPro.Web/Web.config index 1b40665..3c98f31 100644 --- a/HJGL_DS/FineUIPro.Web/Web.config +++ b/HJGL_DS/FineUIPro.Web/Web.config @@ -11,7 +11,7 @@ - + @@ -67,7 +67,7 @@ - + diff --git a/HJGL_DS/WebAPI/WebAPI.csproj.user b/HJGL_DS/WebAPI/WebAPI.csproj.user index ef14066..8cd7f1f 100644 --- a/HJGL_DS/WebAPI/WebAPI.csproj.user +++ b/HJGL_DS/WebAPI/WebAPI.csproj.user @@ -1,7 +1,7 @@ - Debug|Any CPU + Release|Any CPU FolderProfile true