package cn.gistack.sm.message.controller; import cn.gistack.sm.message.entity.MessageRecord; import cn.gistack.sm.message.service.IMessageRecordService; import cn.gistack.sm.message.vo.MessageRecordVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.StringUtil; import org.springframework.web.bind.annotation.*; /** * @PROJECT_NAME: skjcmanager * @DESCRIPTION: 站内信相关 * @USER: aix * @DATE: 2023/6/30 15:51 */ @Slf4j @Api(tags="站内信管理") @RestController @RequestMapping("/message/record") @AllArgsConstructor public class MessageRecordController { private IMessageRecordService messageRecordService; @ApiOperation(value = "站内信管理", notes = "站内信管理-分页列表查询") @GetMapping(value = "/list") public R page(MessageRecord messageRecord, Query query) { return R.data(messageRecordService.page(Condition.getPage(query), Condition.getQueryWrapper(messageRecord))); } /** * 自定义分页列表 * @param messageRecord * @param query * @return */ @ApiOperation(value = "站内信管理", notes = "站内信管理-分页列表查询") @GetMapping(value = "/page") public R selectMessageRecordPageList(MessageRecordVO messageRecord, Query query) { return R.data(messageRecordService.selectMessageRecordPageList(Condition.getPage(query), messageRecord)); } @ApiOperation(value = "我的站内信", notes = "我的站内信列表查询") @GetMapping(value = "/count") public R getCount(MessageRecord messageRecord) { if (StringUtil.isBlank(messageRecord.getRecipient())) return R.fail("用户标识不能为空"); return R.data(messageRecordService.count(Condition.getQueryWrapper(messageRecord))); } @ApiOperation(value = "设置已读", notes = "设置已读") @PostMapping(value = "/editRead") public R editRead(@RequestBody MessageRecord messageRecord) { messageRecord.setStatus(1); return R.data(messageRecordService.updateById(messageRecord)); } @PostMapping(value = "/update") public R update(@RequestBody MessageRecord messageRecord) { return R.data(messageRecordService.updateById(messageRecord)); } }