package com.estate.expert.admin.controller.admin; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.estate.expert.admin.domain.business.accidentbrief.AccidentBrief; import com.estate.expert.admin.domain.business.screenaccount.ScreenAccount; import com.estate.expert.admin.domain.business.screenaccount.ScreenAccountAddDto; import com.estate.expert.admin.domain.business.screenaccount.ScreenAccountEditDto; import com.estate.expert.admin.domain.business.screenaccount.ScreenAccountEditPasswordDto; import com.estate.expert.admin.domain.common.request.PageReq; import com.estate.expert.admin.service.AccidentBriefService; import com.estate.expert.admin.service.ScreenAccountService; import com.estate.expert.admin.utils.MD5Utils; import com.estate.expert.common.rpc.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.time.LocalDateTime; @Slf4j @CrossOrigin @Api(tags = "管理后台/故事简讯") @RequestMapping("/admin/accident-brief") @RestController @Validated public class AccidentBriefController { @Resource private AccidentBriefService accidentBriefService; @ApiOperation(value = "列表") @PostMapping("/list") public Result list(@ApiParam(value = "标题") @RequestParam(value = "title", required = false) String title, @ApiParam(value = "事故类型") @RequestParam(value = "classifyId", required = false) Integer classifyId, @Validated @RequestBody PageReq pageReq) { Page page = new Page<>(pageReq.getPage(), pageReq.getSize()); LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); if(title!=null && !title.isEmpty()){ wrapper.like(AccidentBrief::getTitle, title); } if(classifyId!=null){ wrapper.eq(AccidentBrief::getClassifyId, classifyId); } wrapper.eq(AccidentBrief::getDeleted,false); wrapper.orderByDesc(AccidentBrief::getCreateTime); Page res = accidentBriefService.page(page, wrapper); return Result.success(res); } @ApiOperation(value = "详情") @GetMapping("/detail/{id}") public Result detail(@PathVariable Integer id) { AccidentBrief accidentBrief = accidentBriefService.getById(id); if (accidentBrief == null) { return Result.error("故事简讯不存在"); } return Result.success(accidentBrief); } @ApiOperation(value = "新增故事简讯") @PostMapping("/add") public Result add(@Validated @RequestBody AccidentBrief dto) { dto.setDeleted(false); return Result.success(accidentBriefService.save(dto)); } @ApiOperation(value = "编辑故事简讯") @PostMapping("/edit") public Result edit(@Validated @RequestBody AccidentBrief dto) { AccidentBrief accidentBrief = accidentBriefService.getById(dto.getId()); if (accidentBrief == null) { return Result.error("故事简讯不存在"); } BeanUtils.copyProperties(dto, accidentBrief); dto.setDeleted(false); return Result.success(accidentBriefService.updateById(dto)); } @ApiOperation(value = "删除故事简讯") @DeleteMapping("/delete/{id}") public Result delete(@PathVariable Integer id) { AccidentBrief accidentBrief = accidentBriefService.getById(id); if (accidentBrief == null) { return Result.error("故事简讯不存在"); } accidentBrief.setDeleted( true); return Result.success(accidentBriefService.updateById(accidentBrief)); } }