package edu.sjtu.infosec.ismp.manager.RAM.dao; import java.util.List; import edu.sjtu.infosec.ismp.manager.RAM.model.AsseInfoAsse; import edu.sjtu.infosec.ismp.manager.RAM.model.AsseKnowDynaElemResu; import edu.sjtu.infosec.ismp.manager.comm.model.page.Page; /** * 数据层 知识库资产评估要素结果Dao访问接口. * **/ public interface DynaElemResuDao { /** * 批量保存/更新项目资产评估要素 * @param dynaElemResuList * 资产评估要素集合 **/ void batchSaveOrUpdate(List<AsseKnowDynaElemResu> dynaElemResuList); /** * 保存/更新项目资产评估要素 * @param dynaElemResu * 项目资产评估要素 **/ void saveOrUpdate(AsseKnowDynaElemResu dynaElemResu); /** * 删除项目资产评估要素 * @param dynaElemResu * 项目资产评估要素 **/ void remove(AsseKnowDynaElemResu dynaElemResu); /** * 查询项目资产评估要素 * @param id * 资产评估要素id * @return 资产评估要素对象 **/ AsseKnowDynaElemResu find(Integer id); /** * 返回项目资产评估要素列表 * @param asseInfoProjId * 测评项目id * @return 项目资产评估要素列表 **/ List<AsseKnowDynaElemResu> listDynaElemResu(Integer asseInfoProjId); boolean checkAlertType(String type, String subType, String category); // void sendAlert(AlertInfoBO alertInfo); /** * 查询项目资产评估要素记录数 * @param asseInfoProjId * 测评项目id * @return 项目资产评估要素记录数 **/ int getCount(Integer asseInfoProjId); /** * 查询项目资产评估要素分页记录 * @param page * 分页对象 * @param asseInfoProjId * 测评项目id * @return 分页记录列表 **/ List<AsseKnowDynaElemResu> listDynaElemResuPage(Integer startResult, Integer maxResult, Integer asseInfoProjId); /** * 统计风险值 * @param asseInfoProjId * 测评项目id * @return 风险值 **/ List statRiskValue(Integer asseInfoProjId); /** * 查询风险为高的资产数目 * @param asseInfoProjId * 测评项目Id * @param asseInfoAsse * 资产 * @return 风险为高的资产数目 */ Integer statHighRiskAsse(Integer asseInfoProjId, AsseInfoAsse asseInfoAsse); /** * 风险为中的资产数目 * @param asseInfoProjId * 测评项目Id * @param asseInfoAsse * 资产 * @return 风险为中的资产数目 */ Integer statMiddRiskAsse(Integer asseInfoProjId, AsseInfoAsse asseInfoAsse); /** * 风险为低的资产数目 * @param asseInfoProjId * 测评项目Id * @param asseInfoAsse * 资产 * @return 风险为低的资产数目 */ Integer statLowRiskAsse(Integer asseInfoProjId, AsseInfoAsse asseInfoAsse); }