feat: '기본물성시험 입력 기능 개선'입력값 -999 선택 시, null처리 -> 함수비, 비중, 액성한계, 소성지수, 단위중량 및 포털시스템 사용자 편의 기능 개선 - 로그인 기능 개선

main
thkim 2024-05-27 11:36:17 +09:00
parent b7cc865b48
commit 90659583a9
4 changed files with 126 additions and 38 deletions

View File

@ -581,18 +581,9 @@ public class LoginController {
// 로그인
@RequestMapping(value = "/login.do", method = RequestMethod.POST)
public ModelAndView login(
HttpSession session,
Map<String, Object> map,
HttpServletRequest request,
HttpServletResponse response,
@RequestParam("location") String location,
@RequestParam("login_param") String login_param,
@RequestParam("id") String id,
@RequestParam("pass") String pass) throws Exception {
public ModelAndView login(HttpSession session, Map<String, Object> map, HttpServletRequest request, HttpServletResponse response, @RequestParam("location") String location, @RequestParam("login_param") String login_param, @RequestParam("id") String id, @RequestParam("cls") String cls, @RequestParam("pass") String pass) throws Exception {
ModelAndView mv = new ModelAndView("home/login");
String cls = "";
String msg = "";
String url = "";
String sysdate = "";
@ -648,6 +639,7 @@ public class LoginController {
map.put("passwd", pass);
map.put("passwd2", pass2);
map.put("cls", cls);
boolean loginSuccess = false;
String dup_id;
@ -705,6 +697,7 @@ public class LoginController {
map.put("passwd", pass);
map.put("passwd2", pass2);
map.put("cls", cls);
selectWebMemberIn = loginService.selectWebMemberIn(map);
if(selectWebMemberIn == null) {
@ -723,6 +716,7 @@ public class LoginController {
}else {
// 관리자일 경우
map.put("userid", userid);
map.put("cls", "9");
selectWebMemberIn = loginService.selectWebMemberIn(map);
map.clear();
@ -745,14 +739,11 @@ public class LoginController {
cls = selectWebMemberIn.get("cls").toString();
if (!"".equals(request.getSession()) && !request.getSession().equals(null)) {
session = request.getSession();
session.setAttribute("USERID", userid);
session.setAttribute("USERNAME", userName);
session.setAttribute("MASTERCODE", masterCode);
session.setAttribute("CLS", cls);
session.setAttribute("GOVECODE", goveCode);
session.setMaxInactiveInterval(43200);
request.getSession().setAttribute("USERID", userid);
request.getSession().setAttribute("USERNAME", userName);
request.getSession().setAttribute("MASTERCODE", masterCode);
request.getSession().setAttribute("CLS", cls);
request.getSession().setAttribute("GOVECODE", goveCode);
// 2017.10.13 dhlee 세션 ip , 환경 추가
InetAddress ip = InetAddress.getLocalHost();
@ -770,6 +761,8 @@ public class LoginController {
map.put("userid", userid);
map.put("passwd", pass);
map.put("passwd2", pass2);
map.put("cls", cls);
map.put("cls2", "2");
selectWebMemberIn = loginService.selectWebMemberIn(map);
map.clear();
@ -791,13 +784,11 @@ public class LoginController {
cls = selectWebMemberIn.get("cls").toString();
goveCode = selectWebMemberIn.get("govement_code").toString();
session = request.getSession();
session.setAttribute("USERID", userid);
session.setAttribute("USERNAME", userName);
session.setAttribute("MASTERCODE", masterCode);
session.setAttribute("CLS", cls);
session.setAttribute("GOVECODE", goveCode);
session.setMaxInactiveInterval(43200);
request.getSession().setAttribute("USERID", userid);
request.getSession().setAttribute("USERNAME", userName);
request.getSession().setAttribute("MASTERCODE", masterCode);
request.getSession().setAttribute("CLS", cls);
request.getSession().setAttribute("GOVECODE", goveCode);
// 2017.10.13 dhlee 세션 ip , 환경 추가
InetAddress ip = InetAddress.getLocalHost();

View File

@ -82,7 +82,7 @@
공통 커스텀
============================================================== -->
<!-- 공통 script -->
<script type="text/javascript" src="${pageContext.request.contextPath}/com/js/common.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/com/js/common.js?v=20240527_1042"></script>
<!-- 스타일 css -->
<link rel="stylesheet" href="${pageContext.request.contextPath}/com/css/style.css" />
@ -139,7 +139,7 @@
document.documentElement.classList.add("ie");
}
});
function gomypage() {
top.location.href = "topMenuSelect.do?url=mypage_main";
}
@ -153,7 +153,7 @@
var comPopWin = window.open("information_info.do", "comPopWin", "title=no,toolbar=no,scrollbars=yes,width=718,height=800,left=50,top=50");
comPopWin.focus();
}
</script>
<!-- 로그인 시작 -->
<div id="login" class="login-popup mfp-hide">
@ -161,16 +161,108 @@
<input type="hidden" name="login_param" value="">
<h1 class="contents-title"><span class="contents-title-text">로그인</span></h1>
<div class="contents-row padT20">
<label for="id" class="control-label marR5">아이디</label>
<input name="id" id="id" type="text" tabIndex="1" class="gg-input" maxlength="15" placeholder="아이디">
<label for="pass" class="control-label marR5">비밀번호</label>
<input name="pass" id="pass" size="12" tabIndex="2" maxlength="15" type="password" class="gg-input" onkeydown="javascript:enterKey()" placeholder="비밀번호">
<div class="t-center">
<style>
.account-type-wrapper {
}
.account-type-wrapper > p {
width: 100%;
display: block;
font-size: 24px;
margin-bottom: 20px;
}
.account-type-wrapper > ul {
width: 100%;
display: block;
}
.account-type-wrapper > ul > li {
width: 32.4%;
display: inline-block;
height: 130px;
line-height: 130px;
border: 1px solid #222222;
font-size: 40px;
cursor: pointer;
}
.account-type-wrapper > ul > li:hover {
background: #222222;
color: #ffffff;
}
</style>
<div class="account-type-wrapper" id="account-type-wrapper">
<p>계정 유형 선택</p>
<ul>
<li id="cls-button-0">개인</li>
<li id="cls-button-1">기업</li>
<li id="cls-button-2">발주청</li>
</ul>
</div>
<div class="gg-radio-inline login-radio" style="display: none;">
<label class="gg-radio gg-radio-outline">
<input type="radio" name="cls" value="0" data-index="0" checked /> 개인
<span></span>
</label>
<label class="gg-radio gg-radio-outline">
<input type="radio" name="cls" value="1" data-index="1" /> 기업
<span></span>
</label>
<label class="gg-radio gg-radio-outline">
<input type="radio" name="cls" value="3" data-index="2" /> 지자체
<span></span>
</label>
</div>
</div>
<div class="contents-row t-center padT20">
<button type="button" class="btn btn-small btn-primary" onClick="javascript:loginBtn()">로그인</button>
<button type="button" class="btn btn-small btn-dark-gray marL10 mfp-popup-close">취소</button>
<div id="signin-wrapper" style="display: none;">
<div class="contents-row">
<label for="id" class="control-label marR5">아이디</label>
<input name="id" id="id" type="text" tabIndex="1" class="gg-input" maxlength="15" placeholder="아이디">
<label for="pass" class="control-label marR5">비밀번호</label>
<input name="pass" id="pass" size="12" tabIndex="2" maxlength="15" type="password" class="gg-input" onkeydown="javascript:enterKey()" placeholder="비밀번호">
</div>
<div class="contents-row t-center padT20">
<button type="button" class="btn btn-small btn-primary" onClick="javascript:loginBtn()">로그인</button>
<button type="button" class="btn btn-small btn-dark-gray marL10 mfp-popup-close">취소</button>
</div>
</div>
<script>
// 각 버튼 요소 가져오기
var clsButton0 = document.getElementById("cls-button-0");
var clsButton1 = document.getElementById("cls-button-1");
var clsButton2 = document.getElementById("cls-button-2");
// 각 라디오 버튼 요소 가져오기
var radioInputs = document.getElementsByName("cls");
// 버튼 클릭 이벤트 핸들러 함수
function handleButtonClick(event) {
var clickedButtonId = event.target.id; // 클릭된 버튼의 ID 가져오기
// 클릭된 버튼에 따라 해당 라디오 버튼 선택
if (clickedButtonId === "cls-button-0") {
radioInputs[0].checked = true;
} else if (clickedButtonId === "cls-button-1") {
radioInputs[1].checked = true;
} else if (clickedButtonId === "cls-button-2") {
radioInputs[2].checked = true;
}
var accountTypeWrapperEle = document.getElementById("account-type-wrapper");
accountTypeWrapperEle.style.display="none";
var signinWrapperEle = document.getElementById("signin-wrapper");
signinWrapperEle.style.display="block";
}
// 각 버튼에 클릭 이벤트 리스너 추가
clsButton0.addEventListener("click", handleButtonClick);
clsButton1.addEventListener("click", handleButtonClick);
clsButton2.addEventListener("click", handleButtonClick);
</script>
</form>
</div>
<!-- 로그인 끝 -->

View File

@ -747,7 +747,7 @@ function fn_grid_refresh(){
},
{
field: "sampleShape",
title: "시료형태 <span class='necessary'>(필수입력)<span>",
title: "시료형태",
width:140,
attributes: { style:"text-align: center" },
editor: comboEditor2,
@ -980,7 +980,7 @@ function fn_grid_refresh(){
<div class="page-explanation page-explanation-sm marT20">
<div class="page-explanation-inner">
<p class="page-explanation-text">
※ 시료번호 변경시, 입력된 토사시험정보가 삭제됩니다.
※ 시료번호 변경시, 입력된 토사시험정보가 삭제됩니다. &nbsp; <span style="color:red;">('함수비(%)', '비중', '액성한계(%)', '소성지수', '단위중량()' 값없을 시, 음수 -999 입력 )</span>
</p>
</div>
</div>

View File

@ -316,6 +316,11 @@ $(document).ready(function () {
closeBtnInside: false,
callbacks: {
open: function () {
var accountTypeWrapperEle = document.getElementById("account-type-wrapper");
accountTypeWrapperEle.style.display="block";
var signinWrapperEle = document.getElementById("signin-wrapper");
signinWrapperEle.style.display="none";
$('#login').parent().addClass('login-popup-content');
if (!isMobile) {
$('body').addClass('overflow-hidden login-popup-wrapper');