package thyyxxk.webserver.service.externalhttp;

import com.alibaba.fastjson.JSONObject;
import com.dtflys.forest.annotation.*;

import java.util.Map;

public interface ThmzSystem {
    @Post("{url}/api/v1/getMzChargeDetailForUnPaid")
    Map<String, Object> getMzChargeDetailForUnPaid(@Var("url") String url, @JSONBody JSONObject obj);

    @Post("{url}/api/v1/unPaidToFullChargeDetail")
    Map<String, Object> unPaidToFullChargeDetail(@Var("url") String url, @JSONBody JSONObject obj);

    @Post("{url}/api/v1/payChargeDetailFormDbzsf")
    Map<String, Object> payChargeDetailFormDbzsf(@Var("url") String url, @JSONBody JSONObject obj);

    @Get("{url}/api/v1/getPatientIdByParentId?patientId={patientId}")
    Map<String, Object> getPatientIdByParentId(@Var("url") String url, @Var("patientId") String patientId);

    @Get("{url}/api/v1/getParentIdByPatientId?patientId={patientId}")
    Map<String, Object> getParentIdByPatientId(@Var("url") String url, @Var("patientId") String patientId);

    @Get("{url}/getAmpmByDateAndDeptCode?date={date}&deptCode={deptCode}")
    JSONObject getAmpmByDateAndDeptCode(@Header("Authorization") String Authorization,
                                        @Var("url") String url,
                                        @Var("date") String date,
                                        @Var("deptCode") String deptCode);

    @Get("{url}/getChargeTypeByRequestDayAndDoctor?unitCode={unitCode}&ampm={ampm}&date={date}&apTime={apTime}&doctorCode={}")
    JSONObject getChargeTypeByRequestDayAndDoctor(@Header("Authorization") String Authorization,
                                                  @Var("url") String url,
                                                  @Var("unitCode") String unitCode,
                                                  @Var("ampm") String ampm,
                                                  @Var("date") String date,
                                                  @Var("apTime") String apTime);

    @Get("{url}/getDoctorCodeByRequestDayAndDoctor?unitCode={unitCode}&ampm={ampm}&chargeType={chargeType}&date={date}&apTime={apTime}")
    JSONObject getDoctorCodeByRequestDayAndDoctor(@Header("Authorization") String Authorization,
                                                  @Var("url") String url,
                                                  @Var("unitCode") String unitCode,
                                                  @Var("ampm") String ampm,
                                                  @Var("date") String date,
                                                  @Var("apTime") String apTime,
                                                  @Var("chargeType") String chargeType);

    @Get("{url}/getMzChargeTypeByMzyRequestId?mzyRequestId={mzyRequestId}&birthDay={birthDay}&patientId={patientId}")
    JSONObject getMzChargeTypeByMzyRequestId(@Header("Authorization") String Authorization,
                                             @Var("url") String url,
                                             @Var("mzyRequestId") String mzyRequestId,
                                             @Var("birthDay") String birthDay,
                                             @Var("patientId") String patientId);

    @Post("{url}/saveMzyReqrec")
    JSONObject saveMzyReqrec(@Header("Authorization") String Authorization,
                             @Var("url") String url,
                             @JSONBody JSONObject jsonObject);
}
