package com.jasamedika.medifirst2000.service;

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

import org.springframework.data.domain.Pageable;

import com.jasamedika.medifirst2000.entities.Ruangan;
import com.jasamedika.medifirst2000.vo.KirimPerbaikanVO;
import com.jasamedika.medifirst2000.vo.PemeliharaanVO;
import com.jasamedika.medifirst2000.vo.PenjadwalanHeaderVO;
import com.jasamedika.medifirst2000.vo.PerbaikanVO;
import com.jasamedika.medifirst2000.vo.PermintaanPerbaikanVO;
import com.jasamedika.medifirst2000.vo.RequestBarangDariRuanganVO;
import com.jasamedika.medifirst2000.vo.SukuCadangLuarVO;

/**
 * Agama Service
 * 
 * @author Roberto
 */
public interface PsrsPermintaanPerbaikanService extends BaseAnggaranService {

	Map<String, Object> savePermintaanPerbaikan(PermintaanPerbaikanVO vo);

	Map<String, Object> getAsetByRuangan();

	Map<String, Object> kirimPerbaikan(KirimPerbaikanVO vo);

	Map<String, Object> konfirmasiPerbaikan(KirimPerbaikanVO vo);

	Map<String, Object> saveVerifikasiPerbaikan(KirimPerbaikanVO vo);

	Map<String, Object> savePenjadwalan(PenjadwalanHeaderVO vo);

	Map<String, Object> getAsetByProduk(Integer produkId);

	Ruangan getRuanganTujuan();

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

	Map<String, Object> getRuanganPerbaikan();

	Map<String, Object> getProdukPerbaikan(Integer id);

	Map<String, Object> getAsetByProdukAndRuangan(Integer produkId, Integer ruanganId);

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

	Map<String, Object> savePerbaikan(PerbaikanVO vo);

	Map<String, Object> savePemeliharaan(PemeliharaanVO vo);

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

	Map<String, Object> saveSukuCadangLuar(List<SukuCadangLuarVO> vo);

	Map<String, Object> getKotrak();

	Map<String, Object> getKontrakDetail(String noRec);
	
	//add by iwankasan
	//12.12.2017
	Map<String, Object> getLapPermintaanPerbaikan();   
	//Map<String, Object> getLapPermintaanPerbaikan(String dateStart, String dateEnd, String noOrder);
	
	Map<String, Object> getLapPermintaanPerbaikanByDate(String startDate, String endDate);
	
	Map<String, Object> getLapPermintaanPerbaikanByNoOrder(String noOrder);
	
	Map<String, Object> getLapPermintaanPerbaikanByJenisOrder(String jenisOrder, String startDate, String endDate);
	
	Map<String, Object> getOrderSukuCadangbyStrukOrder(String strukOrder);

	Map<String, Object> getMonitoringPerbaikanByDate(String startDate, String endDate);
	
	//Map<String, Object> savePermintaanPerbaikanNoAsset(PermintaanPerbaikanVO vo);
	
	Map<String, Object> getAssetGedungByJenisAsset(Integer idJenis);
	
	Map<String, Object> getAssetNonGedungByJenisAsset(Integer id, Integer idJenis);
	
	Map<String, Object> getAssetGedungByOrderPelayanan(String noOrderPelayanan);
	
	Map<String, Object> getAssetNonGedungByOrderPelayanan(String noOrderPelayanan);
	
	Map<String, Object> getRegistrasiAssetByJenisProduk(String noRec);


}
