fengjiajia 5 days ago
parent
commit
d3fe0abd2d
37 changed files with 1890 additions and 5 deletions
  1. 2 0
      src/main/java/com/zhentao/ZyzApplication.java
  2. 22 0
      src/main/java/com/zhentao/pagehome/controller/PageHomeController.java
  3. 117 0
      src/main/java/com/zhentao/pagehome/domain/PageBanner.java
  4. 132 0
      src/main/java/com/zhentao/pagehome/domain/PageHome.java
  5. 117 0
      src/main/java/com/zhentao/pagehome/domain/PageJgbox.java
  6. 43 0
      src/main/java/com/zhentao/pagehome/dto/PageHomeDto.java
  7. 18 0
      src/main/java/com/zhentao/pagehome/mapper/PageBannerMapper.java
  8. 18 0
      src/main/java/com/zhentao/pagehome/mapper/PageHomeMapper.java
  9. 18 0
      src/main/java/com/zhentao/pagehome/mapper/PageJgboxMapper.java
  10. 13 0
      src/main/java/com/zhentao/pagehome/service/PageBannerService.java
  11. 22 0
      src/main/java/com/zhentao/pagehome/service/PageHomeService.java
  12. 13 0
      src/main/java/com/zhentao/pagehome/service/PageJgboxService.java
  13. 22 0
      src/main/java/com/zhentao/pagehome/service/impl/PageBannerServiceImpl.java
  14. 79 0
      src/main/java/com/zhentao/pagehome/service/impl/PageHomeImpl.java
  15. 41 0
      src/main/java/com/zhentao/pagehome/service/impl/PageHomeServiceImpl.java
  16. 22 0
      src/main/java/com/zhentao/pagehome/service/impl/PageJgboxServiceImpl.java
  17. 25 0
      src/main/java/com/zhentao/volunteer/controller/ActivityTypeController.java
  18. 18 0
      src/main/java/com/zhentao/volunteer/controller/VolunteerActivityController.java
  19. 117 0
      src/main/java/com/zhentao/volunteer/domain/ActivityType.java
  20. 189 0
      src/main/java/com/zhentao/volunteer/domain/VolunteerActivity.java
  21. 438 0
      src/main/java/com/zhentao/volunteer/domain/VolunteerActivityDetail.java
  22. 18 0
      src/main/java/com/zhentao/volunteer/mapper/ActivityTypeMapper.java
  23. 18 0
      src/main/java/com/zhentao/volunteer/mapper/VolunteerActivityDetailMapper.java
  24. 18 0
      src/main/java/com/zhentao/volunteer/mapper/VolunteerActivityMapper.java
  25. 17 0
      src/main/java/com/zhentao/volunteer/service/ActivityTypeService.java
  26. 13 0
      src/main/java/com/zhentao/volunteer/service/VolunteerActivityDetailService.java
  27. 16 0
      src/main/java/com/zhentao/volunteer/service/VolunteerActivityService.java
  28. 32 0
      src/main/java/com/zhentao/volunteer/service/impl/ActivityTypeServiceImpl.java
  29. 22 0
      src/main/java/com/zhentao/volunteer/service/impl/VolunteerActivityDetailServiceImpl.java
  30. 39 0
      src/main/java/com/zhentao/volunteer/service/impl/VolunteerActivityServiceImpl.java
  31. 5 5
      src/main/resources/application.yml
  32. 23 0
      src/main/resources/mapper/ActivityTypeMapper.xml
  33. 23 0
      src/main/resources/mapper/PageBannerMapper.xml
  34. 26 0
      src/main/resources/mapper/PageHomeMapper.xml
  35. 23 0
      src/main/resources/mapper/PageJgboxMapper.xml
  36. 76 0
      src/main/resources/mapper/VolunteerActivityDetailMapper.xml
  37. 35 0
      src/main/resources/mapper/VolunteerActivityMapper.xml

+ 2 - 0
src/main/java/com/zhentao/ZyzApplication.java

@@ -1,9 +1,11 @@
 package com.zhentao;
 package com.zhentao;
 
 
+import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 
 
 @SpringBootApplication
 @SpringBootApplication
+@MapperScan("com.zhentao.*.mapper")
 public class ZyzApplication {
 public class ZyzApplication {
 
 
     public static void main(String[] args) {
     public static void main(String[] args) {

+ 22 - 0
src/main/java/com/zhentao/pagehome/controller/PageHomeController.java

@@ -0,0 +1,22 @@
+package com.zhentao.pagehome.controller;
+
+import com.zhentao.common.vo.Result;
+import com.zhentao.pagehome.service.PageHomeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+@RequestMapping("/pageHome")
+public class PageHomeController {
+
+    @Autowired
+    private PageHomeService pageHomeService;
+
+    @PostMapping("/queryPageHome")
+    public Result queryPageHome() {
+        return pageHomeService.queryPageHome();
+    }
+
+}

+ 117 - 0
src/main/java/com/zhentao/pagehome/domain/PageBanner.java

@@ -0,0 +1,117 @@
+package com.zhentao.pagehome.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 轮播图表
+ * @TableName page_banner
+ */
+@TableName(value ="page_banner")
+@Data
+public class PageBanner implements Serializable {
+    /**
+     * id
+     */
+    @TableId(type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 轮播图名字
+     */
+    private String name;
+
+    /**
+     * 轮播图片
+     */
+    private String image;
+
+    /**
+     * 路径
+     */
+    private String url;
+
+    /**
+     * 状态
+     */
+    private Integer status;
+
+    /**
+     * 首页id
+     */
+    private Integer homepageId;
+
+    /**
+     * 排序
+     */
+    private Integer sort;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public boolean equals(Object that) {
+        if (this == that) {
+            return true;
+        }
+        if (that == null) {
+            return false;
+        }
+        if (getClass() != that.getClass()) {
+            return false;
+        }
+        PageBanner other = (PageBanner) that;
+        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
+            && (this.getName() == null ? other.getName() == null : this.getName().equals(other.getName()))
+            && (this.getImage() == null ? other.getImage() == null : this.getImage().equals(other.getImage()))
+            && (this.getUrl() == null ? other.getUrl() == null : this.getUrl().equals(other.getUrl()))
+            && (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
+            && (this.getHomepageId() == null ? other.getHomepageId() == null : this.getHomepageId().equals(other.getHomepageId()))
+            && (this.getSort() == null ? other.getSort() == null : this.getSort().equals(other.getSort()))
+            && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()));
+    }
+
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
+        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
+        result = prime * result + ((getImage() == null) ? 0 : getImage().hashCode());
+        result = prime * result + ((getUrl() == null) ? 0 : getUrl().hashCode());
+        result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
+        result = prime * result + ((getHomepageId() == null) ? 0 : getHomepageId().hashCode());
+        result = prime * result + ((getSort() == null) ? 0 : getSort().hashCode());
+        result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
+        return result;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", name=").append(name);
+        sb.append(", image=").append(image);
+        sb.append(", url=").append(url);
+        sb.append(", status=").append(status);
+        sb.append(", homepageId=").append(homepageId);
+        sb.append(", sort=").append(sort);
+        sb.append(", createTime=").append(createTime);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 132 - 0
src/main/java/com/zhentao/pagehome/domain/PageHome.java

@@ -0,0 +1,132 @@
+package com.zhentao.pagehome.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 首页管理表
+ * @TableName page_home
+ */
+@TableName(value ="page_home")
+@Data
+public class PageHome implements Serializable {
+    /**
+     * id
+     */
+    private Integer id;
+
+    /**
+     * 标题
+     */
+    private String titleName;
+
+    /**
+     * 编码
+     */
+    private String homeCode;
+
+    /**
+     * 小标题图
+     */
+    private String imgUrl;
+
+    /**
+     * 路径
+     */
+    private String path;
+
+    /**
+     * 排序
+     */
+    private Integer homeSort;
+
+    /**
+     * 标签
+     */
+    private String label;
+
+    /**
+     * 状态0关闭1开启
+     */
+    private Integer status;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 更新时间
+     */
+    private Date updateTime;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public boolean equals(Object that) {
+        if (this == that) {
+            return true;
+        }
+        if (that == null) {
+            return false;
+        }
+        if (getClass() != that.getClass()) {
+            return false;
+        }
+        PageHome other = (PageHome) that;
+        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
+            && (this.getTitleName() == null ? other.getTitleName() == null : this.getTitleName().equals(other.getTitleName()))
+            && (this.getHomeCode() == null ? other.getHomeCode() == null : this.getHomeCode().equals(other.getHomeCode()))
+            && (this.getImgUrl() == null ? other.getImgUrl() == null : this.getImgUrl().equals(other.getImgUrl()))
+            && (this.getPath() == null ? other.getPath() == null : this.getPath().equals(other.getPath()))
+            && (this.getHomeSort() == null ? other.getHomeSort() == null : this.getHomeSort().equals(other.getHomeSort()))
+            && (this.getLabel() == null ? other.getLabel() == null : this.getLabel().equals(other.getLabel()))
+            && (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
+            && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
+            && (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime()));
+    }
+
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
+        result = prime * result + ((getTitleName() == null) ? 0 : getTitleName().hashCode());
+        result = prime * result + ((getHomeCode() == null) ? 0 : getHomeCode().hashCode());
+        result = prime * result + ((getImgUrl() == null) ? 0 : getImgUrl().hashCode());
+        result = prime * result + ((getPath() == null) ? 0 : getPath().hashCode());
+        result = prime * result + ((getHomeSort() == null) ? 0 : getHomeSort().hashCode());
+        result = prime * result + ((getLabel() == null) ? 0 : getLabel().hashCode());
+        result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
+        result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
+        result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode());
+        return result;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", titleName=").append(titleName);
+        sb.append(", homeCode=").append(homeCode);
+        sb.append(", imgUrl=").append(imgUrl);
+        sb.append(", path=").append(path);
+        sb.append(", homeSort=").append(homeSort);
+        sb.append(", label=").append(label);
+        sb.append(", status=").append(status);
+        sb.append(", createTime=").append(createTime);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 117 - 0
src/main/java/com/zhentao/pagehome/domain/PageJgbox.java

@@ -0,0 +1,117 @@
+package com.zhentao.pagehome.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 首页的金刚区
+ * @TableName page_jgbox
+ */
+@TableName(value ="page_jgbox")
+@Data
+public class PageJgbox implements Serializable {
+    /**
+     * id
+     */
+    @TableId(type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 名字
+     */
+    private String name;
+
+    /**
+     * 图片
+     */
+    private String img;
+
+    /**
+     * 路径
+     */
+    private String url;
+
+    /**
+     * 状态
+     */
+    private Integer status;
+
+    /**
+     * 首页id
+     */
+    private Integer homepageId;
+
+    /**
+     * 排序
+     */
+    private Integer sort;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public boolean equals(Object that) {
+        if (this == that) {
+            return true;
+        }
+        if (that == null) {
+            return false;
+        }
+        if (getClass() != that.getClass()) {
+            return false;
+        }
+        PageJgbox other = (PageJgbox) that;
+        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
+            && (this.getName() == null ? other.getName() == null : this.getName().equals(other.getName()))
+            && (this.getImg() == null ? other.getImg() == null : this.getImg().equals(other.getImg()))
+            && (this.getUrl() == null ? other.getUrl() == null : this.getUrl().equals(other.getUrl()))
+            && (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
+            && (this.getHomepageId() == null ? other.getHomepageId() == null : this.getHomepageId().equals(other.getHomepageId()))
+            && (this.getSort() == null ? other.getSort() == null : this.getSort().equals(other.getSort()))
+            && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()));
+    }
+
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
+        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
+        result = prime * result + ((getImg() == null) ? 0 : getImg().hashCode());
+        result = prime * result + ((getUrl() == null) ? 0 : getUrl().hashCode());
+        result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
+        result = prime * result + ((getHomepageId() == null) ? 0 : getHomepageId().hashCode());
+        result = prime * result + ((getSort() == null) ? 0 : getSort().hashCode());
+        result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
+        return result;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", name=").append(name);
+        sb.append(", img=").append(img);
+        sb.append(", url=").append(url);
+        sb.append(", status=").append(status);
+        sb.append(", homepageId=").append(homepageId);
+        sb.append(", sort=").append(sort);
+        sb.append(", createTime=").append(createTime);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 43 - 0
src/main/java/com/zhentao/pagehome/dto/PageHomeDto.java

@@ -0,0 +1,43 @@
+package com.zhentao.pagehome.dto;
+
+import lombok.Data;
+
+@Data
+public class PageHomeDto {
+    /**
+     * 标题
+     */
+    private String titleName;
+
+    /**
+     * 编码
+     */
+    private String homeCode;
+
+    /**
+     * 小标题图
+     */
+    private String imgUrl;
+
+    /**
+     * 路径
+     */
+    private String path;
+
+    /**
+     * 排序
+     */
+    private Integer homeSort;
+
+    /**
+     * 标签
+     */
+    private String label;
+
+    /**
+     * 状态0关闭1开启
+     */
+    private Integer status;
+
+    private Object data;
+}

+ 18 - 0
src/main/java/com/zhentao/pagehome/mapper/PageBannerMapper.java

@@ -0,0 +1,18 @@
+package com.zhentao.pagehome.mapper;
+
+import com.zhentao.pagehome.domain.PageBanner;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author lenovo
+* @description 针对表【page_banner(轮播图表)】的数据库操作Mapper
+* @createDate 2025-07-01 10:49:47
+* @Entity com.zhentao.pagehome.domain.PageBanner
+*/
+public interface PageBannerMapper extends BaseMapper<PageBanner> {
+
+}
+
+
+
+

+ 18 - 0
src/main/java/com/zhentao/pagehome/mapper/PageHomeMapper.java

@@ -0,0 +1,18 @@
+package com.zhentao.pagehome.mapper;
+
+import com.zhentao.pagehome.domain.PageHome;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author lenovo
+* @description 针对表【page_home(首页管理表)】的数据库操作Mapper
+* @createDate 2025-07-01 10:49:47
+* @Entity com.zhentao.pagehome.domain.PageHome
+*/
+public interface PageHomeMapper extends BaseMapper<PageHome> {
+
+}
+
+
+
+

+ 18 - 0
src/main/java/com/zhentao/pagehome/mapper/PageJgboxMapper.java

@@ -0,0 +1,18 @@
+package com.zhentao.pagehome.mapper;
+
+import com.zhentao.pagehome.domain.PageJgbox;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author lenovo
+* @description 针对表【page_jgbox(首页的金刚区)】的数据库操作Mapper
+* @createDate 2025-07-01 10:49:47
+* @Entity com.zhentao.pagehome.domain.PageJgbox
+*/
+public interface PageJgboxMapper extends BaseMapper<PageJgbox> {
+
+}
+
+
+
+

+ 13 - 0
src/main/java/com/zhentao/pagehome/service/PageBannerService.java

@@ -0,0 +1,13 @@
+package com.zhentao.pagehome.service;
+
+import com.zhentao.pagehome.domain.PageBanner;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+* @author lenovo
+* @description 针对表【page_banner(轮播图表)】的数据库操作Service
+* @createDate 2025-07-01 10:49:47
+*/
+public interface PageBannerService extends IService<PageBanner> {
+
+}

+ 22 - 0
src/main/java/com/zhentao/pagehome/service/PageHomeService.java

@@ -0,0 +1,22 @@
+package com.zhentao.pagehome.service;
+
+import com.zhentao.common.vo.Result;
+import com.zhentao.pagehome.domain.PageHome;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+* @author lenovo
+* @description 针对表【page_home(首页管理表)】的数据库操作Service
+* @createDate 2025-07-01 10:49:47
+*/
+public interface PageHomeService extends IService<PageHome> {
+
+    //查询所有的首页对象
+    List<PageHome> findPageHome();
+
+    //查询首页
+    Result queryPageHome();
+
+}

+ 13 - 0
src/main/java/com/zhentao/pagehome/service/PageJgboxService.java

@@ -0,0 +1,13 @@
+package com.zhentao.pagehome.service;
+
+import com.zhentao.pagehome.domain.PageJgbox;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+* @author lenovo
+* @description 针对表【page_jgbox(首页的金刚区)】的数据库操作Service
+* @createDate 2025-07-01 10:49:47
+*/
+public interface PageJgboxService extends IService<PageJgbox> {
+
+}

+ 22 - 0
src/main/java/com/zhentao/pagehome/service/impl/PageBannerServiceImpl.java

@@ -0,0 +1,22 @@
+package com.zhentao.pagehome.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zhentao.pagehome.domain.PageBanner;
+import com.zhentao.pagehome.service.PageBannerService;
+import com.zhentao.pagehome.mapper.PageBannerMapper;
+import org.springframework.stereotype.Service;
+
+/**
+* @author lenovo
+* @description 针对表【page_banner(轮播图表)】的数据库操作Service实现
+* @createDate 2025-07-01 10:49:47
+*/
+@Service
+public class PageBannerServiceImpl extends ServiceImpl<PageBannerMapper, PageBanner>
+    implements PageBannerService{
+
+}
+
+
+
+

+ 79 - 0
src/main/java/com/zhentao/pagehome/service/impl/PageHomeImpl.java

@@ -0,0 +1,79 @@
+package com.zhentao.pagehome.service.impl;
+
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.zhentao.common.vo.Result;
+import com.zhentao.pagehome.domain.PageBanner;
+import com.zhentao.pagehome.domain.PageHome;
+import com.zhentao.pagehome.domain.PageJgbox;
+import com.zhentao.pagehome.dto.PageHomeDto;
+import com.zhentao.pagehome.service.PageBannerService;
+import com.zhentao.pagehome.service.PageHomeService;
+import com.zhentao.pagehome.service.PageJgboxService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Primary;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Service
+@Primary
+public class PageHomeImpl extends PageHomeServiceImpl{
+
+    //首页
+    @Autowired
+    private PageHomeService pageHomeService;
+
+    //轮播
+    @Autowired
+    private PageBannerService pageBannerService;
+
+    //金刚区
+    @Autowired
+    private PageJgboxService pageJgboxService;
+
+
+    @Override
+    public Result queryPageHome(){
+        //从首页里面获取所有的信息
+        List<PageHome> pageHome = pageHomeService.findPageHome();
+        //创建一个空的Dto表,用于存储转换后的一个页面信息
+        List<PageHomeDto> pageHomeDtoList=new ArrayList<>();
+
+        //遍历所有的页面信息
+        for (PageHome pageHome1:pageHome) {
+            PageHomeDto pageHomeDto=new PageHomeDto();
+            pageHomeDto.setHomeCode(pageHome1.getHomeCode());
+            pageHomeDto.setTitleName(pageHome1.getTitleName());
+            pageHomeDto.setImgUrl(pageHome1.getImgUrl());
+            pageHomeDto.setPath(pageHome1.getPath());
+            pageHomeDto.setHomeSort(pageHome1.getHomeSort());
+            pageHomeDtoList.add(pageHomeDto);
+        }
+
+        for (PageHomeDto pageHomeDto:pageHomeDtoList) {
+            switch (pageHomeDto.getHomeCode()){
+                case "pagebanner":
+                    QueryWrapper<PageBanner> queryWrapper=new QueryWrapper<>();
+                    queryWrapper.orderByAsc("sort");
+                    queryWrapper.eq("status",0);
+                    List<PageBanner> list = pageBannerService.list(queryWrapper);
+                    pageHomeDto.setData(list);
+                    break;
+                case "boxlist":
+                    //查询金刚区
+                    QueryWrapper<PageJgbox> queryWrapper1=new QueryWrapper<>();
+                    queryWrapper1.orderByAsc("sort");
+                    queryWrapper1.eq("status",0);
+                    List<PageJgbox> list1 = pageJgboxService.list(queryWrapper1);
+                    pageHomeDto.setData(list1);
+                    break;
+            }
+        }
+        return Result.OK(pageHomeDtoList,"查询成功");
+    }
+
+
+
+}

+ 41 - 0
src/main/java/com/zhentao/pagehome/service/impl/PageHomeServiceImpl.java

@@ -0,0 +1,41 @@
+package com.zhentao.pagehome.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zhentao.common.vo.Result;
+import com.zhentao.pagehome.domain.PageHome;
+import com.zhentao.pagehome.service.PageHomeService;
+import com.zhentao.pagehome.mapper.PageHomeMapper;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+* @author lenovo
+* @description 针对表【page_home(首页管理表)】的数据库操作Service实现
+* @createDate 2025-07-01 10:49:47
+*/
+@Service
+public class PageHomeServiceImpl extends ServiceImpl<PageHomeMapper, PageHome>
+    implements PageHomeService{
+
+    @Override
+    public List<PageHome> findPageHome() {
+        QueryWrapper<PageHome> queryWrapper = new QueryWrapper<>();
+        //查询状态为0的记录
+        queryWrapper.eq("status", 0);
+        //进行一个降序的一个排序
+        queryWrapper.orderByAsc("home_sort");
+        List<PageHome> list = this.list(queryWrapper);
+        return list;
+    }
+
+    @Override
+    public Result queryPageHome() {
+        return null;
+    }
+}
+
+
+
+

+ 22 - 0
src/main/java/com/zhentao/pagehome/service/impl/PageJgboxServiceImpl.java

@@ -0,0 +1,22 @@
+package com.zhentao.pagehome.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zhentao.pagehome.domain.PageJgbox;
+import com.zhentao.pagehome.service.PageJgboxService;
+import com.zhentao.pagehome.mapper.PageJgboxMapper;
+import org.springframework.stereotype.Service;
+
+/**
+* @author lenovo
+* @description 针对表【page_jgbox(首页的金刚区)】的数据库操作Service实现
+* @createDate 2025-07-01 10:49:47
+*/
+@Service
+public class PageJgboxServiceImpl extends ServiceImpl<PageJgboxMapper, PageJgbox>
+    implements PageJgboxService{
+
+}
+
+
+
+

+ 25 - 0
src/main/java/com/zhentao/volunteer/controller/ActivityTypeController.java

@@ -0,0 +1,25 @@
+package com.zhentao.volunteer.controller;
+
+import com.zhentao.common.vo.Result;
+import com.zhentao.volunteer.domain.ActivityType;
+import com.zhentao.volunteer.service.ActivityTypeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("/activityType")
+public class ActivityTypeController {
+
+    @Autowired
+    private ActivityTypeService activityTypeService;
+
+
+    @RequestMapping("/getAllActivityTypes")
+    public Result queryAllActivityTypes() {
+        List<ActivityType> allActivityTypes = activityTypeService.getAllActivityTypes();
+        return Result.OK(allActivityTypes,"查询成功");
+    }
+}

+ 18 - 0
src/main/java/com/zhentao/volunteer/controller/VolunteerActivityController.java

@@ -0,0 +1,18 @@
+package com.zhentao.volunteer.controller;
+
+import com.zhentao.volunteer.service.VolunteerActivityService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+@RequestMapping("/volunteerActivity")
+public class VolunteerActivityController {
+
+    @Autowired
+    private VolunteerActivityService volunteerActivityService;
+
+    // 查询所有活动
+
+
+}

+ 117 - 0
src/main/java/com/zhentao/volunteer/domain/ActivityType.java

@@ -0,0 +1,117 @@
+package com.zhentao.volunteer.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 活动类型表
+ * @TableName activity_type
+ */
+@TableName(value ="activity_type")
+@Data
+public class ActivityType implements Serializable {
+    /**
+     * 类型ID
+     */
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 类型名称
+     */
+    private String typeName;
+
+    /**
+     * 类型描述
+     */
+    private String typeDescription;
+
+    /**
+     * 排序顺序
+     */
+    private Integer sortOrder;
+
+    /**
+     * 是否启用(0:禁用, 1:启用)
+     */
+    private Integer isActive;
+
+    /**
+     * 类型图标(存储图标URL或图标类名)
+     */
+    private String icon;
+
+    /**
+     * 创建人ID
+     */
+    private Long createdBy;
+
+    /**
+     * 创建时间
+     */
+    private Date createdTime;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public boolean equals(Object that) {
+        if (this == that) {
+            return true;
+        }
+        if (that == null) {
+            return false;
+        }
+        if (getClass() != that.getClass()) {
+            return false;
+        }
+        ActivityType other = (ActivityType) that;
+        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
+            && (this.getTypeName() == null ? other.getTypeName() == null : this.getTypeName().equals(other.getTypeName()))
+            && (this.getTypeDescription() == null ? other.getTypeDescription() == null : this.getTypeDescription().equals(other.getTypeDescription()))
+            && (this.getSortOrder() == null ? other.getSortOrder() == null : this.getSortOrder().equals(other.getSortOrder()))
+            && (this.getIsActive() == null ? other.getIsActive() == null : this.getIsActive().equals(other.getIsActive()))
+            && (this.getIcon() == null ? other.getIcon() == null : this.getIcon().equals(other.getIcon()))
+            && (this.getCreatedBy() == null ? other.getCreatedBy() == null : this.getCreatedBy().equals(other.getCreatedBy()))
+            && (this.getCreatedTime() == null ? other.getCreatedTime() == null : this.getCreatedTime().equals(other.getCreatedTime()));
+    }
+
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
+        result = prime * result + ((getTypeName() == null) ? 0 : getTypeName().hashCode());
+        result = prime * result + ((getTypeDescription() == null) ? 0 : getTypeDescription().hashCode());
+        result = prime * result + ((getSortOrder() == null) ? 0 : getSortOrder().hashCode());
+        result = prime * result + ((getIsActive() == null) ? 0 : getIsActive().hashCode());
+        result = prime * result + ((getIcon() == null) ? 0 : getIcon().hashCode());
+        result = prime * result + ((getCreatedBy() == null) ? 0 : getCreatedBy().hashCode());
+        result = prime * result + ((getCreatedTime() == null) ? 0 : getCreatedTime().hashCode());
+        return result;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", typeName=").append(typeName);
+        sb.append(", typeDescription=").append(typeDescription);
+        sb.append(", sortOrder=").append(sortOrder);
+        sb.append(", isActive=").append(isActive);
+        sb.append(", icon=").append(icon);
+        sb.append(", createdBy=").append(createdBy);
+        sb.append(", createdTime=").append(createdTime);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 189 - 0
src/main/java/com/zhentao/volunteer/domain/VolunteerActivity.java

@@ -0,0 +1,189 @@
+package com.zhentao.volunteer.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 志愿活动主表
+ * @TableName volunteer_activity
+ */
+@TableName(value ="volunteer_activity")
+@Data
+public class VolunteerActivity implements Serializable {
+    /**
+     * 活动ID
+     */
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 活动名称
+     */
+    private String activityName;
+
+    /**
+     * 活动类型(如:文明实践、社区服务、环保行动等)
+     */
+    private Long activityType;
+
+    /**
+     * 活动图片
+     */
+    private String image;
+
+    /**
+     * 主办方
+     */
+    private String organizer;
+
+    /**
+     * 活动开始时间
+     */
+    private Date startTime;
+
+    /**
+     * 活动结束时间
+     */
+    private Date endTime;
+
+    /**
+     * 报名开始时间
+     */
+    private Date registrationStartTime;
+
+    /**
+     * 报名截止时间
+     */
+    private Date registrationEndTime;
+
+    /**
+     * 活动地点
+     */
+    private String activityAddress;
+
+    /**
+     * 最大参与人数
+     */
+    private Integer maxParticipants;
+
+    /**
+     * 活动状态(0:未开始, 1:进行中, 2:已结束, 3:已取消)
+     */
+    private Integer status;
+
+    /**
+     * 创建人ID
+     */
+    private Long createdBy;
+
+    /**
+     * 创建时间
+     */
+    private Date createdTime;
+
+    /**
+     * 积分
+     */
+    private Integer jifen;
+
+    /**
+     * 更新人ID
+     */
+    private Long updatedBy;
+
+    /**
+     * 更新时间
+     */
+    private Date updatedTime;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public boolean equals(Object that) {
+        if (this == that) {
+            return true;
+        }
+        if (that == null) {
+            return false;
+        }
+        if (getClass() != that.getClass()) {
+            return false;
+        }
+        VolunteerActivity other = (VolunteerActivity) that;
+        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
+            && (this.getActivityName() == null ? other.getActivityName() == null : this.getActivityName().equals(other.getActivityName()))
+            && (this.getActivityType() == null ? other.getActivityType() == null : this.getActivityType().equals(other.getActivityType()))
+            && (this.getImage() == null ? other.getImage() == null : this.getImage().equals(other.getImage()))
+            && (this.getOrganizer() == null ? other.getOrganizer() == null : this.getOrganizer().equals(other.getOrganizer()))
+            && (this.getStartTime() == null ? other.getStartTime() == null : this.getStartTime().equals(other.getStartTime()))
+            && (this.getEndTime() == null ? other.getEndTime() == null : this.getEndTime().equals(other.getEndTime()))
+            && (this.getRegistrationStartTime() == null ? other.getRegistrationStartTime() == null : this.getRegistrationStartTime().equals(other.getRegistrationStartTime()))
+            && (this.getRegistrationEndTime() == null ? other.getRegistrationEndTime() == null : this.getRegistrationEndTime().equals(other.getRegistrationEndTime()))
+            && (this.getActivityAddress() == null ? other.getActivityAddress() == null : this.getActivityAddress().equals(other.getActivityAddress()))
+            && (this.getMaxParticipants() == null ? other.getMaxParticipants() == null : this.getMaxParticipants().equals(other.getMaxParticipants()))
+            && (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
+            && (this.getCreatedBy() == null ? other.getCreatedBy() == null : this.getCreatedBy().equals(other.getCreatedBy()))
+            && (this.getCreatedTime() == null ? other.getCreatedTime() == null : this.getCreatedTime().equals(other.getCreatedTime()))
+            && (this.getJifen() == null ? other.getJifen() == null : this.getJifen().equals(other.getJifen()))
+            && (this.getUpdatedBy() == null ? other.getUpdatedBy() == null : this.getUpdatedBy().equals(other.getUpdatedBy()))
+            && (this.getUpdatedTime() == null ? other.getUpdatedTime() == null : this.getUpdatedTime().equals(other.getUpdatedTime()));
+    }
+
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
+        result = prime * result + ((getActivityName() == null) ? 0 : getActivityName().hashCode());
+        result = prime * result + ((getActivityType() == null) ? 0 : getActivityType().hashCode());
+        result = prime * result + ((getImage() == null) ? 0 : getImage().hashCode());
+        result = prime * result + ((getOrganizer() == null) ? 0 : getOrganizer().hashCode());
+        result = prime * result + ((getStartTime() == null) ? 0 : getStartTime().hashCode());
+        result = prime * result + ((getEndTime() == null) ? 0 : getEndTime().hashCode());
+        result = prime * result + ((getRegistrationStartTime() == null) ? 0 : getRegistrationStartTime().hashCode());
+        result = prime * result + ((getRegistrationEndTime() == null) ? 0 : getRegistrationEndTime().hashCode());
+        result = prime * result + ((getActivityAddress() == null) ? 0 : getActivityAddress().hashCode());
+        result = prime * result + ((getMaxParticipants() == null) ? 0 : getMaxParticipants().hashCode());
+        result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
+        result = prime * result + ((getCreatedBy() == null) ? 0 : getCreatedBy().hashCode());
+        result = prime * result + ((getCreatedTime() == null) ? 0 : getCreatedTime().hashCode());
+        result = prime * result + ((getJifen() == null) ? 0 : getJifen().hashCode());
+        result = prime * result + ((getUpdatedBy() == null) ? 0 : getUpdatedBy().hashCode());
+        result = prime * result + ((getUpdatedTime() == null) ? 0 : getUpdatedTime().hashCode());
+        return result;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", activityName=").append(activityName);
+        sb.append(", activityType=").append(activityType);
+        sb.append(", image=").append(image);
+        sb.append(", organizer=").append(organizer);
+        sb.append(", startTime=").append(startTime);
+        sb.append(", endTime=").append(endTime);
+        sb.append(", registrationStartTime=").append(registrationStartTime);
+        sb.append(", registrationEndTime=").append(registrationEndTime);
+        sb.append(", activityAddress=").append(activityAddress);
+        sb.append(", maxParticipants=").append(maxParticipants);
+        sb.append(", status=").append(status);
+        sb.append(", createdBy=").append(createdBy);
+        sb.append(", createdTime=").append(createdTime);
+        sb.append(", jifen=").append(jifen);
+        sb.append(", updatedBy=").append(updatedBy);
+        sb.append(", updatedTime=").append(updatedTime);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 438 - 0
src/main/java/com/zhentao/volunteer/domain/VolunteerActivityDetail.java

@@ -0,0 +1,438 @@
+package com.zhentao.volunteer.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 志愿活动详情表
+ * @TableName volunteer_activity_detail
+ */
+@TableName(value ="volunteer_activity_detail")
+@Data
+public class VolunteerActivityDetail implements Serializable {
+    /**
+     * 详情ID
+     */
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 关联活动ID
+     */
+    private Long activityId;
+
+    /**
+     * 活动编号
+     */
+    private String activityCode;
+
+    /**
+     * 活动主题
+     */
+    private String activityTheme;
+
+    /**
+     * 协办方
+     */
+    private String coOrganizers;
+
+    /**
+     * 赞助方
+     */
+    private String sponsors;
+
+    /**
+     * 活动时长(小时)
+     */
+    private Integer duration;
+
+    /**
+     * 最小参与人数
+     */
+    private Integer minParticipants;
+
+    /**
+     * 当前报名人数
+     */
+    private Integer currentParticipants;
+
+    /**
+     * 是否已满(0:未满, 1:已满)
+     */
+    private Integer isFull;
+
+    /**
+     * 活动地点
+     */
+    private String activityLocation;
+
+    /**
+     * 是否需要培训(0:否, 1:是)
+     */
+    private Integer trainingRequired;
+
+    /**
+     * 培训地点
+     */
+    private String trainingLocation;
+
+    /**
+     * 培训时间
+     */
+    private Date trainingTime;
+
+    /**
+     * 培训时长(小时)
+     */
+    private Integer trainingDuration;
+
+    /**
+     * 活动描述
+     */
+    private String activityDescription;
+
+    /**
+     * 活动目标
+     */
+    private String activityObjectives;
+
+    /**
+     * 活动流程
+     */
+    private String activityProcess;
+
+    /**
+     * 志愿者职责
+     */
+    private String volunteerResponsibilities;
+
+    /**
+     * 志愿者权益
+     */
+    private String volunteerBenefits;
+
+    /**
+     * 所需物资
+     */
+    private String materialsNeeded;
+
+    /**
+     * 着装要求
+     */
+    private String dressCode;
+
+    /**
+     * 安全注意事项
+     */
+    private String safetyPrecautions;
+
+    /**
+     * 紧急联系人
+     */
+    private String emergencyContact;
+
+    /**
+     * 紧急联系电话
+     */
+    private String emergencyPhone;
+
+    /**
+     * 活动联系人
+     */
+    private String contactPerson;
+
+    /**
+     * 联系电话
+     */
+    private String contactPhone;
+
+    /**
+     * 联系邮箱
+     */
+    private String contactEmail;
+
+    /**
+     * 状态变更时间
+     */
+    private Date statusChangeTime;
+
+    /**
+     * 状态变更原因
+     */
+    private String statusChangeReason;
+
+    /**
+     * 审批状态(0:待审批, 1:已通过, 2:已拒绝)
+     */
+    private Integer approvalStatus;
+
+    /**
+     * 审批时间
+     */
+    private Date approvalTime;
+
+    /**
+     * 审批人ID
+     */
+    private Long approvalUser;
+
+    /**
+     * 审批意见
+     */
+    private String approvalComments;
+
+    /**
+     * 是否公开(0:不公开, 1:公开)
+     */
+    private Integer isPublic;
+
+    /**
+     * 是否推荐(0:否, 1:是)
+     */
+    private Integer isFeatured;
+
+    /**
+     * 活动来源
+     */
+    private String source;
+
+    /**
+     * 来源链接
+     */
+    private String sourceUrl;
+
+    /**
+     * 预计费用
+     */
+    private BigDecimal estimatedCost;
+
+    /**
+     * 实际费用
+     */
+    private BigDecimal actualCost;
+
+    /**
+     * 费用说明
+     */
+    private String costDescription;
+
+    /**
+     * 创建人ID
+     */
+    private Long createdBy;
+
+    /**
+     * 创建时间
+     */
+    private Date createdTime;
+
+    /**
+     * 更新人ID
+     */
+    private Long updatedBy;
+
+    /**
+     * 更新时间
+     */
+    private Date updatedTime;
+
+    /**
+     * 是否删除(0:未删除, 1:已删除)
+     */
+    private Integer deleted;
+
+    /**
+     * 删除时间
+     */
+    private Date deleteTime;
+
+    /**
+     * 删除原因
+     */
+    private String deleteReason;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+
+    @Override
+    public boolean equals(Object that) {
+        if (this == that) {
+            return true;
+        }
+        if (that == null) {
+            return false;
+        }
+        if (getClass() != that.getClass()) {
+            return false;
+        }
+        VolunteerActivityDetail other = (VolunteerActivityDetail) that;
+        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
+            && (this.getActivityId() == null ? other.getActivityId() == null : this.getActivityId().equals(other.getActivityId()))
+            && (this.getActivityCode() == null ? other.getActivityCode() == null : this.getActivityCode().equals(other.getActivityCode()))
+            && (this.getActivityTheme() == null ? other.getActivityTheme() == null : this.getActivityTheme().equals(other.getActivityTheme()))
+            && (this.getCoOrganizers() == null ? other.getCoOrganizers() == null : this.getCoOrganizers().equals(other.getCoOrganizers()))
+            && (this.getSponsors() == null ? other.getSponsors() == null : this.getSponsors().equals(other.getSponsors()))
+            && (this.getDuration() == null ? other.getDuration() == null : this.getDuration().equals(other.getDuration()))
+            && (this.getMinParticipants() == null ? other.getMinParticipants() == null : this.getMinParticipants().equals(other.getMinParticipants()))
+            && (this.getCurrentParticipants() == null ? other.getCurrentParticipants() == null : this.getCurrentParticipants().equals(other.getCurrentParticipants()))
+            && (this.getIsFull() == null ? other.getIsFull() == null : this.getIsFull().equals(other.getIsFull()))
+            && (this.getActivityLocation() == null ? other.getActivityLocation() == null : this.getActivityLocation().equals(other.getActivityLocation()))
+            && (this.getTrainingRequired() == null ? other.getTrainingRequired() == null : this.getTrainingRequired().equals(other.getTrainingRequired()))
+            && (this.getTrainingLocation() == null ? other.getTrainingLocation() == null : this.getTrainingLocation().equals(other.getTrainingLocation()))
+            && (this.getTrainingTime() == null ? other.getTrainingTime() == null : this.getTrainingTime().equals(other.getTrainingTime()))
+            && (this.getTrainingDuration() == null ? other.getTrainingDuration() == null : this.getTrainingDuration().equals(other.getTrainingDuration()))
+            && (this.getActivityDescription() == null ? other.getActivityDescription() == null : this.getActivityDescription().equals(other.getActivityDescription()))
+            && (this.getActivityObjectives() == null ? other.getActivityObjectives() == null : this.getActivityObjectives().equals(other.getActivityObjectives()))
+            && (this.getActivityProcess() == null ? other.getActivityProcess() == null : this.getActivityProcess().equals(other.getActivityProcess()))
+            && (this.getVolunteerResponsibilities() == null ? other.getVolunteerResponsibilities() == null : this.getVolunteerResponsibilities().equals(other.getVolunteerResponsibilities()))
+            && (this.getVolunteerBenefits() == null ? other.getVolunteerBenefits() == null : this.getVolunteerBenefits().equals(other.getVolunteerBenefits()))
+            && (this.getMaterialsNeeded() == null ? other.getMaterialsNeeded() == null : this.getMaterialsNeeded().equals(other.getMaterialsNeeded()))
+            && (this.getDressCode() == null ? other.getDressCode() == null : this.getDressCode().equals(other.getDressCode()))
+            && (this.getSafetyPrecautions() == null ? other.getSafetyPrecautions() == null : this.getSafetyPrecautions().equals(other.getSafetyPrecautions()))
+            && (this.getEmergencyContact() == null ? other.getEmergencyContact() == null : this.getEmergencyContact().equals(other.getEmergencyContact()))
+            && (this.getEmergencyPhone() == null ? other.getEmergencyPhone() == null : this.getEmergencyPhone().equals(other.getEmergencyPhone()))
+            && (this.getContactPerson() == null ? other.getContactPerson() == null : this.getContactPerson().equals(other.getContactPerson()))
+            && (this.getContactPhone() == null ? other.getContactPhone() == null : this.getContactPhone().equals(other.getContactPhone()))
+            && (this.getContactEmail() == null ? other.getContactEmail() == null : this.getContactEmail().equals(other.getContactEmail()))
+            && (this.getStatusChangeTime() == null ? other.getStatusChangeTime() == null : this.getStatusChangeTime().equals(other.getStatusChangeTime()))
+            && (this.getStatusChangeReason() == null ? other.getStatusChangeReason() == null : this.getStatusChangeReason().equals(other.getStatusChangeReason()))
+            && (this.getApprovalStatus() == null ? other.getApprovalStatus() == null : this.getApprovalStatus().equals(other.getApprovalStatus()))
+            && (this.getApprovalTime() == null ? other.getApprovalTime() == null : this.getApprovalTime().equals(other.getApprovalTime()))
+            && (this.getApprovalUser() == null ? other.getApprovalUser() == null : this.getApprovalUser().equals(other.getApprovalUser()))
+            && (this.getApprovalComments() == null ? other.getApprovalComments() == null : this.getApprovalComments().equals(other.getApprovalComments()))
+            && (this.getIsPublic() == null ? other.getIsPublic() == null : this.getIsPublic().equals(other.getIsPublic()))
+            && (this.getIsFeatured() == null ? other.getIsFeatured() == null : this.getIsFeatured().equals(other.getIsFeatured()))
+            && (this.getSource() == null ? other.getSource() == null : this.getSource().equals(other.getSource()))
+            && (this.getSourceUrl() == null ? other.getSourceUrl() == null : this.getSourceUrl().equals(other.getSourceUrl()))
+            && (this.getEstimatedCost() == null ? other.getEstimatedCost() == null : this.getEstimatedCost().equals(other.getEstimatedCost()))
+            && (this.getActualCost() == null ? other.getActualCost() == null : this.getActualCost().equals(other.getActualCost()))
+            && (this.getCostDescription() == null ? other.getCostDescription() == null : this.getCostDescription().equals(other.getCostDescription()))
+            && (this.getCreatedBy() == null ? other.getCreatedBy() == null : this.getCreatedBy().equals(other.getCreatedBy()))
+            && (this.getCreatedTime() == null ? other.getCreatedTime() == null : this.getCreatedTime().equals(other.getCreatedTime()))
+            && (this.getUpdatedBy() == null ? other.getUpdatedBy() == null : this.getUpdatedBy().equals(other.getUpdatedBy()))
+            && (this.getUpdatedTime() == null ? other.getUpdatedTime() == null : this.getUpdatedTime().equals(other.getUpdatedTime()))
+            && (this.getDeleted() == null ? other.getDeleted() == null : this.getDeleted().equals(other.getDeleted()))
+            && (this.getDeleteTime() == null ? other.getDeleteTime() == null : this.getDeleteTime().equals(other.getDeleteTime()))
+            && (this.getDeleteReason() == null ? other.getDeleteReason() == null : this.getDeleteReason().equals(other.getDeleteReason()));
+    }
+
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
+        result = prime * result + ((getActivityId() == null) ? 0 : getActivityId().hashCode());
+        result = prime * result + ((getActivityCode() == null) ? 0 : getActivityCode().hashCode());
+        result = prime * result + ((getActivityTheme() == null) ? 0 : getActivityTheme().hashCode());
+        result = prime * result + ((getCoOrganizers() == null) ? 0 : getCoOrganizers().hashCode());
+        result = prime * result + ((getSponsors() == null) ? 0 : getSponsors().hashCode());
+        result = prime * result + ((getDuration() == null) ? 0 : getDuration().hashCode());
+        result = prime * result + ((getMinParticipants() == null) ? 0 : getMinParticipants().hashCode());
+        result = prime * result + ((getCurrentParticipants() == null) ? 0 : getCurrentParticipants().hashCode());
+        result = prime * result + ((getIsFull() == null) ? 0 : getIsFull().hashCode());
+        result = prime * result + ((getActivityLocation() == null) ? 0 : getActivityLocation().hashCode());
+        result = prime * result + ((getTrainingRequired() == null) ? 0 : getTrainingRequired().hashCode());
+        result = prime * result + ((getTrainingLocation() == null) ? 0 : getTrainingLocation().hashCode());
+        result = prime * result + ((getTrainingTime() == null) ? 0 : getTrainingTime().hashCode());
+        result = prime * result + ((getTrainingDuration() == null) ? 0 : getTrainingDuration().hashCode());
+        result = prime * result + ((getActivityDescription() == null) ? 0 : getActivityDescription().hashCode());
+        result = prime * result + ((getActivityObjectives() == null) ? 0 : getActivityObjectives().hashCode());
+        result = prime * result + ((getActivityProcess() == null) ? 0 : getActivityProcess().hashCode());
+        result = prime * result + ((getVolunteerResponsibilities() == null) ? 0 : getVolunteerResponsibilities().hashCode());
+        result = prime * result + ((getVolunteerBenefits() == null) ? 0 : getVolunteerBenefits().hashCode());
+        result = prime * result + ((getMaterialsNeeded() == null) ? 0 : getMaterialsNeeded().hashCode());
+        result = prime * result + ((getDressCode() == null) ? 0 : getDressCode().hashCode());
+        result = prime * result + ((getSafetyPrecautions() == null) ? 0 : getSafetyPrecautions().hashCode());
+        result = prime * result + ((getEmergencyContact() == null) ? 0 : getEmergencyContact().hashCode());
+        result = prime * result + ((getEmergencyPhone() == null) ? 0 : getEmergencyPhone().hashCode());
+        result = prime * result + ((getContactPerson() == null) ? 0 : getContactPerson().hashCode());
+        result = prime * result + ((getContactPhone() == null) ? 0 : getContactPhone().hashCode());
+        result = prime * result + ((getContactEmail() == null) ? 0 : getContactEmail().hashCode());
+        result = prime * result + ((getStatusChangeTime() == null) ? 0 : getStatusChangeTime().hashCode());
+        result = prime * result + ((getStatusChangeReason() == null) ? 0 : getStatusChangeReason().hashCode());
+        result = prime * result + ((getApprovalStatus() == null) ? 0 : getApprovalStatus().hashCode());
+        result = prime * result + ((getApprovalTime() == null) ? 0 : getApprovalTime().hashCode());
+        result = prime * result + ((getApprovalUser() == null) ? 0 : getApprovalUser().hashCode());
+        result = prime * result + ((getApprovalComments() == null) ? 0 : getApprovalComments().hashCode());
+        result = prime * result + ((getIsPublic() == null) ? 0 : getIsPublic().hashCode());
+        result = prime * result + ((getIsFeatured() == null) ? 0 : getIsFeatured().hashCode());
+        result = prime * result + ((getSource() == null) ? 0 : getSource().hashCode());
+        result = prime * result + ((getSourceUrl() == null) ? 0 : getSourceUrl().hashCode());
+        result = prime * result + ((getEstimatedCost() == null) ? 0 : getEstimatedCost().hashCode());
+        result = prime * result + ((getActualCost() == null) ? 0 : getActualCost().hashCode());
+        result = prime * result + ((getCostDescription() == null) ? 0 : getCostDescription().hashCode());
+        result = prime * result + ((getCreatedBy() == null) ? 0 : getCreatedBy().hashCode());
+        result = prime * result + ((getCreatedTime() == null) ? 0 : getCreatedTime().hashCode());
+        result = prime * result + ((getUpdatedBy() == null) ? 0 : getUpdatedBy().hashCode());
+        result = prime * result + ((getUpdatedTime() == null) ? 0 : getUpdatedTime().hashCode());
+        result = prime * result + ((getDeleted() == null) ? 0 : getDeleted().hashCode());
+        result = prime * result + ((getDeleteTime() == null) ? 0 : getDeleteTime().hashCode());
+        result = prime * result + ((getDeleteReason() == null) ? 0 : getDeleteReason().hashCode());
+        return result;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", activityId=").append(activityId);
+        sb.append(", activityCode=").append(activityCode);
+        sb.append(", activityTheme=").append(activityTheme);
+        sb.append(", coOrganizers=").append(coOrganizers);
+        sb.append(", sponsors=").append(sponsors);
+        sb.append(", duration=").append(duration);
+        sb.append(", minParticipants=").append(minParticipants);
+        sb.append(", currentParticipants=").append(currentParticipants);
+        sb.append(", isFull=").append(isFull);
+        sb.append(", activityLocation=").append(activityLocation);
+        sb.append(", trainingRequired=").append(trainingRequired);
+        sb.append(", trainingLocation=").append(trainingLocation);
+        sb.append(", trainingTime=").append(trainingTime);
+        sb.append(", trainingDuration=").append(trainingDuration);
+        sb.append(", activityDescription=").append(activityDescription);
+        sb.append(", activityObjectives=").append(activityObjectives);
+        sb.append(", activityProcess=").append(activityProcess);
+        sb.append(", volunteerResponsibilities=").append(volunteerResponsibilities);
+        sb.append(", volunteerBenefits=").append(volunteerBenefits);
+        sb.append(", materialsNeeded=").append(materialsNeeded);
+        sb.append(", dressCode=").append(dressCode);
+        sb.append(", safetyPrecautions=").append(safetyPrecautions);
+        sb.append(", emergencyContact=").append(emergencyContact);
+        sb.append(", emergencyPhone=").append(emergencyPhone);
+        sb.append(", contactPerson=").append(contactPerson);
+        sb.append(", contactPhone=").append(contactPhone);
+        sb.append(", contactEmail=").append(contactEmail);
+        sb.append(", statusChangeTime=").append(statusChangeTime);
+        sb.append(", statusChangeReason=").append(statusChangeReason);
+        sb.append(", approvalStatus=").append(approvalStatus);
+        sb.append(", approvalTime=").append(approvalTime);
+        sb.append(", approvalUser=").append(approvalUser);
+        sb.append(", approvalComments=").append(approvalComments);
+        sb.append(", isPublic=").append(isPublic);
+        sb.append(", isFeatured=").append(isFeatured);
+        sb.append(", source=").append(source);
+        sb.append(", sourceUrl=").append(sourceUrl);
+        sb.append(", estimatedCost=").append(estimatedCost);
+        sb.append(", actualCost=").append(actualCost);
+        sb.append(", costDescription=").append(costDescription);
+        sb.append(", createdBy=").append(createdBy);
+        sb.append(", createdTime=").append(createdTime);
+        sb.append(", updatedBy=").append(updatedBy);
+        sb.append(", updatedTime=").append(updatedTime);
+        sb.append(", deleted=").append(deleted);
+        sb.append(", deleteTime=").append(deleteTime);
+        sb.append(", deleteReason=").append(deleteReason);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 18 - 0
src/main/java/com/zhentao/volunteer/mapper/ActivityTypeMapper.java

@@ -0,0 +1,18 @@
+package com.zhentao.volunteer.mapper;
+
+import com.zhentao.volunteer.domain.ActivityType;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author lenovo
+* @description 针对表【activity_type(活动类型表)】的数据库操作Mapper
+* @createDate 2025-07-01 19:50:32
+* @Entity com.zhentao.volunteer.domain.ActivityType
+*/
+public interface ActivityTypeMapper extends BaseMapper<ActivityType> {
+
+}
+
+
+
+

+ 18 - 0
src/main/java/com/zhentao/volunteer/mapper/VolunteerActivityDetailMapper.java

@@ -0,0 +1,18 @@
+package com.zhentao.volunteer.mapper;
+
+import com.zhentao.volunteer.domain.VolunteerActivityDetail;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author lenovo
+* @description 针对表【volunteer_activity_detail(志愿活动详情表)】的数据库操作Mapper
+* @createDate 2025-07-01 19:50:32
+* @Entity com.zhentao.volunteer.domain.VolunteerActivityDetail
+*/
+public interface VolunteerActivityDetailMapper extends BaseMapper<VolunteerActivityDetail> {
+
+}
+
+
+
+

+ 18 - 0
src/main/java/com/zhentao/volunteer/mapper/VolunteerActivityMapper.java

@@ -0,0 +1,18 @@
+package com.zhentao.volunteer.mapper;
+
+import com.zhentao.volunteer.domain.VolunteerActivity;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author lenovo
+* @description 针对表【volunteer_activity(志愿活动主表)】的数据库操作Mapper
+* @createDate 2025-07-01 19:50:32
+* @Entity com.zhentao.volunteer.domain.VolunteerActivity
+*/
+public interface VolunteerActivityMapper extends BaseMapper<VolunteerActivity> {
+
+}
+
+
+
+

+ 17 - 0
src/main/java/com/zhentao/volunteer/service/ActivityTypeService.java

@@ -0,0 +1,17 @@
+package com.zhentao.volunteer.service;
+
+import com.zhentao.volunteer.domain.ActivityType;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+* @author lenovo
+* @description 针对表【activity_type(活动类型表)】的数据库操作Service
+* @createDate 2025-07-01 19:50:32
+*/
+public interface ActivityTypeService extends IService<ActivityType> {
+
+    //查询所有活动类型
+    List<ActivityType> getAllActivityTypes();
+}

+ 13 - 0
src/main/java/com/zhentao/volunteer/service/VolunteerActivityDetailService.java

@@ -0,0 +1,13 @@
+package com.zhentao.volunteer.service;
+
+import com.zhentao.volunteer.domain.VolunteerActivityDetail;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+* @author lenovo
+* @description 针对表【volunteer_activity_detail(志愿活动详情表)】的数据库操作Service
+* @createDate 2025-07-01 19:50:32
+*/
+public interface VolunteerActivityDetailService extends IService<VolunteerActivityDetail> {
+
+}

+ 16 - 0
src/main/java/com/zhentao/volunteer/service/VolunteerActivityService.java

@@ -0,0 +1,16 @@
+package com.zhentao.volunteer.service;
+
+import com.zhentao.volunteer.domain.VolunteerActivity;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+* @author lenovo
+* @description 针对表【volunteer_activity(志愿活动主表)】的数据库操作Service
+* @createDate 2025-07-01 19:50:32
+*/
+public interface VolunteerActivityService extends IService<VolunteerActivity> {
+    //  根据活动类型ID查询志愿活动列表
+    List<VolunteerActivity> getVolunteerActivitiesByActivityType(Long activityTypeId);
+}

+ 32 - 0
src/main/java/com/zhentao/volunteer/service/impl/ActivityTypeServiceImpl.java

@@ -0,0 +1,32 @@
+package com.zhentao.volunteer.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zhentao.volunteer.domain.ActivityType;
+import com.zhentao.volunteer.service.ActivityTypeService;
+import com.zhentao.volunteer.mapper.ActivityTypeMapper;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+* @author lenovo
+* @description 针对表【activity_type(活动类型表)】的数据库操作Service实现
+* @createDate 2025-07-01 19:50:32
+*/
+@Service
+public class ActivityTypeServiceImpl extends ServiceImpl<ActivityTypeMapper, ActivityType>
+    implements ActivityTypeService{
+
+
+    // 获取所有活动类型
+
+    @Override
+    public List<ActivityType> getAllActivityTypes() {
+        List<ActivityType> list = this.list();
+        return list;
+    }
+}
+
+
+
+

+ 22 - 0
src/main/java/com/zhentao/volunteer/service/impl/VolunteerActivityDetailServiceImpl.java

@@ -0,0 +1,22 @@
+package com.zhentao.volunteer.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zhentao.volunteer.domain.VolunteerActivityDetail;
+import com.zhentao.volunteer.service.VolunteerActivityDetailService;
+import com.zhentao.volunteer.mapper.VolunteerActivityDetailMapper;
+import org.springframework.stereotype.Service;
+
+/**
+* @author lenovo
+* @description 针对表【volunteer_activity_detail(志愿活动详情表)】的数据库操作Service实现
+* @createDate 2025-07-01 19:50:32
+*/
+@Service
+public class VolunteerActivityDetailServiceImpl extends ServiceImpl<VolunteerActivityDetailMapper, VolunteerActivityDetail>
+    implements VolunteerActivityDetailService{
+
+}
+
+
+
+

+ 39 - 0
src/main/java/com/zhentao/volunteer/service/impl/VolunteerActivityServiceImpl.java

@@ -0,0 +1,39 @@
+package com.zhentao.volunteer.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zhentao.volunteer.domain.VolunteerActivity;
+import com.zhentao.volunteer.service.VolunteerActivityService;
+import com.zhentao.volunteer.mapper.VolunteerActivityMapper;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+* @author lenovo
+* @description 针对表【volunteer_activity(志愿活动主表)】的数据库操作Service实现
+* @createDate 2025-07-01 19:50:32
+*/
+@Service
+public class VolunteerActivityServiceImpl extends ServiceImpl<VolunteerActivityMapper, VolunteerActivity>
+    implements VolunteerActivityService{
+
+
+
+    // 获取某个类型的所有活动
+
+    @Override
+    public List<VolunteerActivity> getVolunteerActivitiesByActivityType(Long activityTypeId) {
+       // 创建一个QueryWrapper对象用于后续的查询
+        QueryWrapper<VolunteerActivity> queryWrapper = new QueryWrapper<>();
+        // 设置查询条件,筛选活动类型与给定的activityTypeId相等的志愿者活动
+        queryWrapper.eq("activity_type", activityTypeId);
+        // 执行查询并返回结果列表
+        return this.list(queryWrapper);
+
+    }
+}
+
+
+
+

+ 5 - 5
src/main/resources/application.yml

@@ -4,17 +4,17 @@ spring:
   # MySQL配置
   # MySQL配置
   datasource:
   datasource:
     driver-class-name: com.mysql.cj.jdbc.Driver
     driver-class-name: com.mysql.cj.jdbc.Driver
-    url: jdbc:mysql://:3306/IM?useSSL=false&useServerTime=UTC
+    url: jdbc:mysql://121.43.148.220:3306/gongyi?useSSL=false&useServerTime=UTC
     username: root
     username: root
-    password:
+    password: Wyc1563226
   # MongoDB配置
   # MongoDB配置
   data:
   data:
     mongodb:
     mongodb:
-      host:
+      host: 121.43.148.220
       port: 27017
       port: 27017
-      database:
+      database: im_message_db
   redis:
   redis:
-    host:
+    host: 121.43.148.220
     port: 6379
     port: 6379
     database: 0
     database: 0
 aliyun:
 aliyun:

+ 23 - 0
src/main/resources/mapper/ActivityTypeMapper.xml

@@ -0,0 +1,23 @@
+<?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.zhentao.volunteer.mapper.ActivityTypeMapper">
+
+    <resultMap id="BaseResultMap" type="com.zhentao.volunteer.domain.ActivityType">
+            <id property="id" column="id" jdbcType="BIGINT"/>
+            <result property="typeName" column="type_name" jdbcType="VARCHAR"/>
+            <result property="typeDescription" column="type_description" jdbcType="VARCHAR"/>
+            <result property="sortOrder" column="sort_order" jdbcType="INTEGER"/>
+            <result property="isActive" column="is_active" jdbcType="TINYINT"/>
+            <result property="icon" column="icon" jdbcType="VARCHAR"/>
+            <result property="createdBy" column="created_by" jdbcType="BIGINT"/>
+            <result property="createdTime" column="created_time" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,type_name,type_description,
+        sort_order,is_active,icon,
+        created_by,created_time
+    </sql>
+</mapper>

+ 23 - 0
src/main/resources/mapper/PageBannerMapper.xml

@@ -0,0 +1,23 @@
+<?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.zhentao.pagehome.mapper.PageBannerMapper">
+
+    <resultMap id="BaseResultMap" type="com.zhentao.pagehome.domain.PageBanner">
+            <id property="id" column="id" jdbcType="INTEGER"/>
+            <result property="name" column="name" jdbcType="VARCHAR"/>
+            <result property="image" column="image" jdbcType="VARCHAR"/>
+            <result property="url" column="url" jdbcType="VARCHAR"/>
+            <result property="status" column="status" jdbcType="INTEGER"/>
+            <result property="homepageId" column="homepage_id" jdbcType="INTEGER"/>
+            <result property="sort" column="sort" jdbcType="INTEGER"/>
+            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,name,image,
+        url,status,homepage_id,
+        sort,create_time
+    </sql>
+</mapper>

+ 26 - 0
src/main/resources/mapper/PageHomeMapper.xml

@@ -0,0 +1,26 @@
+<?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.zhentao.pagehome.mapper.PageHomeMapper">
+
+    <resultMap id="BaseResultMap" type="com.zhentao.pagehome.domain.PageHome">
+            <result property="id" column="id" jdbcType="INTEGER"/>
+            <result property="titleName" column="title_name" jdbcType="VARCHAR"/>
+            <result property="homeCode" column="home_code" jdbcType="VARCHAR"/>
+            <result property="imgUrl" column="img_url" jdbcType="VARCHAR"/>
+            <result property="path" column="path" jdbcType="VARCHAR"/>
+            <result property="homeSort" column="home_sort" jdbcType="INTEGER"/>
+            <result property="label" column="label" jdbcType="VARCHAR"/>
+            <result property="status" column="status" jdbcType="INTEGER"/>
+            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+            <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,title_name,home_code,
+        img_url,path,home_sort,
+        label,status,create_time,
+        update_time
+    </sql>
+</mapper>

+ 23 - 0
src/main/resources/mapper/PageJgboxMapper.xml

@@ -0,0 +1,23 @@
+<?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.zhentao.pagehome.mapper.PageJgboxMapper">
+
+    <resultMap id="BaseResultMap" type="com.zhentao.pagehome.domain.PageJgbox">
+            <id property="id" column="id" jdbcType="INTEGER"/>
+            <result property="name" column="name" jdbcType="VARCHAR"/>
+            <result property="img" column="img" jdbcType="VARCHAR"/>
+            <result property="url" column="url" jdbcType="VARCHAR"/>
+            <result property="status" column="status" jdbcType="INTEGER"/>
+            <result property="homepageId" column="homepage_id" jdbcType="INTEGER"/>
+            <result property="sort" column="sort" jdbcType="INTEGER"/>
+            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,name,img,
+        url,status,homepage_id,
+        sort,create_time
+    </sql>
+</mapper>

+ 76 - 0
src/main/resources/mapper/VolunteerActivityDetailMapper.xml

@@ -0,0 +1,76 @@
+<?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.zhentao.volunteer.mapper.VolunteerActivityDetailMapper">
+
+    <resultMap id="BaseResultMap" type="com.zhentao.volunteer.domain.VolunteerActivityDetail">
+            <id property="id" column="id" jdbcType="BIGINT"/>
+            <result property="activityId" column="activity_id" jdbcType="BIGINT"/>
+            <result property="activityCode" column="activity_code" jdbcType="VARCHAR"/>
+            <result property="activityTheme" column="activity_theme" jdbcType="VARCHAR"/>
+            <result property="coOrganizers" column="co_organizers" jdbcType="VARCHAR"/>
+            <result property="sponsors" column="sponsors" jdbcType="VARCHAR"/>
+            <result property="duration" column="duration" jdbcType="INTEGER"/>
+            <result property="minParticipants" column="min_participants" jdbcType="INTEGER"/>
+            <result property="currentParticipants" column="current_participants" jdbcType="INTEGER"/>
+            <result property="isFull" column="is_full" jdbcType="TINYINT"/>
+            <result property="activityLocation" column="activity_location" jdbcType="VARCHAR"/>
+            <result property="trainingRequired" column="training_required" jdbcType="TINYINT"/>
+            <result property="trainingLocation" column="training_location" jdbcType="VARCHAR"/>
+            <result property="trainingTime" column="training_time" jdbcType="TIMESTAMP"/>
+            <result property="trainingDuration" column="training_duration" jdbcType="INTEGER"/>
+            <result property="activityDescription" column="activity_description" jdbcType="VARCHAR"/>
+            <result property="activityObjectives" column="activity_objectives" jdbcType="VARCHAR"/>
+            <result property="activityProcess" column="activity_process" jdbcType="VARCHAR"/>
+            <result property="volunteerResponsibilities" column="volunteer_responsibilities" jdbcType="VARCHAR"/>
+            <result property="volunteerBenefits" column="volunteer_benefits" jdbcType="VARCHAR"/>
+            <result property="materialsNeeded" column="materials_needed" jdbcType="VARCHAR"/>
+            <result property="dressCode" column="dress_code" jdbcType="VARCHAR"/>
+            <result property="safetyPrecautions" column="safety_precautions" jdbcType="VARCHAR"/>
+            <result property="emergencyContact" column="emergency_contact" jdbcType="VARCHAR"/>
+            <result property="emergencyPhone" column="emergency_phone" jdbcType="VARCHAR"/>
+            <result property="contactPerson" column="contact_person" jdbcType="VARCHAR"/>
+            <result property="contactPhone" column="contact_phone" jdbcType="VARCHAR"/>
+            <result property="contactEmail" column="contact_email" jdbcType="VARCHAR"/>
+            <result property="statusChangeTime" column="status_change_time" jdbcType="TIMESTAMP"/>
+            <result property="statusChangeReason" column="status_change_reason" jdbcType="VARCHAR"/>
+            <result property="approvalStatus" column="approval_status" jdbcType="TINYINT"/>
+            <result property="approvalTime" column="approval_time" jdbcType="TIMESTAMP"/>
+            <result property="approvalUser" column="approval_user" jdbcType="BIGINT"/>
+            <result property="approvalComments" column="approval_comments" jdbcType="VARCHAR"/>
+            <result property="isPublic" column="is_public" jdbcType="TINYINT"/>
+            <result property="isFeatured" column="is_featured" jdbcType="TINYINT"/>
+            <result property="source" column="source" jdbcType="VARCHAR"/>
+            <result property="sourceUrl" column="source_url" jdbcType="VARCHAR"/>
+            <result property="estimatedCost" column="estimated_cost" jdbcType="DECIMAL"/>
+            <result property="actualCost" column="actual_cost" jdbcType="DECIMAL"/>
+            <result property="costDescription" column="cost_description" jdbcType="VARCHAR"/>
+            <result property="createdBy" column="created_by" jdbcType="BIGINT"/>
+            <result property="createdTime" column="created_time" jdbcType="TIMESTAMP"/>
+            <result property="updatedBy" column="updated_by" jdbcType="BIGINT"/>
+            <result property="updatedTime" column="updated_time" jdbcType="TIMESTAMP"/>
+            <result property="deleted" column="deleted" jdbcType="TINYINT"/>
+            <result property="deleteTime" column="delete_time" jdbcType="TIMESTAMP"/>
+            <result property="deleteReason" column="delete_reason" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,activity_id,activity_code,
+        activity_theme,co_organizers,sponsors,
+        duration,min_participants,current_participants,
+        is_full,activity_location,training_required,
+        training_location,training_time,training_duration,
+        activity_description,activity_objectives,activity_process,
+        volunteer_responsibilities,volunteer_benefits,materials_needed,
+        dress_code,safety_precautions,emergency_contact,
+        emergency_phone,contact_person,contact_phone,
+        contact_email,status_change_time,status_change_reason,
+        approval_status,approval_time,approval_user,
+        approval_comments,is_public,is_featured,
+        source,source_url,estimated_cost,
+        actual_cost,cost_description,created_by,
+        created_time,updated_by,updated_time,
+        deleted,delete_time,delete_reason
+    </sql>
+</mapper>

+ 35 - 0
src/main/resources/mapper/VolunteerActivityMapper.xml

@@ -0,0 +1,35 @@
+<?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.zhentao.volunteer.mapper.VolunteerActivityMapper">
+
+    <resultMap id="BaseResultMap" type="com.zhentao.volunteer.domain.VolunteerActivity">
+            <id property="id" column="id" jdbcType="BIGINT"/>
+            <result property="activityName" column="activity_name" jdbcType="VARCHAR"/>
+            <result property="activityType" column="activity_type" jdbcType="BIGINT"/>
+            <result property="image" column="image" jdbcType="VARCHAR"/>
+            <result property="organizer" column="organizer" jdbcType="VARCHAR"/>
+            <result property="startTime" column="start_time" jdbcType="TIMESTAMP"/>
+            <result property="endTime" column="end_time" jdbcType="TIMESTAMP"/>
+            <result property="registrationStartTime" column="registration_start_time" jdbcType="TIMESTAMP"/>
+            <result property="registrationEndTime" column="registration_end_time" jdbcType="TIMESTAMP"/>
+            <result property="activityAddress" column="activity_address" jdbcType="VARCHAR"/>
+            <result property="maxParticipants" column="max_participants" jdbcType="INTEGER"/>
+            <result property="status" column="status" jdbcType="TINYINT"/>
+            <result property="createdBy" column="created_by" jdbcType="BIGINT"/>
+            <result property="createdTime" column="created_time" jdbcType="TIMESTAMP"/>
+            <result property="jifen" column="jifen" jdbcType="INTEGER"/>
+            <result property="updatedBy" column="updated_by" jdbcType="BIGINT"/>
+            <result property="updatedTime" column="updated_time" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,activity_name,activity_type,
+        image,organizer,start_time,
+        end_time,registration_start_time,registration_end_time,
+        activity_address,max_participants,status,
+        created_by,created_time,jifen,
+        updated_by,updated_time
+    </sql>
+</mapper>