ENDRPrint/.svn/pristine/c4/c4af31bfb6d1bb5a93afdf9d00b1f4edb612fe3a.svn-base
2024-08-14 10:33:27 +07:00

115 lines
5.2 KiB
Plaintext

package th.co.muangthai.endrprint.controller.service;
import org.apache.log4j.Logger;
import org.springframework.beans.BeanUtils;
import th.co.muangthai.endrprint.dao.serviceImp.CommonServiceImp;
import th.co.muangthai.endrprint.dao.serviceInterface.CommonServiceInterface;
import th.co.muangthai.endrprint.model.bean.form.master.EndrUserLoginForm;
import th.co.muangthai.endrprint.model.bean.master.EndrUserLoginBean;
import th.co.muangthai.endrprint.util.ADAuthenticator;
import th.co.muangthai.endrprint.util.SessionUtil;
import th.co.muangthai.endrprint.util.TextContent;
import th.co.muangthai.endrprint.util.VSMUtil;
import java.math.BigDecimal;
import java.util.Date;
/**
* login management
*/
public class LoginService {
private Logger log = Logger.getLogger(LoginService.class);
CommonServiceInterface commonService = new CommonServiceImp();
/**
* checking user login from AD system
* @param bean - EndrUserLoginForm
* @return EndrUserLoginForm - userLoginForm
*/
public EndrUserLoginForm autherizeUser(EndrUserLoginForm bean) {
//Session session = HibernateUtil.getCurrentSession();
try {
boolean authenAdFlag = false;
EndrUserLoginForm userLogin = new EndrUserLoginForm();
if (VSMUtil.AUTHENTICATION_AD) {
bean = ADAuthenticator.authenticate(bean.getUserId(), bean.getUserPassword());
if (bean != null){
authenAdFlag = true;
}
if(authenAdFlag){
userLogin = commonService.searchUserLoginBeanByUserId(bean.getUserId(), bean.getUserPassword());
//userLogin = null;
if( userLogin != null && VSMUtil.isNotEmpty(userLogin.getUserId()) ){
userLogin.setFlagLogin("1");
//request.getSession().setAttribute(TextContent.sessionLogin,userLogin);
SessionUtil.getSession().setAttribute(TextContent.sessionLogin,userLogin);
SessionUtil.getSession().setAttribute("dv", TextContent.DEPLOYMENT_VERSION);
//log.info("dv " + TextContent.DEPLOYMENT_VERSION);
}else{
Date saveDate = new Date();
EndrUserLoginBean endrUserLoginBean = new EndrUserLoginBean();
endrUserLoginBean.setUserId(bean.getUserId());
endrUserLoginBean.setUserPassword("xxxxx");
endrUserLoginBean.setFirstname(bean.getFirstname());
endrUserLoginBean.setLastname(" ");
endrUserLoginBean.setTel(null);
endrUserLoginBean.setUserName(null);
endrUserLoginBean.setCreateBy("Admin");
endrUserLoginBean.setCreateDate(saveDate);
endrUserLoginBean.setUpdateBy("Admin");
endrUserLoginBean.setUpdateDate(saveDate);
endrUserLoginBean.setOperId(null);
boolean f = commonService.updateTable(endrUserLoginBean);
if (f){
userLogin = new EndrUserLoginForm();
userLogin = commonService.searchUserLoginBeanByUserId(bean.getUserId(), bean.getUserPassword());
userLogin.setFlagLogin("1");
SessionUtil.getSession().setAttribute(TextContent.sessionLogin,userLogin);
SessionUtil.getSession().setAttribute("dv", TextContent.DEPLOYMENT_VERSION);
}else{
userLogin = new EndrUserLoginForm();
userLogin.setFlagLogin("-1");
return userLogin;
}
}
SessionUtil.getPathFile("100000");
}else{
userLogin = new EndrUserLoginForm();
userLogin.setFlagLogin("0");
return userLogin;
}
}else{
userLogin = commonService.searchUserLoginBeanByUserId(bean.getUserId(), bean.getUserPassword());
if( userLogin != null ){
userLogin.setFlagLogin("1");
//request.getSession().setAttribute(TextContent.sessionLogin,userLogin);
SessionUtil.getSession().setAttribute(TextContent.sessionLogin,userLogin);
SessionUtil.getSession().setAttribute("dv", TextContent.DEPLOYMENT_VERSION);
//log.info("dv " + TextContent.DEPLOYMENT_VERSION);
}else{
userLogin = new EndrUserLoginForm();
userLogin.setFlagLogin("0");
return userLogin;
}
SessionUtil.getPathFile("100000");
}
return userLogin;
} catch (Exception e) {
log.error(e.toString(), e);
EndrUserLoginForm userLogin = new EndrUserLoginForm();
userLogin.setFlagLogin("0");
return userLogin;
} finally {
//HibernateUtil.closeSession(session);
}
}
}