oying-system/src/main/java/com/oying/modules/message/domain/MessageSystemAdvertise.java | ●●●●● patch | view | raw | blame | history | |
oying-system/src/main/java/com/oying/modules/message/domain/dto/MessageSystemAdvertiseQueryCriteria.java | ●●●●● patch | view | raw | blame | history | |
oying-system/src/main/java/com/oying/modules/message/mapper/MessageSystemAdvertiseMapper.java | ●●●●● patch | view | raw | blame | history | |
oying-system/src/main/java/com/oying/modules/message/rest/MessageSystemAdvertiseController.java | ●●●●● patch | view | raw | blame | history | |
oying-system/src/main/java/com/oying/modules/message/service/MessageSystemAdvertiseService.java | ●●●●● patch | view | raw | blame | history | |
oying-system/src/main/java/com/oying/modules/message/service/impl/MessageSystemAdvertiseServiceImpl.java | ●●●●● patch | view | raw | blame | history | |
oying-system/src/main/resources/mapper/message/MessageSystemAdvertiseMapper.xml | ●●●●● patch | view | raw | blame | history |
oying-system/src/main/java/com/oying/modules/message/domain/MessageSystemAdvertise.java
New file @@ -0,0 +1,61 @@ package com.oying.modules.message.domain; import com.oying.base.BaseEntity; import lombok.Data; import cn.hutool.core.bean.BeanUtil; import io.swagger.annotations.ApiModelProperty; import cn.hutool.core.bean.copier.CopyOptions; import java.sql.Timestamp; import javax.validation.constraints.NotNull; import java.io.Serializable; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; /** * @description / * @author leomon * @date 2025-06-05 **/ @Data @TableName("message_system_advertise") public class MessageSystemAdvertise extends BaseEntity implements Serializable { @TableId(value = "id", type = IdType.AUTO) @ApiModelProperty(value = "主键ID") private Long id; @ApiModelProperty(value = "广告标题") private String title; @ApiModelProperty(value = "广告内容") private String content; @ApiModelProperty(value = "广告图片链接") private String imageUrl; @ApiModelProperty(value = "广告跳转链接") private String linkUrl; @NotNull @ApiModelProperty(value = "广告状态(0: 禁用;1: 启用)") private Integer status; // @ApiModelProperty(value = "创建人") // private String createBy; // // @ApiModelProperty(value = "更新人") // private String updateBy; // // @NotNull // @ApiModelProperty(value = "创建时间") // private Timestamp createTime; // // @NotNull // @ApiModelProperty(value = "更新时间") // private Timestamp updateTime; public void copy(MessageSystemAdvertise source){ BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); } } oying-system/src/main/java/com/oying/modules/message/domain/dto/MessageSystemAdvertiseQueryCriteria.java
New file @@ -0,0 +1,18 @@ package com.oying.modules.message.domain.dto; import lombok.Data; import io.swagger.annotations.ApiModelProperty; /** * @author leomon * @date 2025-06-05 **/ @Data public class MessageSystemAdvertiseQueryCriteria{ @ApiModelProperty(value = "页码", example = "1") private Integer page = 1; @ApiModelProperty(value = "每页数据量", example = "10") private Integer size = 10; } oying-system/src/main/java/com/oying/modules/message/mapper/MessageSystemAdvertiseMapper.java
New file @@ -0,0 +1,22 @@ package com.oying.modules.message.mapper; import com.oying.modules.message.domain.MessageSystemAdvertise; import com.oying.modules.message.domain.dto.MessageSystemAdvertiseQueryCriteria; import java.util.List; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; /** * @author leomon * @date 2025-06-05 **/ @Mapper public interface MessageSystemAdvertiseMapper extends BaseMapper<MessageSystemAdvertise> { IPage<MessageSystemAdvertise> findAll(@Param("criteria") MessageSystemAdvertiseQueryCriteria criteria, Page<Object> page); List<MessageSystemAdvertise> findAll(@Param("criteria") MessageSystemAdvertiseQueryCriteria criteria); } oying-system/src/main/java/com/oying/modules/message/rest/MessageSystemAdvertiseController.java
New file @@ -0,0 +1,78 @@ package com.oying.modules.message.rest; import com.oying.annotation.Log; import com.oying.modules.message.domain.MessageSystemAdvertise; import com.oying.modules.message.service.MessageSystemAdvertiseService; import com.oying.modules.message.domain.dto.MessageSystemAdvertiseQueryCriteria; import com.oying.utils.R; import lombok.RequiredArgsConstructor; import java.util.List; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import io.swagger.annotations.*; import java.io.IOException; import javax.servlet.http.HttpServletResponse; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.oying.utils.PageResult; /** * @author leomon * @date 2025-06-05 **/ @RestController @RequiredArgsConstructor @Api(tags = "广告") @RequestMapping("/api/messageSystemAdvertise") public class MessageSystemAdvertiseController { private final MessageSystemAdvertiseService messageSystemAdvertiseService; @GetMapping @ApiOperation("页查询广告") @PreAuthorize("@el.check('messageSystemAdvertise:list')") public R<PageResult<MessageSystemAdvertise>> queryMessageSystemAdvertise(MessageSystemAdvertiseQueryCriteria criteria){ Page<Object> page = new Page<>(criteria.getPage(), criteria.getSize()); // return new ResponseEntity<>(messageSystemAdvertiseService.queryAll(criteria,page),HttpStatus.OK); return R.success(messageSystemAdvertiseService.queryAll(criteria,page)); } //条查询广告 @GetMapping("/{id}") @ApiOperation("条查询广告") public R<MessageSystemAdvertise> getMessageSystemAdvertise(@PathVariable Integer id){ MessageSystemAdvertise messageSystemAdvertise = messageSystemAdvertiseService.getById(id); // return new ResponseEntity<>(messageSystemAdvertise,HttpStatus.OK); return R.success(messageSystemAdvertise); } // @PostMapping // @Log("新增广告") // @ApiOperation("新增广告") // @PreAuthorize("@el.check('messageSystemAdvertise:add')") // public ResponseEntity<Object> createMessageSystemAdvertise(@Validated @RequestBody MessageSystemAdvertise resources){ // messageSystemAdvertiseService.create(resources); // return new ResponseEntity<>(HttpStatus.CREATED); // } // @PutMapping // @Log("修改广告") // @ApiOperation("修改广告") // @PreAuthorize("@el.check('messageSystemAdvertise:edit')") // public ResponseEntity<Object> updateMessageSystemAdvertise(@Validated @RequestBody MessageSystemAdvertise resources){ // messageSystemAdvertiseService.update(resources); // return new ResponseEntity<>(HttpStatus.NO_CONTENT); // } // @DeleteMapping // @Log("删除广告") // @ApiOperation("删除广告") // @PreAuthorize("@el.check('messageSystemAdvertise:del')") // public ResponseEntity<Object> deleteMessageSystemAdvertise(@ApiParam(value = "传ID数组[]") @RequestBody List<Long> ids) { // messageSystemAdvertiseService.deleteAll(ids); // return new ResponseEntity<>(HttpStatus.OK); // } } oying-system/src/main/java/com/oying/modules/message/service/MessageSystemAdvertiseService.java
New file @@ -0,0 +1,60 @@ package com.oying.modules.message.service; import com.oying.modules.message.domain.MessageSystemAdvertise; import com.oying.modules.message.domain.dto.MessageSystemAdvertiseQueryCriteria; import java.util.Map; import java.util.List; import java.io.IOException; import javax.servlet.http.HttpServletResponse; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.oying.utils.PageResult; /** * @description 服务接口 * @author leomon * @date 2025-06-05 **/ public interface MessageSystemAdvertiseService extends IService<MessageSystemAdvertise> { /** * 查询数据分页 * @param criteria 条件 * @param page 分页参数 * @return PageResult */ PageResult<MessageSystemAdvertise> queryAll(MessageSystemAdvertiseQueryCriteria criteria, Page<Object> page); /** * 查询所有数据不分页 * @param criteria 条件参数 * @return List<MessageSystemAdvertiseDto> */ List<MessageSystemAdvertise> queryAll(MessageSystemAdvertiseQueryCriteria criteria); /** * 创建 * @param resources / */ void create(MessageSystemAdvertise resources); /** * 编辑 * @param resources / */ void update(MessageSystemAdvertise resources); /** * 多选删除 * @param ids / */ void deleteAll(List<Long> ids); /** * 导出数据 * @param all 待导出的数据 * @param response / * @throws IOException / */ void download(List<MessageSystemAdvertise> all, HttpServletResponse response) throws IOException; } oying-system/src/main/java/com/oying/modules/message/service/impl/MessageSystemAdvertiseServiceImpl.java
New file @@ -0,0 +1,81 @@ package com.oying.modules.message.service.impl; import com.oying.modules.message.domain.MessageSystemAdvertise; import com.oying.utils.FileUtil; import lombok.RequiredArgsConstructor; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.oying.modules.message.service.MessageSystemAdvertiseService; import com.oying.modules.message.domain.dto.MessageSystemAdvertiseQueryCriteria; import com.oying.modules.message.mapper.MessageSystemAdvertiseMapper; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.oying.utils.PageUtil; import java.util.List; import java.util.Map; import java.io.IOException; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.LinkedHashMap; import com.oying.utils.PageResult; /** * @description 服务实现 * @author leomon * @date 2025-06-05 **/ @Service @RequiredArgsConstructor public class MessageSystemAdvertiseServiceImpl extends ServiceImpl<MessageSystemAdvertiseMapper, MessageSystemAdvertise> implements MessageSystemAdvertiseService { private final MessageSystemAdvertiseMapper messageSystemAdvertiseMapper; @Override public PageResult<MessageSystemAdvertise> queryAll(MessageSystemAdvertiseQueryCriteria criteria, Page<Object> page){ return PageUtil.toPage(messageSystemAdvertiseMapper.findAll(criteria, page)); } @Override public List<MessageSystemAdvertise> queryAll(MessageSystemAdvertiseQueryCriteria criteria){ return messageSystemAdvertiseMapper.findAll(criteria); } @Override @Transactional(rollbackFor = Exception.class) public void create(MessageSystemAdvertise resources) { messageSystemAdvertiseMapper.insert(resources); } @Override @Transactional(rollbackFor = Exception.class) public void update(MessageSystemAdvertise resources) { MessageSystemAdvertise messageSystemAdvertise = getById(resources.getId()); messageSystemAdvertise.copy(resources); messageSystemAdvertiseMapper.updateById(messageSystemAdvertise); } @Override @Transactional(rollbackFor = Exception.class) public void deleteAll(List<Long> ids) { messageSystemAdvertiseMapper.deleteBatchIds(ids); } @Override public void download(List<MessageSystemAdvertise> all, HttpServletResponse response) throws IOException { List<Map<String, Object>> list = new ArrayList<>(); for (MessageSystemAdvertise messageSystemAdvertise : all) { Map<String, Object> map = new LinkedHashMap<>(); map.put("广告标题", messageSystemAdvertise.getTitle()); map.put("广告内容", messageSystemAdvertise.getContent()); map.put("广告图片链接", messageSystemAdvertise.getImageUrl()); map.put("广告跳转链接", messageSystemAdvertise.getLinkUrl()); map.put("广告状态(0: 禁用;1: 启用)", messageSystemAdvertise.getStatus()); map.put("创建人", messageSystemAdvertise.getCreateBy()); map.put("更新人", messageSystemAdvertise.getUpdateBy()); map.put("创建时间", messageSystemAdvertise.getCreateTime()); map.put("更新时间", messageSystemAdvertise.getUpdateTime()); list.add(map); } FileUtil.downloadExcel(list, response); } } oying-system/src/main/resources/mapper/message/MessageSystemAdvertiseMapper.xml
New file @@ -0,0 +1,29 @@ <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <mapper namespace="com.oying.modules.message.mapper.MessageSystemAdvertiseMapper"> <resultMap id="BaseResultMap" type="com.oying.modules.message.domain.MessageSystemAdvertise"> <id column="id" property="id"/> <result column="title" property="title"/> <result column="content" property="content"/> <result column="image_url" property="imageUrl"/> <result column="link_url" property="linkUrl"/> <result column="status" property="status"/> <result column="create_by" property="createBy"/> <result column="update_by" property="updateBy"/> <result column="create_time" property="createTime"/> <result column="update_time" property="updateTime"/> </resultMap> <sql id="Base_Column_List"> id, title, content, image_url, link_url, status, create_by, update_by, create_time, update_time </sql> <select id="findAll" resultMap="BaseResultMap"> select <include refid="Base_Column_List"/> from message_system_advertise <where> </where> order by id desc </select> </mapper>