无关风月
2024-12-11 4d7a208f388e42e7dd83dab0e38eadfa0847de1c
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TAdvertisingController.java
@@ -1,6 +1,7 @@
package com.ruoyi.other.controller;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.core.enums.status.AdvertisingStatusEnum;
import com.ruoyi.common.core.web.domain.AjaxResult;
@@ -8,6 +9,8 @@
import com.ruoyi.common.log.annotation.Log;
import com.ruoyi.common.log.enums.BusinessType;
import com.ruoyi.common.log.enums.OperatorType;
import com.ruoyi.common.security.annotation.Logical;
import com.ruoyi.common.security.annotation.RequiresPermissions;
import com.ruoyi.other.api.domain.TAdvertising;
import com.ruoyi.other.api.domain.TVip;
import com.ruoyi.other.api.dto.AdvertisingDTO;
@@ -24,6 +27,9 @@
import org.springframework.util.MultiValueMap;
import org.springframework.web.bind.annotation.*;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
@@ -46,6 +52,9 @@
    @Autowired
    private TAdvertisingService advertisingService;
    @RequiresPermissions(value = {"/advertisement/add"}, logical = Logical.OR)
    @PostMapping("/saveAdvertising")
    @ApiOperation(tags = {"管理后台-广告管理"},value = "广告添加")
    @Log(title = "【广告管理】添加广告", businessType = BusinessType.INSERT,operatorType = OperatorType.MANAGE)
@@ -53,6 +62,9 @@
        advertisingService.save(dto);
        return AjaxResult.success();
    }
    @RequiresPermissions(value = {"/advertisement/del"}, logical = Logical.OR)
    @GetMapping("/delete")
    @ApiOperation(tags = {"管理后台-广告管理"},value = "广告删除")
    @Log(title = "【广告管理】删除广告", businessType = BusinessType.DELETE,operatorType = OperatorType.MANAGE)
@@ -60,21 +72,38 @@
        advertisingService.removeBatchByIds(Arrays.asList(ids.split(",")));
        return AjaxResult.success();
    }
    @RequiresPermissions(value = {"/advertisement/update"}, logical = Logical.OR)
    @PostMapping("/updateVip")
    @ApiOperation(tags = {"管理后台-广告管理"},value = "广告修改")
    @Log(title = "【广告管理】修改广告", businessType = BusinessType.UPDATE,operatorType = OperatorType.MANAGE)
    public AjaxResult updateVip(@RequestBody TAdvertising dto) {
        advertisingService.updateById(dto);
        if (dto.getJumpType()!=null && dto.getJumpType() == 2){
            // 清空跳转地址
            advertisingService.updateById(dto);
            LambdaUpdateWrapper<TAdvertising> tAdvertisingLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
            tAdvertisingLambdaUpdateWrapper.eq(TAdvertising::getId,dto.getId())
                    .set(TAdvertising::getJumpUrl,null);
            advertisingService.update(tAdvertisingLambdaUpdateWrapper);
        }else{
            advertisingService.updateById(dto);
        }
        return AjaxResult.success();
    }
    @RequiresPermissions(value = {"/advertisement/select"}, logical = Logical.OR)
    @GetMapping("/getInfo")
    @ApiOperation(tags = {"管理后台-广告管理"},value = "广告查看详情")
    public AjaxResult<TAdvertising> getInfo(Integer id) {
        return AjaxResult.ok(advertisingService.getById(id));
    }
    @RequiresPermissions(value = {"/advertisement"}, logical = Logical.OR)
    @ApiOperation(tags = {"管理后台-广告管理"},value = "广告列表分页查询")
    @PostMapping(value = "/pageList")
    public AjaxResult<PageInfo<TAdvertising>> pageList(@RequestBody AdvertisingDTO dto) {
@@ -86,7 +115,9 @@
    public AjaxResult<List<TAdvertising>> list(@RequestParam("position") Integer position) {
        return AjaxResult.ok(advertisingService.list(Wrappers.lambdaQuery(TAdvertising.class)
                .eq(TAdvertising::getStatus, AdvertisingStatusEnum.YES.getCode())
                .eq(TAdvertising::getPosition,position)));
                .eq(TAdvertising::getPosition,position)
                .le(TAdvertising::getStartTime, LocalDateTime.now())
                .ge(TAdvertising::getEndTime,LocalDateTime.now())));
    }
}