package edu.sjtu.infosec.ismp.manager.RAM.service.impl; import java.util.List; import edu.sjtu.infosec.ismp.manager.RAM.dao.DynaVTARepoDao; import edu.sjtu.infosec.ismp.manager.RAM.model.AsseInfoProj; import edu.sjtu.infosec.ismp.manager.RAM.model.AsseKnowDynaVTARepo; import edu.sjtu.infosec.ismp.manager.RAM.service.DynaVTARepoService; import edu.sjtu.infosec.ismp.manager.comm.model.page.Page; import edu.sjtu.infosec.ismp.manager.comm.model.page.PageResult; import edu.sjtu.infosec.ismp.manager.comm.model.page.PageUtil; /** * 应用层 知识库动态V-T-A-R评估报告Manager实现类. * */ public class DynaVTARepoServiceImpl implements DynaVTARepoService { /** * 知识库动态V-T-A-R评估报告数据访问对象接口 */ private DynaVTARepoDao dynaVTARepoDao; /** * @param vdynaVTARepoDao * 知识库动态V-T-A-R评估报告数据访问对象接口(Spring Ioc容器依赖注入) */ public void setDynaVTARepoDao(DynaVTARepoDao vdynaVTARepoDao) { this.dynaVTARepoDao = vdynaVTARepoDao; } /** * 批量保存/更新V-T-A-R评估记录 * @param dynaVTARepoList * V-T-A-R评估记录集合 **/ public void batchSaveOrUpdate(List<AsseKnowDynaVTARepo> dynaVTARepoList) { dynaVTARepoDao.batchSaveOrUpdate(dynaVTARepoList); } /** * 查询项目V-T-A-R评估记录 * @param id * V-T-A-R评估记录id * @return V-T-A-R评估记录对象 **/ public AsseKnowDynaVTARepo find(String id) { return dynaVTARepoDao.find(new Integer(id)); } /** * 查询项目V-T-A-R评估记录数 * @param asseInfoProj * 测评项目 * @return 项目V-T-A-R评估记录数 **/ public int getCount(AsseInfoProj asseInfoProj) { return dynaVTARepoDao.getCount(asseInfoProj); } /** * 返回项目V-T-A-R评估记录列表 * @param asseInfoProj * 测评项目 * @return 项目V-T-A-R评估记录列表 **/ public List<AsseKnowDynaVTARepo> listDynaVTARepo(AsseInfoProj asseInfoProj) { return dynaVTARepoDao.listDynaVTARepo(asseInfoProj); } /** * 查询项目V-T-A-R评估记录分页记录 * @param page * 分页对象 * @param asseInfoProj * 测评项目 * @return 分页记录列表 **/ public PageResult listDynaVTARepoPage(Page page, AsseInfoProj asseInfoProj) { int totalCount = getCount(asseInfoProj); page = PageUtil.createPage(page, totalCount); List list = dynaVTARepoDao.listDynaVTARepoPage(page, asseInfoProj); return new PageResult(page, list); } /** * 删除项目V-T-A-R评估记录 * @param dynaVTARepo * 项目V-T-A-R评估记录 **/ public void remove(AsseKnowDynaVTARepo dynaVTARepo) { dynaVTARepoDao.remove(dynaVTARepo); } /** * 保存/更新项目V-T-A-R评估记录 * @param dynaVTARepo * 项目V-T-A-R评估记录 **/ public void saveOrUpdate(AsseKnowDynaVTARepo dynaVTARepo) { dynaVTARepoDao.saveOrUpdate(dynaVTARepo); } /** * 检查是否已存在该项目资产评估要素列表 * @param asseInfoProj * 测评项目 * @return true/false **/ public boolean checkExit(AsseInfoProj asseInfoProj) { boolean ret = false; if(asseInfoProj!=null) { List list = listDynaVTARepo(asseInfoProj); if(list!=null && list.size()>0) { ret = true; } } return ret; } }