puhanshu
2021-09-22 15c1d716e6a89b38e6af36b62fc372b93779df01
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityConvenientApi.java
@@ -1,18 +1,29 @@
package com.panzhihua.applets.api;
import javax.annotation.Resource;
import javax.validation.Valid;
import com.panzhihua.common.model.dtos.community.convenient.PageClassifyMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageMerchantProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.PagePopularMerchantDTO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientMerchantVO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientProductVO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientServiceCategoryVO;
import org.springframework.web.bind.annotation.*;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.community.PageComCvtBusinessAppletsDTO;
import com.panzhihua.common.model.dtos.community.PageComCvtBusinessDTO;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.ComCvtBusinessDetailVO;
import com.panzhihua.common.model.vos.community.ComCvtBusinessVO;
import com.panzhihua.common.service.community.CommunityService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Objects;
/**
 * @description: 社区便民服务商家接口
@@ -28,22 +39,54 @@
    @Resource
    private CommunityService communityService;
    @ApiOperation(value = "分页查询便民服务商家",response = ComCvtBusinessVO.class)
    @Deprecated
    @ApiOperation(value = "分页查询便民服务商家", response = ComCvtBusinessVO.class)
    @PostMapping("/business/area/page")
    public R pageComCvtBusiness(@RequestBody PageComCvtBusinessAppletsDTO comCvtBusinessAppletsDTO) {
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        Long communityId = loginUserInfo.getCommunityId();
        if (null!=communityId && 0!=communityId) {
            comCvtBusinessAppletsDTO.setCommunityId(communityId);
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfoSureNoLogin();
        if (loginUserInfo != null) {
            comCvtBusinessAppletsDTO.setCommunityId(loginUserInfo.getCommunityId());
        }
        return communityService.pageComCvtBusinessByServiceArea(comCvtBusinessAppletsDTO);
    }
    @ApiOperation(value = "查询便民服务商家详情")
    @Deprecated
    @ApiOperation(value = "查询便民服务商家详情", response = ComCvtBusinessDetailVO.class)
    @GetMapping("/business/get")
    public R getComCvtBusinessServeDetail(@RequestParam("id") Long id) {
        return communityService.getComCvtBusinessServeDetail(id);
    }
    @ApiOperation(value = "获取商家数量大于0的服务类型", response = ConvenientServiceCategoryVO.class)
    @GetMapping("/service-category/suitable")
    public R getSuitableServiceCategories(@RequestParam("communityId") Long communityId) {
        if (Objects.isNull(communityId)) {
            return R.fail("社区id不能为空");
        }
        return communityService.getSuitableServiceCategories(communityId);
    }
    @ApiOperation(value = "分页获取热门商家", response = ConvenientMerchantVO.class)
    @PostMapping("/merchant/popular")
    public R getPopularMerchants(@RequestBody @Valid PagePopularMerchantDTO pagePopularMerchantDTO) {
        return communityService.getPopularMerchants(pagePopularMerchantDTO);
    }
    @ApiOperation(value = "分页获取服务类型下商家", response = ConvenientMerchantVO.class)
    @PostMapping("/merchant/classify")
    public R getClassifyMerchants(@RequestBody @Valid PageClassifyMerchantDTO pageClassifyMerchantDTO) {
        return communityService.getClassifyMerchants(pageClassifyMerchantDTO);
    }
    @ApiOperation(value = "商家详情", response = ConvenientMerchantVO.class)
    @GetMapping("/merchant/detail")
    public R getMerchantDetail(@RequestParam("merchantId") Long merchantId) {
        return communityService.getMerchantDetail(merchantId);
    }
    @ApiOperation(value = "分页获取商家产品", response = ConvenientProductVO.class)
    @PostMapping("/merchant/product")
    public R getMerchantProduct(@RequestBody @Valid PageMerchantProductDTO pageMerchantProductDTO) {
        return communityService.getMerchantProduct(pageMerchantProductDTO);
    }
}