package cn.stylefeng.guns.modular.business.controller;
|
|
import cn.hutool.core.lang.Assert;
|
import cn.hutool.core.util.StrUtil;
|
import cn.stylefeng.guns.modular.business.dto.request.MentalAnalysisSpecialTimeConfigDeleteRequest;
|
import cn.stylefeng.guns.modular.business.dto.request.MentalAnalysisSpecialTimeConfigEdit2Request;
|
import cn.stylefeng.guns.modular.business.entity.MentalAnalysisSpecialTimeConfig;
|
import cn.stylefeng.guns.modular.business.service.IMentalAnalysisSpecialTimeConfigService;
|
import cn.stylefeng.roses.kernel.rule.annotation.BusinessLog;
|
import cn.stylefeng.roses.kernel.rule.enums.ResBizTypeEnum;
|
import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData;
|
import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData;
|
import cn.stylefeng.roses.kernel.scanner.api.annotation.ApiResource;
|
import cn.stylefeng.roses.kernel.scanner.api.annotation.GetResource;
|
import cn.stylefeng.roses.kernel.scanner.api.annotation.PostResource;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import javax.annotation.Resource;
|
import java.util.List;
|
|
@RestController
|
@Api(tags = "性格分析师配置")
|
@ApiResource(name = "性格分析师配置", resBizType = ResBizTypeEnum.BUSINESS)
|
@RequestMapping("/business")
|
public class MentalAnalysisSpecialTimeConfigController {
|
|
@Resource
|
private IMentalAnalysisSpecialTimeConfigService mentalAnalysisSpecialTimeConfigService;
|
|
@ApiOperation("特殊时段列表")
|
@GetResource(name = "特殊时段列表", path = "/mentalAnalysisSpecialTimeConfigList")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "counsellingInfoId", value = "咨询师ID", dataTypeClass = Long.class, paramType = "query"),
|
@ApiImplicitParam(name = "searchBeginTime", value = "开始时间(yyyy-MM-dd)", dataTypeClass = String.class, paramType = "query"),
|
@ApiImplicitParam(name = "searchEndTime", value = "结束时间(yyyy-MM-dd)", dataTypeClass = String.class, paramType = "query"),
|
})
|
public ResponseData<List<MentalAnalysisSpecialTimeConfig>> mentalAnalysisSpecialTimeConfigList(Long counsellingInfoId, String searchBeginTime, String searchEndTime) {
|
List<MentalAnalysisSpecialTimeConfig> list = mentalAnalysisSpecialTimeConfigService.list(
|
Wrappers.<MentalAnalysisSpecialTimeConfig>lambdaQuery()
|
.eq(counsellingInfoId != null, MentalAnalysisSpecialTimeConfig::getCounsellingInfoId, counsellingInfoId)
|
.ge(StrUtil.isNotBlank(searchBeginTime), MentalAnalysisSpecialTimeConfig::getSpecialDay, searchBeginTime)
|
.le(StrUtil.isNotBlank(searchEndTime), MentalAnalysisSpecialTimeConfig::getSpecialDay, searchEndTime)
|
);
|
return new SuccessResponseData<>(list);
|
}
|
|
@ApiOperation("特殊时段修改")
|
@PostResource(name = "特殊时段修改", path = "/mentalAnalysisSpecialTimeConfigEdit")
|
@BusinessLog
|
public ResponseData<?> mentalAnalysisSpecialTimeConfigEdit(@RequestBody MentalAnalysisSpecialTimeConfigEdit2Request req) {
|
// 特殊时段修改
|
return mentalAnalysisSpecialTimeConfigService.editSpecialTimeConfig(req);
|
}
|
|
@ApiOperation("特殊时段删除")
|
@PostResource(name = "特殊时段删除", path = "/mentalAnalysisSpecialTimeConfigDelete")
|
@BusinessLog
|
public ResponseData<?> mentalAnalysisSpecialTimeConfigDelete(@RequestBody MentalAnalysisSpecialTimeConfigDeleteRequest req) {
|
Assert.notNull(req.getCounsellingInfoId(), "性格分析师ID不能为空");
|
// 清除当天的设置
|
boolean remove = mentalAnalysisSpecialTimeConfigService.remove(
|
Wrappers.<MentalAnalysisSpecialTimeConfig>lambdaQuery()
|
.eq(MentalAnalysisSpecialTimeConfig::getCounsellingInfoId, req.getCounsellingInfoId())
|
.eq(StrUtil.isNotBlank(req.getSpecialDay()), MentalAnalysisSpecialTimeConfig::getSpecialDay, req.getSpecialDay())
|
);
|
return new SuccessResponseData<>(remove);
|
}
|
|
}
|