Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package com.inkubator.hrm.service.impl; import com.inkubator.common.util.RandomNumberUtil; import com.inkubator.datacore.service.impl.IServiceImpl; import com.inkubator.hrm.dao.OhsaIncidentDao; import com.inkubator.hrm.dao.OhsaIncidentDocumentDao; import com.inkubator.hrm.entity.OhsaIncident; import com.inkubator.hrm.entity.OhsaIncidentDocument; import com.inkubator.hrm.service.OhsaIncidentDocumentService; import com.inkubator.securitycore.util.UserInfoUtil; import com.inkubator.webcore.util.FacesIO; import java.io.File; import java.io.IOException; import java.util.Date; import java.util.List; import org.apache.commons.lang3.StringUtils; import org.hibernate.criterion.Order; import org.primefaces.model.UploadedFile; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Isolation; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; /** * * @author Ahmad Mudzakkir Amal */ @Service(value = "ohsaIncidentDocumentService") @Lazy public class OhsaIncidentDocumentServiceImpl extends IServiceImpl implements OhsaIncidentDocumentService { @Autowired private OhsaIncidentDocumentDao ohsaIncidentDocumentDao; @Autowired private OhsaIncidentDao ohsaIncidentDao; @Autowired private FacesIO facesIO; @Override public OhsaIncidentDocument getEntiyByPK(String string) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override @Transactional(readOnly = true, isolation = Isolation.REPEATABLE_READ, propagation = Propagation.SUPPORTS, timeout = 30) public OhsaIncidentDocument getEntiyByPK(Integer intgr) throws Exception { return this.ohsaIncidentDocumentDao.getEntiyByPK(intgr); } @Override public OhsaIncidentDocument getEntiyByPK(Long l) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public void save(OhsaIncidentDocument t) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public void update(OhsaIncidentDocument t) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public void saveOrUpdate(OhsaIncidentDocument t) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument saveData(OhsaIncidentDocument t) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument updateData(OhsaIncidentDocument t) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument saveOrUpdateData(OhsaIncidentDocument t) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument getEntityByPkIsActive(String string, Integer intgr) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument getEntityByPkIsActive(String string, Byte b) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument getEntityByPkIsActive(String string, Boolean bln) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument getEntityByPkIsActive(Integer intgr, Integer intgr1) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument getEntityByPkIsActive(Integer intgr, Byte b) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument getEntityByPkIsActive(Integer intgr, Boolean bln) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument getEntityByPkIsActive(Long l, Integer intgr) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument getEntityByPkIsActive(Long l, Byte b) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public OhsaIncidentDocument getEntityByPkIsActive(Long l, Boolean bln) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override @Transactional(readOnly = false, isolation = Isolation.READ_COMMITTED, propagation = Propagation.REQUIRED, noRollbackFor = IOException.class) public void delete(OhsaIncidentDocument t) throws Exception { //remove physical file try { File oldFile = new File(t.getUploadedPath()); oldFile.delete(); } catch (Exception e) { //if any error when removing file, system will continue deleting the record } this.ohsaIncidentDocumentDao.delete(t); } @Override public void softDelete(OhsaIncidentDocument t) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public Long getTotalData() throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public Long getTotalDataIsActive(Boolean bln) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public Long getTotalDataIsActive(Integer intgr) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public Long getTotalDataIsActive(Byte b) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public List<OhsaIncidentDocument> getAllData() throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public List<OhsaIncidentDocument> getAllData(Boolean bln) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public List<OhsaIncidentDocument> getAllData(Integer intgr) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public List<OhsaIncidentDocument> getAllData(Byte b) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public List<OhsaIncidentDocument> getAllDataPageAble(int i, int i1, Order order) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public List<OhsaIncidentDocument> getAllDataPageAbleIsActive(int i, int i1, Order order, Boolean bln) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public List<OhsaIncidentDocument> getAllDataPageAbleIsActive(int i, int i1, Order order, Integer intgr) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public List<OhsaIncidentDocument> getAllDataPageAbleIsActive(int i, int i1, Order order, Byte b) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override @Transactional(readOnly = true, isolation = Isolation.REPEATABLE_READ, propagation = Propagation.SUPPORTS, timeout = 50) public List<OhsaIncidentDocument> getListByOhsaIncidentId(Long ohsaIncidentId) { return ohsaIncidentDocumentDao.getListByOhsaIncidentId(ohsaIncidentId); } @Override @Transactional(readOnly = true, isolation = Isolation.REPEATABLE_READ, propagation = Propagation.SUPPORTS, timeout = 30) public OhsaIncidentDocument getEntityByPKWithDetail(Integer id) { return ohsaIncidentDocumentDao.getEntityByPKWithDetail(id); } @Override @Transactional(readOnly = false, isolation = Isolation.READ_COMMITTED, propagation = Propagation.REQUIRED, rollbackFor = Exception.class) public void save(OhsaIncidentDocument entity, UploadedFile documentFile) throws Exception { entity.setId(Integer.valueOf(RandomNumberUtil.getRandomNumber(6))); OhsaIncident ohsaIncident = ohsaIncidentDao.getEntiyByPK(entity.getOhsaIncident().getId()); entity.setOhsaIncident(ohsaIncident); entity.setCreatedBy(UserInfoUtil.getUserName()); entity.setCreatedOn(new Date()); ohsaIncidentDocumentDao.save(entity); if (documentFile != null) { String uploadPath = getUploadPath(entity.getId(), documentFile); facesIO.transferFile(documentFile); File file = new File(facesIO.getPathUpload() + documentFile.getFileName()); file.renameTo(new File(uploadPath)); //documentFile.getSize(); entity.setUploadedPath(uploadPath); ohsaIncidentDocumentDao.update(entity); } } @Override public void update(OhsaIncidentDocument entity, UploadedFile documentFile) throws Exception { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } private String getUploadPath(Integer id, UploadedFile documentFile) { String extension = StringUtils.substringAfterLast(documentFile.getFileName(), "."); String uploadPath = facesIO.getPathUpload() + "ohsaIncidentDocument_" + id + "." + extension; return uploadPath; } }