package com.jasamedika.medifirst2000.service;

import java.util.List;
import java.util.Map;

import com.jasamedika.medifirst2000.entities.LoginUser;
import com.jasamedika.medifirst2000.entities.Ruangan;
import com.jasamedika.medifirst2000.entities.StrukPelayanan;
import com.jasamedika.medifirst2000.vo.MappingKirimDokumenPasienVO;
import com.jasamedika.medifirst2000.vo.StrukBuktiPengeluaranCaraBayarVO;

public interface TagihanRekananService {

	Map<String, Object> getDaftarTagihanRekanan(Integer page, Integer limit, String sort, String dir, String dateStart,
			String dateEnd, String noFaktur, String namaRekanan, String noTerima, String noRec, String status,
			String gridFor);

	Map<String, Object> getDetailTagihanRekanan(Integer page, Integer limit, String sort, String dir, String dateStart,
			String dateEnd, String noFaktur, String namaRekanan, String noTerima, String noRec);

	Map<String, Object> getDetailTotalTagihanRekanan(String noFaktur, String namaRekanan, String noTerima, String noRec,
			String dateStart, String dateEnd);

	Map<String, Object> savePembayaranTagihan(StrukBuktiPengeluaranCaraBayarVO vo, Integer idRekanan, String noRec,
			String status);

	String GenerateNoSbk();

	Map<String, Object> getRiwayatPembayaranTagihan(Integer idRekanan, String noRec);

	Ruangan getRuanganByUserLogin();

	List<Integer> getRuanganByUserLoginList();

	LoginUser getLoginUser();

	Map<String, Object> saveVerifikasiTagihanRekanan(String noRec);

	Map<String, Object> getKlaimPembayaran(String noRegistrasi);

	Map<String, Object> getDetailKwitansi(Integer page, Integer limit, String sort, String dir, String noRec,
			String noSbm);

	Map<String, Object> getDetailKwitansiNoRegistrasi(Integer page, Integer limit, String sort, String dir,
			String noRec, String noSbm, String noRegistrasi);

	Map<String, Object> saveKlaimPembayaran(MappingKirimDokumenPasienVO vo);

	Map<String, Object> getDaftarTagihanRekananVerifikasi(Integer page, Integer limit, String sort, String dir,
			String dateStart, String dateEnd, String noFaktur, String namaRekanan, String noTerima, String status,
			String noRec, String gridFor);

	Map<String, Object> getKartuPiutangPerusahaan(String dateStart, String dateEnd, String noCm, String namaPasien,
			String noRegistrasi, Short kdRekanan, String namaRekanan);

	Map<String, Object> getDaftarVerifikasi(String dateStart, String dateEnd, String dateStartVerif,
			String dateEndVerif, Integer idKelTransaksi, String kelTransaksi);

	String generatePembayaranKe(String noRec);

}
