From e55ff5d7f7608480eec493aad1030a662ec08fb5 Mon Sep 17 00:00:00 2001 From: PQZ <pangqingzhou@gmail.com> Date: Fri, 11 Oct 2024 14:03:58 +0800 Subject: [PATCH] 1 --- .../iocoder/yudao/common/BaseConstants.java | 6 + .../controller/admin/UserCarController.java | 21 ++++ .../yudao/module/custom/entity/UserCar.java | 119 ++++++++++++++++++ .../module/custom/mapper/UserCarMapper.java | 16 +++ .../module/custom/service/UserCarService.java | 14 +++ .../service/impl/UserCarServiceImpl.java | 23 ++++ .../resources/mapper/custom/UserCarMapper.xml | 12 ++ .../service/RepairRecordsItemService.java | 12 +- .../base/service/RepairRecordsService.java | 7 +- .../impl/RepairRecordsItemServiceImpl.java | 33 +++++ .../impl/RepairRecordsServiceImpl.java | 14 +-- .../base/vo/RepairRecordsSaveReqVO.java | 2 + 12 files changed, 268 insertions(+), 11 deletions(-) create mode 100644 dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/UserCarController.java create mode 100644 dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/entity/UserCar.java create mode 100644 dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/mapper/UserCarMapper.java create mode 100644 dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/UserCarService.java create mode 100644 dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/UserCarServiceImpl.java create mode 100644 dl-module-base/src/main/resources/mapper/custom/UserCarMapper.xml diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java b/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java index f65c46be..670e7666 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java @@ -94,5 +94,11 @@ public class BaseConstants { public static final String ORDER_KKYL = "3"; /**订单店铺名称*/ public static final String ORDER_TENANT_NAME = "蓝安集团"; + /**工单*/ + public static final String REPAIR_RECORD_TYPE_TICKET = "ticket"; + /**工单附属项目*/ + public static final String REPAIR_RECORD_TYPE_REPAIR_ITEM = "repairItem"; + /**维修记录*/ + public static final String REPAIR_RECORD_TYPE_RECORD = "record"; } diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/UserCarController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/UserCarController.java new file mode 100644 index 00000000..06d28ae7 --- /dev/null +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/UserCarController.java @@ -0,0 +1,21 @@ +package cn.iocoder.yudao.module.custom.controller.admin; + +import cn.iocoder.yudao.module.custom.service.UserCarService; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Tag(name = "管理后台 - 用户车辆信息表--用户个人录入的") +@RestController +@RequestMapping("/base/user-car") +@Validated +public class UserCarController { + + @Resource + private UserCarService userCarService; + + +} \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/entity/UserCar.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/entity/UserCar.java new file mode 100644 index 00000000..e5dbe0db --- /dev/null +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/entity/UserCar.java @@ -0,0 +1,119 @@ +package cn.iocoder.yudao.module.custom.entity; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; + +/** + * 用户车辆信息表--用户个人录入的 DO + * + * @author vinjor-M + */ +@TableName("base_user_car") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class UserCar extends BaseDO { + + /** + * 主键标识 + */ + @TableId(type = IdType.ASSIGN_UUID) + private String id; + /** + * 发动机号码 + */ + private String engineNumber; + /** + * 车架号 + */ + private String vin; + /** + * 车牌号 + */ + private String licenseNumber; + /** + * 车辆品牌 + */ + private String carBrand; + /** + * 车辆型号 + */ + private String carModel; + /** + * 车辆性质:营运 非营运等 + */ + private String carNature; + /** + * 车辆类别:私家车 货车 教练车 公务车 出租车 + */ + private String carCategory; + /** + * 行驶证图片 + */ + private String carLicenseImg; + /** + * 车辆注册日期 + */ + private LocalDateTime carRegisterDate; + /** + * 保养日期 + */ + private LocalDateTime maintenanceDate; + /** + * 保养里程 + */ + private Long maintenanceMileage; + /** + * 年检日期 + */ + private LocalDateTime inspectionDate; + /** + * 保险日期 + */ + private LocalDateTime insuranceDate; + /** + * 二级维护时间 + */ + private LocalDateTime checkDate; + /** + * 下次保养日期 + */ + private LocalDateTime nextMaintenanceDate; + /** + * 下次保养里程 + */ + private Long nextMaintenanceMileage; + /** + * 下次年检日期 + */ + private LocalDateTime nextInspectionDate; + /** + * 保险到期日期 + */ + private LocalDateTime insuranceExpiryDate; + /** + * 下次二级维护时间 + */ + private LocalDateTime nextCheckDate; + /** + * 是否车主 + */ + private String isOwner; + +} \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/mapper/UserCarMapper.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/mapper/UserCarMapper.java new file mode 100644 index 00000000..6954e49e --- /dev/null +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/mapper/UserCarMapper.java @@ -0,0 +1,16 @@ +package cn.iocoder.yudao.module.custom.mapper; + +import cn.iocoder.yudao.module.custom.entity.UserCar; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + * 用户车辆信息表--用户个人录入的 Mapper + * + * @author vinjor-M + */ +@Mapper +public interface UserCarMapper extends BaseMapper<UserCar> { + + +} \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/UserCarService.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/UserCarService.java new file mode 100644 index 00000000..df877698 --- /dev/null +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/UserCarService.java @@ -0,0 +1,14 @@ +package cn.iocoder.yudao.module.custom.service; + +import cn.iocoder.yudao.module.custom.entity.UserCar; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * 用户车辆信息表--用户个人录入的 Service 接口 + * + * @author vinjor-M + */ +public interface UserCarService extends IService<UserCar> { + + +} \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/UserCarServiceImpl.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/UserCarServiceImpl.java new file mode 100644 index 00000000..ac74f5d9 --- /dev/null +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/service/impl/UserCarServiceImpl.java @@ -0,0 +1,23 @@ +package cn.iocoder.yudao.module.custom.service.impl; + +import cn.iocoder.yudao.module.custom.entity.UserCar; +import cn.iocoder.yudao.module.custom.mapper.UserCarMapper; +import cn.iocoder.yudao.module.custom.service.UserCarService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import org.springframework.validation.annotation.Validated; + +import javax.annotation.Resource; + +/** + * 用户车辆信息表--用户个人录入的 Service 实现类 + * + * @author vinjor-M + */ +@Service +@Validated +public class UserCarServiceImpl extends ServiceImpl<UserCarMapper, UserCar> implements UserCarService { + + @Resource + private UserCarMapper userCarMapper; +} \ No newline at end of file diff --git a/dl-module-base/src/main/resources/mapper/custom/UserCarMapper.xml b/dl-module-base/src/main/resources/mapper/custom/UserCarMapper.xml new file mode 100644 index 00000000..248fa658 --- /dev/null +++ b/dl-module-base/src/main/resources/mapper/custom/UserCarMapper.xml @@ -0,0 +1,12 @@ +<?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="cn.iocoder.yudao.module.custom.mapper.UserCarMapper"> + + <!-- + 一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。 + 无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。 + 代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。 + 文档可见:https://www.iocoder.cn/MyBatis/x-plugins/ + --> + +</mapper> \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsItemService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsItemService.java index 57b2f2c2..56da29c6 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsItemService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsItemService.java @@ -10,8 +10,14 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface RepairRecordsItemService extends IService<RepairRecordsItem> { - - - + /** + * 根据主表id删除附件 + * + * @param mainType ticket:工单;repairItem:工单附属项目;record:维修记录 + * @param mainId 主表id + * @author PQZ + * @date 11:43 2024/10/11 + **/ + void removeByMainId(String mainType, String mainId); } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsService.java index e1d42d02..99e4c745 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsService.java @@ -19,7 +19,12 @@ import java.util.List; */ public interface RepairRecordsService extends IService<RepairRecords> { - + /** + * 创建维修记录 + * @author PQZ + * @date 11:41 2024/10/11 + * @param saveReqVO RepairRecordsSaveReqVO实体 + **/ void saveRepairRecord(RepairRecordsSaveReqVO saveReqVO); } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsItemServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsItemServiceImpl.java index 4aa60220..c8271100 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsItemServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsItemServiceImpl.java @@ -1,14 +1,18 @@ package cn.iocoder.yudao.module.base.service.impl; +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.base.entity.RepairRecordsItem; import cn.iocoder.yudao.module.base.mapper.RepairRecordsItemMapper; import cn.iocoder.yudao.module.base.service.RepairRecordsItemService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import static cn.iocoder.yudao.common.BaseConstants.*; + /** * 维修记录 Service 实现类 * @@ -22,4 +26,33 @@ public class RepairRecordsItemServiceImpl extends ServiceImpl<RepairRecordsItemM private RepairRecordsItemMapper itemMapper; + /** + * 根据主表id删除附件 + * + * @param mainType ticket:工单;repairItem:工单附属项目;record:维修记录 + * @param mainId 主表id + * @author PQZ + * @date 11:43 2024/10/11 + **/ + @Override + public void removeByMainId(String mainType, String mainId) { + LambdaQueryWrapper<RepairRecordsItem> lambdaQueryWrapper = new LambdaQueryWrapper<>(); + switch (mainType) { + //匹配根据工单表id删除条件 + case REPAIR_RECORD_TYPE_TICKET: + lambdaQueryWrapper.eq(RepairRecordsItem::getTicketId, mainId); + break; + //匹配根据工单子表id删除条件 + case REPAIR_RECORD_TYPE_REPAIR_ITEM: + lambdaQueryWrapper.eq(RepairRecordsItem::getRepairItemId,mainId); + break; + //匹配根据根据记录表id删除条件 + case REPAIR_RECORD_TYPE_RECORD: + lambdaQueryWrapper.eq(RepairRecordsItem::getRecordId,mainId); + break; + default: + break; + } + remove(lambdaQueryWrapper); + } } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsServiceImpl.java index 200a65cb..68a630cb 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsServiceImpl.java @@ -1,21 +1,14 @@ package cn.iocoder.yudao.module.base.service.impl; -import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.module.base.entity.RepairRecords; import cn.iocoder.yudao.module.base.mapper.RepairRecordsMapper; import cn.iocoder.yudao.module.base.service.RepairRecordsService; -import cn.iocoder.yudao.module.base.vo.RepairRecordsPageReqVO; -import cn.iocoder.yudao.module.base.vo.RepairRecordsRespVO; import cn.iocoder.yudao.module.base.vo.RepairRecordsSaveReqVO; -import cn.iocoder.yudao.module.base.vo.RepairWorkerPageReqVO; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; -import java.util.List; /** * 维修记录 Service 实现类 @@ -30,6 +23,13 @@ public class RepairRecordsServiceImpl extends ServiceImpl<RepairRecordsMapper, R private RepairRecordsMapper repairRecordsMapper; + /** + * 创建维修记录 + * + * @param saveReqVO RepairRecordsSaveReqVO实体 + * @author PQZ + * @date 11:41 2024/10/11 + **/ @Override public void saveRepairRecord(RepairRecordsSaveReqVO saveReqVO) { diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/vo/RepairRecordsSaveReqVO.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/vo/RepairRecordsSaveReqVO.java index d4eda512..fc4d3090 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/vo/RepairRecordsSaveReqVO.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/vo/RepairRecordsSaveReqVO.java @@ -13,6 +13,8 @@ public class RepairRecordsSaveReqVO extends RepairRecords { /**维修记录附件表*/ List<RepairRecordsItem> itemList; + /**当前维修记录中需要保存的附件信息*/ + String images; }