package com.ruoyi.web.controller.api; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.domain.BaseModel; import com.ruoyi.common.core.domain.BasePage; import com.ruoyi.common.core.domain.R; import com.ruoyi.system.model.TAdvertisement; import com.ruoyi.system.model.TEmploymentInfo; import com.ruoyi.system.model.TMerchant; import com.ruoyi.system.model.TMerchantType; import com.ruoyi.system.query.MerchantQuery; import com.ruoyi.system.service.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Objects; @Slf4j @RestController @RequestMapping("/merchant") @Api(tags = "惠民商务模块") public class MerchantController { private final TAdvertisementService advertisementService; private final TMerchantService merchantService; private final TMerchantTypeService merchantTypeService; public MerchantController(TAdvertisementService advertisementService, TMerchantService merchantService, TMerchantTypeService merchantTypeService) { this.advertisementService = advertisementService; this.merchantService = merchantService; this.merchantTypeService = merchantTypeService; } @GetMapping("/getAdvertisementList") @ApiOperation(value = "惠民商务--广告列表",response = TAdvertisement.class) public R> getAdvertisementList() { List list = advertisementService.list(); return R.ok(list); } @GetMapping("/getAdvertisementDetail/{id}") @ApiOperation(value = "惠民商务--广告详情",response = TAdvertisement.class) public R getAdvertisementList(@PathVariable String id) { TAdvertisement advertisement = advertisementService.getById(id); return R.ok(advertisement); } @PostMapping("/getMerchantList") @ApiOperation(value = "惠民商务--商户列表",response = TMerchant.class) public R> getMerchantList(@RequestBody MerchantQuery query) { Page page = new Page<>(query.getPageNum(), query.getPageSize()); Page merchantPage = merchantService.page(page, Wrappers.lambdaQuery().eq(Objects.nonNull(query.getTypeId()), TMerchant::getTypeId, query.getTypeId()) .like(Objects.nonNull(query.getMerchantName()), TMerchant::getMerchantName, query.getMerchantName()) .orderByDesc(BaseModel::getCreateTime) ); return R.ok(merchantPage); } @GetMapping("/getMerchantDetail/{id}") @ApiOperation(value = "惠民商务--商户详情",response = TMerchant.class) public R getMerchantDetail(@PathVariable String id) { TMerchant merchant = merchantService.getById(id); return R.ok(merchant); } }