package com.dsk.web.controller.search.controller;

import com.alibaba.fastjson2.JSONObject;
import com.dsk.common.core.domain.AjaxResult;
import com.dsk.common.dtos.ComposeQueryDto;
import com.dsk.web.controller.search.service.MarketAnalysisService;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;


/**
 * 央企市场分析-统计
 * @author Administrator
 *
 */
@RequestMapping("/marketAnalysis")
@RestController
public class MarketAnalysisController {


    @Resource
    MarketAnalysisService marketAnalysisService;

    /*
     * 各省份备案企业数量
     */
    @RequestMapping("/areaGroupByProvince")
    public AjaxResult areaGroupByProvince() {

        return marketAnalysisService.areaGroupByProvince();
    }

    /*
     * 资质等级按照行业、等级类型分组
     */
    @RequestMapping("/certGroupByMajorAndLevel")
    public AjaxResult certGroupByMajorAndLevel() {

        return marketAnalysisService.certGroupByMajorAndLevel();
    }


    /*
     * 资质等级按照大类、省份、等级类型分组
     */
    @RequestMapping("/certGroupByCategoryProvinceLevel")
    public AjaxResult certGroupByCategoryProvinceLevel() {

        return marketAnalysisService.certGroupByMajorProvinceLevel();
    }



    /*
     * 产业结构-按年份选择  各个项目类型项目总数
     */
    @RequestMapping("/bidGroupCountByProjectType")
    public AjaxResult bidGroupCountByProjectType(@RequestBody JSONObject object) {
        return marketAnalysisService.bidGroupCountByProjectType(object);
    }
    /*
     * 产业结构-近两年各个项目类型项目总数及金额占比
     */
    @RequestMapping("/bidMoneyGroupByProjectType")
    public AjaxResult bidMoneyGroupByProjectType(@RequestBody JSONObject object) {
        return marketAnalysisService.bidMoneyGroupByProjectType(object);
    }










    /*
     * 中标数量按省份分组
     */
    @RequestMapping("/countGroupByProvince")
    public AjaxResult countGroupByProvince(@RequestBody ComposeQueryDto compose) {
        return marketAnalysisService.countGroupByProvince(compose);
    }

    /*
     * 中标数量按月份分组
     */
    @RequestMapping("/countGroupByMonth")
    public AjaxResult countGroupByMonth(@RequestBody ComposeQueryDto compose) {
        return marketAnalysisService.countGroupByMonth(compose);
    }
}
