yanghui
2022-11-29 3da01b2a6cf247f90aed86fc37d8cb0ab51a4b4c
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ConvenientApi.java
@@ -1,52 +1,17 @@
package com.panzhihua.service_community.api;
import java.util.List;
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.PagePopularMerchantDTO;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.panzhihua.common.model.dtos.community.ComCvtBusinessDTO;
import com.panzhihua.common.model.dtos.community.ComCvtCategoryDTO;
import com.panzhihua.common.model.dtos.community.ComCvtServeDTO;
import com.panzhihua.common.model.dtos.community.PageComCvtBusinessAppletsDTO;
import com.panzhihua.common.model.dtos.community.PageComCvtBusinessDTO;
import com.panzhihua.common.model.dtos.community.PageComCvtCategoryDTO;
import com.panzhihua.common.model.dtos.community.PageComCvtServeDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientProductCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientServiceCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.DeleteConvenientProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.DisableOrEnableConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.OnShelfOrOffShelfProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientProductCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientProductDTO;
import com.panzhihua.common.model.dtos.community.convenient.PageConvenientServiceCategoryDTO;
import com.panzhihua.common.model.dtos.community.convenient.ResetPasswordConvenientMerchantDTO;
import com.panzhihua.common.model.dtos.community.*;
import com.panzhihua.common.model.dtos.community.convenient.*;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.ComCvtServeExcelVO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientMerchantVO;
import com.panzhihua.service_community.service.ComCvtBusinessService;
import com.panzhihua.service_community.service.ComCvtCategoryService;
import com.panzhihua.service_community.service.ComCvtServeService;
import com.panzhihua.service_community.service.ConvenientMerchantService;
import com.panzhihua.service_community.service.ConvenientProductCategoryService;
import com.panzhihua.service_community.service.ConvenientProductService;
import com.panzhihua.service_community.service.ConvenientServiceCategoryService;
import com.panzhihua.service_community.service.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.List;
/**
 * @description: 便民服务接口
@@ -79,11 +44,16 @@
    @Resource
    private ConvenientProductService convenientProductService;
    @Resource
    private ConvenientElevatingPointService convenientElevatingPointService;
    @Resource
    private ConvenientGoodsCategoryService convenientGoodsCategoryService;
    /**
     * 社区后台分页查询便民服务商家
     *
     * @param pageComCvtBusinessDTO
     *            查询参数
     * @param pageComCvtBusinessDTO 查询参数
     * @return 返回结果
     */
    @PostMapping("/business/page")
@@ -94,8 +64,7 @@
    /**
     * 小程序通过便民服务区域分页查询便民服务商家
     *
     * @param comCvtBusinessAppletsDTO
     *            查询参数
     * @param comCvtBusinessAppletsDTO 查询参数
     * @return 返回结果
     */
    @PostMapping("/business/area/page")
@@ -106,8 +75,7 @@
    /**
     * 新增便民服务商家
     *
     * @param comCvtBusinessDTO
     *            商家参数
     * @param comCvtBusinessDTO 商家参数
     * @return 返回结果
     */
    @PostMapping("/business/add")
@@ -118,8 +86,7 @@
    /**
     * 编辑便民服务商家
     *
     * @param comCvtBusinessDTO
     *            商家参数
     * @param comCvtBusinessDTO 商家参数
     * @return 返回结果
     */
    @PutMapping("/business/put")
@@ -130,8 +97,7 @@
    /**
     * 查询便民服务商家详情
     *
     * @param id
     *            商家主键
     * @param id 商家主键
     * @return 返回结果
     */
    @GetMapping("/business/get")
@@ -142,8 +108,7 @@
    /**
     * 删除便民服务商家信息
     *
     * @param id
     *            商家主键
     * @param id 商家主键
     * @return 返回结果
     */
    @DeleteMapping("/business/delete")
@@ -154,8 +119,7 @@
    /**
     * 社区后台分页查询便民服务分类
     *
     * @param pageComCvtCategoryDTO
     *            查询参数
     * @param pageComCvtCategoryDTO 查询参数
     * @return 返回结果
     */
    @PostMapping("/category/page")
@@ -165,7 +129,7 @@
    /**
     * 便民服务分类下拉,所有分类
     *
     *
     * @return 返回结果
     */
    @PostMapping("/category/all")
@@ -176,8 +140,7 @@
    /**
     * 新增便民服务分类
     *
     * @param comCvtCategoryDTO
     *            分类参数
     * @param comCvtCategoryDTO 分类参数
     * @return 返回结果
     */
    @PostMapping("/category/add")
@@ -188,8 +151,7 @@
    /**
     * 编辑便民服务分类
     *
     * @param comCvtCategoryDTO
     *            分类参数
     * @param comCvtCategoryDTO 分类参数
     * @return 返回结果
     */
    @PutMapping("/category/put")
@@ -200,8 +162,7 @@
    /**
     * 查询便民服务分类详情
     *
     * @param id
     *            分类主键
     * @param id 分类主键
     * @return 返回结果
     */
    @GetMapping("/category/get")
@@ -212,8 +173,7 @@
    /**
     * 删除便民服务分类信息
     *
     * @param id
     *            分类主键
     * @param id 分类主键
     * @return 返回结果
     */
    @DeleteMapping("/category/delete")
@@ -224,8 +184,7 @@
    /**
     * 社区后台分页查询便民服务
     *
     * @param pageComCvtServeDTO
     *            查询参数
     * @param pageComCvtServeDTO 查询参数
     * @return 返回结果
     */
    @PostMapping("/serve/page")
@@ -236,8 +195,7 @@
    /**
     * 新增便民服务
     *
     * @param comCvtServeDTO
     *            参数
     * @param comCvtServeDTO 参数
     * @return 返回结果
     */
    @PostMapping("/serve/add")
@@ -248,8 +206,7 @@
    /**
     * 编辑便民服务
     *
     * @param comCvtServeDTO
     *            分类参数
     * @param comCvtServeDTO 分类参数
     * @return 返回结果
     */
    @PutMapping("/serve/put")
@@ -260,8 +217,7 @@
    /**
     * 查询便民服务详情
     *
     * @param id
     *            服务主键
     * @param id 服务主键
     * @return 返回结果
     */
    @GetMapping("/serve/get")
@@ -272,8 +228,7 @@
    /**
     * 删除便民服务信息
     *
     * @param id
     *            服务主键
     * @param id 服务主键
     * @return 返回结果
     */
    @DeleteMapping("/serve/delete")
@@ -283,9 +238,8 @@
    /**
     * 小程序便民服务商家详情
     *
     * @param id
     *            商家ID
     *
     * @param id 商家ID
     * @return
     */
    @GetMapping("/business/serve/get")
@@ -295,18 +249,18 @@
    /**
     * 批量新增商家服务
     *
     * @param list
     *            服务集合
     *
     * @param list 服务集合
     */
    @PostMapping("/serve/import")
    public R listSaveConvenientServeExcelVO(@RequestBody List<ComCvtServeExcelVO> list,
        @RequestParam(value = "communityId", required = false) Long communityId) {
                                            @RequestParam(value = "communityId", required = false) Long communityId) {
        return comCvtServeService.listSaveConvenientServeExcelVO(list, communityId);
    }
    /**
     * 便民服务新增分类
     *
     * @param convenientServiceCategoryDTO
     * @return
     */
@@ -317,6 +271,7 @@
    /**
     * 便民服务分类编辑
     *
     * @param convenientServiceCategoryDTO
     * @return
     */
@@ -327,6 +282,7 @@
    /**
     * 便民服务分类删除
     *
     * @param categoryId
     * @return
     */
@@ -337,6 +293,7 @@
    /**
     * 获取便民服务分类详情
     *
     * @param categoryId
     * @return
     */
@@ -347,6 +304,7 @@
    /**
     * 分页查询便民服务分类
     *
     * @param pageConvenientServiceCategoryDTO
     * @return
     */
@@ -357,6 +315,7 @@
    /**
     * 便民服务新增商家
     *
     * @param convenientMerchantDTO
     * @return
     */
@@ -367,6 +326,7 @@
    /**
     * 编辑便民服务商家
     *
     * @param convenientMerchantDTO
     * @return
     */
@@ -377,6 +337,7 @@
    /**
     * 删除便民服务商家
     *
     * @param merchantId
     * @return
     */
@@ -386,7 +347,8 @@
    }
    /**
     * 分页查询便民服务商家
     * 分页查询便民服务商家 运营后台
     *
     * @param pageConvenientMerchantDTO
     * @return
     */
@@ -397,6 +359,7 @@
    /**
     * 获取便民服务商家详情
     *
     * @param merchantId
     * @return
     */
@@ -406,7 +369,19 @@
    }
    /**
     * 获取便民服务商家详情
     *
     * @param userId
     * @return
     */
    @GetMapping("/merchant/getMerchantByUserId")
    public R getMerchantByUserId(@RequestParam("userId") Long userId) {
        return convenientMerchantService.getMerchantByUserId(userId);
    }
    /**
     * 禁用/启用便民服务商家
     *
     * @param disableOrEnableConvenientMerchantDTO
     * @return
     */
@@ -417,6 +392,7 @@
    /**
     * 重置便民服务商家账号密码
     *
     * @param resetPasswordConvenientMerchantDTO
     * @return
     */
@@ -427,15 +403,17 @@
    /**
     * 获取所有便民服务分类
     *
     * @return
     */
    @GetMapping("/service-category/all")
    public R getAllServiceCategories() {
        return convenientServiceCategoryService.getAllServiceCategories();
    public R getAllServiceCategories(@RequestParam("areaCode") String areaCode) {
        return convenientServiceCategoryService.getAllServiceCategories(areaCode);
    }
    /**
     * 获取用户便民服务商家详情
     *
     * @param account 商家绑定账号
     * @return
     */
@@ -445,7 +423,19 @@
    }
    /**
     * 获取用户便民服务商家详情
     *
     * @param account 商家绑定账号
     * @return
     */
    @GetMapping("/getMerchantInfoByAccount")
    public R<ConvenientMerchantVO> getMerchantInfoByAccount(@RequestParam("account") String account) {
        return convenientMerchantService.getMerchantInfoByAccount(account);
    }
    /**
     * 获取商便民服务商家信息
     *
     * @param userId
     * @return
     */
@@ -456,6 +446,7 @@
    /**
     * 新增便民服务产品分类信息
     *
     * @param convenientProductCategoryDTO
     * @return
     */
@@ -466,6 +457,7 @@
    /**
     * 编辑便民服务产品分类信息
     *
     * @param convenientProductCategoryDTO
     * @return
     */
@@ -476,6 +468,7 @@
    /**
     * 删除便民服务产品分类信息
     *
     * @param categoryId
     * @param operator
     * @return
@@ -487,6 +480,7 @@
    /**
     * 获取便民服务产品分类详情
     *
     * @param categoryId
     * @return
     */
@@ -497,6 +491,7 @@
    /**
     * 分页查询便民服务产品分类信息
     *
     * @param pageConvenientProductCategoryDTO
     * @return
     */
@@ -507,6 +502,7 @@
    /**
     * 便民服务商家后台新增产品
     *
     * @param convenientProductDTO
     * @return
     */
@@ -517,6 +513,7 @@
    /**
     * 便民服务商家后台编辑产品
     *
     * @param convenientProductDTO
     * @return
     */
@@ -527,6 +524,7 @@
    /**
     * 便民服务商家后台获取产品详情
     *
     * @param productId
     * @return
     */
@@ -537,6 +535,7 @@
    /**
     * 便民服务商家后台分页获取产品信息
     *
     * @param pageConvenientProductDTO
     * @return
     */
@@ -547,6 +546,7 @@
    /**
     * 便民服务商家后台删除产品信息
     *
     * @param deleteConvenientProductDTO
     * @return
     */
@@ -557,6 +557,7 @@
    /**
     * 便民服务商家后台上架/下架产品
     *
     * @param onShelfOrOffShelfProductDTO
     * @return
     */
@@ -567,25 +568,29 @@
    /**
     * 获取所有产品分类
     *
     * @param merchantId
     * @return
     */
    @GetMapping("/product-category/all")
    public R getAllProductCategory() {
        return convenientProductCategoryService.getAllProductCategory();
    public R getAllProductCategory(@RequestParam("merchantId") Long merchantId) {
        return convenientProductCategoryService.getAllProductCategory(merchantId);
    }
    /**
     * 获取该社区商家数量大于0的分类
     *
     * @param communityId
     * @return
     */
    @GetMapping("/service-category/suitable")
    public R getSuitableServiceCategories(@RequestParam("communityId") Long communityId) {
        return convenientServiceCategoryService.getSuitableServiceCategories(communityId);
    public R getSuitableServiceCategories(@RequestParam("communityId") Long communityId, @RequestParam("areaCode") String areaCode) {
        return convenientServiceCategoryService.getSuitableServiceCategories(communityId, areaCode);
    }
    /**
     * 获取该社区下的热门商家
     *
     * @param pagePopularMerchantDTO
     * @return
     */
@@ -596,11 +601,265 @@
    /**
     * 分页获取服务类型下商家信息
     *
     * @param pageClassifyMerchantDTO
     * @return
     */
    @PostMapping("/merchant/classify")
    public R getClassifyMerchants(PageClassifyMerchantDTO pageClassifyMerchantDTO) {
    public R getClassifyMerchants(@RequestBody PageClassifyMerchantDTO pageClassifyMerchantDTO) {
        return convenientMerchantService.getClassifyMerchants(pageClassifyMerchantDTO);
    }
    /**
     * 小程序获取商家详情
     *
     * @param merchantId
     * @return
     */
    @GetMapping("/merchant/detail")
    public R getMerchantDetail(@RequestParam("merchantId") Long merchantId) {
        return convenientMerchantService.getMerchantDetail(merchantId);
    }
    /**
     * 小程序获取商家产品
     *
     * @param merchantId
     * @return
     */
    @GetMapping("/product/list")
    public R getMerchantProduct(@RequestParam("merchantId") Long merchantId) {
        return convenientProductService.getMerchantProduct(merchantId);
    }
    /**
     * 获取产品详情
     *
     * @param productId
     * @return
     */
    @GetMapping("/product/detail")
    public R getProductDetail(@RequestParam("productId") Long productId) {
        return convenientProductService.getProduct(productId);
    }
    /**
     * 搜索商家信息
     *
     * @param pageSearchDTO
     * @return
     */
    @PostMapping("/merchant/search")
    public R pageSearchMerchant(@RequestBody PageSearchDTO pageSearchDTO) {
        return convenientMerchantService.pageSearchMerchant(pageSearchDTO);
    }
    /**
     * 搜索商品信息
     *
     * @param pageSearchDTO
     * @return
     */
    @PostMapping("/product/search")
    public R pageSearchProduct(@RequestBody PageSearchDTO pageSearchDTO) {
        return convenientProductService.pageSearchProduct(pageSearchDTO);
    }
    /**
     * 增加商家店铺咨询量
     *
     * @param merchantId
     * @return
     */
    @GetMapping("/merchant/consult")
    public R consultMerchant(@RequestParam("merchantId") Long merchantId) {
        return convenientMerchantService.consultMerchant(merchantId);
    }
    /**
     * 增加商家店铺浏览量
     *
     * @param merchantId
     * @return
     */
    @GetMapping("/merchant/incr-view")
    public R incrMerchantView(@RequestParam("merchantId") Long merchantId) {
        return convenientMerchantService.incrMerchantView(merchantId);
    }
    /**
     * 增加产品浏览量
     *
     * @param productId
     * @return
     */
    @GetMapping("/product/incr-view")
    public R incrProductView(@RequestParam("productId") Long productId) {
        return convenientProductService.incrProductView(productId);
    }
    /**
     * 获取商家导出数据
     *
     * @param exportMerchantDTO
     * @return
     */
    @PostMapping("/merchant/export")
    public R exportMerchant(@RequestBody ExportMerchantDTO exportMerchantDTO) {
        return convenientMerchantService.exportMerchant(exportMerchantDTO);
    }
    /**
     * 定时任务每隔半小时将商家浏览量和咨询量总值计入指定商家数据中
     *
     * @return
     */
    @PostMapping("/timedTaskWriteDataToMerchantJobHandler")
    public R timedTaskWriteDataToMerchantJobHandler() {
        return convenientMerchantService.timedTaskWriteDataToMerchantJobHandler();
    }
    /**
     * 获取商家上下架产品数量
     *
     * @param merchantId
     * @return
     */
    @GetMapping("/product/shelf-num")
    public R getProductShelfNum(@RequestParam("merchantId") Long merchantId) {
        return convenientProductService.getProductShelfNum(merchantId);
    }
    /**
     * 分页查询自提点 运营后台
     *
     * @param pageConvenientElevatingPointDTO
     * @return
     */
    @PostMapping("/point/page")
    public R pagePoint(@RequestBody PageConvenientElevatingPointDTO pageConvenientElevatingPointDTO) {
        return convenientElevatingPointService.pagePoint(pageConvenientElevatingPointDTO);
    }
    /**
     * 便民服务新增 自提点
     *
     * @param convenientElevatingPointDTO
     * @return
     */
    @PostMapping("/point/add")
    public R addPoint(@RequestBody ConvenientElevatingPointDTO convenientElevatingPointDTO) {
        return convenientElevatingPointService.addPoint(convenientElevatingPointDTO);
    }
    /**
     * 编辑便民服务 自提点
     *
     * @param convenientElevatingPointDTO
     * @return
     */
    @PutMapping("/point/put")
    public R putPoint(@RequestBody ConvenientElevatingPointDTO convenientElevatingPointDTO) {
        return convenientElevatingPointService.putPoint(convenientElevatingPointDTO);
    }
    /**
     * 删除便民服务 自提点
     *
     * @param pointId
     * @param operator
     * @return
     */
    @DeleteMapping("/point/delete")
    public R deletePoint(@RequestParam("pointId") Long pointId, @RequestParam("operator") Long operator) {
        return convenientElevatingPointService.deletePoint(pointId, operator);
    }
    /**
     * 便民服务详情 自提点
     *
     * @param pointId
     * @return
     */
    @GetMapping("/point/detail")
    public R detailPoint(@RequestParam("pointId") Long pointId) {
        return convenientElevatingPointService.detailPoint(pointId);
    }
    /**
     * 新增商品分类
     *
     * @param convenientGoodsCategoryDTO
     * @return
     */
    @PostMapping("/goodsCategory/add")
    public R addGoodsCategory(@RequestBody ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO) {
        return convenientGoodsCategoryService.addGoodsCategory(convenientGoodsCategoryDTO);
    }
    /**
     * 编辑
     *
     * @param convenientGoodsCategoryDTO
     * @return
     */
    @PutMapping("/goodsCategory/put")
    public R putGoodsCategory(@RequestBody ConvenientGoodsCategoryDTO convenientGoodsCategoryDTO) {
        return convenientGoodsCategoryService.putGoodsCategory(convenientGoodsCategoryDTO);
    }
    /**
     * 删除商品分类
     *
     * @param categoryId
     * @return
     */
    @DeleteMapping("/goodsCategory/delete")
    public R deleteGoodsCategory(@RequestParam("categoryId") Long categoryId, @RequestParam("operator") Long operator) {
        return convenientGoodsCategoryService.deleteGoodsCategoryById(categoryId, operator);
    }
    /**
     * 获取商品分类详情
     *
     * @param categoryId
     * @return
     */
    @GetMapping("/goodsCategory/get")
    public R getGoodsCategory(@RequestParam("categoryId") Long categoryId) {
        return convenientGoodsCategoryService.getGoodsCategoryById(categoryId);
    }
    /**
     * 分页查询商品分类
     *
     * @param pageConvenientGoodsCategoryDTO
     * @return
     */
    @PostMapping("/goodsCategory/page")
    public R pageGoodsCategory(@RequestBody PageConvenientGoodsCategoryDTO pageConvenientGoodsCategoryDTO) {
        return convenientGoodsCategoryService.pageGoodsCategory(pageConvenientGoodsCategoryDTO);
    }
    /**
     * 获取所有商品分类
     *
     * @return
     */
    @GetMapping("/goodsCategory/getAllGoodsCategories")
    public R getAllGoodsCategories() {
        return convenientGoodsCategoryService.getAllGoodsCategories();
    }
    /**
     * 获取当前商铺周围的自提点信息以及距离手机距离
     *
     * @param merchantId
     * @return
     */
    @GetMapping("/point/findPointByMerchantId")
    public R findPointByMerchantId(@RequestParam("merchantId") Long merchantId, @RequestParam("lat") String lat, @RequestParam("lng") String lng) {
        return convenientElevatingPointService.findPointByMerchantId(merchantId, lat, lng);
    }
}