package org.infosec.ismp.manager.winsensor.operation.service.impl; import java.sql.Timestamp; import java.util.ArrayList; import java.util.Date; import java.util.List; import org.infosec.ismp.agent.comm.winsensor.model.operation.Duty; import org.infosec.ismp.agent.comm.winsensor.model.operation.DutyManager; import org.infosec.ismp.manager.winsensor.operation.dao.DutyManagerDao; import org.infosec.ismp.manager.winsensor.operation.entity.DutyBO; import org.infosec.ismp.manager.winsensor.operation.entity.DutyManagerBO; import org.infosec.ismp.manager.winsensor.operation.service.DutyManagerService; /** * @author Rocky * @version create time: Jan 6, 2011 2:10:30 PM * */ public class DutyManagerServiceImpl implements DutyManagerService { private DutyManagerDao dao; @Override public void addDutyManager(List<DutyManager> dutyManagers) { for (DutyManager dutyManager : dutyManagers) { List<Duty> duties = dutyManager.getDuties(); DutyManagerBO dutyManagerBO = new DutyManagerBO(); List<DutyBO> dutyBOs = new ArrayList<DutyBO>(); for (Duty duty : duties) { DutyBO dutyBO = new DutyBO(); dutyBO.setRemoteDutyId(duty.getId()); dutyBO.setCreateTime(new Date()); dutyBO.setEmail(duty.getEmail()); dutyBO.setIsManager(duty.getIsManager()); dutyBO.setMobilePhone(duty.getMobilePhone()); dutyBO.setName(duty.getName()); dutyBO.setPhone(duty.getPhone()); dutyBO.setResponsibility(duty.getResponsibility()); dutyBO.setSex(duty.getSex()); dutyBOs.add(dutyBO); } dutyManagerBO.setId(Long.valueOf(dutyManager.getId())); dutyManagerBO.setDuties(dutyBOs); dutyManagerBO.setDomainId(dutyManager.getDomainId()); dutyManagerBO.setBeginDate(dutyManager.getBeginDate()); dutyManagerBO.setEndDate(dutyManager.getEndDate()); dutyManagerBO.setComplaintNumber(dutyManager.getComplaintNumber()); dutyManagerBO.setExpired(false); dutyManagerBO.setCreateTime(new Date()); dao.addDutyManager(dutyManagerBO); } } @Override public List<DutyManager> getAllDutyManagerById(List<String> dutyManagerIds) { List<DutyManagerBO> dutyManagerBOs = dao.getAllDutyManagerById(dutyManagerIds); List<DutyManager> dutyManagers = new ArrayList<DutyManager>(); for (DutyManagerBO dutyManagerBO : dutyManagerBOs) { DutyManager dutyManager = new DutyManager(); dutyManager.setBeginDate(dutyManagerBO.getBeginDate()); dutyManager.setComplaintNumber(dutyManagerBO.getComplaintNumber()); dutyManager.setCreateTime(new Timestamp(dutyManagerBO.getCreateTime().getTime())); List<DutyBO> dutyBOs = dutyManagerBO.getDuties(); List<Duty> dutys = new ArrayList<Duty>(); for (DutyBO dutyBO : dutyBOs) { Duty duty = new Duty(); duty.setCreateTime(new Timestamp(dutyBO.getCreateTime().getTime())); duty.setEmail(dutyBO.getEmail()); duty.setId(dutyBO.getRemoteDutyId()); duty.setIsManager(dutyBO.getIsManager()); duty.setMobilePhone(dutyBO.getMobilePhone()); duty.setName(dutyBO.getName()); duty.setPhone(dutyBO.getPhone()); duty.setResponsibility(dutyBO.getResponsibility()); duty.setSex(dutyBO.getSex()); dutys.add(duty); } dutyManager.setDuties(dutys); dutyManager.setDomainId(dutyManagerBO.getDomainId()); dutyManager.setEndDate(dutyManagerBO.getEndDate()); dutyManager.setId(String.valueOf(dutyManagerBO.getId())); dutyManagers.add(dutyManager); } return dutyManagers; } @Override public void deleteDutyManager(String dutyManagerId) { dao.deleteDutyManager(dutyManagerId); } public DutyManagerDao getDao() { return dao; } public void setDao(DutyManagerDao dao) { this.dao = dao; } }