+ * 前端控制器 + *
+ * + * @author jieyuu + * @since 2024-12-29 + */ +@RestController +@RequestMapping("/api/carbon/v1") +public class CarbonEmissionController { + + @Autowired + private CarbonEmissionService carbonEmissionService; + + /** + * 及时预警接口 + * + * @param city + * @return + */ + @GetMapping("timelyAlert") + public JsonData timelyAlert(@RequestBody String city) { + return JsonData.buildSuccess(carbonEmissionService.timelyAlert(city)); + } + + /** + * 获取数据 + * + * @param city + * @return + */ + @GetMapping("getCarbonEmissionData") + public JsonData getCarbonEmissionData(@RequestBody String city) { + return JsonData.buildSuccess(carbonEmissionService.getCarbonEmissionData(city)); + } + + +} + diff --git a/server/src/main/java/net/carbon/controller/EconomicsController.java b/server/src/main/java/net/carbon/controller/EconomicsController.java new file mode 100644 index 0000000..b35c319 --- /dev/null +++ b/server/src/main/java/net/carbon/controller/EconomicsController.java @@ -0,0 +1,118 @@ +package net.carbon.controller; + +import net.carbon.bean.PageResponse; +import net.carbon.model.request.EconomicsUpdateRequest; +import net.carbon.model.vo.EconomicsVO; +import net.carbon.result.Result; +import net.carbon.service.EconomicsService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +/** + * (Economics)表控制层 + * + * @author makejava + * @since 2025-02-21 13:44:09 + */ +@RestController +@RequestMapping("/api/economics/v1/") +public class EconomicsController { + + /** + * 分页查询所有数据 + * + * @param page 分页对象 + * @param economics 查询实体 + * @return 所有数据 + */ +// @GetMapping +// public Result selectAll(Page+ * 碳排放-城市高质量发展指标体系-标签表 前端控制器 + *
+ * + * @author jieyuu + * @since 2025-02-19 + */ +@RestController +@RequestMapping("/api/label/v1") +public class LabelController { + @Autowired + private LabelService labelService; + + // 获取所有指标 + @GetMapping("/list") + public Result+ * Mapper 接口 + *
+ * + * @author jieyuu + * @since 2024-12-29 + */ +@Mapper +public interface CarbonEmissionMapper extends BaseMapper+ * Mapper 接口 + *
+ * + * @author jieyuu + * @since 2025-02-21 + */ +@Mapper +public interface EconomicsMapper extends BaseMapper+ * 碳排放-城市高质量发展指标体系-标签表 Mapper 接口 + *
+ * + * @author jieyuu + * @since 2025-02-19 + */ +@Mapper +public interface LabelMapper extends BaseMapper+ * Mapper 接口 + *
+ * + * @author jieyuu + * @since 2024-11-23 + */ +@Mapper +public interface UserMapper extends BaseMapper+ * + *
+ * + * @author jieyuu + * @since 2024-12-29 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("carbon_emission") +public class CarbonEmissionDO implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + private String city; + + private BigDecimal wastewaterDischargeTotal; + + private BigDecimal airQualityAchievementRate; + + private BigDecimal gdpElectricityConsumption; + + private BigDecimal wasteResourceIndustryValue; + + private BigDecimal forestCoverageRate; + + private BigDecimal ecologicalIndex; + + private BigDecimal importExportTotal; + + private Integer foreignInvestmentEnterprises; + + private BigDecimal tourismIncome; + + private Integer overnightTourists; + + private BigDecimal publicManagementDensity; + + private BigDecimal perCapitaServiceFunds; + + private BigDecimal averageAnnualSalary; + + private BigDecimal urbanPerCapitaIncome; + + +} diff --git a/server/src/main/java/net/carbon/model/UserDO.java b/server/src/main/java/net/carbon/model/UserDO.java new file mode 100644 index 0000000..310a22b --- /dev/null +++ b/server/src/main/java/net/carbon/model/UserDO.java @@ -0,0 +1,31 @@ +package net.carbon.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** + *+ * + *
+ * + * @author jieyuu + * @since 2024-11-23 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("user") +public class UserDO implements Serializable { + + private static final long serialVersionUID = 1L; + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + private String username; + + private String password; +} diff --git a/server/src/main/java/net/carbon/model/po/CarbonEmissionDO.java b/server/src/main/java/net/carbon/model/po/CarbonEmissionDO.java new file mode 100644 index 0000000..342dae7 --- /dev/null +++ b/server/src/main/java/net/carbon/model/po/CarbonEmissionDO.java @@ -0,0 +1,61 @@ +package net.carbon.model.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + *+ * + *
+ * + * @author jieyuu + * @since 2024-12-29 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("carbon_emission") +public class CarbonEmissionDO implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + private String city; + + private BigDecimal wastewaterDischargeTotal; + + private BigDecimal airQualityAchievementRate; + + private BigDecimal gdpElectricityConsumption; + + private BigDecimal wasteResourceIndustryValue; + + private BigDecimal forestCoverageRate; + + private BigDecimal ecologicalIndex; + + private BigDecimal importExportTotal; + + private Integer foreignInvestmentEnterprises; + + private BigDecimal tourismIncome; + + private Integer overnightTourists; + + private BigDecimal publicManagementDensity; + + private BigDecimal perCapitaServiceFunds; + + private BigDecimal averageAnnualSalary; + + private BigDecimal urbanPerCapitaIncome; + + +} diff --git a/server/src/main/java/net/carbon/model/po/EconomicsDO.java b/server/src/main/java/net/carbon/model/po/EconomicsDO.java new file mode 100644 index 0000000..3c9b609 --- /dev/null +++ b/server/src/main/java/net/carbon/model/po/EconomicsDO.java @@ -0,0 +1,65 @@ +package net.carbon.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; + +import java.io.Serializable; + +/** + *+ * + *
+ * + * @author jieyuu + * @since 2025-02-21 + */ +@Getter +@Setter +@ToString +@TableName("economics") +public class EconomicsDO implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableField("id") + private Long id; + + /** + * 项目名称 + */ + @TableField("name") + private String name; + + /** + * 指标单位 + */ + @TableField("unit") + private String unit; + + /** + * 数据 + */ + @TableField("data") + private Double data; + + /** + * 指标属性 + */ + @TableField("attribute") + private String attribute; + + /** + * 0代表是系统数据不能删除,1代表是其他数据,可以删除 + */ + @TableField("is_system_date") + private Integer isSystemDate; + + /** + * 逻辑删除标记(默认0,删除1) + */ + @TableField("is_delete") + private Byte isDelete; +} diff --git a/server/src/main/java/net/carbon/model/po/LabelDO.java b/server/src/main/java/net/carbon/model/po/LabelDO.java new file mode 100644 index 0000000..8357d8b --- /dev/null +++ b/server/src/main/java/net/carbon/model/po/LabelDO.java @@ -0,0 +1,66 @@ +package net.carbon.model.po; + +import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.*; + +import java.io.Serializable; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + *+ * 碳排放-城市高质量发展指标体系-标签表 + *
+ * + * @author jieyuu + * @since 2025-02-19 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("label") +public class LabelDO implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + /** + * 指标名称 + */ + @TableField("name") + private String name; + + /** + * 单位 + */ + @TableField("unit") + private String unit; + + /** + * 数据值 + */ + @TableField("data_value") + private BigDecimal dataValue; + + /** + * 指数属性 + */ + @TableField("attribute") + private String attribute; + + /** + * 是否剔除(0-是系统数据不能删除,1-不是系统数据,可以删除) + */ + @TableField("is_system_date") + private Integer isSystemDate; + + /** + * 逻辑删除标记 + */ + @TableField("is_delete") + @TableLogic(value = "0", delval = "1") + private Integer isDeleted; +} diff --git a/server/src/main/java/net/carbon/model/po/TimelyWarningDO.java b/server/src/main/java/net/carbon/model/po/TimelyWarningDO.java new file mode 100644 index 0000000..b4d8a31 --- /dev/null +++ b/server/src/main/java/net/carbon/model/po/TimelyWarningDO.java @@ -0,0 +1,31 @@ +package net.carbon.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.*; + +import java.io.Serializable; + + +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("timely_warning") +public class TimelyWarningDO implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableField("id") + private Long id; + + @TableField("name") + private String name; + + @TableField("unit") + private String unit; + + @TableField("data") + private Double data; + + @TableField("direction") + private String direction; +} diff --git a/server/src/main/java/net/carbon/model/po/UserDO.java b/server/src/main/java/net/carbon/model/po/UserDO.java new file mode 100644 index 0000000..88d5679 --- /dev/null +++ b/server/src/main/java/net/carbon/model/po/UserDO.java @@ -0,0 +1,88 @@ +package net.carbon.model.po; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.time.LocalDateTime; +import java.util.Date; + +/** + *+ * + *
+ * + * @author jieyuu + * @since 2024-11-23 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("user") +public class UserDO implements Serializable { + + private static final long serialVersionUID = 1L; + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + @TableField("username") + private String username; + + @TableField("password") + private String password; + + /** + * 用户照片 + */ + @TableField("avatar") + private String avatar; + + /** + * 用户角色,1代表管理员,2代表普通用户 + */ + @TableField("role") + private Integer role; + + /** + * 描述 + */ + @TableField("description") + private String description; + + /** + * 用户的名字 + */ + @TableField("name") + private String name; + + /** + * 用户的电话号码 + */ + @TableField("phone") + private String phone; + + /** + * 用户地址 + */ + @TableField("address") + private String address; + + /** + * 用户创建时间 + */ + @TableField("creationTime") + private LocalDateTime creationTime; + + /** + * 用户更新时间 + */ + @TableField("updateTime") + private LocalDateTime updateTime; + + /** + * 逻辑删除标记 + */ + @TableField("is_delete") + @TableLogic(value = "0", delval = "1") + private Byte isDelete; +} diff --git a/server/src/main/java/net/carbon/model/request/EconomicsUpdateRequest.java b/server/src/main/java/net/carbon/model/request/EconomicsUpdateRequest.java new file mode 100644 index 0000000..df8941e --- /dev/null +++ b/server/src/main/java/net/carbon/model/request/EconomicsUpdateRequest.java @@ -0,0 +1,18 @@ +package net.carbon.model.request; + + +import lombok.Data; + +@Data +public class EconomicsUpdateRequest { + private Long id; + private String name; + + private String unit; + + private Double data; + + private String attribute; + + private Integer isSystemDate; +} diff --git a/server/src/main/java/net/carbon/model/request/LabelUpdateRequest.java b/server/src/main/java/net/carbon/model/request/LabelUpdateRequest.java new file mode 100644 index 0000000..f133d43 --- /dev/null +++ b/server/src/main/java/net/carbon/model/request/LabelUpdateRequest.java @@ -0,0 +1,37 @@ +package net.carbon.model.request; + +import lombok.Data; + +import java.math.BigDecimal; + + +@Data +public class LabelUpdateRequest { + + private Long id; + /** + * 指标名称 + */ + private String name; + + /** + * 单位 + */ + private String unit; + + /** + * 数据值 + */ + private BigDecimal dataValue; + + /** + * 指数属性 + */ + private String attribute; + + /** + * 是否剔除(0-是系统数据不能删除,1-不是系统数据,可以删除) + */ + private Integer isSystemDate; + +} diff --git a/server/src/main/java/net/carbon/model/request/TimelyWarningRequest.java b/server/src/main/java/net/carbon/model/request/TimelyWarningRequest.java new file mode 100644 index 0000000..395c576 --- /dev/null +++ b/server/src/main/java/net/carbon/model/request/TimelyWarningRequest.java @@ -0,0 +1,17 @@ +package net.carbon.model.request; + +import lombok.Data; + +@Data +public class TimelyWarningRequest { + + private Long id; + + private String name; + + private String unit; + + private Double data; + + private String direction; +} diff --git a/server/src/main/java/net/carbon/model/request/UserLoginRequest.java b/server/src/main/java/net/carbon/model/request/UserLoginRequest.java new file mode 100644 index 0000000..ab4c1ef --- /dev/null +++ b/server/src/main/java/net/carbon/model/request/UserLoginRequest.java @@ -0,0 +1,20 @@ +package net.carbon.model.request; + +//import io.swagger.annotations.ApiModel; +//import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +//@ApiModel(value = "登录对象", description = "用户登录请求对象") +@AllArgsConstructor +@NoArgsConstructor +public class UserLoginRequest { + +// @ApiModelProperty(value = "用户名", example = "jieyuu") + private String username; + +// @ApiModelProperty(value = "密码", example = "123456") + private String password; +} diff --git a/server/src/main/java/net/carbon/model/request/UserRegisterRequest.java b/server/src/main/java/net/carbon/model/request/UserRegisterRequest.java new file mode 100644 index 0000000..5d721f2 --- /dev/null +++ b/server/src/main/java/net/carbon/model/request/UserRegisterRequest.java @@ -0,0 +1,14 @@ +package net.carbon.model.request; + +//import io.swagger.annotations.ApiModel; +//import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class UserRegisterRequest { + + private String username; + + private String password; + +} diff --git a/server/src/main/java/net/carbon/model/vo/EconomicsVO.java b/server/src/main/java/net/carbon/model/vo/EconomicsVO.java new file mode 100644 index 0000000..a384ead --- /dev/null +++ b/server/src/main/java/net/carbon/model/vo/EconomicsVO.java @@ -0,0 +1,35 @@ +package net.carbon.model.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; + +import java.io.Serializable; + +/** + *+ * + *
+ * + * @author jieyuu + * @since 2025-02-21 + */ +@Getter +@Setter +public class EconomicsVO implements Serializable { + private Long id; + + private String name; + + private String unit; + + private Double data; + + private String attribute; + + private Integer isSystemDate; + + private Byte isDelete; +} diff --git a/server/src/main/java/net/carbon/model/vo/LabelVO.java b/server/src/main/java/net/carbon/model/vo/LabelVO.java new file mode 100644 index 0000000..2954328 --- /dev/null +++ b/server/src/main/java/net/carbon/model/vo/LabelVO.java @@ -0,0 +1,39 @@ +package net.carbon.model.vo; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class LabelVO { + private Long id; + + /** + * 指标名称 + */ + private String name; + + /** + * 单位 + */ + private String unit; + + /** + * 数据值 + */ + private BigDecimal dataValue; + + /** + * 指数属性 + */ + private String attribute; + + /** + * 是否剔除(0-是系统数据不能删除,1-不是系统数据,可以删除) + */ + private Integer isSystemDate; +} diff --git a/server/src/main/java/net/carbon/model/vo/TimelyWarningVO.java b/server/src/main/java/net/carbon/model/vo/TimelyWarningVO.java new file mode 100644 index 0000000..6da975d --- /dev/null +++ b/server/src/main/java/net/carbon/model/vo/TimelyWarningVO.java @@ -0,0 +1,22 @@ +package net.carbon.model.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +@Data +public class TimelyWarningVO { + + private Long id; + + private String name; + + private String unit; + + private Double data; + + private String direction; +} diff --git a/server/src/main/java/net/carbon/model/vo/UserVO.java b/server/src/main/java/net/carbon/model/vo/UserVO.java new file mode 100644 index 0000000..272db3a --- /dev/null +++ b/server/src/main/java/net/carbon/model/vo/UserVO.java @@ -0,0 +1,45 @@ +package net.carbon.model.vo; + + +import lombok.Data; + +@Data +public class UserVO { + private Long id; + + + private String username; + + + private String password; + + /** + * 用户照片 + */ + private String avatar; + + /** + * 用户角色,1代表管理员,2代表普通用户 + */ + private Integer role; + + /** + * 描述 + */ + private String description; + + /** + * 用户的名字 + */ + private String name; + + /** + * 用户的电话号码 + */ + private String phone; + + /** + * 用户地址 + */ + private String address; +} diff --git a/server/src/main/java/net/carbon/request/UserLoginRequest.java b/server/src/main/java/net/carbon/request/UserLoginRequest.java new file mode 100644 index 0000000..1da367b --- /dev/null +++ b/server/src/main/java/net/carbon/request/UserLoginRequest.java @@ -0,0 +1,20 @@ +package net.carbon.request; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@ApiModel(value = "登录对象", description = "用户登录请求对象") +@AllArgsConstructor +@NoArgsConstructor +public class UserLoginRequest { + + @ApiModelProperty(value = "用户名", example = "jieyuu") + private String username; + + @ApiModelProperty(value = "密码", example = "123456") + private String password; +} diff --git a/server/src/main/java/net/carbon/request/UserRegisterRequest.java b/server/src/main/java/net/carbon/request/UserRegisterRequest.java new file mode 100644 index 0000000..d285996 --- /dev/null +++ b/server/src/main/java/net/carbon/request/UserRegisterRequest.java @@ -0,0 +1,17 @@ +package net.carbon.request; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "用户注册实体类") +public class UserRegisterRequest { + + @ApiModelProperty(value = "用户名", example = "123456") + private String username; + + @ApiModelProperty(value = "密码", example = "123456") + private String password; + +} diff --git a/server/src/main/java/net/carbon/service/CarbonEmissionService.java b/server/src/main/java/net/carbon/service/CarbonEmissionService.java new file mode 100644 index 0000000..9a54b37 --- /dev/null +++ b/server/src/main/java/net/carbon/service/CarbonEmissionService.java @@ -0,0 +1,23 @@ +package net.carbon.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import net.carbon.model.po.CarbonEmissionDO; +import net.carbon.vo.CarbonTimelyAlertVO; +import net.carbon.vo.CarbonVO; + + +/** + *+ * 服务类 + *
+ * + * @author jieyuu + * @since 2024-12-29 + */ +public interface CarbonEmissionService extends IService+ * 碳排放-城市高质量发展指标体系-标签表 服务类 + *
+ * + * @author jieyuu + * @since 2025-02-19 + */ +public interface LabelService extends IService+ * 服务类 + *
+ * + * @author jieyuu + * @since 2024-11-23 + */ +public interface UserService extends IService+ * 服务实现类 + *
+ * + * @author jieyuu + * @since 2024-12-29 + */ +@Service +public class CarbonEmissionServiceImpl extends ServiceImpl+ * 碳排放-城市高质量发展指标体系-标签表 服务实现类 + *
+ * + * @author jieyuu + * @since 2025-02-19 + */ +@Service +public class LabelServiceImpl extends ServiceImpl+ * 服务实现类 + *
+ * + * @author jieyuu + * @since 2024-11-23 + */ +@Service +@Slf4j +public class UserServiceImpl extends ServiceImpl
+ * 判断用户注册情况
+ *
+ * @param loginRequest
+ * @return
+ */
+ @Override
+ public JsonData login(UserLoginRequest loginRequest) {
+ LambdaQueryWrapper
+ *
+ *
+ *
+ *