From b292fc48dd66085bc24c780e5c77abf2bb7cb252 Mon Sep 17 00:00:00 2001 From: "HY-LSZNWIN10\\Administrator" <2898314561@qq.com> Date: Sat, 28 Jun 2025 17:09:32 +0800 Subject: [PATCH] =?UTF-8?q?6.28=20=E6=B1=87=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../example/demo/controller/RateController.java | 68 ++++++++++++++++++++++ .../com/example/demo/domain/vo/RateDetail.java | 30 ++++++++++ .../java/com/example/demo/mapper/RateMapper.java | 18 ++++++ .../java/com/example/demo/service/RateService.java | 16 +++++ .../example/demo/serviceImpl/RateServiceImpl.java | 43 ++++++++++++++ src/main/resources/mapper/RateMapper.xml | 42 +++++++++++++ 6 files changed, 217 insertions(+) create mode 100644 src/main/java/com/example/demo/controller/RateController.java create mode 100644 src/main/java/com/example/demo/domain/vo/RateDetail.java create mode 100644 src/main/java/com/example/demo/mapper/RateMapper.java create mode 100644 src/main/java/com/example/demo/service/RateService.java create mode 100644 src/main/java/com/example/demo/serviceImpl/RateServiceImpl.java create mode 100644 src/main/resources/mapper/RateMapper.xml diff --git a/src/main/java/com/example/demo/controller/RateController.java b/src/main/java/com/example/demo/controller/RateController.java new file mode 100644 index 0000000..eb1b32c --- /dev/null +++ b/src/main/java/com/example/demo/controller/RateController.java @@ -0,0 +1,68 @@ +package com.example.demo.controller; + + +import com.example.demo.domain.entity.Rate; +import com.example.demo.domain.vo.Page; +import com.example.demo.domain.vo.Result; +import com.example.demo.mapper.RateMapper; +import com.example.demo.service.RateService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.ObjectUtils; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; + + +@RestController +@RequestMapping("/rate") +@RequiredArgsConstructor +@Slf4j +@CrossOrigin +public class RateController { + + @Autowired + private RateService rateService; + + //货币汇率列表 + @PostMapping("/selectAll") + public Result selectAll(@RequestBody Page page){ + if (ObjectUtils.isEmpty(page.getPageNum())) { + return Result.error("页码数为空!"); + } + if (ObjectUtils.isEmpty(page.getPageSize())) { + return Result.error("页大小为空!"); + } else { + return Result.success(rateService.selectAll(page.getPageNum(), page.getPageSize())); + } + } + + //添加 + @PostMapping("/add") + public Result add(@RequestBody Rate rate){ + rateService.add(rate); + return Result.success("添加成功"); + + } + + @PostMapping("/selectById") + public Result selectById(@RequestBody Map requestBody){ + Integer id = (Integer) requestBody.get("id"); + Rate rate =rateService.selectById(id); + return Result.success(rate); + } + + //编辑 + @PostMapping("/update") + public Result update(@RequestBody Rate rate){ + rateService.update(rate); + return Result.success("编辑成功"); + } + + + + + + +} diff --git a/src/main/java/com/example/demo/domain/vo/RateDetail.java b/src/main/java/com/example/demo/domain/vo/RateDetail.java new file mode 100644 index 0000000..efd9d11 --- /dev/null +++ b/src/main/java/com/example/demo/domain/vo/RateDetail.java @@ -0,0 +1,30 @@ +package com.example.demo.domain.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; +import java.util.Date; + + @Data + @NoArgsConstructor + public class RateDetail { + private static final long serialVersionUID = 1L; + + + private Integer id; + private String rateName; + private BigDecimal num = BigDecimal.ZERO;; + private Integer adminId;//提交人 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date createTime; // 创建时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date updateTime; // 更新时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date lastTime; // 最晚时间 + + + } + + diff --git a/src/main/java/com/example/demo/mapper/RateMapper.java b/src/main/java/com/example/demo/mapper/RateMapper.java new file mode 100644 index 0000000..dd4473b --- /dev/null +++ b/src/main/java/com/example/demo/mapper/RateMapper.java @@ -0,0 +1,18 @@ +package com.example.demo.mapper; + +import com.example.demo.domain.entity.Rate; +import com.example.demo.domain.vo.RateDetail; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +@Mapper +public interface RateMapper { + List selectAll(); + + Rate selectById(Integer id); + + void add(Rate rate); + + void update(Rate rate); + +} diff --git a/src/main/java/com/example/demo/service/RateService.java b/src/main/java/com/example/demo/service/RateService.java new file mode 100644 index 0000000..685f6aa --- /dev/null +++ b/src/main/java/com/example/demo/service/RateService.java @@ -0,0 +1,16 @@ +package com.example.demo.service; + +import com.example.demo.domain.entity.Rate; +import com.example.demo.domain.vo.RateDetail; +import com.github.pagehelper.PageInfo; + +public interface RateService { + + PageInfo selectAll(Integer pageNum, Integer pageSize); + + Rate selectById(Integer id); + + void add(Rate rate); + + void update(Rate rate); +} diff --git a/src/main/java/com/example/demo/serviceImpl/RateServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/RateServiceImpl.java new file mode 100644 index 0000000..57f933a --- /dev/null +++ b/src/main/java/com/example/demo/serviceImpl/RateServiceImpl.java @@ -0,0 +1,43 @@ +package com.example.demo.serviceImpl; + +import com.example.demo.domain.entity.Rate; +import com.example.demo.domain.vo.ConsumeUser; +import com.example.demo.domain.vo.RateDetail; +import com.example.demo.mapper.RateMapper; +import com.example.demo.service.RateService; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + + +@Service +public class RateServiceImpl implements RateService { + @Autowired + private RateMapper rateMapper; + + + @Override + public PageInfo selectAll(Integer pageNum, Integer pageSize) { + PageHelper.startPage(pageNum, pageSize); + List rates = rateMapper.selectAll(); + return new PageInfo<>(rates); + } + + @Override + public Rate selectById(Integer id) { + return rateMapper.selectById(id); + } + + @Override + public void add(Rate rate) { + rateMapper.add(rate); + } + + @Override + public void update(Rate rate) { + rateMapper.update(rate); + } +} diff --git a/src/main/resources/mapper/RateMapper.xml b/src/main/resources/mapper/RateMapper.xml new file mode 100644 index 0000000..229b1fb --- /dev/null +++ b/src/main/resources/mapper/RateMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + UPDATE + rate + SET + rate_name=#{rateName}, + num=#{num}, + admin_id=#{adminId}, + update_time=#{updateTime} + WHERE + id=#{id} + + + + + INSERT INTO rate + (rate_name, num, admin_id, create_time) + VALUES + (#{rateName}, #{num}, #{adminId}, #{createTime}) + + SELECT LAST_INSERT_ID() + + + +