无关风月
2024-10-14 039a33d1bfa6ef041161666bbd120c34086fe7c1
xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/controller/client/ClientMeditationHallController.java
@@ -1,9 +1,29 @@
package com.xinquan.meditation.controller.client;
import org.springframework.web.bind.annotation.RequestMapping;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xinquan.common.core.domain.R;
import com.xinquan.common.core.utils.page.CollUtils;
import com.xinquan.common.core.utils.page.PageDTO;
import com.xinquan.common.security.utils.SecurityUtils;
import com.xinquan.course.api.domain.Course;
import com.xinquan.meditation.api.domain.Meditation;
import com.xinquan.meditation.api.domain.dto.MeditationHallDTO;
import com.xinquan.meditation.domain.MeditationHall;
import com.xinquan.meditation.domain.MeditationHall;
import com.xinquan.meditation.service.MeditationHallService;
import com.xinquan.meditation.service.MeditationHallService;
import com.xinquan.meditation.service.MeditationService;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RestController;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List;
/**
 * <p>
@@ -16,6 +36,59 @@
@RestController
@RequestMapping("/client/meditation/meditation-hall")
public class ClientMeditationHallController {
    @Autowired
    private MeditationHallService meditationHallService;
    @PostMapping("/meditationCategoryManagementList")
    @ApiOperation(value = "冥想馆列表-分页", tags = {"管理后台-冥想馆管理"})
    public R<PageDTO<MeditationHall>> meditationCategoryManagementList(@RequestBody MeditationHallDTO dto) {
        LambdaQueryWrapper<MeditationHall> meditationLambdaQueryWrapper = new LambdaQueryWrapper<>();
        meditationLambdaQueryWrapper.like(MeditationHall::getHallName, dto.getHallName());
        meditationLambdaQueryWrapper.like(MeditationHall::getAddress, dto.getAddress());
        meditationLambdaQueryWrapper.orderByDesc(MeditationHall::getCreateTime);
        Page<MeditationHall> page = meditationHallService.page(new Page<>(dto.getPageCurr(), dto.getPageSize()), meditationLambdaQueryWrapper);
        if (CollUtils.isEmpty(page.getRecords())) {
            return R.ok(PageDTO.empty(page));
        }
        for (MeditationHall record : page.getRecords()) {
            record.setUid(record.getId()+"");
        }
        return R.ok(PageDTO.of(page, MeditationHall.class));
    }
    @PostMapping("/addMeditationHall")
    @ApiOperation(value = "新增冥想馆管理", notes = "管理后台-冥想馆管理")
    public R addMeditationHall(@RequestBody MeditationHall homeBackgroundMusic) {
        homeBackgroundMusic.setCreateBy(SecurityUtils.getUsername());
        homeBackgroundMusic.setCreateTime(LocalDateTime.now());
        return R.ok(meditationHallService.save(homeBackgroundMusic));
    }
    @GetMapping("/updateState")
    @ApiOperation(value = "修改课程上下架状态", notes = "管理后台-课程管理")
    public R updateState(String uid) {
        MeditationHall byId = meditationHallService.getById(uid);
        if (byId.getListingStatus() == 1){
            byId.setListingStatus(2);
        }else {
            byId.setListingStatus(1);
        }
        return R.ok();
    }
    @GetMapping("/detailMeditationHall")
    @ApiOperation(value = "查看详情冥想馆管理", notes = "管理后台-冥想馆管理")
    public R<MeditationHall> detailMeditationHall(String uid) {
        return R.ok(meditationHallService.getById(uid));
    }
    @PostMapping("/updateMeditationHall")
    @ApiOperation(value = "修改冥想馆管理", notes = "管理后台-冥想馆管理")
    public R updateMeditationHall(@RequestBody MeditationHall homeBackgroundMusic) {
        homeBackgroundMusic.setUpdateBy(SecurityUtils.getUsername());
        homeBackgroundMusic.setUpdateTime(LocalDateTime.now());
        return R.ok(meditationHallService.updateById(homeBackgroundMusic));
    }
    @PostMapping("/deleteMeditationHall")
    @ApiOperation(value = "批量删除", notes = "管理后台-冥想馆管理")
    public R deleteMeditationHall(String ids) {
        return R.ok(meditationHallService.removeBatchByIds(Arrays.asList(ids.split(","))));
    }
}