From e8d139ee6449e790e3f8ebb316ac6e3593496ac8 Mon Sep 17 00:00:00 2001 From: zhangli <123879394@qq.com> Date: Wed, 30 Jul 2025 22:35:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=BD=A6=E8=BE=86=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sczx/car/controller/CarController.java | 37 +++++ .../java/com/sczx/car/convert/CarConvert.java | 18 +++ src/main/java/com/sczx/car/dto/CarDTO.java | 138 +++++++++++++++++ .../car/dto/req/CarQueryConditionReq.java | 24 +++ .../java/com/sczx/car/mapper/CarMapper.java | 16 ++ src/main/java/com/sczx/car/po/CarPO.java | 140 ++++++++++++++++++ .../java/com/sczx/car/repository/CarRepo.java | 16 ++ .../sczx/car/repository/impl/CarRepoImpl.java | 20 +++ .../java/com/sczx/car/service/CarService.java | 19 +++ .../sczx/car/service/impl/CarServiceImpl.java | 36 +++++ .../service/impl/RentCarRuleServiceImpl.java | 2 + src/main/resources/mapper/CarMapper.xml | 5 + 12 files changed, 471 insertions(+) create mode 100644 src/main/java/com/sczx/car/controller/CarController.java create mode 100644 src/main/java/com/sczx/car/convert/CarConvert.java create mode 100644 src/main/java/com/sczx/car/dto/CarDTO.java create mode 100644 src/main/java/com/sczx/car/dto/req/CarQueryConditionReq.java create mode 100644 src/main/java/com/sczx/car/mapper/CarMapper.java create mode 100644 src/main/java/com/sczx/car/po/CarPO.java create mode 100644 src/main/java/com/sczx/car/repository/CarRepo.java create mode 100644 src/main/java/com/sczx/car/repository/impl/CarRepoImpl.java create mode 100644 src/main/java/com/sczx/car/service/CarService.java create mode 100644 src/main/java/com/sczx/car/service/impl/CarServiceImpl.java create mode 100644 src/main/resources/mapper/CarMapper.xml diff --git a/src/main/java/com/sczx/car/controller/CarController.java b/src/main/java/com/sczx/car/controller/CarController.java new file mode 100644 index 0000000..9c29b3a --- /dev/null +++ b/src/main/java/com/sczx/car/controller/CarController.java @@ -0,0 +1,37 @@ +package com.sczx.car.controller; + + +import com.sczx.car.common.Result; +import com.sczx.car.dto.CarDTO; +import com.sczx.car.dto.RentCarRuleDTO; +import com.sczx.car.dto.req.CarQueryConditionReq; +import com.sczx.car.service.RentCarRuleService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.apache.ibatis.annotations.Param; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +/** + *
+ * 车型表 前端控制器 + *
+ * + * @author zhangli + * @since 2025-07-12 19:55:31 + */ +@Api(value = "车辆接口", tags = "车辆接口") +@RestController +@RequestMapping("/car") +public class CarController { + + @Autowired + private RentCarRuleService rentCarRuleService; + + + @ApiOperation(value = "根据查询条件查询车辆") + @GetMapping("/getCarByCarCondition") + public Result+ * 电动车信息表 + *
+ * + * @author zhangli + * @since 2025-07-30 17:05:03 + */ + +@Data +@ApiModel(value = "CarDTO对象", description = "电动车信息表") +public class CarDTO{ + + @ApiModelProperty("主键ID") + private Long id; + + @ApiModelProperty("车架号(VIN)") + private String vin; + + @ApiModelProperty("车牌号码") + private String licensePlate; + + @ApiModelProperty("车辆品牌ID") + private Long brandId; + + @ApiModelProperty("车辆品牌名称") + private String brandName; + + @ApiModelProperty("车辆型号ID") + private Long modelId; + + @ApiModelProperty("车辆型号名称") + private String modelName; + + @ApiModelProperty("支持电池类型(48V标准版/100km,48V超长版/200km等)") + private String batteryType; + + @ApiModelProperty("整车重量(kg)") + private String weight; + + @ApiModelProperty("最高时速(km/h)") + private String maxSpeed; + + @ApiModelProperty("LOT识别号") + private String lotNumber; + + @ApiModelProperty("采购日期") + private LocalDateTime purchaseDate; + + @ApiModelProperty("采购价格(元)") + private BigDecimal purchasePrice; + + @ApiModelProperty("车辆归属(0归属于合,1归属运营商)") + private String belongType; + + @ApiModelProperty("车辆图片(多个图片用逗号分隔)") + private String images; + + @ApiModelProperty("BRS车辆状态(空闲/使用中/维修中/丢失报损等)") + private String brsStatus; + + @ApiModelProperty("IoT设备状态") + private String iotStatus; + + @ApiModelProperty("IoT识别码") + private String iotCode; + + @ApiModelProperty("所属运营商ID") + private Long operatorId; + + @ApiModelProperty("所属运营商名称") + private String operatorName; + + @ApiModelProperty("所属门店ID") + private Long storeId; + + @ApiModelProperty("所属门店名称") + private String storeName; + + @ApiModelProperty("应用套餐ID") + private Long packageId; + + @ApiModelProperty("应用套餐名称") + private String packageName; + + @ApiModelProperty("状态(0正常 1停用)") + private String status; + + @ApiModelProperty("删除标志(0代表存在 2代表删除)") + private String delFlag; + + @ApiModelProperty("创建者") + private String createBy; + + @ApiModelProperty("创建时间") + private LocalDateTime createTime; + + @ApiModelProperty("更新者") + private String updateBy; + + @ApiModelProperty("更新时间") + private LocalDateTime updateTime; + + @ApiModelProperty("备注信息") + private String remark; + + @ApiModelProperty("扩展字段1") + private String extend1; + + @ApiModelProperty("扩展字段2") + private String extend2; + + @ApiModelProperty("扩展字段3") + private String extend3; + + @ApiModelProperty("扩展字段4") + private String extend4; + + @ApiModelProperty("扩展字段5") + private String extend5; + + +} diff --git a/src/main/java/com/sczx/car/dto/req/CarQueryConditionReq.java b/src/main/java/com/sczx/car/dto/req/CarQueryConditionReq.java new file mode 100644 index 0000000..1129739 --- /dev/null +++ b/src/main/java/com/sczx/car/dto/req/CarQueryConditionReq.java @@ -0,0 +1,24 @@ +package com.sczx.car.dto.req; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author: 张黎 + * @Date: 2025/07/30/17:13 + * @Description: + */ +@Data +@ApiModel(value = "车辆查询请求", description = "CarQueryConditionReq对象") +public class CarQueryConditionReq { + + @ApiModelProperty(value = "车辆ID") + private Long carId; + + @ApiModelProperty(value = "车牌号码") + private String licensePlate; + + @ApiModelProperty(value = "车架号(VIN)") + private String vin; +} diff --git a/src/main/java/com/sczx/car/mapper/CarMapper.java b/src/main/java/com/sczx/car/mapper/CarMapper.java new file mode 100644 index 0000000..219044c --- /dev/null +++ b/src/main/java/com/sczx/car/mapper/CarMapper.java @@ -0,0 +1,16 @@ +package com.sczx.car.mapper; + +import com.sczx.car.po.CarPO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *+ * 电动车信息表 Mapper 接口 + *
+ * + * @author zhangli + * @since 2025-07-30 17:05:03 + */ +public interface CarMapper extends BaseMapper+ * 电动车信息表 + *
+ * + * @author zhangli + * @since 2025-07-30 17:05:03 + */ +@Getter +@Setter +@TableName("zc_car") +@ApiModel(value = "CarPO对象", description = "电动车信息表") +public class CarPO implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键ID") + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("车架号(VIN)") + private String vin; + + @ApiModelProperty("车牌号码") + private String licensePlate; + + @ApiModelProperty("车辆品牌ID") + private Long brandId; + + @ApiModelProperty("车辆品牌名称") + private String brandName; + + @ApiModelProperty("车辆型号ID") + private Long modelId; + + @ApiModelProperty("车辆型号名称") + private String modelName; + + @ApiModelProperty("支持电池类型(48V标准版/100km,48V超长版/200km等)") + private String batteryType; + + @ApiModelProperty("整车重量(kg)") + private String weight; + + @ApiModelProperty("最高时速(km/h)") + private String maxSpeed; + + @ApiModelProperty("LOT识别号") + private String lotNumber; + + @ApiModelProperty("采购日期") + private LocalDateTime purchaseDate; + + @ApiModelProperty("采购价格(元)") + private BigDecimal purchasePrice; + + @ApiModelProperty("车辆归属(0归属于合,1归属运营商)") + private String belongType; + + @ApiModelProperty("车辆图片(多个图片用逗号分隔)") + private String images; + + @ApiModelProperty("BRS车辆状态(空闲/使用中/维修中/丢失报损等)") + private String brsStatus; + + @ApiModelProperty("IoT设备状态") + private String iotStatus; + + @ApiModelProperty("IoT识别码") + private String iotCode; + + @ApiModelProperty("所属运营商ID") + private Long operatorId; + + @ApiModelProperty("所属运营商名称") + private String operatorName; + + @ApiModelProperty("所属门店ID") + private Long storeId; + + @ApiModelProperty("所属门店名称") + private String storeName; + + @ApiModelProperty("应用套餐ID") + private Long packageId; + + @ApiModelProperty("应用套餐名称") + private String packageName; + + @ApiModelProperty("状态(0正常 1停用)") + private String status; + + @ApiModelProperty("删除标志(0代表存在 2代表删除)") + private String delFlag; + + @ApiModelProperty("创建者") + private String createBy; + + @ApiModelProperty("创建时间") + private LocalDateTime createTime; + + @ApiModelProperty("更新者") + private String updateBy; + + @ApiModelProperty("更新时间") + private LocalDateTime updateTime; + + @ApiModelProperty("备注信息") + private String remark; + + @ApiModelProperty("扩展字段1") + private String extend1; + + @ApiModelProperty("扩展字段2") + private String extend2; + + @ApiModelProperty("扩展字段3") + private String extend3; + + @ApiModelProperty("扩展字段4") + private String extend4; + + @ApiModelProperty("扩展字段5") + private String extend5; + + +} diff --git a/src/main/java/com/sczx/car/repository/CarRepo.java b/src/main/java/com/sczx/car/repository/CarRepo.java new file mode 100644 index 0000000..fc171b0 --- /dev/null +++ b/src/main/java/com/sczx/car/repository/CarRepo.java @@ -0,0 +1,16 @@ +package com.sczx.car.repository; + +import com.sczx.car.po.CarPO; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *+ * 电动车信息表 服务类 + *
+ * + * @author zhangli + * @since 2025-07-30 17:05:03 + */ +public interface CarRepo extends IService+ * 电动车信息表 服务实现类 + *
+ * + * @author zhangli + * @since 2025-07-30 17:05:03 + */ +@Service +public class CarRepoImpl extends ServiceImpl