package com.dsk.system.dskService;

import cn.hutool.core.bean.BeanUtil;
import com.dsk.common.core.domain.R;
import com.dsk.common.core.domain.model.*;
import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.utils.DskOpenApiUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.Map;

@Service
public class EnterpriseProjectService {

    private static final Logger log = LoggerFactory.getLogger(EnterpriseService.class);

    @Autowired
    private DskOpenApiUtil dskOpenApiUtil;


    public TableDataInfo landTransactionPage(EnterpriseProjectLandTransactionPageBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/landTransactionPage", BeanUtil.beanToMap(body, false, false));
        return dskOpenApiUtil.responsePage(map);
    }


    public R landUse(EnterpriseProjectLandUseBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/landUse", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }


    public R landDetail(EnterpriseProjectLandDetailBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/landDetail", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }


    public TableDataInfo approvalProjectPage(EnterpriseProjectApprovalProjectPageBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/approvalProjectPage", BeanUtil.beanToMap(body, false, false));
        return dskOpenApiUtil.responsePage(map);
    }


    public R approvalInfoDetail(EnterpriseProjectApprovalInfoDetailBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/approvalInfoDetail", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }


    public TableDataInfo approvalExaminePage(EnterpriseProjectApprovalExaminePageBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/approvalExaminePage", BeanUtil.beanToMap(body, false, false));
        return dskOpenApiUtil.responsePage(map);
    }


    public TableDataInfo approvalMarketingPage(EnterpriseProjectApprovalMarketingPageBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/approvalMarketingPage", BeanUtil.beanToMap(body, false, false));
        return dskOpenApiUtil.responsePage(map);
    }


    public TableDataInfo specialDebtProjectPage(Object body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/specialDebtProjectPage", BeanUtil.beanToMap(body, false, false));
        return dskOpenApiUtil.responsePage(map);
    }


    public R specialDebtProjectDetail(Object body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/specialDebtProjectDetail", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }


    public TableDataInfo bidNoticePage(EnterpriseProjectBidNoticePageBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/bidNoticePage", BeanUtil.beanToMap(body, false, false));
        return dskOpenApiUtil.responsePage(map);
    }


    public R bidNoticeTenderStage(EnterpriseProjectBidNoticeTenderStageBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/bidNoticeTenderStage", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }


    public R bidNoticeArea(EnterpriseProjectBidNoticeAreaBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/bidNoticeArea", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }


    public R bidNoticeDetail(EnterpriseProjectBidNoticeDetailBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/bidNoticeDetail", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }


    public TableDataInfo bidPlanPage(Object body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/bidPlanPage", BeanUtil.beanToMap(body, false, false));
        return dskOpenApiUtil.responsePage(map);
    }


    public R bidPlanDetail(Object body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/bidPlanDetail", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }


    public TableDataInfo bidNoticeProPage(EnterpriseProjectBidNoticeProPageBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/bidNoticeProPage", BeanUtil.beanToMap(body, false, false));
        return dskOpenApiUtil.responsePage(map);
    }

    public R bidNoticeProProjectType(EnterpriseProjectBidNoticeProProjectTypeBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/bidNoticeProProjectType", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }

    public R bidNoticeProProjectPurposes(EnterpriseProjectBidNoticeProProjectPurposesBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/bidNoticeProProjectPurposes", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }

    public R bidNoticeProAssessmentWay(EnterpriseProjectBidNoticeProAssessmentWayBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/bidNoticeProAssessmentWay", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }


    public R bidNoticeProDetail(EnterpriseProjectBidNoticeProDetailBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/bidNoticeProDetail", BeanUtil.beanToMap(body, false, false));
        return BeanUtil.toBean(map, R.class);
    }


    public TableDataInfo creditXzxkPage(EnterpriseProjectCreditXzxkPageBody body) throws Exception {
        Map<String, Object> map = dskOpenApiUtil.requestBodyLocal("/operate/enterpriseProject/creditXzxkPage", BeanUtil.beanToMap(body, false, false));
        return dskOpenApiUtil.responsePage(map);
    }
}
