package com.bankaudit.rest.process.dao;

import java.time.LocalDate;
import java.util.List;

import com.bankaudit.dto.DataTableResponse;
import com.bankaudit.process.model.AuditSchedule;

public interface AuditReviewDao {
	
	DataTableResponse getMyReviewList(int legalEntityCode,String userId, String search,Integer orderColumn,	String orderDirection, Integer page, Integer size,
			LocalDate financialYear, String auditTypeCode, List<LocalDate>  financialYearStrtEndList);

	AuditSchedule getReviewAuditByPlanIdAndAuditId(int legalEntityCode,String auditTypeCode, String planId,String auditId); 
	 
	void updateAuditReviewStatus(AuditSchedule auditSchedule);
	
	void updateAuditClosureStatus(AuditSchedule auditSchedule);
	
	DataTableResponse  getReviewObservationList(int legalEntityCode,String planId,String auditId, String search,Integer orderColumn,
			String orderDirection, Integer page, Integer size);
	
	String isReviewObsPendingBfrReviewSubmit(AuditSchedule auditSchedule);
	
	String updateProbSevirtyScoreRiskwise(AuditSchedule auditSchedule);
	String updateResidualriskAssessmentwiseCallHealthIndex(AuditSchedule auditSchedule);
	
	String isRatingsGiven(int legalEntityCode,String auditId);
	
	void updateAuditReviewerId(AuditSchedule auditSchedule);
	
	void deleteDeskComplianceDataFromWrkTmp(int legalEntityCode,String auditTypeCode, String planId,String auditId);

}
