package com.caimei.controller.wechat; import com.caimei.model.ResponseJson; import com.caimei.model.vo.*; import com.caimei.module.base.entity.vo.AuthProductVo; import com.caimei.service.auth.AuthClubService; import com.caimei.service.auth.AuthProductService; import com.caimei.service.auth.DoctorService; import com.github.pagehelper.PageInfo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; /** * @author Aslee */ @Api(tags = "微信品牌认证API") @Slf4j @RestController @RequiredArgsConstructor @RequestMapping("/wx/auth") public class WxAuthApi { private final AuthClubService authClubService; private final AuthProductService authProductService; private final DoctorService doctorService; @ApiOperation("供应商信息") @ApiImplicitParam(name = "appId", required = true, value = "供应商公众号appId") @GetMapping("/shop/info") public ResponseJson getWxShopInfo(String appId) { return authClubService.getWxShopInfo(appId); } @ApiOperation("已认证机构列表") @ApiImplicitParams({ @ApiImplicitParam(name = "appId", required = true, value = "供应商公众号appId"), @ApiImplicitParam(name = "lngAndLat", required = false, value = "用户当前经纬度"), @ApiImplicitParam(name = "clubName", required = false, value = "机构名称"), @ApiImplicitParam(name = "provinceId", required = false, value = "省id"), @ApiImplicitParam(name = "cityId", required = false, value = "市id"), @ApiImplicitParam(name = "townId", required = false, value = "区id"), @ApiImplicitParam(name = "pageNum", required = false, value = "第几页"), @ApiImplicitParam(name = "pageSize", required = false, value = "一页多少条") }) @GetMapping("/club/list") public ResponseJson> getWxClubList(String appId, String lngAndLat, String clubName, Integer provinceId, Integer cityId, Integer townId, @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum, @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) { return authClubService.getWxClubList(appId, lngAndLat, clubName, provinceId, cityId, townId, pageNum, pageSize); } @ApiOperation("已认证机构详情") @ApiImplicitParam(required = false, name = "authId", value = "正品联盟机构Id") @GetMapping("/club/details") public ResponseJson getWxClubDetails(Integer authId) { return authClubService.getWxClubDetails(authId); } @ApiOperation("已认证商品列表") @ApiImplicitParams({ @ApiImplicitParam(name = "appId", required = true, value = "供应商公众号appId"), @ApiImplicitParam(name = "productName", required = false, value = "商品名称"), @ApiImplicitParam(name = "pageNum", required = false, value = "第几页"), @ApiImplicitParam(name = "pageSize", required = false, value = "一页多少条") }) @GetMapping("/product/list") public ResponseJson> getWxProductList(String appId, String productName, @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum, @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) { return authProductService.getWxProductList(appId, productName, pageNum, pageSize); } @ApiOperation("已认证商品详情") @ApiImplicitParam(required = false, name = "productId", value = "正品联盟商品Id") @GetMapping("/product/details") public ResponseJson getAuthProductDetails(Integer productId) { return authProductService.getAuthProductDetails(productId); } @ApiOperation("已认证医师列表") @ApiImplicitParams({ @ApiImplicitParam(name = "appId", required = true, value = "供应商公众号appId"), @ApiImplicitParam(name = "doctorName", required = false, value = "医师名称"), @ApiImplicitParam(name = "pageNum", required = false, value = "第几页"), @ApiImplicitParam(name = "pageSize", required = false, value = "一页多少条") }) @GetMapping("/doctor/list") public ResponseJson> getWxDoctorList(String appId, String doctorName, @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum, @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) { return doctorService.getWxDoctorList(appId, doctorName, pageNum, pageSize); } @ApiOperation("已认证医师详情") @ApiImplicitParam(required = false, name = "doctorId", value = "正品联盟医师Id") @GetMapping("/doctor/details") public ResponseJson getAuthDoctorDetails(Integer doctorId) { return doctorService.getAuthDoctorDetails(doctorId); } }