Ver código fonte

Merge branch 'master' of http://8.138.18.76:3000/qmrb/parking-server

loemkie 1 mês atrás
pai
commit
f1d6ee8f05
33 arquivos alterados com 1686 adições e 4 exclusões
  1. 122 0
      src/main/java/com/qmrb/system/controller/CarParkController.java
  2. 122 0
      src/main/java/com/qmrb/system/controller/CarParkStoredCardController.java
  3. 126 0
      src/main/java/com/qmrb/system/controller/MyCarPlateNumberController.java
  4. 9 0
      src/main/java/com/qmrb/system/controller/SysUserController.java
  5. 29 0
      src/main/java/com/qmrb/system/converter/CarParkConverter.java
  6. 29 0
      src/main/java/com/qmrb/system/converter/CarParkStoredCardConverter.java
  7. 29 0
      src/main/java/com/qmrb/system/converter/MyCarPlateNumberConverter.java
  8. 18 0
      src/main/java/com/qmrb/system/mapper/CarParkMapper.java
  9. 18 0
      src/main/java/com/qmrb/system/mapper/CarParkStoredCardMapper.java
  10. 18 0
      src/main/java/com/qmrb/system/mapper/MyCarPlateNumberMapper.java
  11. 66 0
      src/main/java/com/qmrb/system/pojo/entity/CarPark.java
  12. 98 0
      src/main/java/com/qmrb/system/pojo/entity/CarParkStoredCard.java
  13. 42 0
      src/main/java/com/qmrb/system/pojo/entity/MyCarPlateNumber.java
  14. 2 2
      src/main/java/com/qmrb/system/pojo/entity/SysUser.java
  15. 50 0
      src/main/java/com/qmrb/system/pojo/form/CarParkForm.java
  16. 83 0
      src/main/java/com/qmrb/system/pojo/form/CarParkStoredCardForm.java
  17. 30 0
      src/main/java/com/qmrb/system/pojo/form/MyCarPlateNumberForm.java
  18. 56 0
      src/main/java/com/qmrb/system/pojo/query/CarParkQuery.java
  19. 84 0
      src/main/java/com/qmrb/system/pojo/query/CarParkStoredCardQuery.java
  20. 36 0
      src/main/java/com/qmrb/system/pojo/query/MyCarPlateNumberQuery.java
  21. 87 0
      src/main/java/com/qmrb/system/pojo/vo/CarParkStoredCardVO.java
  22. 54 0
      src/main/java/com/qmrb/system/pojo/vo/CarParkVO.java
  23. 34 0
      src/main/java/com/qmrb/system/pojo/vo/MyCarPlateNumberVO.java
  24. 2 2
      src/main/java/com/qmrb/system/pojo/vo/UserInfoVO.java
  25. 41 0
      src/main/java/com/qmrb/system/service/ICarParkService.java
  26. 41 0
      src/main/java/com/qmrb/system/service/ICarParkStoredCardService.java
  27. 41 0
      src/main/java/com/qmrb/system/service/IMyCarPlateNumberService.java
  28. 102 0
      src/main/java/com/qmrb/system/service/impl/CarParkServiceImpl.java
  29. 102 0
      src/main/java/com/qmrb/system/service/impl/CarParkStoredCardServiceImpl.java
  30. 100 0
      src/main/java/com/qmrb/system/service/impl/MyCarPlateNumberServiceImpl.java
  31. 5 0
      src/main/resources/mapper/CarParkMapper.xml
  32. 5 0
      src/main/resources/mapper/CarParkStoredCardMapper.xml
  33. 5 0
      src/main/resources/mapper/MyCarPlateNumberMapper.xml

+ 122 - 0
src/main/java/com/qmrb/system/controller/CarParkController.java

@@ -0,0 +1,122 @@
+package com.qmrb.system.controller;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.qmrb.system.pojo.entity.CarPark;
+import org.springdoc.core.annotations.ParameterObject;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmrb.system.common.result.PageResult;
+import com.qmrb.system.common.result.Result;
+import com.qmrb.system.common.result.ResultCode;
+import com.qmrb.system.framework.resubmit.Resubmit;
+import com.qmrb.system.service.ICarParkService;
+import com.qmrb.system.pojo.form.CarParkForm;
+import com.qmrb.system.pojo.vo.CarParkVO;
+import com.qmrb.system.pojo.query.CarParkQuery;
+import com.qmrb.system.pojo.vo.Option;
+
+import cn.hutool.core.util.StrUtil;
+import org.springframework.web.bind.annotation.RestController;
+import jakarta.validation.Valid;
+
+/**
+ * <p>
+ * 停车场表 前端控制器
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-25
+ */
+@Tag(name = "停车场表接口")
+@RestController
+@RequestMapping("/api/v1/park")
+@CrossOrigin
+public class CarParkController{
+
+    @Autowired
+    private ICarParkService carParkService;
+
+	@Operation(summary = "停车场表分页列表", security = {@SecurityRequirement(name = "Authorization")})
+    @GetMapping("/page")
+    public PageResult<CarParkVO> getPage(
+            @ParameterObject CarParkQuery queryParams
+    ) {
+        Page<CarParkVO> result = carParkService.getPage(queryParams);
+        return PageResult.success(result);
+    }	
+    @Operation(summary = "停车场表列表", security = {@SecurityRequirement(name = "Authorization")})
+    @GetMapping("/list")
+    public Result<List> getCarParkList(
+            @ParameterObject CarParkQuery queryParams
+    ) {
+        List<CarPark> result = carParkService.list(new LambdaQueryWrapper<CarPark>().ne(CarPark::getStatus,2));
+        return Result.success(result);
+    }
+    
+    @Operation(summary = "新增停车场表", security = {@SecurityRequirement(name = "Authorization")})
+    @PostMapping
+    @PreAuthorize("@ss.hasPerm('park:add')")
+    @Resubmit
+    public Result<CarParkForm> saveForm(
+            @RequestBody @Valid CarParkForm form
+    ) {
+        CarParkForm result = carParkService.saveForm(form);
+        return Result.success(result);
+    }
+
+    @Operation(summary = "停车场表表单数据", security = {@SecurityRequirement(name = "Authorization")})
+    @GetMapping("/{id}/form")
+    public Result<CarParkForm> getForm(
+            @Parameter(description = "停车场表ID") @PathVariable Long id
+    ) {
+    	CarParkForm formData = carParkService.getFormData(id);
+        return Result.success(formData);
+    }
+
+    @Operation(summary = "修改停车场表", security = {@SecurityRequirement(name = "Authorization")})
+    @PutMapping(value = "/{id}")
+    @PreAuthorize("@ss.hasPerm('park:edit')")
+    public Result<?> updateForm(
+            @Parameter(description = "停车场表ID") @PathVariable Long id,
+            @RequestBody @Validated CarParkForm form) {
+    	
+        boolean result = carParkService.updateForm(id,form);
+        return Result.judge(result);
+    }
+
+    @Operation(summary = "删除停车场表", security = {@SecurityRequirement(name = "Authorization")})
+    @DeleteMapping("/{ids}")
+    @PreAuthorize("@ss.hasPerm('park:delete')")
+    public Result<?> deleteUsers(
+            @Parameter(description = "停车场表ID,多个以英文逗号(,)分割") @PathVariable String ids
+    ) {
+    	if(StrUtil.isBlank(ids)) {
+    		 return Result.failed(ResultCode.PARAM_ERROR, "删除的停车场表数据为空");
+    	}
+        // 逻辑删除
+        List<Long> idList = Arrays.asList(ids.split(",")).stream()
+                .map(idStr -> Long.parseLong(idStr)).collect(Collectors.toList());
+        boolean result = carParkService.removeByIds(idList);
+        return Result.judge(result);
+    }
+
+
+}

+ 122 - 0
src/main/java/com/qmrb/system/controller/CarParkStoredCardController.java

@@ -0,0 +1,122 @@
+package com.qmrb.system.controller;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
+
+import com.qmrb.system.common.exception.BusinessException;
+import org.springdoc.core.annotations.ParameterObject;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmrb.system.common.result.PageResult;
+import com.qmrb.system.common.result.Result;
+import com.qmrb.system.common.result.ResultCode;
+import com.qmrb.system.framework.resubmit.Resubmit;
+import com.qmrb.system.service.ICarParkStoredCardService;
+import com.qmrb.system.pojo.form.CarParkStoredCardForm;
+import com.qmrb.system.pojo.vo.CarParkStoredCardVO;
+import com.qmrb.system.pojo.query.CarParkStoredCardQuery;
+import com.qmrb.system.pojo.vo.Option;
+
+import cn.hutool.core.util.StrUtil;
+import org.springframework.web.bind.annotation.RestController;
+import jakarta.validation.Valid;
+
+/**
+ * <p>
+ * 停车储值卡 前端控制器
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Tag(name = "停车储值卡接口")
+@RestController
+@RequestMapping("/api/v1/park_stored_card")
+@CrossOrigin
+public class CarParkStoredCardController{
+
+    @Autowired
+    private ICarParkStoredCardService carParkStoredCardService;
+
+	@Operation(summary = "停车储值卡分页列表", security = {@SecurityRequirement(name = "Authorization")})
+    @GetMapping("/page")
+    public PageResult<CarParkStoredCardVO> getPage(
+            @ParameterObject CarParkStoredCardQuery queryParams
+    ) {
+        Page<CarParkStoredCardVO> result = carParkStoredCardService.getPage(queryParams);
+        return PageResult.success(result);
+    }
+    
+    @Operation(summary = "停车储值卡分页列表", security = {@SecurityRequirement(name = "Authorization")})
+    @GetMapping("/getPageByUserId")
+    public PageResult<CarParkStoredCardVO> getPageByUserId(
+            @ParameterObject CarParkStoredCardQuery queryParams
+    ) {
+        if(queryParams.getUserId() == null){
+            throw new BusinessException("用户id不能为空");
+        }
+        Page<CarParkStoredCardVO> result = carParkStoredCardService.getPage(queryParams);
+        return PageResult.success(result);
+    }
+    
+    @Operation(summary = "新增停车储值卡", security = {@SecurityRequirement(name = "Authorization")})
+    @PostMapping
+    @Resubmit
+    public Result<CarParkStoredCardForm> saveForm(
+            @RequestBody @Valid CarParkStoredCardForm form
+    ) {
+        CarParkStoredCardForm result = carParkStoredCardService.saveForm(form);
+        return Result.success(result);
+    }
+
+    @Operation(summary = "停车储值卡表单数据", security = {@SecurityRequirement(name = "Authorization")})
+    @GetMapping("/{id}/form")
+    public Result<CarParkStoredCardForm> getForm(
+            @Parameter(description = "停车储值卡ID") @PathVariable Long id
+    ) {
+    	CarParkStoredCardForm formData = carParkStoredCardService.getFormData(id);
+        return Result.success(formData);
+    }
+
+    @Operation(summary = "修改停车储值卡", security = {@SecurityRequirement(name = "Authorization")})
+    @PutMapping(value = "/{id}")
+    public Result<?> updateForm(
+            @Parameter(description = "停车储值卡ID") @PathVariable Long id,
+            @RequestBody @Validated CarParkStoredCardForm form) {
+    	
+        boolean result = carParkStoredCardService.updateForm(id,form);
+        return Result.judge(result);
+    }
+
+    @Operation(summary = "删除停车储值卡", security = {@SecurityRequirement(name = "Authorization")})
+    @DeleteMapping("/{ids}")
+    public Result<?> deleteUsers(
+            @Parameter(description = "停车储值卡ID,多个以英文逗号(,)分割") @PathVariable String ids
+    ) {
+    	if(StrUtil.isBlank(ids)) {
+    		 return Result.failed(ResultCode.PARAM_ERROR, "删除的停车储值卡数据为空");
+    	}
+        // 逻辑删除
+        List<Long> idList = Arrays.asList(ids.split(",")).stream()
+                .map(idStr -> Long.parseLong(idStr)).collect(Collectors.toList());
+        boolean result = carParkStoredCardService.removeByIds(idList);
+        return Result.judge(result);
+    }
+    
+
+}

+ 126 - 0
src/main/java/com/qmrb/system/controller/MyCarPlateNumberController.java

@@ -0,0 +1,126 @@
+package com.qmrb.system.controller;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
+
+import com.qmrb.system.common.exception.BusinessException;
+import org.springdoc.core.annotations.ParameterObject;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmrb.system.common.result.PageResult;
+import com.qmrb.system.common.result.Result;
+import com.qmrb.system.common.result.ResultCode;
+import com.qmrb.system.framework.resubmit.Resubmit;
+import com.qmrb.system.service.IMyCarPlateNumberService;
+import com.qmrb.system.pojo.form.MyCarPlateNumberForm;
+import com.qmrb.system.pojo.vo.MyCarPlateNumberVO;
+import com.qmrb.system.pojo.query.MyCarPlateNumberQuery;
+import com.qmrb.system.pojo.vo.Option;
+
+import cn.hutool.core.util.StrUtil;
+import org.springframework.web.bind.annotation.RestController;
+import jakarta.validation.Valid;
+
+/**
+ * <p>
+ * 我的车牌 前端控制器
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Tag(name = "我的车牌接口")
+@RestController
+@RequestMapping("/api/v1/car_plate_number")
+@CrossOrigin
+public class MyCarPlateNumberController{
+
+    @Autowired
+    private IMyCarPlateNumberService myCarPlateNumberService;
+
+	@Operation(summary = "我的车牌分页列表", security = {@SecurityRequirement(name = "Authorization")})
+    @GetMapping("/page")
+    public PageResult<MyCarPlateNumberVO> getPage(
+            @ParameterObject MyCarPlateNumberQuery queryParams
+    ) {
+
+        Page<MyCarPlateNumberVO> result = myCarPlateNumberService.getPage(queryParams);
+        return PageResult.success(result);
+    }
+    
+    @Operation(summary = "我的车牌分页列表", security = {@SecurityRequirement(name = "Authorization")})
+    @GetMapping("/getPageByUserId")
+    public PageResult<MyCarPlateNumberVO> getPageByUserId(
+            @ParameterObject MyCarPlateNumberQuery queryParams
+    ) {
+        if(queryParams.getUserId() == null){
+            throw new BusinessException("用户id不能为空");
+        }
+        Page<MyCarPlateNumberVO> result = myCarPlateNumberService.getPage(queryParams);
+        return PageResult.success(result);
+    }
+    
+    @Operation(summary = "新增我的车牌", security = {@SecurityRequirement(name = "Authorization")})
+    @PostMapping
+    @PreAuthorize("@ss.hasPerm('car_plate_number:add')")
+    @Resubmit
+    public Result<MyCarPlateNumberForm> saveForm(
+            @RequestBody @Valid MyCarPlateNumberForm form
+    ) {
+        MyCarPlateNumberForm result = myCarPlateNumberService.saveForm(form);
+        return Result.success(result);
+    }
+
+    @Operation(summary = "我的车牌表单数据", security = {@SecurityRequirement(name = "Authorization")})
+    @GetMapping("/{id}/form")
+    public Result<MyCarPlateNumberForm> getForm(
+            @Parameter(description = "我的车牌ID") @PathVariable Long id
+    ) {
+    	MyCarPlateNumberForm formData = myCarPlateNumberService.getFormData(id);
+        return Result.success(formData);
+    }
+
+    @Operation(summary = "修改我的车牌", security = {@SecurityRequirement(name = "Authorization")})
+    @PutMapping(value = "/{id}")
+    @PreAuthorize("@ss.hasPerm('car_plate_number:edit')")
+    public Result<?> updateForm(
+            @Parameter(description = "我的车牌ID") @PathVariable Long id,
+            @RequestBody @Validated MyCarPlateNumberForm form) {
+    	
+        boolean result = myCarPlateNumberService.updateForm(id,form);
+        return Result.judge(result);
+    }
+
+    @Operation(summary = "删除我的车牌", security = {@SecurityRequirement(name = "Authorization")})
+    @DeleteMapping("/{ids}")
+    @PreAuthorize("@ss.hasPerm('car_plate_number:delete')")
+    public Result<?> deleteUsers(
+            @Parameter(description = "我的车牌ID,多个以英文逗号(,)分割") @PathVariable String ids
+    ) {
+    	if(StrUtil.isBlank(ids)) {
+    		 return Result.failed(ResultCode.PARAM_ERROR, "删除的我的车牌数据为空");
+    	}
+        // 逻辑删除
+        List<Long> idList = Arrays.asList(ids.split(",")).stream()
+                .map(idStr -> Long.parseLong(idStr)).collect(Collectors.toList());
+        boolean result = myCarPlateNumberService.removeByIds(idList);
+        return Result.judge(result);
+    }
+
+
+}

+ 9 - 0
src/main/java/com/qmrb/system/controller/SysUserController.java

@@ -2,6 +2,7 @@ package com.qmrb.system.controller;
 
 import com.alibaba.excel.EasyExcel;
 import com.alibaba.excel.ExcelWriter;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.qmrb.system.common.constant.ExcelConstants;
@@ -61,6 +62,14 @@ public class SysUserController {
         IPage<UserPageVO> result = userService.getUserPage(queryParams);
         return PageResult.success(result);
     }
+    
+    @Operation(summary = "用户列表", security = {@SecurityRequirement(name = "Authorization")})
+    @GetMapping("/list")
+    public Result<List> getUserList(
+    ) {
+        List<SysUser> result = userService.list(new LambdaQueryWrapper<SysUser>());
+        return Result.success(result);
+    }
 
     @Operation(summary = "新增用户", security = {@SecurityRequirement(name = "Authorization")})
     @PostMapping

+ 29 - 0
src/main/java/com/qmrb/system/converter/CarParkConverter.java

@@ -0,0 +1,29 @@
+package com.qmrb.system.converter;
+
+import org.mapstruct.InheritInverseConfiguration;
+import org.mapstruct.Mapper;
+import org.mapstruct.ReportingPolicy;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmrb.system.pojo.entity.CarPark;
+import com.qmrb.system.pojo.form.CarParkForm;
+import com.qmrb.system.pojo.vo.CarParkVO;
+
+/**
+ * 停车场表数据项对象转换器
+ *
+ * @author gs
+ * @since 2025-02-25
+ */
+@Mapper(componentModel = "spring",unmappedTargetPolicy = ReportingPolicy.IGNORE)
+public interface CarParkConverter {
+
+    Page<CarParkVO> entity2Page(Page<CarPark> page);
+
+    CarParkForm entity2Form(CarPark entity);
+
+    @InheritInverseConfiguration(name="entity2Form")
+    CarPark form2Entity(CarParkForm form);
+    
+    CarParkVO entity2Vo(CarPark entity);
+}

+ 29 - 0
src/main/java/com/qmrb/system/converter/CarParkStoredCardConverter.java

@@ -0,0 +1,29 @@
+package com.qmrb.system.converter;
+
+import org.mapstruct.InheritInverseConfiguration;
+import org.mapstruct.Mapper;
+import org.mapstruct.ReportingPolicy;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmrb.system.pojo.entity.CarParkStoredCard;
+import com.qmrb.system.pojo.form.CarParkStoredCardForm;
+import com.qmrb.system.pojo.vo.CarParkStoredCardVO;
+
+/**
+ * 停车储值卡数据项对象转换器
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Mapper(componentModel = "spring",unmappedTargetPolicy = ReportingPolicy.IGNORE)
+public interface CarParkStoredCardConverter {
+
+    Page<CarParkStoredCardVO> entity2Page(Page<CarParkStoredCard> page);
+
+    CarParkStoredCardForm entity2Form(CarParkStoredCard entity);
+
+    @InheritInverseConfiguration(name="entity2Form")
+    CarParkStoredCard form2Entity(CarParkStoredCardForm form);
+    
+    CarParkStoredCardVO entity2Vo(CarParkStoredCard entity);
+}

+ 29 - 0
src/main/java/com/qmrb/system/converter/MyCarPlateNumberConverter.java

@@ -0,0 +1,29 @@
+package com.qmrb.system.converter;
+
+import org.mapstruct.InheritInverseConfiguration;
+import org.mapstruct.Mapper;
+import org.mapstruct.ReportingPolicy;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmrb.system.pojo.entity.MyCarPlateNumber;
+import com.qmrb.system.pojo.form.MyCarPlateNumberForm;
+import com.qmrb.system.pojo.vo.MyCarPlateNumberVO;
+
+/**
+ * 我的车牌数据项对象转换器
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Mapper(componentModel = "spring",unmappedTargetPolicy = ReportingPolicy.IGNORE)
+public interface MyCarPlateNumberConverter {
+
+    Page<MyCarPlateNumberVO> entity2Page(Page<MyCarPlateNumber> page);
+
+    MyCarPlateNumberForm entity2Form(MyCarPlateNumber entity);
+
+    @InheritInverseConfiguration(name="entity2Form")
+    MyCarPlateNumber form2Entity(MyCarPlateNumberForm form);
+    
+    MyCarPlateNumberVO entity2Vo(MyCarPlateNumber entity);
+}

+ 18 - 0
src/main/java/com/qmrb/system/mapper/CarParkMapper.java

@@ -0,0 +1,18 @@
+package com.qmrb.system.mapper;
+
+import com.qmrb.system.pojo.entity.CarPark;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * <p>
+ * 停车场表 Mapper 接口
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-25
+ */
+@Mapper
+public interface CarParkMapper extends BaseMapper<CarPark> {
+
+}

+ 18 - 0
src/main/java/com/qmrb/system/mapper/CarParkStoredCardMapper.java

@@ -0,0 +1,18 @@
+package com.qmrb.system.mapper;
+
+import com.qmrb.system.pojo.entity.CarParkStoredCard;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * <p>
+ * 停车储值卡 Mapper 接口
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Mapper
+public interface CarParkStoredCardMapper extends BaseMapper<CarParkStoredCard> {
+
+}

+ 18 - 0
src/main/java/com/qmrb/system/mapper/MyCarPlateNumberMapper.java

@@ -0,0 +1,18 @@
+package com.qmrb.system.mapper;
+
+import com.qmrb.system.pojo.entity.MyCarPlateNumber;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * <p>
+ * 我的车牌 Mapper 接口
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Mapper
+public interface MyCarPlateNumberMapper extends BaseMapper<MyCarPlateNumber> {
+
+}

+ 66 - 0
src/main/java/com/qmrb/system/pojo/entity/CarPark.java

@@ -0,0 +1,66 @@
+package com.qmrb.system.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.qmrb.system.common.base.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 停车场表
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-25
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("car_park")
+public class CarPark extends BaseEntity {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 停车场名字
+     */
+    @TableField("name")
+    private String name;
+
+    /**
+     * 停车场照片
+     */
+    @TableField("image")
+    private String image;
+
+    /**
+     * 车位数
+     */
+    @TableField("parking_space_number")
+    private Integer parkingSpaceNumber;
+
+    /**
+     * 已用车位数
+     */
+    @TableField("used_parking_space_number")
+    private Integer usedParkingSpaceNumber;
+
+    /**
+     * 停车场地址
+     */
+    @TableField("address")
+    private String address;
+
+    /**
+     * 状态(0-正常/1-车位已满/2-暂停营业)
+     */
+    @TableField("status")
+    private Integer status;
+
+
+}

+ 98 - 0
src/main/java/com/qmrb/system/pojo/entity/CarParkStoredCard.java

@@ -0,0 +1,98 @@
+package com.qmrb.system.pojo.entity;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.qmrb.system.common.base.BaseEntity;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 停车储值卡
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Data
+@EqualsAndHashCode()
+@TableName("car_park_stored_card")
+public class CarParkStoredCard extends BaseEntity{
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 停车场id
+     */
+    @TableField("car_park_id")
+    private Long carParkId;
+
+    /**
+     * 停车场名
+     */
+    @TableField("car_park_name")
+    private String carParkName;
+
+    /**
+     * 车牌号
+     */
+    @TableField("plate_number")
+    private String plateNumber;
+
+    /**
+     * 所属者
+     */
+    @TableField("user_id")
+    private Long userId;
+
+    /**
+     * 开始时间
+     */
+    @TableField("start_time")
+    private LocalDateTime startTime;
+
+    /**
+     * 过期时间
+     */
+    @TableField("end_time")
+    private LocalDateTime endTime;
+
+    /**
+     * 金额余额
+     */
+    @TableField("amount_balance")
+    private BigDecimal amountBalance;
+
+    /**
+     * 手机号
+     */
+    @TableField("phone")
+    private String phone;
+
+    /**
+     * 月卡状态0停用1启用
+     */
+    @TableField("status")
+    private String status;
+
+
+    /**
+     * 车型 1大型 2小型
+     */
+    @TableField("car_type")
+    private String carType;
+    /**
+     * 联系人姓名
+     */
+    @TableField("name")
+    private String name;
+    
+}

+ 42 - 0
src/main/java/com/qmrb/system/pojo/entity/MyCarPlateNumber.java

@@ -0,0 +1,42 @@
+package com.qmrb.system.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.qmrb.system.common.base.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 我的车牌
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("my_car_plate_number")
+public class MyCarPlateNumber extends BaseEntity {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 车牌号
+     */
+    @TableField("plate_number")
+    private String plateNumber;
+
+    /**
+     * 用户ID
+     */
+    @TableField("user_id")
+    private Long userId;
+
+
+}

+ 2 - 2
src/main/java/com/qmrb/system/pojo/entity/SysUser.java

@@ -89,7 +89,7 @@ public class SysUser implements Serializable {
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime updateTime;
 
-    @TableField("dept_code")
-    private String deptCode;
+    // @TableField("dept_code")
+    // private String deptCode;
 
 }

+ 50 - 0
src/main/java/com/qmrb/system/pojo/form/CarParkForm.java

@@ -0,0 +1,50 @@
+package com.qmrb.system.pojo.form;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+/**
+ * <p>
+ * 停车场表表单
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-25
+ */
+@Data
+public class CarParkForm {
+
+    private Long id;
+    /**
+     * 停车场名字
+     */
+	@Schema(description = "停车场名字",type="String")
+    private String name;
+    /**
+     * 停车场照片
+     */
+	@Schema(description = "停车场照片",type="String")
+    private String image;
+    /**
+     * 车位数
+     */
+	@Schema(description = "车位数",type="Integer")
+    private Integer parkingSpaceNumber;
+    /**
+     * 已用车位数
+     */
+	@Schema(description = "已用车位数",type="Integer")
+    private Integer usedParkingSpaceNumber;
+    /**
+     * 停车场地址
+     */
+	@Schema(description = "停车场地址",type="String")
+    private String address;
+    /**
+     * 状态(0-正常/1-车位已满/2-暂停营业)
+     */
+	@Schema(description = "状态(0-正常/1-车位已满/2-暂停营业)",type="Integer")
+    private Integer status;
+
+
+}

+ 83 - 0
src/main/java/com/qmrb/system/pojo/form/CarParkStoredCardForm.java

@@ -0,0 +1,83 @@
+package com.qmrb.system.pojo.form;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 停车储值卡表单
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Data
+public class CarParkStoredCardForm {
+
+    private Long id;
+    /**
+     * 停车场id
+     */
+	@Schema(description = "停车场id",type="Long")
+    private Long carParkId;
+    /**
+     * 停车场名
+     */
+	@Schema(description = "停车场名",type="String")
+    private String carParkName;
+    /**
+     * 车牌号
+     */
+	@Schema(description = "车牌号",type="String")
+    private String plateNumber;
+    /**
+     * 所属者
+     */
+	@Schema(description = "所属者",type="Long")
+    private Long userId;
+    /**
+     * 开始时间
+     */
+	@Schema(description = "开始时间",type="LocalDateTime")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime startTime;
+    /**
+     * 过期时间
+     */
+	@Schema(description = "过期时间",type="LocalDateTime")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime endTime;
+    /**
+     * 金额余额
+     */
+	@Schema(description = "金额余额",type="BigDecimal")
+    private BigDecimal amountBalance;
+    /**
+     * 手机号
+     */
+	@Schema(description = "手机号",type="String")
+    private String phone;
+    /**
+     * 月卡状态0停用1启用
+     */
+	@Schema(description = "月卡状态0停用1启用",type="String")
+    private String status;
+
+    /**
+     * 车型 1大型 2小型
+     */
+    @Schema(description = "车型 1大型 2小型",type="String")
+    private String carType;
+    /**
+     * 联系人姓名
+     */
+    @Schema(description = "联系人姓名",type="String")
+    private String name;
+}

+ 30 - 0
src/main/java/com/qmrb/system/pojo/form/MyCarPlateNumberForm.java

@@ -0,0 +1,30 @@
+package com.qmrb.system.pojo.form;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+/**
+ * <p>
+ * 我的车牌表单
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Data
+public class MyCarPlateNumberForm {
+
+    private Long id;
+    /**
+     * 车牌号
+     */
+	@Schema(description = "车牌号",type="String")
+    private String plateNumber;
+    /**
+     * 用户ID
+     */
+	@Schema(description = "用户ID",type="Long")
+    private Long userId;
+
+
+}

+ 56 - 0
src/main/java/com/qmrb/system/pojo/query/CarParkQuery.java

@@ -0,0 +1,56 @@
+package com.qmrb.system.pojo.query;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import com.qmrb.system.common.base.BasePageQuery;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 停车场表查询对象
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-25
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class CarParkQuery extends BasePageQuery{
+
+ 	@Schema(description="关键字")
+    private String keywords;
+
+    private Long id;
+    /**
+     * 停车场名字
+     */
+	@Schema(description = "停车场名字",type="String")
+    private String name;
+    /**
+     * 停车场照片
+     */
+	@Schema(description = "停车场照片",type="String")
+    private String image;
+    /**
+     * 车位数
+     */
+	@Schema(description = "车位数",type="Integer")
+    private Integer parkingSpaceNumber;
+    /**
+     * 已用车位数
+     */
+	@Schema(description = "已用车位数",type="Integer")
+    private Integer usedParkingSpaceNumber;
+    /**
+     * 停车场地址
+     */
+	@Schema(description = "停车场地址",type="String")
+    private String address;
+    /**
+     * 状态(0-正常/1-车位已满/2-暂停营业)
+     */
+	@Schema(description = "状态(0-正常/1-车位已满/2-暂停营业)",type="Integer")
+    private Integer status;
+
+
+}

+ 84 - 0
src/main/java/com/qmrb/system/pojo/query/CarParkStoredCardQuery.java

@@ -0,0 +1,84 @@
+package com.qmrb.system.pojo.query;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import com.qmrb.system.common.base.BasePageQuery;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 停车储值卡查询对象
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class CarParkStoredCardQuery extends BasePageQuery{
+
+ 	@Schema(description="关键字")
+    private String keywords;
+
+    private Long id;
+    /**
+     * 停车场id
+     */
+	@Schema(description = "停车场id",type="Long")
+    private Long carParkId;
+    /**
+     * 停车场名
+     */
+	@Schema(description = "停车场名",type="String")
+    private String carParkName;
+    /**
+     * 车牌号
+     */
+	@Schema(description = "车牌号",type="String")
+    private String plateNumber;
+    /**
+     * 所属者
+     */
+	@Schema(description = "所属者",type="Long")
+    private Long userId;
+    /**
+     * 开始时间
+     */
+	@Schema(description = "开始时间",type="LocalDateTime")
+    private LocalDateTime startTime;
+    /**
+     * 过期时间
+     */
+	@Schema(description = "过期时间",type="Long")
+    private LocalDateTime endTime;
+    /**
+     * 金额余额
+     */
+	@Schema(description = "金额余额",type="BigDecimal")
+    private BigDecimal amountBalance;
+    /**
+     * 手机号
+     */
+	@Schema(description = "手机号",type="String")
+    private String phone;
+    /**
+     * 月卡状态0停用1启用
+     */
+	@Schema(description = "月卡状态0停用1启用",type="String")
+    private String status;    
+    /**
+     * 车型 1大型 2小型
+     */
+	@Schema(description = "车型 1大型 2小型",type="String")
+    private String carType;    
+    /**
+     * 联系人姓名
+     */
+	@Schema(description = "联系人姓名",type="String")
+    private String name;
+
+
+}

+ 36 - 0
src/main/java/com/qmrb/system/pojo/query/MyCarPlateNumberQuery.java

@@ -0,0 +1,36 @@
+package com.qmrb.system.pojo.query;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import com.qmrb.system.common.base.BasePageQuery;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 我的车牌查询对象
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class MyCarPlateNumberQuery extends BasePageQuery{
+
+ 	@Schema(description="关键字")
+    private String keywords;
+
+    private Long id;
+    /**
+     * 车牌号
+     */
+	@Schema(description = "车牌号",type="String")
+    private String plateNumber;
+    /**
+     * 用户ID
+     */
+	@Schema(description = "用户ID",type="Long")
+    private Long userId;
+
+
+}

+ 87 - 0
src/main/java/com/qmrb/system/pojo/vo/CarParkStoredCardVO.java

@@ -0,0 +1,87 @@
+package com.qmrb.system.pojo.vo;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.List;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+/**
+ * <p>
+ * 停车储值卡视图对象
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Data
+public class CarParkStoredCardVO {
+
+    private Long id;
+    /**
+     * 停车场id
+     */
+	@Schema(description = "停车场id",type="Long")
+    private Long carParkId;
+    /**
+     * 停车场名
+     */
+	@Schema(description = "停车场名",type="String")
+    private String carParkName;
+    /**
+     * 车牌号
+     */
+	@Schema(description = "车牌号",type="String")
+    private String plateNumber;
+    /**
+     * 所属者
+     */
+	@Schema(description = "所属者",type="Long")
+    private Long userId;
+    /**
+     * 开始时间
+     */
+	@Schema(description = "开始时间",type="LocalDateTime")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime startTime;
+    /**
+     * 过期时间
+     */
+	@Schema(description = "过期时间",type="LocalDateTime")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime endTime;
+    /**
+     * 金额余额
+     */
+	@Schema(description = "金额余额",type="BigDecimal")
+    private BigDecimal amountBalance;
+    /**
+     * 手机号
+     */
+	@Schema(description = "手机号",type="String")
+    private String phone;
+    /**
+     * 月卡状态0停用1启用
+     */
+	@Schema(description = "月卡状态0停用1启用",type="String")
+    private String status;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime createTime;
+    
+    /**
+     * 车型 1大型 2小型
+     */
+    @Schema(description = "车型 1大型 2小型",type="String")
+    private String carType;
+    /**
+     * 联系人姓名
+     */
+    @Schema(description = "联系人姓名",type="String")
+    private String name;
+	@Schema(description = "子分类")
+    private List<CarParkStoredCardVO> children;
+
+
+}

+ 54 - 0
src/main/java/com/qmrb/system/pojo/vo/CarParkVO.java

@@ -0,0 +1,54 @@
+package com.qmrb.system.pojo.vo;
+
+import java.util.List;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+/**
+ * <p>
+ * 停车场表视图对象
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-25
+ */
+@Data
+public class CarParkVO {
+
+    private Long id;
+    /**
+     * 停车场名字
+     */
+	@Schema(description = "停车场名字",type="String")
+    private String name;
+    /**
+     * 停车场照片
+     */
+	@Schema(description = "停车场照片",type="String")
+    private String image;
+    /**
+     * 车位数
+     */
+	@Schema(description = "车位数",type="Integer")
+    private Integer parkingSpaceNumber;
+    /**
+     * 已用车位数
+     */
+	@Schema(description = "已用车位数",type="Integer")
+    private Integer usedParkingSpaceNumber;
+    /**
+     * 停车场地址
+     */
+	@Schema(description = "停车场地址",type="String")
+    private String address;
+    /**
+     * 状态(0-正常/1-车位已满/2-暂停营业)
+     */
+	@Schema(description = "状态(0-正常/1-车位已满/2-暂停营业)",type="Integer")
+    private Integer status;
+
+	@Schema(description = "子分类")
+    private List<CarParkVO> children;
+
+
+}

+ 34 - 0
src/main/java/com/qmrb/system/pojo/vo/MyCarPlateNumberVO.java

@@ -0,0 +1,34 @@
+package com.qmrb.system.pojo.vo;
+
+import java.util.List;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+/**
+ * <p>
+ * 我的车牌视图对象
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Data
+public class MyCarPlateNumberVO {
+
+    private Long id;
+    /**
+     * 车牌号
+     */
+	@Schema(description = "车牌号",type="String")
+    private String plateNumber;
+    /**
+     * 用户ID
+     */
+	@Schema(description = "用户ID",type="Long")
+    private Long userId;
+
+	@Schema(description = "子分类")
+    private List<MyCarPlateNumberVO> children;
+
+
+}

+ 2 - 2
src/main/java/com/qmrb/system/pojo/vo/UserInfoVO.java

@@ -30,7 +30,7 @@ public class UserInfoVO {
     @Schema(description="用户权限标识集合")
     private Set<String> perms;
 
-    @Schema(description="部门代码")
-    private String deptCode;
+    // @Schema(description="部门代码")
+    // private String deptCode;
 
 }

+ 41 - 0
src/main/java/com/qmrb/system/service/ICarParkService.java

@@ -0,0 +1,41 @@
+package com.qmrb.system.service;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmrb.system.pojo.entity.CarPark;
+import com.qmrb.system.pojo.form.CarParkForm;
+import com.qmrb.system.pojo.vo.CarParkVO;
+import com.qmrb.system.pojo.query.CarParkQuery;
+import com.qmrb.system.pojo.vo.Option;
+import com.baomidou.mybatisplus.extension.service.IService;
+import jakarta.validation.Valid;
+
+/**
+ * <p>
+ * 停车场表 服务类
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-25
+ */
+public interface ICarParkService extends IService<CarPark> {
+	
+	/**分页查询
+	 * */
+	public Page<CarParkVO> getPage(CarParkQuery queryParams);
+
+	/**
+	 * 保存表单
+	 * */
+	public CarParkForm saveForm(@Valid CarParkForm form);
+	
+	/**更新
+	 * */
+	public boolean updateForm(Long id, CarParkForm form);
+	
+	/**获取表单数据
+	 * */
+	public CarParkForm getFormData(Long id);
+	
+}

+ 41 - 0
src/main/java/com/qmrb/system/service/ICarParkStoredCardService.java

@@ -0,0 +1,41 @@
+package com.qmrb.system.service;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmrb.system.pojo.entity.CarParkStoredCard;
+import com.qmrb.system.pojo.form.CarParkStoredCardForm;
+import com.qmrb.system.pojo.vo.CarParkStoredCardVO;
+import com.qmrb.system.pojo.query.CarParkStoredCardQuery;
+import com.qmrb.system.pojo.vo.Option;
+import com.baomidou.mybatisplus.extension.service.IService;
+import jakarta.validation.Valid;
+
+/**
+ * <p>
+ * 停车储值卡 服务类
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+public interface ICarParkStoredCardService extends IService<CarParkStoredCard> {
+	
+	/**分页查询
+	 * */
+	public Page<CarParkStoredCardVO> getPage(CarParkStoredCardQuery queryParams);
+
+	/**
+	 * 保存表单
+	 * */
+	public CarParkStoredCardForm saveForm(@Valid CarParkStoredCardForm form);
+	
+	/**更新
+	 * */
+	public boolean updateForm(Long id, CarParkStoredCardForm form);
+	
+	/**获取表单数据
+	 * */
+	public CarParkStoredCardForm getFormData(Long id);
+	
+}

+ 41 - 0
src/main/java/com/qmrb/system/service/IMyCarPlateNumberService.java

@@ -0,0 +1,41 @@
+package com.qmrb.system.service;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmrb.system.pojo.entity.MyCarPlateNumber;
+import com.qmrb.system.pojo.form.MyCarPlateNumberForm;
+import com.qmrb.system.pojo.vo.MyCarPlateNumberVO;
+import com.qmrb.system.pojo.query.MyCarPlateNumberQuery;
+import com.qmrb.system.pojo.vo.Option;
+import com.baomidou.mybatisplus.extension.service.IService;
+import jakarta.validation.Valid;
+
+/**
+ * <p>
+ * 我的车牌 服务类
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+public interface IMyCarPlateNumberService extends IService<MyCarPlateNumber> {
+	
+	/**分页查询
+	 * */
+	public Page<MyCarPlateNumberVO> getPage(MyCarPlateNumberQuery queryParams);
+
+	/**
+	 * 保存表单
+	 * */
+	public MyCarPlateNumberForm saveForm(@Valid MyCarPlateNumberForm form);
+	
+	/**更新
+	 * */
+	public boolean updateForm(Long id, MyCarPlateNumberForm form);
+	
+	/**获取表单数据
+	 * */
+	public MyCarPlateNumberForm getFormData(Long id);
+	
+}

+ 102 - 0
src/main/java/com/qmrb/system/service/impl/CarParkServiceImpl.java

@@ -0,0 +1,102 @@
+package com.qmrb.system.service.impl;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.qmrb.system.common.enums.StatusEnum;
+import com.qmrb.system.pojo.vo.Option;
+import com.qmrb.system.converter.CarParkConverter;
+import com.qmrb.system.pojo.entity.CarPark;
+import com.qmrb.system.pojo.form.CarParkForm;
+import com.qmrb.system.pojo.vo.CarParkVO;
+import com.qmrb.system.pojo.query.CarParkQuery;
+import com.qmrb.system.mapper.CarParkMapper;
+import com.qmrb.system.service.ICarParkService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.core.lang.Assert;
+import jakarta.validation.Valid;
+
+/**
+ * <p>
+ * 停车场表 服务实现类
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-25
+ */
+@Service
+public class CarParkServiceImpl extends ServiceImpl<CarParkMapper, CarPark> implements ICarParkService {
+
+	@Autowired
+	private CarParkConverter converter;
+
+	/**分页查询
+	 * */
+	@Override
+	public Page<CarParkVO> getPage(CarParkQuery queryParams) {
+		// 查询参数
+        int pageNum = queryParams.getPageNum();
+        int pageSize = queryParams.getPageSize();
+        Integer status = queryParams.getStatus();
+        //String keywords = queryParams.getKeywords();
+
+        // 查询数据
+        Page<CarPark> dictItemPage = this.page(
+                new Page<>(pageNum, pageSize),
+                new LambdaQueryWrapper<CarPark>()
+                	.eq(status != null, CarPark::getStatus,status)
+                	//.like(StrUtil.isNotBlank(keywords), CarPark::getCategoryName, keywords)
+        );
+
+        // 实体转换
+        Page<CarParkVO> pageResult = converter.entity2Page(dictItemPage);
+        return pageResult;
+	}
+
+	/**
+	 * 保存表单
+	 * */
+	@Override
+	public CarParkForm saveForm(@Valid CarParkForm form) {
+		// 实体对象转换 form->entity
+		CarPark entity = converter.form2Entity(form);
+        // 持久化
+        this.save(entity);
+        CarParkForm result = converter.entity2Form(entity);
+        return result;
+	}
+
+	/**更新
+	 * */
+	@Override
+	public boolean updateForm(Long id, CarParkForm form) {
+		CarPark entity = converter.form2Entity(form);
+		entity.setId(id);
+        boolean result = this.updateById(entity);
+        return result;
+	}
+
+	/**获取表单数据
+	 * */
+	@Override
+	public CarParkForm getFormData(Long id) {
+		// 获取entity
+		CarPark entity = this.getById(id);
+        Assert.isTrue(entity != null, "停车场表不存在");
+
+        // 实体转换
+        CarParkForm form = converter.entity2Form(entity);
+        return form;
+	}
+	
+}

+ 102 - 0
src/main/java/com/qmrb/system/service/impl/CarParkStoredCardServiceImpl.java

@@ -0,0 +1,102 @@
+package com.qmrb.system.service.impl;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.qmrb.system.common.enums.StatusEnum;
+import com.qmrb.system.pojo.vo.Option;
+import com.qmrb.system.converter.CarParkStoredCardConverter;
+import com.qmrb.system.pojo.entity.CarParkStoredCard;
+import com.qmrb.system.pojo.form.CarParkStoredCardForm;
+import com.qmrb.system.pojo.vo.CarParkStoredCardVO;
+import com.qmrb.system.pojo.query.CarParkStoredCardQuery;
+import com.qmrb.system.mapper.CarParkStoredCardMapper;
+import com.qmrb.system.service.ICarParkStoredCardService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.core.lang.Assert;
+import jakarta.validation.Valid;
+
+/**
+ * <p>
+ * 停车储值卡 服务实现类
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Service
+public class CarParkStoredCardServiceImpl extends ServiceImpl<CarParkStoredCardMapper, CarParkStoredCard> implements ICarParkStoredCardService {
+
+	@Autowired
+	private CarParkStoredCardConverter converter;
+
+	/**分页查询
+	 * */
+	@Override
+	public Page<CarParkStoredCardVO> getPage(CarParkStoredCardQuery queryParams) {
+		// 查询参数
+        int pageNum = queryParams.getPageNum();
+        int pageSize = queryParams.getPageSize();
+        //String keywords = queryParams.getKeywords();
+
+        // 查询数据
+        Page<CarParkStoredCard> dictItemPage = this.page(
+                new Page<>(pageNum, pageSize),
+                new LambdaQueryWrapper<CarParkStoredCard>()
+        );
+
+        // 实体转换
+        Page<CarParkStoredCardVO> pageResult = converter.entity2Page(dictItemPage);
+        return pageResult;
+	}
+
+	/**
+	 * 保存表单
+	 * */
+	@Override
+	public CarParkStoredCardForm saveForm(@Valid CarParkStoredCardForm form) {
+		// 实体对象转换 form->entity
+		CarParkStoredCard entity = converter.form2Entity(form);
+        // 持久化
+        this.save(entity);
+        CarParkStoredCardForm result = converter.entity2Form(entity);
+        return result;
+	}
+
+	/**更新
+	 * */
+	@Override
+	public boolean updateForm(Long id, CarParkStoredCardForm form) {
+		CarParkStoredCard entity = converter.form2Entity(form);
+		entity.setId(id);
+        boolean result = this.updateById(entity);
+        return result;
+	}
+
+	/**获取表单数据
+	 * */
+	@Override
+	public CarParkStoredCardForm getFormData(Long id) {
+		// 获取entity
+		CarParkStoredCard entity = this.getById(id);
+        Assert.isTrue(entity != null, "停车储值卡不存在");
+
+        // 实体转换
+        CarParkStoredCardForm form = converter.entity2Form(entity);
+        return form;
+	}
+	
+	
+	
+	
+}

+ 100 - 0
src/main/java/com/qmrb/system/service/impl/MyCarPlateNumberServiceImpl.java

@@ -0,0 +1,100 @@
+package com.qmrb.system.service.impl;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.qmrb.system.common.enums.StatusEnum;
+import com.qmrb.system.pojo.vo.Option;
+import com.qmrb.system.converter.MyCarPlateNumberConverter;
+import com.qmrb.system.pojo.entity.MyCarPlateNumber;
+import com.qmrb.system.pojo.form.MyCarPlateNumberForm;
+import com.qmrb.system.pojo.vo.MyCarPlateNumberVO;
+import com.qmrb.system.pojo.query.MyCarPlateNumberQuery;
+import com.qmrb.system.mapper.MyCarPlateNumberMapper;
+import com.qmrb.system.service.IMyCarPlateNumberService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.core.lang.Assert;
+import jakarta.validation.Valid;
+
+/**
+ * <p>
+ * 我的车牌 服务实现类
+ * </p>
+ *
+ * @author gs
+ * @since 2025-02-24
+ */
+@Service
+public class MyCarPlateNumberServiceImpl extends ServiceImpl<MyCarPlateNumberMapper, MyCarPlateNumber> implements IMyCarPlateNumberService {
+
+	@Autowired
+	private MyCarPlateNumberConverter converter;
+
+	/**分页查询
+	 * */
+	@Override
+	public Page<MyCarPlateNumberVO> getPage(MyCarPlateNumberQuery queryParams) {
+		// 查询参数
+        int pageNum = queryParams.getPageNum();
+        int pageSize = queryParams.getPageSize();
+        //String keywords = queryParams.getKeywords();
+
+        // 查询数据
+        Page<MyCarPlateNumber> dictItemPage = this.page(
+                new Page<>(pageNum, pageSize),
+                new LambdaQueryWrapper<MyCarPlateNumber>()
+        );
+
+        // 实体转换
+        Page<MyCarPlateNumberVO> pageResult = converter.entity2Page(dictItemPage);
+        return pageResult;
+	}
+
+	/**
+	 * 保存表单
+	 * */
+	@Override
+	public MyCarPlateNumberForm saveForm(@Valid MyCarPlateNumberForm form) {
+		// 实体对象转换 form->entity
+		MyCarPlateNumber entity = converter.form2Entity(form);
+        // 持久化
+        this.save(entity);
+        MyCarPlateNumberForm result = converter.entity2Form(entity);
+        return result;
+	}
+
+	/**更新
+	 * */
+	@Override
+	public boolean updateForm(Long id, MyCarPlateNumberForm form) {
+		MyCarPlateNumber entity = converter.form2Entity(form);
+		entity.setId(id);
+        boolean result = this.updateById(entity);
+        return result;
+	}
+
+	/**获取表单数据
+	 * */
+	@Override
+	public MyCarPlateNumberForm getFormData(Long id) {
+		// 获取entity
+		MyCarPlateNumber entity = this.getById(id);
+        Assert.isTrue(entity != null, "我的车牌不存在");
+
+        // 实体转换
+        MyCarPlateNumberForm form = converter.entity2Form(entity);
+        return form;
+	}
+	
+	
+}

+ 5 - 0
src/main/resources/mapper/CarParkMapper.xml

@@ -0,0 +1,5 @@
+<?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.qmrb.system.mapper.CarParkMapper">
+
+</mapper>

+ 5 - 0
src/main/resources/mapper/CarParkStoredCardMapper.xml

@@ -0,0 +1,5 @@
+<?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.qmrb.system.mapper.CarParkStoredCardMapper">
+
+</mapper>

+ 5 - 0
src/main/resources/mapper/MyCarPlateNumberMapper.xml

@@ -0,0 +1,5 @@
+<?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.qmrb.system.mapper.MyCarPlateNumberMapper">
+
+</mapper>