From 8224c2105df57cc51a5d57fbba18c8385fc9852a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=9D=E5=BD=AC?= <14779346+xswl_123@user.noreply.gitee.com> Date: Thu, 14 Aug 2025 17:53:27 +0800 Subject: [PATCH] =?UTF-8?q?8-14=20=E6=96=B0=E5=A2=9E=E6=94=AF=E5=87=BA?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E6=95=B0=E6=8D=AE=E5=BA=93=EF=BC=8C=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E9=A1=B9=E7=9B=AE=E7=AB=8B=E9=A1=B9=E6=97=B6=E6=9C=AA?= =?UTF-8?q?=E5=88=86=E9=85=8D=E4=B8=BB=E8=B4=9F=E8=B4=A3=E4=BA=BA=E6=97=B6?= =?UTF-8?q?=E5=90=8E=E7=AB=AF=E5=BC=82=E5=B8=B8=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../znpt/domain/entity/ExpenseTypeEntity.java | 27 ++++++++ .../dite/znpt/mapper/ExpenseTypeMapper.java | 11 +++ .../dite/znpt/service/ExpenseTypeService.java | 11 +++ .../service/impl/ExpenseTypeServiceImpl.java | 18 +++++ .../znpt/service/impl/ProjectServiceImpl.java | 4 +- .../resources/mapper/ExpenseTypeMapper.xml | 9 +++ .../web/controller/ExpenseTypeController.java | 68 +++++++++++++++++++ 7 files changed, 147 insertions(+), 1 deletion(-) create mode 100644 core/src/main/java/com/dite/znpt/domain/entity/ExpenseTypeEntity.java create mode 100644 core/src/main/java/com/dite/znpt/mapper/ExpenseTypeMapper.java create mode 100644 core/src/main/java/com/dite/znpt/service/ExpenseTypeService.java create mode 100644 core/src/main/java/com/dite/znpt/service/impl/ExpenseTypeServiceImpl.java create mode 100644 core/src/main/resources/mapper/ExpenseTypeMapper.xml create mode 100644 web/src/main/java/com/dite/znpt/web/controller/ExpenseTypeController.java diff --git a/core/src/main/java/com/dite/znpt/domain/entity/ExpenseTypeEntity.java b/core/src/main/java/com/dite/znpt/domain/entity/ExpenseTypeEntity.java new file mode 100644 index 0000000..d702485 --- /dev/null +++ b/core/src/main/java/com/dite/znpt/domain/entity/ExpenseTypeEntity.java @@ -0,0 +1,27 @@ +package com.dite.znpt.domain.entity; + +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 io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.List; + +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("expense_type") +@ApiModel(value="ExpenseTypeEntity对象", description="支出类型表") +public class ExpenseTypeEntity { + @TableId(type = IdType.AUTO) + private Integer Id; + + @ApiModelProperty("支出类型名称") + private String name; + + @ApiModelProperty("父级id") + private Integer parentId; +} diff --git a/core/src/main/java/com/dite/znpt/mapper/ExpenseTypeMapper.java b/core/src/main/java/com/dite/znpt/mapper/ExpenseTypeMapper.java new file mode 100644 index 0000000..927b0f3 --- /dev/null +++ b/core/src/main/java/com/dite/znpt/mapper/ExpenseTypeMapper.java @@ -0,0 +1,11 @@ +package com.dite.znpt.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dite.znpt.domain.entity.ExpenseTypeEntity; +import org.mapstruct.Mapper; + +import java.util.List; + +public interface ExpenseTypeMapper extends BaseMapper { + List search(String key); +} diff --git a/core/src/main/java/com/dite/znpt/service/ExpenseTypeService.java b/core/src/main/java/com/dite/znpt/service/ExpenseTypeService.java new file mode 100644 index 0000000..da3a6f7 --- /dev/null +++ b/core/src/main/java/com/dite/znpt/service/ExpenseTypeService.java @@ -0,0 +1,11 @@ +package com.dite.znpt.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.dite.znpt.domain.entity.ExpenseTypeEntity; +import org.springframework.stereotype.Service; + +import java.util.List; + +public interface ExpenseTypeService extends IService { + List search(String key); +} diff --git a/core/src/main/java/com/dite/znpt/service/impl/ExpenseTypeServiceImpl.java b/core/src/main/java/com/dite/znpt/service/impl/ExpenseTypeServiceImpl.java new file mode 100644 index 0000000..e2013a5 --- /dev/null +++ b/core/src/main/java/com/dite/znpt/service/impl/ExpenseTypeServiceImpl.java @@ -0,0 +1,18 @@ +package com.dite.znpt.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import com.dite.znpt.mapper.ExpenseTypeMapper; +import com.dite.znpt.domain.entity.ExpenseTypeEntity; +import com.dite.znpt.service.ExpenseTypeService; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class ExpenseTypeServiceImpl extends ServiceImpl implements ExpenseTypeService { + @Override + public List search(String key) { + return this.baseMapper.search(key); + } +} diff --git a/core/src/main/java/com/dite/znpt/service/impl/ProjectServiceImpl.java b/core/src/main/java/com/dite/znpt/service/impl/ProjectServiceImpl.java index b76759a..8d3a466 100644 --- a/core/src/main/java/com/dite/znpt/service/impl/ProjectServiceImpl.java +++ b/core/src/main/java/com/dite/znpt/service/impl/ProjectServiceImpl.java @@ -119,7 +119,9 @@ public class ProjectServiceImpl extends ServiceImpl + + + + \ No newline at end of file diff --git a/web/src/main/java/com/dite/znpt/web/controller/ExpenseTypeController.java b/web/src/main/java/com/dite/znpt/web/controller/ExpenseTypeController.java new file mode 100644 index 0000000..5b3eb1d --- /dev/null +++ b/web/src/main/java/com/dite/znpt/web/controller/ExpenseTypeController.java @@ -0,0 +1,68 @@ +package com.dite.znpt.web.controller; + +import cn.hutool.core.io.LimitedInputStream; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.dite.znpt.domain.Result; +import com.dite.znpt.domain.entity.ExpenseTypeEntity; +import com.dite.znpt.service.ExpenseTypeService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.v3.oas.annotations.Operation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +@Api(tags = "支出类型信息") +@RestController +@RequestMapping("/expenseType") +public class ExpenseTypeController { + @Resource + private ExpenseTypeService expenseTypeService; + + @GetMapping("") + @ApiOperation(value = "查询一级支出类型", httpMethod = "GET") + public Result> list() { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.isNull("parent_id"); + List list = expenseTypeService.list(queryWrapper); + return Result.ok(list); + } + + @GetMapping("/{pid}") + @ApiOperation(value = "查询二级支出类型", httpMethod = "GET") + public Result> list2(@PathVariable Integer pid) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("parent_id", pid); + List list = expenseTypeService.list(queryWrapper); + return Result.ok(list); + } + + @PostMapping("") + @ApiOperation(value = "新增支出类型", httpMethod = "POST") + public Result save(@RequestBody ExpenseTypeEntity expenseTypeEntity) { + boolean b = expenseTypeService.save(expenseTypeEntity); + return Result.ok(b); + } + + @PutMapping("") + @ApiOperation(value = "更新支出类型", httpMethod = "PUT") + public Result update(@RequestBody ExpenseTypeEntity expenseTypeEntity) { + boolean b = expenseTypeService.updateById(expenseTypeEntity); + return Result.ok(b); + } + + @DeleteMapping("/{id}") + @ApiOperation(value = "删除支出类型", httpMethod = "DELETE") + public Result delete(@PathVariable Integer id) { + boolean b = expenseTypeService.removeById(id); + return Result.ok(b); + } + + @GetMapping("search/{key}") + @ApiOperation(value = "查询支出类型", httpMethod = "GET") + public Result> search(@PathVariable String key) { + List list = expenseTypeService.search(key); + return Result.ok(list); + } +}