📄 companyhandlerbean.java
字号:
package com.leeman.wkexs.master.company.handler;
import java.sql.*;
import java.util.*;
import javax.ejb.*;
import javax.naming.*;
import java.util.ArrayList;
import com.leeman.common.db.*;
import com.leeman.common.util.*;
import com.leeman.common.data.Dao;
import com.leeman.wkexs.master.company.dao.Company;
import com.leeman.wkexs.master.company.dao.CompanyDao;
import com.leeman.wkexs.master.company.dao.CompanyHome;
import com.leeman.wkexs.master.company.entity.CompanyVO;
import com.leeman.wkexs.master.company.entity.CompanySO;
import com.leeman.wkexs.master.users.dao.*;
import com.leeman.wkexs.master.rolemgt.dao.*;
import com.leeman.wkexs.master.privilege.entity.*;
/**
* Bean implementation class for Enterprise Bean: CompanyHandler
*/
public class CompanyHandlerBean implements javax.ejb.SessionBean {
private javax.ejb.SessionContext mySessionCtx;
private CompanyDao companyDao;
/**
* getSessionContext
*/
public javax.ejb.SessionContext getSessionContext() {
return mySessionCtx;
}
/**
* setSessionContext
*/
public void setSessionContext(javax.ejb.SessionContext ctx) {
mySessionCtx = ctx;
}
/**
* ejbCreate
*/
public void ejbCreate() throws javax.ejb.CreateException {
}
/**
* ejbActivate
*/
public void ejbActivate() {
}
/**
* ejbPassivate
*/
public void ejbPassivate() {
}
/**
* ejbRemove
*/
public void ejbRemove() {
if (companyDao != null){
companyDao.releaseDbConn();
}
}
private CompanyHome getCompanyHome() throws javax.naming.NamingException{
return (CompanyHome)EjbGetter.getEJBHome(Company.JNDINAME, CompanyHome.class);
}
public CompanyVO get(CompanyVO vo) throws Exception{
return get(vo.getCompany_id());
}
public CompanyVO get(String company_id) throws Exception{
try{
CompanyHome uhome = getCompanyHome();
Company company = uhome.findByPrimaryKey(company_id);
CompanyVO companyVO = new CompanyVO();
companyVO.setCompany_id(company_id);
companyVO.setCompany_name_cht(company.getCompany_name_cht());
companyVO.setCompany_name_chs(company.getCompany_name_chs());
companyVO.setCompany_name_eng(company.getCompany_name_eng());
companyVO.setCompany_desc_cht(company.getCompany_desc_cht());
companyVO.setCompany_desc_chs(company.getCompany_desc_chs());
companyVO.setCompany_desc_eng(company.getCompany_desc_eng());
companyVO.setCompany_address_cht(company.getCompany_address_cht());
companyVO.setCompany_address_chs(company.getCompany_address_chs());
companyVO.setCompany_address_eng(company.getCompany_address_eng());
companyVO.setCompany_chop_name_cht(company.getCompany_chop_name_cht());
companyVO.setCompany_chop_name_chs(company.getCompany_chop_name_chs());
companyVO.setCompany_chop_name_eng(company.getCompany_chop_name_eng());
companyVO.setBase_currency(company.getBase_currency());
companyVO.setPostal_cd(company.getPostal_cd());
companyVO.setTelephone(company.getTelephone());
companyVO.setFax(company.getFax());
companyVO.setEmail(company.getEmail());
companyVO.setActive(company.getActive());
companyVO.setCreate_by(company.getCreate_by());
companyVO.setCreate_dttm(company.getCreate_dttm());
companyVO.setLast_modify_by(company.getLast_modify_by());
companyVO.setLast_modify_dttm(company.getLast_modify_dttm());
companyVO.setCompany_prefix_cd(company.getCompany_prefix_cd());
companyVO.setLast_mth_end(company.getLast_mth_end());
companyVO.setBank_id(company.getBank_id());
companyVO.setCustomer_prefix_cd(company.getCustomer_prefix_cd());
return companyVO;
}
catch(ObjectNotFoundException e)
{
return null;
}
}
public ArrayList getList() throws Exception{
initCompanyDao();
return companyDao.getList();
}
public void add(CompanyVO companyVO) throws Exception
{
try{
Company company = getCompanyHome().create(companyVO.getCompany_id());
company.setCreate_by(companyVO.getCreate_by());
company.setCreate_dttm(companyVO.getCreate_dttm());
GregorianCalendar gc = (GregorianCalendar)GregorianCalendar.getInstance();
gc.set(gc.get(GregorianCalendar.YEAR),gc.get(GregorianCalendar.MONTH),1,0,0,0);
company.setLast_mth_end(gc.getTime());
update(companyVO);
//Create an administrator account
UsersHome usersHome = getUsersHome();
Users users = usersHome.create(companyVO.getCompany_id(), "ADMIN");
users.setName("System Administrator");
users.setPassword("admin");
users.setActive("Y");
users.setRole_id("ADMIN");
users.setCreate_by("ADMIN");
users.setCreate_dttm(companyVO.getCreate_dttm());
//Add role for administrator
Role_HdrHome role_hdrHome = getRoleHdrHome();
Role_Hdr role_hdr = role_hdrHome.create(companyVO.getCompany_id(), "ADMIN");
role_hdr.setRole_name("System Administrator");
role_hdr.setCreate_by("ADMIN");
role_hdr.setCreate_dttm(companyVO.getCreate_dttm());
//Add privilege for administrator
ArrayList priv_list = getPrivList(companyVO,true);
for(int i=0; i < priv_list.size(); i++)
{
PrivilegeVO vo = (PrivilegeVO)priv_list.get(i);
insertPrivListQuery(vo);
}
//Add role_dtl for administrator
Role_DtlHome role_dtlHome= getRoleDtlHome();
ArrayList priv_list1 = getPrivList(companyVO,false);
for(int i=0; i < priv_list1.size(); i++)
{
PrivilegeVO vo1 = (PrivilegeVO)priv_list1.get(i);
Role_Dtl role_dtl = role_dtlHome.create(companyVO.getCompany_id(),"ADMIN",vo1.getProgram_id(),vo1.getPriv_id().toString());
role_dtl.setActive("Y");
//insertRoleDtlListQuery(vo1);
}
}
catch(Exception e)
{
mySessionCtx.setRollbackOnly();
throw e;
}
}
public void update(CompanyVO companyVO) throws Exception
{
try{
Company company = getCompanyHome().findByPrimaryKey(companyVO.getCompany_id());
company.setCompany_name_eng(companyVO.getCompany_name_eng());
company.setCompany_name_chs(companyVO.getCompany_name_chs());
company.setCompany_name_cht(companyVO.getCompany_name_cht());
company.setCompany_desc_eng(companyVO.getCompany_desc_eng());
company.setCompany_desc_chs(companyVO.getCompany_desc_chs());
company.setCompany_desc_cht(companyVO.getCompany_desc_cht());
company.setCompany_chop_name_eng(companyVO.getCompany_chop_name_eng());
company.setCompany_chop_name_chs(companyVO.getCompany_chop_name_chs());
company.setCompany_chop_name_cht(companyVO.getCompany_chop_name_cht());
company.setCompany_address_eng(companyVO.getCompany_address_eng());
company.setCompany_address_chs(companyVO.getCompany_address_chs());
company.setCompany_address_cht(companyVO.getCompany_address_cht());
company.setBase_currency(companyVO.getBase_currency());
company.setPostal_cd(companyVO.getPostal_cd());
company.setTelephone(companyVO.getTelephone());
company.setFax(companyVO.getFax());
company.setEmail(companyVO.getEmail());
company.setActive(companyVO.getActive());
company.setLast_modify_by(companyVO.getLast_modify_by());
company.setLast_modify_dttm(companyVO.getLast_modify_dttm());
company.setCompany_prefix_cd(companyVO.getCompany_prefix_cd());
company.setBank_id(companyVO.getBank_id());
company.setCustomer_prefix_cd(companyVO.getCustomer_prefix_cd());
}
catch(Exception e)
{
mySessionCtx.setRollbackOnly();
throw e;
}
}
public void delete(CompanyVO companyVO) throws Exception
{
try{
Company company = getCompanyHome().findByPrimaryKey(companyVO.getCompany_id());
company.remove();
// remove users
UsersHome usersHome = getUsersHome();
Users users = usersHome.findByPrimaryKey(new UsersKey(companyVO.getCompany_id(),"ADMIN"));
users.remove();
// remove role_hdr
Role_HdrHome role_HdrHome = getRoleHdrHome();
Role_Hdr role_hdr = role_HdrHome.findByPrimaryKey(new Role_HdrKey(companyVO.getCompany_id(),"ADMIN"));
role_hdr.remove();
// remove privilege
deletePrivListQuery(companyVO);
// remove role_dtl
Role_DtlHome role_DtlHome = getRoleDtlHome();
java.util.Collection dtlCollection = role_DtlHome.findByRoleId(companyVO.getCompany_id(), "ADMIN");
Iterator it;
it = dtlCollection.iterator();
while (it.hasNext())
{
Role_Dtl role_Dtl = (Role_Dtl)it.next();
role_Dtl.remove();
}
}
catch(Exception e)
{
mySessionCtx.setRollbackOnly();
throw e;
}
}
public boolean isExist(CompanyVO companyKey) throws Exception
{
try{
Company company = getCompanyHome().findByPrimaryKey(companyKey.getCompany_id());
return true;
}
catch(ObjectNotFoundException ex){
return false;
}
}
public long getListCount(CompanySO companySO) throws Exception{
initCompanyDao();
return companyDao.getListCount(companySO);
}
public ArrayList getList(CompanySO companySO, int fr, int to) throws Exception{
initCompanyDao();
return companyDao.getList(companySO, fr, to);
}
private UsersHome getUsersHome() throws javax.naming.NamingException{
return (UsersHome)EjbGetter.getEJBHome(Users.JNDINAME, UsersHome.class);
}
private Role_HdrHome getRoleHdrHome() throws javax.naming.NamingException{
return (Role_HdrHome)EjbGetter.getEJBHome(Role_Hdr.JNDINAME, Role_HdrHome.class);
}
private Role_DtlHome getRoleDtlHome() throws javax.naming.NamingException{
return (Role_DtlHome)EjbGetter.getEJBHome(Role_Dtl.JNDINAME, Role_DtlHome.class);
}
public void initCompanyDao(){
if (companyDao == null){
companyDao = new CompanyDao();
}
}
public ArrayList getPrivList(CompanyVO companyVO, boolean r) throws Exception{
initCompanyDao();
return companyDao.getPrivList(companyVO,r);
}
public void insertPrivListQuery(PrivilegeVO privilegeVO) throws Exception{
initCompanyDao();
companyDao.insertPrivListQuery(privilegeVO);
}
public void insertRoleDtlListQuery(PrivilegeVO privilegeVO) throws Exception{
initCompanyDao();
companyDao.insertRoleDtlListQuery(privilegeVO);
}
public void deletePrivListQuery(CompanyVO companyVO) throws Exception{
initCompanyDao();
companyDao.deletePrivListQuery(companyVO);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -