From b59c07a7ca5fbca4b9ce767c24b9d1edd93c10cd Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 28 Dec 2023 15:45:13 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E4=BC=81=E6=A0=87=E7=A8=BD=E6=9F=A5?= =?UTF-8?q?=E8=AE=A1=E5=88=92):=2079625?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/mapper/xml/SysUserMapper.xml | 2 +- .../ProcessEsInspectPlanController.java | 5 +- .../entity/ProcessEsInspectPlan.java | 19 +++--- .../service/IProcessEsInspectPlanService.java | 4 +- .../impl/ProcessEsInspectPlanServiceImpl.java | 57 +++++++++++------- .../EnterpriseStandardDeclareController.java | 8 --- .../excelTemplate/企标稽查计划导入模板.xls | Bin 0 -> 20480 bytes pom.xml | 1 + 8 files changed, 50 insertions(+), 46 deletions(-) create mode 100644 laws-modules/src/main/resources/excelTemplate/企标稽查计划导入模板.xls diff --git a/laws-module-system/src/main/java/com/jero/modules/system/mapper/xml/SysUserMapper.xml b/laws-module-system/src/main/java/com/jero/modules/system/mapper/xml/SysUserMapper.xml index e5a1a584..359e3d6a 100644 --- a/laws-module-system/src/main/java/com/jero/modules/system/mapper/xml/SysUserMapper.xml +++ b/laws-module-system/src/main/java/com/jero/modules/system/mapper/xml/SysUserMapper.xml @@ -231,6 +231,6 @@ diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/controller/ProcessEsInspectPlanController.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/controller/ProcessEsInspectPlanController.java index 60f38d1c..dde0daa0 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/controller/ProcessEsInspectPlanController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/controller/ProcessEsInspectPlanController.java @@ -24,6 +24,7 @@ import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.util.Arrays; import java.util.List; @@ -171,8 +172,8 @@ public class ProcessEsInspectPlanController extends JeroController lists = ExcelImportUtil.importExcel(file.getInputStream(), ProcessEsInspectPlan.class, params); - if (CollectionUtils.isEmpty(lists)) { + if (CollectionUtils.isEmpty(lists) || lists.size() <= 2) { return Result.error("没有数据可导入!"); } + lists.remove(0); + lists.remove(0); List list = BeanCopyUtils.copyBeanList(lists, ProcessEsInspectPlan.class); StringBuilder errorMSG = new StringBuilder(); // 字段校验 for (int i = 0; i < list.size(); i++) { list.get(i).setProjectId(projectId); - String head = "第" + (i + 2) + "行:"; + String head = "第" + (i + 4) + "行:"; List firstVerify = firstVerify(list.get(i)); List secondVerify = secondVerify(list.get(i)); List thirdVerify = thirdVerify(list.get(i)); @@ -254,19 +254,22 @@ public class ProcessEsInspectPlanServiceImpl extends ServiceImpl()); - return mv; + public void templateDownload(HttpServletResponse response) throws IOException { + File file = ResourceUtils.getFile("classpath:excelTemplate/企标稽查计划导入模板.xls"); + // 设置HTTP响应头,包括文件大小和内容类型 + response.setContentType("application/vnd.ms-excel"); // 根据实际文件类型设置内容类型 + response.setHeader("Content-Disposition", "attachment; filename=企标稽查计划导入模板.xls"); + response.setContentLength((int) Files.size(file.toPath())); + + // 将文件内容写入HTTP响应输出流中 + try (InputStream in = Files.newInputStream(file.toPath()); + ServletOutputStream out = response.getOutputStream()) { + byte[] buffer = new byte[4096]; + int bytesRead; + while ((bytesRead = in.read(buffer)) != -1) { + out.write(buffer, 0, bytesRead); + } + } } private List sixthVerify(ProcessEsInspectPlan processEsInspectPlan) { @@ -367,14 +370,22 @@ public class ProcessEsInspectPlanServiceImpl extends ServiceImpl firstVerify(ProcessEsInspectPlan processEsInspectPlan) { List errorList = new ArrayList<>(); + boolean flag = false; if (StringUtils.isBlank(processEsInspectPlan.getInspectNo())){ errorList.add("稽查依据标准号不能为空!"); + flag = true; } if (StringUtils.isNotBlank(processEsInspectPlan.getInspectName())){ List list = lawsEnterpriseStandardService.list(new LambdaQueryWrapper() .eq(LawsEnterpriseStandard::getStandardName, processEsInspectPlan.getInspectName())); if (list.isEmpty()) { errorList.add("稽查依据标准名称不存在!"); + }else if (flag){ + long count = list.stream().filter(v -> v.getStandardNumber().equals(processEsInspectPlan.getInspectNo()) + && v.getStandardName().equals(processEsInspectPlan.getInspectName())).count(); + if (count == 0){ + errorList.add("稽查依据标准号和稽查依据标准名称不匹配!"); + } } }else { errorList.add("稽查依据标准名称不能为空!"); diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/controller/EnterpriseStandardDeclareController.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/controller/EnterpriseStandardDeclareController.java index 1d78762a..f16cee6c 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/controller/EnterpriseStandardDeclareController.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/controller/EnterpriseStandardDeclareController.java @@ -60,14 +60,6 @@ public class EnterpriseStandardDeclareController extends JeroController2R6*?)ToC_ubA{-Cd_n{pZxFQ>Uscom{$T z_+afW^M^#`=ti{2pHf{SWYKwWkBK^362gZY%>OBsN@*e?aQmO*Z)AZlplf?s9}3`V z4+;BR2a*VqE~I9VnnTiqqz|bDBm+p`0>luK5u{d-j3Kp#WCE!TBvVLckjx=jKxzxg z5|R}pYe-^9Hjr!~wS!~_34Mu4e>qqBIC(u_#{!b z?+v|>O4$S{S!4v9J@`GkK=i-3=?%nRZxG#K-;K}e;kj@_{V!q;~&d# z{NwdM$KS&Ox}uhZCnN?d_}4MyQ!)Rufe+t!{H3`)(4)XX%4A;sKYc}gm<7iJxCQyE zp3+x2U8S7J_~hmCylOoq8`J?eQk+j1oU98Og+^+qo?YX;b*Q)JyRTWXx|6_ zr>+ec9zZYUDIIa1GKQ63QP23D+rOA>q1YG9-*~n;^*H+5_tx z+jQ-B@#R`7k97w3j}q^Cb?`0RQh52J*V=l!!kh*9{O_FP^A?t~4^8@`JpT0y*GpV2 zS}s}&`a9Qe4+WaG3atTX2O*(O*rr~PaP5R`!I(P)QcFmQkgzRjkZ^s4ZNoNBgoOGp zfyA^CV>#Bs`gmx%S^+SQeE#S-}2dFx~P!xAqsh$IVX?d3+in`@#v16loOA*B9^&&< z@C9HiF1jXtc*KVs#qLzW!Pua#e;TZ~xcT`ocGUTuHSh~G(0_&Y1aRuZBVHQlx}0efnN39-|ZRTeuy zGAxeGUtah~0u#hm0$0)jK2Vii&q>U#}j5J9HiDD7zop!Af8a_J-$QMJZ)0B^EJQ93GElEGUPC0a=7; z4M>STMlQQHBbot#9+OFbKrOP>uR8z zYoJ?epgU=xJ8Ph8(#J#te@6{;P53lFuFI6|L-VWCX?@h`v_9%|P5ADVp6dLaDY_7L z^QiIik?BafA93x><7mp-_MsLW6IJMJ&a^hpX7?~>~&gdoG!ULnLSE;_EeDV)WIhD)0-ZB7KV{Q*!$ zPfa~xeZraud?`I~Jk?ul~IaW7P+XJVi@5Y(paBZLUdrH>F|ITyVxgCiezv_If; z0i!>yC#^s3_b_z2U9`X9J`R_j>i(n2ue>$*8*LwT98V4W-89f?zs0>~O3xBQLzCtv z&@Xg+z`bN1&aT)&c<^a^;vSX~U1n!^wBe*{!lC)0*BE>m4vOO8G6@}5S*PfgWwqYryx~fjrR@) zk|uyO-aF`YO#o@UcQE8M0i^NX!T8z)kj8rlgLe}^8t)y9d($L>i#1iE8^D0OT*V-%&0VA2mvdP^x4woC>f&TJf_~5wTRIc92U& zUi=nF2}IrMPQXOFE>$6kC|6*lo_)=hI#8vrI|7J6-q&igm<~tRvAa_&J90$}RDfLp zScd{e?LOsd(C*#4cXFGcFl5fl%aby|C`^^6%c220bu{CksVfCr*({~-n;j(^GbSr7 zEmc!0ARs_ZDK?E!3TZN(U{i-yo=wXYsdl^@u+#3wG*n3`^$M`R!Kwh#lv|J>f!qVNi|i&9$|5H7D^8=KLXO>24w zs4C^FqEt4wQqrpB@|OMkT~*a9{6Hy%SLBm?Wu?^nr?b3&=Y}zw z(?A-ZQ@b_|r13fRtEPc8KBvOhSO0u=r@ypO1ZGv6bZZ)j@|>Eh5)K0ZLEIys&itm@ZdWK9f2hE z?u$C9Hs0gp18TKL8=)LSZaE$ta%?%}&|!~~qb*5o`0WO_93yTyo*Z)QIpuhQ+OqZt zC8@7oz2cVBid&8sha4wPIbI4mI+9fByDDxu#@uqeIpnx<%Aq4YWjB!|_4dPe+;UoT z%kklm5`|K~>nXo3-3>+HlL^^0#)J za@hV>754G`Hf}kl+;X`5&4E)6+uy3f?%cV-o z`CBJWIc$Hc3fp`3DYqO8ZaG~3=E*6C?Qd0KXCLh4meUsH_%zAi#2|-@Q{itOo-0p1 zq2*w3gF_zQEV<=y`I{Z59JarCc)s5`gIkUjw;V2ibL5o6_BRjD%F0S^Io8~AxctqT zQx4nTJUpehQ@Q1cx#e*An;WMbw!e9J&f6>-KdSv>!!3u)-@G{Gu>H-$bMvKnT5LQz`?o1lU0;Av}1waAog;eczSkhF-e3$NC~iw-(z%a$z^byQ~7GLZ5Kmf(_+ znoD7&7aBd1@il#TC09V#rRQmXmHI8=y+f>zrRckA7&@?Y(SfC7?8@sPY7t)_CVx31 zdaNp9yV72AfTmRe0c!^ zE`t5y4*4SBa#7~ui@*`^q^vHjJk^Epki(eTSeRqU{r*+ zVHgZu_|_bpt7m%GM72p(%MA3y5`1=`jLu%D;hL6l3?4k%DRM%pQO@}S^`>hJ0McPD zFCH6$O?S!H0WPs})3tR#Rpg3=SPX`ycy);@YPz;?>7<3C4CM-Z6M)4Me8$A(3t9>v zC7BlElP_g8Y9$VZxYIyujjVJ|gsXIUPFE?nh;KkTff0CRY1P9AMukLvm9|hcUPX&G zAWu=w)&=(!7+vI30iz2(%L*wAqI5dP=tAchUFaO@;)c3BF8FDIL*gun^YDctT!d4W zqE0-%H^@_zvponKEAt?I81*oiQw#e<(T>?~e zF$G-|)Ez{RauS6G8irXTBDAhLtjuwiYN964ft4IAHM-+AjpeD_;nlb}F1g zsg9ge*^j)@kNCwd;R{8+%9VI+!H=+nJ#uhggXy~x*!+;$P8a5Xz*#i^Q>3~-wgwz5 zVfz5vAF(5q{1FKXf24D4AK<|^zqEzuGMpBCY55Wk`NoudiIRNW#bDYI5Rk1b|F4e+ z0rAV%1-q+6N4_rD{axIN!rJdY2^VMw?&wkh+7(p@j&O8@j&O8@j&P1iH4AQ zED6OR%n&}&FxMr+yPp#Hl|~l)G6wJZK^g|{gyOF@Jm5Xu5hNRaqmjkp2m{)1cvCkE z;-e2qq~0){3ExwX$6Yd_%i~4pr1}4&dbkV8l601=Ei@XiLS#x-u;kM-CH+gQ_3(!7 zdR7@?6oIJ+!RI7T1c{KjUVPF(uJBty8GfrT0x2-Pqmb_-#-!+^osF!E;(@Vr)eH2a z-{fGC4qb%mV7>a-q#{<0uHo(GB8*8?b==U1@+nvZa401(IeutOam{xeAk`A<;Yfyo ziZjHb`I5+1id#KtP~^cvB$~%Kg(HNX)Ny>9;<_k^&Itx=#^+HCD+zZBr&W*;eIfM~ z{HP(zBi|RcNHvGmv^&i6fyuhV?c=Re>!N04cL_g}Flq?yCb^P^SV`nq$(WR%!<{GH z85A~~B%F`YlR8f#;bF78gs08+qH;x4j={uoU5e5rr!a!=M%V0@+$l9>ltBWbH6xyY zJvesXs4n5=F}lU^Lmd+Jq-PQ)Eo%|}dGh@!F5&gDi{o{RbCw~`$L!8g{TAp+5g%Lq zha@jT(PrEq6@k4B;c5)m0JsLjmD*E*h|L^!M4wMJow2F~H2rFfeso7t9ak4MaA=nt zJ!xTtxm28>8}0~3@c<>gh&Q-n2cjoM!H2_#L@NsxatIO;eI6yq3D)`8`{h&WV@p#G zhhwj*Y9&-KqX${fZ8w*j5q9z!)Ts%<=>|zB3mA7(#gxL^+#+%VzHY*|Nme++?+W0W zA~J!*Sc85ep3W^1jc>k$Rf5$1eYFI}u#1Xh8}jU)!3kI@khZXwisL0VBx6jLWK32< zbk11GxH#8|qtky}a6bIBTg&csy&9%hyYwm99Vlx5Y+A*At?K$X^O&{HzSGM}Hul-^F1VxJ3yYp{rT2X!Zf_e@FxA}jtE5tc zW$zCkKkDc^E5CQaiUFmQo{SwHw%dPRai(?ghAW@^_~*T|?eo9nx41Aq@>kOr1q=Kh zSBBiI*4n?*a)^Izb^S8CN5y*&2l#~l*e66ZeNWlKYcDs|_oy@pcKzv)!w1(59Shc8 zh&dHqZ?>~0UgCY(d(%DfyXHkkr+4ZVBwQRWHgkD$qU)-Hmv?T&q#wOIZ}+^(KJiuI zC#A-T9|CGxU9HNC%>#=_;juy4UZpoSJ}m<~`9Pe(H?|ToCF$cjx#D@o{EH(`yXnn( zJ@eS~%ej$PPMfyR?o?VF(rJAzdFYszW@~ZB;>Dea3SqM&q8S@r*KPLyb9-U^!^Ka< zCM&iGPd^F?IG^?~+y6w~w91(qHntbVP8|E~`bl^8B^>R4dHq)x+$~Cb?RWdm$YA#E zh@%6x2M@bk+44%C?svSB?eaD*_$J||^|DoF4}8L|elQtu(>HPZ{7se8J*VBORz;l5 z+u>Z@T`BR@g~WZYgU)`9jw3c1)8GX&`~){Or}Ev=Rm?24YJZC zqa~eK=YC0Jl7>q%(L?mA`ZYT(ZW;J6ckP7Y+rBAB9J?p)KEM6QA0(v2Jg8#LmDP7{ zRzIHZ`}2L{>nr=}$2gbh=+BW{aGibN&1C0|7Mp(Q)%J{Y`ooIWPo7OQt=v1e)&1V* z#zp3~yIwqV+rGQv8~Zw5w|VV+H~x^_NdLl~gKMtVb$HbMMMwK)d_QjGpW9zt{R+Z| zj~P80SZdQva7VRY#`Mdu@NIdlO-G``>B=4fcC?58UR{ zQP+0!>rzMFfdlrfj1u!EJlr2~a)Q%LbCIL9)5eLG7U83s**sa-_t1o*w2E0~!Py?C z3`$=|+Sz?o^Ksypr-QS1L|+O|3au8#o*uJC+U&?FamkoxopZcg9k$)H`0ynDS%TK4 zp%ouuzoeds`E->S3wB;9DSWnP*Zq61y_@~W`zfHyxRG;o`&R$(b>B-`XLU&bz&Uok{X1WLBhc=DA}+LY zS*zE@p}V55uCXjCdRpIKeB;||MXN-9mBT7dtg^Xf*muW{goclw&Un85P`Gj9{8g*F zeX4%{_VLx80Z)%RpVnI3K6RUFTo>vYYbJXqa3F-UW87HPZ6Q1h! zwZ}i|KU@u16_8th;c4EVZ_0W1AE%|C>S=fK)RBUSqg|b+?t4~ttLp8t6U)yy_9)*S z=>9SLVD0%^{Cg$so}YS^(sg2;U$5ECCyxH3>`|AZ`Y@x4D&I%td@J`Jb!HQU558S- ze)gNRB|T~@>#NG|2G!j1p3tUr(8$kw^!6?~I5ayY{qoU%kxr2_qMZFd6!mk@{;{^3 z&7h(4dzCFuZ1wD}!@X{{KNlCByXCZ@^fIrvxYM{cLB001Ub%kKy>9Eb53GB$YwisF zshg%Zh@v_c-MkdGuDm*PhS5l2L(9rr-8223PAz!RTzC0AH%WXzdGNvXG2aZ?vEaRh z*t&MF_2r!8c8BbumR<}gUsmvP*9hMpy`P+F(c66Gt@&q+`xxgOSe|uq{<32s*Cw3P z>f`&vXRDKg4qr5xc4SS7eW_&XCI`>jbJgBeKYp_O`I#VTn}_)2l6VI@|EQzCo83E~ zU2*?$`JtQ^gUbKWsy4v!vcFf~jFelgU${I!7JOoGnlx|6rImlYgXmCdJiX7>(}`0a z-FW(X*yFd8f*mb?>U?Ha@ai&cuQg-I^q;~Lx_pykc|Q5$rfiR}#D})?_Rg(X-Z10b zMAP+p;jg_DIv0dK>|zvuR`9F&hn-gsoVps5S$?YFM$FdD7OAdQ{L1Qy`y%I^o*VR} zCUsQKBB#5f_Afa8)>Y(q$JZt)EOpVX?BX;R;lSeeU(BaH5w9Km$Dkp5EuCFE))hu? z+eJo720fVZ+sQ*)9{WB|mR8)tw=ig^FJjvGTV;>k(vAXP)WjA}XYxDX$#D=z;Sl_zWs*I0?j(yM0 zd}(9&ly`I8qOC!}c2BI@_pTUxzSGsfsBJbYVn;U@Jp8`>O<_#V&2vFlUfDga6zE(D zJL101_WL~TnHTq+s*hfo(Dp~?+j>|0i%z%72piteVw%yYy(69SZ4BSc*|?;qr`?-D zyN!2CzHIaQAvpWO&1r|fefLf19@EyAXN-SuyS?=2hV>`Db9X!5depc1<~AM7ANmc@ zzoEC~dcX7A7mT}gYy3r@0Si1s$KCdH85kLNbzAZcy+WUzM&}E?bEaRnEx+V?p~dRH zbz6Sh-{$KBncv*Nh*JHygAfuIQIzDZ9!%H+{dcx9OJq zLl4Fk#NKXKa`ohcnOy>IZ5!mG*U#i>AIlM6PS31wu4NHG-qxHv@~hc*!5fXH1UwM6 z2o1@#?;r_TS^Fn!;;PSX`j?AW?}u5<0_HvkmD!D+(y1wfHOI-O_n>Im| zk#Y5K%LVp#XJ6WOO>4$)-ugZPc9Ab%>2G%yxz0*DzI?=yrQcV!O7Xbop0>qY)aBWC z->f(}`rylXfdfp!3vPEEwli_sybRx0t%on@>)6lUZh)h!`?Aay4t*AtT$&SIpTFI2 z{ro|{*{=T~=-iP@z3Rs2u6etXH~Ea+vE-JMt`oB*{Z~l$eDO0c7~aX+B<|11pmDcn zYCEnwTlJvb$}M4npJERmF24^Aqnpm-yTA%s)0z+1SO>=nuzz1=0M$j1qP82@leHvL zt*E-FP*gO7)t1^U%`(3#lIjevK)S(&M9ufA7^+U7z^H@8Fq- z3jm9MK0I_AQ1^y##&@qpq+#>hEB%uD2P9B*CyI_6(u7Q-DEZWqpMoUqVY?W149Qd| zISG#g^k0=sr?_WOXL~t!O@IUI-cf%4CZGfBel4*D&4xk351%;moUzexJizBR>Iy$u z71=|g^NpVe0)~j>QV%+WtTV*c5-N}Qq?IBMyNqBMMP3WOdO6JE7r+De<>rcVs;5}| zLKqk|dWv!#+zc~N8YB(X!oDJ|c<_bqE4G(Y4SA**QMsaDxsJ`JiDCcptbljPy*V*=zx(`$nvUTP&bIG zP5BDwWC^2%?lVxGK9I!cQyWC+uW;95Ih+rRs-Y&WRMhUH&a6W1JGalKN>%9AoL05Xo@LtD6Ww?B@c#X2JEDc zB@wXGI!SbVLk8CG;5alrl;x8RA{v6tHvu@WbDyGQ#ZUay;9OK~#3CU5AuvRQ23_r7E zd88q4?~p+h9e3XPMn&|`%osL4B`bLRi1cBDB$-rI=5IRefW^0aP^h<$S8#}54>xZQ7k778cUL!8cW+N9X~MySe=E|0sEamK z{qHJEsBhYDL`r7HxQx^+arcQSl60|$o13RtW(%Ahf=8sL`cW~JDtC=alSr~${mA>y NyT56I{Qqs1{{p2vT>Ah3 literal 0 HcmV?d00001 diff --git a/pom.xml b/pom.xml index 45396145..d27f82a2 100644 --- a/pom.xml +++ b/pom.xml @@ -354,6 +354,7 @@ ttf svg xlsx + xls