package com.jasamedika.medifirst2000.service;

import com.jasamedika.medifirst2000.dto.BatalPaketProdukDto;
import com.jasamedika.medifirst2000.dto.TagihanPendaftaranDto;
import com.jasamedika.medifirst2000.vo.PelayananPasienVO;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

public interface PelayananPasienService {

	Map<String, Object> savePelayananPasien(PelayananPasienVO vo);

	Map<String, Object> deletePelayanan(List<Map<String, Object>> listVO);

	Map<String, Object> findTindakanPasienMeninggal(Integer noCm);

	List<Map<String, Object>> hitungRemunerasiDokterDenganFfs(String tglAwal, String tglAkhir);

	List<String> updateKlaimDiskon(String noRegistrasi, Double totalKlaim, Integer jenisDiskon);

	String resetKlaimDiskon(String noRegistrasi);

	List<Map<String, Object>> rekapLogbook(Integer idPegawai, String bulan);

	Map<String, Object> splitRemunFfs(Integer idPegawai, String bulan);

	Map<String, Object> logbookRemunTarifDokter(Integer idPegawai, String bulan, Map<String, Object> data);

	List<Map<String, Object>> logbookFfsTarifDokter(Integer idPegawai, String bulan, Map<String, Object> data);

	List<Map<String, Object>> logbookFfsLuarTarifDokter(Integer idPegawai, String bulan, Map<String, Object> data);

	List<Map<String, Object>> logbookKlaimMppDokter(Integer idPegawai, String bulan);

	List<Map<String, Object>> logbookFixedPayDokter(Integer idPegawai, String bulan, Map<String, Object> data);

	List<Map<String, Object>> detailLogbookTarifDokter(Integer idPegawai, List<String> norecs);

	List<TagihanPendaftaranDto> tagihan(String noRegistrasi);

	void diskonTagihan(String kodeVoucher, List<TagihanPendaftaranDto> dtoList);

	boolean isValidVoucher(String kodeVoucher, String noRegistrasi);

	void batalPaketProduk(HttpServletRequest request, BatalPaketProdukDto dto);
}
