package com.sobey.cmop.mvc.service.iaas; import java.util.List; import javax.annotation.Resource; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.sobey.cmop.mvc.comm.BaseSevcie; import com.sobey.cmop.mvc.dao.MonitorMailDao; import com.sobey.cmop.mvc.entity.Apply; import com.sobey.cmop.mvc.entity.MonitorMail; import com.sobey.cmop.mvc.entity.User; /** * 监控邮件列表MonitorMail相关的管理类. * * @author liukai */ @Service @Transactional(readOnly = true) public class MonitorMailService extends BaseSevcie { private static Logger logger = LoggerFactory.getLogger(MonitorMailService.class); @Resource private MonitorMailDao monitorMailDao; @Transactional(readOnly = false) public MonitorMail saveOrUpdate(MonitorMail monitorMail) { return monitorMailDao.save(monitorMail); } public List<MonitorMail> getMonitorMailByApplyList(Integer applyId) { return monitorMailDao.findByApplyId(applyId); } @Transactional(readOnly = false) public void deleteMonitorMail(List<MonitorMail> monitorMails) { monitorMailDao.delete(monitorMails); } /** * 更新服务申请单例的邮件监控列表<br> * 1.先根据删除apply下所有的邮件列表;2.再新增邮件列表数据. * * @param applyId * 服务申请单Id * @param monitorMails * 监控邮件列表数组 */ @Transactional(readOnly = false) public void updateMonitorEmailToApply(Integer applyId, String[] monitorMails) { // Step.1 this.deleteMonitorMail(this.getMonitorMailByApplyList(applyId)); Apply apply = comm.applyService.getApply(applyId); User user = comm.accountService.getCurrentUser(); // Step.2 for (int i = 0; i < monitorMails.length; i++) { MonitorMail monitorMail = new MonitorMail(); monitorMail.setApply(apply); monitorMail.setEmail(monitorMails[i]); monitorMail.setUser(user); comm.monitorMailService.saveOrUpdate(monitorMail); } } }