From 0810476005775fb6054281e12b5f06a68789346f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=A3=E5=9C=A3=E5=8D=8E?= <852955+jishenghua@users.noreply.gitee.com> Date: Sun, 31 Mar 2019 23:26:15 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- erp_web/css/css.css | 81 +++++++- erp_web/images/login_tip.jpg | Bin 1680 -> 2826 bytes erp_web/images/register_tip.jpg | Bin 0 -> 2815 bytes erp_web/js/gVerify.js | 138 +++++++++++++ erp_web/login.html | 36 +++- erp_web/pages/manage/depot.html | 1 + .../pages/materials/purchase_back_list.html | 2 +- erp_web/pages/materials/purchase_in_list.html | 2 +- .../pages/materials/purchase_orders_list.html | 2 +- erp_web/pages/materials/sale_back_list.html | 2 +- erp_web/pages/materials/sale_orders_list.html | 2 +- erp_web/pages/materials/sale_out_list.html | 2 +- erp_web/register.html | 100 +++++++++ .../java/com/jsh/erp/config/TenantConfig.java | 24 ++- .../com/jsh/erp/controller/AppController.java | 30 +-- .../erp/controller/FunctionsController.java | 190 +++++++++--------- .../jsh/erp/controller/UserController.java | 90 ++++++++- .../com/jsh/erp/filter/LogCostFilter.java | 7 +- .../service/depotHead/DepotHeadService.java | 2 +- .../com/jsh/erp/service/user/UserService.java | 29 ++- .../java/com/jsh/erp/utils/HttpClient.java | 88 ++++++++ src/main/resources/application.properties | 5 +- 22 files changed, 696 insertions(+), 137 deletions(-) create mode 100644 erp_web/images/register_tip.jpg create mode 100644 erp_web/js/gVerify.js create mode 100644 erp_web/register.html create mode 100644 src/main/java/com/jsh/erp/utils/HttpClient.java diff --git a/erp_web/css/css.css b/erp_web/css/css.css index 27148e1f..8e01aa8c 100644 --- a/erp_web/css/css.css +++ b/erp_web/css/css.css @@ -651,6 +651,18 @@ input.inputstyle:hover{ position:relative; background:url(../images/bg_loginmain.jpg) no-repeat; } +#login .login_btn{ + float:left; + width:230px; + height:50px; + margin:160px auto 0 120px; +} +#login .register_btn{ + float:left; + width:230px; + height:50px; + margin:218px auto 0 120px; +} #login_signal{ position:absolute; left: 63px; @@ -668,6 +680,18 @@ input.inputstyle:hover{ top: 119px; width: 54px; } +#txt_userpwd_repeat{ + position:absolute; + left: 65px; + top: 154px; + width: 54px; +} +#txt_captcha{ + position:absolute; + left: 65px; + top: 189px; + width: 54px; +} #txt_vcode{ position:absolute; left: 66px; @@ -698,6 +722,40 @@ input.inputstyle:hover{ left: 118px; top: 118px; } +#user_pwd_repeat{ + position:absolute; + width:132px; + padding:0 4px; + height:23px; + line-height:23px; + border:none; + font-family:Arial, Helvetica, sans-serif; + background:url(../images/bg_logininout.jpg) no-repeat; + left: 118px; + top: 152px; +} +#user_captcha{ + position:absolute; + width:132px; + padding:0 4px; + height:23px; + line-height:23px; + border:none; + font-family:Arial, Helvetica, sans-serif; + background:url(../images/bg_logininout.jpg) no-repeat; + left: 118px; + top: 186px; +} +#imgCaptcha{ + position:absolute; + width:132px; + padding:0 4px; + height:40px; + line-height:23px; + border:none; + left: 270px; + top: 170px; +} #vcode{ position:absolute; width:67px; @@ -716,17 +774,32 @@ input.inputstyle:hover{ top: 151px; } #btn_login{ - position:absolute; - width:81px; + width:100px; height:30px; border:none; cursor:pointer; - background:url(../images/btn_login.jpg) no-repeat; + color: white; + background:#318dff; left: 120px; top: 170px; + margin-right: 10px; } #btn_login:hover{ - background:url(../images/btn_loginon.jpg) no-repeat; + background:#54a0ff; +} +#btn_register{ + width:100px; + height:30px; + border:none; + cursor:pointer; + color: white; + background:#318dff; + left: 120px; + top: 170px; + margin-right: 10px; +} +#btn_register:hover{ + background:#54a0ff; } #tip_username{ position:absolute; diff --git a/erp_web/images/login_tip.jpg b/erp_web/images/login_tip.jpg index a41eb2d1d13e3c1e5842563cd753d9ae1d4e6678..c6bb5a3defb74d43297da47d34033ee28100aae6 100644 GIT binary patch literal 2826 zcma)52|Uz!8~@LR4Y_xdYfKbnPG*>KEn^fdX$*2@hnd#U9A?Hfj@?M&mB>-lX6dkM zg_N`{ikzj*&{$WN$hMA9tha`Fhqq(j&%2*}-{*gPe!u7Ue4p=g{baw$#(*u9IMyKm zaC6%UC;=ZuHUnt5M2AJj10Vn@SK9%AYz(3sE)?=eXf#KFqBFRmOjH<`jgF)9&{z}( z4cIxx@#tZZOd&j!`4x*}k9c{f2?1v@>=Ax=4~z$o%nWDk5%HPcB2QYFC^C%5KsY+U z?czvrY#y5_q{HLbhdBaLoIPU0IZ3`=SECW|4HIFcJ;G_76@I|O3r^_-90rR+W8^OZiM1l(2_&2~{GA}=Y<$Kc64k}^9hZD(k9e0piNtjuI2=-LffU4Zg!DKhN3iX^2N$LwjL+f;SzHc$-6K7e8!fa)$RquC z3T&Q-#|OuMSuHkuJ+BRGfso4l7{*^(3uy5?CYs6=aHIKQOu6~C_h5PL{+?*vP#z7* zg&P*lW^#mXF7^ny2E|}8NY)fG#@fos(#q9^g2hsZ&Q27HlZ_?O%F>05#oM^N$GUL@ zLOLgm`5w#qh{gRamPF<==|V1_#^oM<-#xEzu8=DT=knlWZvxzp#bIz`1?z=<7bla? zieWNb`CK-9qcSAcpV%qRu6QT1H4%@&V5|vbYYN5%Pm%u!u6P>)#g&M7hhh9F+y99{ z%gNE}ZTwSP->c-avcCK|(8sF|z!U&Q5CjSa z0spB700;;Sg{cD|h+M!>Fidp=1p-5$8k#UbOTiec?S$A**ZCB;Eh@#5tazlfXTh1u z56d&LqHLFQftf-{a`5a@rgA#?@DEvh8XYFEo4iJk4$!xZTd|v&t9sr4)-qFY?{4*NK#nuk_cPX=y4?9TW^PUa^Q{ zDM0}#q8Z$)?26F20=S>}N6AV=VfRo?$prVxkz46D<<;Z<9eX#QZs!Aa?PzR4tgA9KdjT($9c zWkd6vs)!Lr(6js6)(5{6H>Nkwh& zbhIc$qQU;&N7pg6aX0AHyX<3wu5-<1Lnr;8glvDD@U`#vSMqchZ87Qd?3w%I+0)m;5FaJ;HDHx>@{y^fhwfIW^m3zZeVYbXd0c zXJH;+JZhrZVmdPM*1c+^(kC|fVE;*ez<805zgT#x%jVXhu~27MpVn$Ucaw*V@)&1o zj;aC7H)uDNBwb23tL3rUXl_Ac`(eWo!O5!AU)DePho`o?GqtOW5^VTHPZLENivQMV z)v35fPo&tCZpYuX5HO*XXMEZ)elo77%HpZpor7ZNZ5c!1$x&)?0hjuy-sLg=C5Ofu(_dHVo@FJ)$N+T5^^uXQ z6{D3mB}T;qUlb?f)m6{gjGkW`Z?cU__*U^*RY*v7MR4jI%WHf!X>|NI$8uUiR^uBe zFI8;`7RPw`3->o$TH+GQq;%?ZR?Li`7}uE58;=By&jruo+&9lQREU4hE@^R;;FcD5 zbsEG#+C8mb&IF|9)mh|YW|68ZvFvZ3V15lA3KZV(_w2Lk)t7QPdBc~Bsy@G_Hd}S4 zHe@d<-qvGv590jx$*wBy)2|c$nZyylEZmfMr|=rl2G+d$Q(yC+YlB(0C~Nz&2K774 z8*i${D<3YG9POXH97z0Qt<@JhyV|Yko$9NWolTmkJ3T>sy|kN*vTdlVoE|`E9zFvi-7*AOMKT_t*LG1V!|S^EU94Pd2+!-5;rOEtPW&H z?y5FhQHD9m@_8*In6<$k?~)Cderq!Cm`fFyFjuXG5h=WJO~LqP;GM p64lyyRR<qgO|d++O=SZ)g>H)zN$Dro+p;H=TyVq!QV{zX14&fH?pF literal 1680 zcmX|*3pCqz8^?eD#3h38myiruBT3yUN>xqkR&%M-(h+r;iXa%uTuPZTrISY8GSz8x z6hYBiktyG5m`p5pcGLm7&Hon#;B{R zVpLVtVHH`%sK9C(SR7VEjX==WCJ-oOGMQrVFOU)nrG!>eR#H;ND61-CV2lhH`{@9d z0ISJ>30im@4u{wJxUQ|Or$^G$`*+_!+6Q11AcAj@5E&p~2nj>d0q}#&HWDBqna}^D z0Fd$sIYsCb|A-$egg^py03i|b2zf{Wsr0FbfRJ*q2GGOer^&-VzeZ_K-G=z(G`RPOPhRUGs8 zVhXPoa{Hk=BZ+0&oDIhPmD-L`%ODG6YjF}ya>pe(y46PORMt4Z7JK0=m6QI!nUc&= zKY!S>=A6)Yi=MyL8vXpl2118fl1J|))K6ZaX{zAdD?24`YN84z)B8?}gSs6!+wqO( z5>1K<%QrUXe2G;LHQ(j3){V{mMJGAOCoU0paVyPTZnCNsvF< z=8VSNDz}M&(@O^Jal^(BqLj8}uBr)t7$g<&^4oLI?^XRuC;EGMq!T3AYG!))vu4@x zOh)sOs_-8R4V+O2Y)cK>dJh?*r_~d41%sqS7AC?z*0-=>vnJ8G2 zxfa-<%*`I6?nok2e?(t z6t=uik=UM|+Z@KrjlHZF`ofpsx`734ymoFG{bpoO4{rf z+XpecVvEl)%RR1o*7G`=BlD^cA85@^QK1~_38obW4hJlC;1Ayl)8X4#4|{lLg&0?- z+TW%{y-0Fs-ku&xZ%8ew!%x2p*=%J08b5oU?kEgh#ra-8IdjF|-ZDzjLej9m^XiS5 zn{>3CrV`Ggjmz@ym>l6@szx_jDGB=-%F<6e=@l{?PAiGy3Z8r9Wqd?(#o&m?sm2K!O>}K3v;Ryi_9Q@ z?$Z&r;cI{FC*~lfq^Z-hHAh?YM>7|8nc8_2l^~dYRo5AEr*7-v*z3?eD)e0u&$Jpc zpS^6^h)=OLxe|MYvlCEcV$tbt;JN%$flZ%TBP}zkkY!(7GHUGMe_5Y)u~b|eIYTm= z%h1Xx+$AcKf_r>{X|bK1>7Z?1UWkYv_xxc*EJMCzckG*BpZ@jj(`PViweJsfe+V)Q z49TvUO8$L-JNP_66rC2b=T(QpqmXwrlV;)2sA@|#^9FtZpiKGb71EoriULQ`#eTQN zCBrrM6$EPjGa`i%m_ExhX_`f!B`W#RMl5RA3$RnIPX=E^hosg{XL+7!PI)w6fT@ac zUrJlp+OzOyPjM%S?K4jGg#C;*1!FWR@LuT+jS*#!dmsHfTDTP+_xO}fu|-tuQC8aK PiH;!a(FNBw>C^uKz=Fwg diff --git a/erp_web/images/register_tip.jpg b/erp_web/images/register_tip.jpg new file mode 100644 index 0000000000000000000000000000000000000000..23b7eb82b81fc1512f96693ffcf140aea8754a63 GIT binary patch literal 2815 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 0 ? con.offsetWidth : "100"; + this.options.height = con.offsetHeight > 0 ? con.offsetHeight : "30"; + canvas.id = this.options.canvasId; + canvas.width = this.options.width; + canvas.height = this.options.height; + canvas.style.cursor = "pointer"; + canvas.innerHTML = "您的浏览器版本不支持canvas"; + con.appendChild(canvas); + var parent = this; + canvas.onclick = function(){ + parent.refresh(); + } + }, + + /**生成验证码**/ + refresh: function() { + this.options.code = ""; + var canvas = document.getElementById(this.options.canvasId); + if(canvas.getContext) { + var ctx = canvas.getContext('2d'); + }else{ + return; + } + + ctx.textBaseline = "middle"; + + ctx.fillStyle = randomColor(180, 240); + ctx.fillRect(0, 0, this.options.width, this.options.height); + + if(this.options.type == "blend") { //判断验证码类型 + var txtArr = this.options.numArr.concat(this.options.letterArr); + } else if(this.options.type == "number") { + var txtArr = this.options.numArr; + } else { + var txtArr = this.options.letterArr; + } + + for(var i = 1; i <=size; i++) { + var txt = txtArr[randomNum(0, txtArr.length)]; + this.options.code += txt; + ctx.font = randomNum(this.options.height/2, this.options.height) + 'px SimHei'; //随机生成字体大小 + ctx.fillStyle = randomColor(50, 160); //随机生成字体颜色 + ctx.shadowOffsetX = randomNum(-3, 3); + ctx.shadowOffsetY = randomNum(-3, 3); + ctx.shadowBlur = randomNum(-3, 3); + ctx.shadowColor = "rgba(0, 0, 0, 0.3)"; + var x = this.options.width / (size+1) * i; + var y = this.options.height / 2; + var deg = randomNum(-30, 30); + /**设置旋转角度和坐标原点**/ + ctx.translate(x, y); + ctx.rotate(deg * Math.PI / 180); + ctx.fillText(txt, 0, 0); + /**恢复旋转角度和坐标原点**/ + ctx.rotate(-deg * Math.PI / 180); + ctx.translate(-x, -y); + } + /**绘制干扰线**/ + for(var i = 0; i < 4; i++) { + ctx.strokeStyle = randomColor(40, 180); + ctx.beginPath(); + ctx.moveTo(randomNum(0, this.options.width), randomNum(0, this.options.height)); + ctx.lineTo(randomNum(0, this.options.width), randomNum(0, this.options.height)); + ctx.stroke(); + } + /**绘制干扰点**/ + for(var i = 0; i < this.options.width/4; i++) { + ctx.fillStyle = randomColor(0, 255); + ctx.beginPath(); + ctx.arc(randomNum(0, this.options.width), randomNum(0, this.options.height), 1, 0, 2 * Math.PI); + ctx.fill(); + } + }, + + /**验证验证码**/ + validate: function(code){ + var code = code.toLowerCase(); + var v_code = this.options.code.toLowerCase(); + if(code == v_code){ + return true; + }else{ + this.refresh(); + return false; + } + } + } + /**生成字母数组**/ + function getAllLetter() { + var letterStr = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z"; + return letterStr.split(","); + } + /**生成一个随机数**/ + function randomNum(min, max) { + return Math.floor(Math.random() * (max - min) + min); + } + /**生成一个随机色**/ + function randomColor(min, max) { + var r = randomNum(min, max); + var g = randomNum(min, max); + var b = randomNum(min, max); + return "rgb(" + r + "," + g + "," + b + ")"; + } + window.GVerify = GVerify; +})(window, document); \ No newline at end of file diff --git a/erp_web/login.html b/erp_web/login.html index 7a7fe7e5..20b3de32 100644 --- a/erp_web/login.html +++ b/erp_web/login.html @@ -26,7 +26,10 @@ - +