From ae265295dd977b0d64309b0471e8d3b0d626ccf3 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期三, 18 十二月 2024 19:03:02 +0800
Subject: [PATCH] 运输管理接口

---
 medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarVO.java                              |   52 +
 medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwProtectionEquipmentServiceImpl.java         |   98 +++
 medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarMaintenanceService.java                |   34 +
 medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCheckoutRecordServiceImpl.java              |   54 +
 medicalWaste-system/src/main/java/com/sinata/system/domain/MwProtectionEquipmentRecord.java                    |    4 
 medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarService.java                           |   36 +
 medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwProtectionEquipmentRecordServiceImpl.java   |    1 
 medicalWaste-system/src/main/java/com/sinata/system/service/MwProtectionEquipmentRecordService.java            |    2 
 medicalWaste-system/src/main/resources/mapper/system/MwTransitCarMapper.xml                                    |   60 ++
 medicalWaste-system/src/main/java/com/sinata/system/domain/query/TransitCarQuery.java                          |   32 +
 medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarAnnualInspectionVO.java              |   41 +
 medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarMaintenanceVO.java                   |   40 +
 medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarAnnualInspectionServiceImpl.java  |   59 ++
 medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarMaintenanceServiceImpl.java       |   63 ++
 medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwProtectionEquipmentQuery.java               |   28 
 medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarAnnualInspectionDTO.java            |   43 +
 medicalWaste-system/src/main/java/com/sinata/system/mapper/MwTransitCarMapper.java                             |   20 
 medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitCarAnnualInspectionQuery.java        |   25 
 medicalWaste-system/src/main/java/com/sinata/system/domain/query/CheckoutRecordQuery.java                      |    6 
 medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarServiceImpl.java                  |   69 ++
 medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarDTO.java                            |   48 +
 medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitRecordVO.java                           |    5 
 medicalWaste-system/src/main/java/com/sinata/system/domain/MwTransitCar.java                                   |    4 
 medicalWaste-system/src/main/java/com/sinata/system/service/MwProtectionEquipmentService.java                  |   42 +
 medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarMaintenanceDTO.java                 |   45 +
 medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarAnnualInspectionController.java |   83 ++
 medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwProtectionEquipmentRecordDTO.java             |   26 
 medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarMaintenanceController.java      |   85 ++
 medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwProtectionEquipmentDTO.java                   |   37 +
 medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarAnnualInspectionService.java           |   33 +
 medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitCarMaintenanceQuery.java             |   25 
 medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwProtectionEquipmentController.java        |   96 +++
 medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwCheckoutRecordVO.java                          |    8 
 medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarController.java                 |   86 ++
 medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitRecordQuery.java                     |    3 
 medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwCheckoutRecordController.java             |   41 +
 medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCheckoutRecordMapper.java                         |   27 
 medicalWaste-system/src/main/resources/mapper/system/MwProtectionEquipmentMapper.xml                           |   28 
 medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwCheckoutRecordExcelVO.java                     |   57 +
 medicalWaste-system/src/main/java/com/sinata/system/domain/MwProtectionEquipment.java                          |    4 
 medicalWaste-system/src/main/java/com/sinata/system/service/MwCheckoutRecordService.java                       |   27 
 medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwProtectionEquipmentVO.java                     |   41 +
 medicalWaste-system/src/main/java/com/sinata/system/mapper/MwProtectionEquipmentMapper.java                    |   14 
 medicalWaste-system/src/main/resources/mapper/system/MwCheckoutRecordMapper.xml                                |   88 ++
 44 files changed, 1,705 insertions(+), 15 deletions(-)

diff --git a/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwCheckoutRecordController.java b/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwCheckoutRecordController.java
index 278ca04..287e309 100644
--- a/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwCheckoutRecordController.java
+++ b/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwCheckoutRecordController.java
@@ -21,7 +21,9 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
+import java.io.IOException;
 
 /**
  * <p>
@@ -51,6 +53,21 @@
         return R.ok(mwCheckoutRecordService.pageHospitalTransitList(query));
     }
 
+    /**
+     * 转运记录导出
+     *
+     * @param query
+     * @param response
+     */
+    @PostMapping("/hospital/export")
+    @ApiOperation("转运记录导出")
+    public void checkoutRecordExport(@RequestBody CheckoutRecordQuery query, HttpServletResponse response) {
+        try {
+            mwCheckoutRecordService.checkoutRecordExport(query, response);
+        } catch (IOException e) {
+            throw new RuntimeException(e);
+        }
+    }
     /**
      * 转运记录详情
      *
@@ -86,4 +103,28 @@
     public R<PageDTO<MwTransitRecordVO>> transitPageList(@Valid @RequestBody MwTransitRecordQuery query) {
         return R.ok(mwCheckoutRecordService.transitPageList(query));
     }
+
+    /**
+     * 运输记录详情
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("/transit/detail/{id}")
+    @ApiOperation("运输记录详情")
+    public R<MwTransitRecordVO> transitDetail(@ApiParam(name = "id", value = "运输记录id", required = true) @PathVariable("id") Long id) {
+        return R.ok(mwCheckoutRecordService.transitDetail(id));
+    }
+
+    /**
+     * 运输记录详情分页列表
+     *
+     * @param query
+     * @return
+     */
+    @PostMapping("/transit/detailPage")
+    @ApiOperation("运输记录详情分页列表")
+    public R<PageDTO<MwMedicalWasteBoxVO>> transitDetailPage(@Valid @RequestBody MwTransitRecordQuery query) {
+        return R.ok(mwCheckoutRecordService.transitDetailPageList(query));
+    }
 }
diff --git a/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwProtectionEquipmentController.java b/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwProtectionEquipmentController.java
index c9cf32d..66a0642 100644
--- a/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwProtectionEquipmentController.java
+++ b/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwProtectionEquipmentController.java
@@ -1,7 +1,26 @@
 package com.sinata.web.controller.backend;
 
+import com.sinata.common.core.domain.R;
+import com.sinata.common.entity.PageDTO;
+import com.sinata.system.domain.dto.MwProtectionEquipmentDTO;
+import com.sinata.system.domain.dto.MwProtectionEquipmentRecordDTO;
+import com.sinata.system.domain.query.MwProtectionEquipmentQuery;
+import com.sinata.system.domain.vo.MwProtectionEquipmentVO;
+import com.sinata.system.service.MwProtectionEquipmentService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.RequiredArgsConstructor;
+import org.springframework.validation.annotation.Validated;
+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.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+
+import javax.validation.Valid;
 
 /**
  * <p>
@@ -11,8 +30,85 @@
  * @author mitao
  * @since 2024-12-02
  */
+@Validated
 @RestController
+@RequiredArgsConstructor
+@Api(tags = {"防护器具相关接口"})
 @RequestMapping("/backend/mwProtectionEquipment")
 public class MwProtectionEquipmentController {
+    private final MwProtectionEquipmentService mwProtectionEquipmentService;
+
+    /**
+     * 防护器具分页列表
+     *
+     * @param query
+     * @return
+     */
+    @PostMapping("/page")
+    @ApiOperation("防护器具分页列表")
+    public R<PageDTO<MwProtectionEquipmentVO>> pageList(@Valid @RequestBody MwProtectionEquipmentQuery query) {
+        return R.ok(mwProtectionEquipmentService.pageList(query));
+    }
+
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("/{id}")
+    @ApiOperation("详情")
+    public R<MwProtectionEquipmentVO> detail(@ApiParam(name = "id", value = "防护器具id", required = true) @PathVariable("id") Long id) {
+        return R.ok(mwProtectionEquipmentService.detail(id));
+    }
+
+    /**
+     * 新增防护器具
+     *
+     * @param dto
+     * @return
+     */
+    @PostMapping("/add")
+    @ApiOperation("新增防护器具")
+    public R<?> add(@Valid @RequestBody MwProtectionEquipmentDTO dto) {
+        mwProtectionEquipmentService.add(dto);
+        return R.ok();
+    }
+
+    /**
+     * 编辑
+     *
+     * @param dto
+     * @return
+     */
+    @PostMapping("/edit")
+    @ApiOperation("编辑")
+    public R<?> edit(@Valid @RequestBody MwProtectionEquipmentDTO dto) {
+        mwProtectionEquipmentService.edit(dto);
+        return R.ok();
+    }
+
+    /**
+     * @param id
+     * @return
+     */
+    @DeleteMapping("/{id}")
+    @ApiOperation("删除")
+    public R<?> delete(@ApiParam(name = "id", value = "防护器具id", required = true) @PathVariable("id") Long id) {
+        mwProtectionEquipmentService.removeById(id);
+        return R.ok();
+    }
+
+    /**
+     * 增加库存
+     *
+     * @param dto
+     */
+    @PostMapping("/addStock")
+    @ApiOperation("增加库存")
+    public R<?> addStock(@Valid @RequestBody MwProtectionEquipmentRecordDTO dto) {
+        mwProtectionEquipmentService.addStock(dto);
+        return R.ok();
+    }
 
 }
diff --git a/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarAnnualInspectionController.java b/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarAnnualInspectionController.java
index b3b8ca5..6c15f02 100644
--- a/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarAnnualInspectionController.java
+++ b/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarAnnualInspectionController.java
@@ -1,7 +1,25 @@
 package com.sinata.web.controller.backend;
 
+import com.sinata.common.core.domain.R;
+import com.sinata.common.entity.PageDTO;
+import com.sinata.system.domain.dto.MwTransitCarAnnualInspectionDTO;
+import com.sinata.system.domain.query.MwTransitCarAnnualInspectionQuery;
+import com.sinata.system.domain.vo.MwTransitCarAnnualInspectionVO;
+import com.sinata.system.service.MwTransitCarAnnualInspectionService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.RequiredArgsConstructor;
+import org.springframework.validation.annotation.Validated;
+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.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+
+import javax.validation.Valid;
 
 /**
  * <p>
@@ -11,8 +29,73 @@
  * @author mitao
  * @since 2024-12-02
  */
+@Api(tags = {"车辆年检记录相关接口"})
+@Validated
 @RestController
+@RequiredArgsConstructor
 @RequestMapping("/backend/mwTransitCarAnnualInspection")
 public class MwTransitCarAnnualInspectionController {
+    private final MwTransitCarAnnualInspectionService mwTransitCarAnnualInspectionService;
 
+    /**
+     * 年检记录分页列表
+     *
+     * @param query
+     * @return
+     */
+    @PostMapping("/page")
+    @ApiOperation("年检记录分页列表")
+    public R<PageDTO<MwTransitCarAnnualInspectionVO>> pageList(@Valid @RequestBody MwTransitCarAnnualInspectionQuery query) {
+        return R.ok(mwTransitCarAnnualInspectionService.pageList(query));
+    }
+
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("/{id}")
+    @ApiOperation("详情")
+    public R<MwTransitCarAnnualInspectionVO> detail(@ApiParam(name = "id", value = "年检记录id", required = true) @PathVariable("id") Long id) {
+        return R.ok(mwTransitCarAnnualInspectionService.detail(id));
+    }
+
+    /**
+     * 新增年检记录
+     *
+     * @param dto
+     */
+    @PostMapping("/add")
+    @ApiOperation("新增年检记录")
+    public R<?> add(@Valid @RequestBody MwTransitCarAnnualInspectionDTO dto) {
+        mwTransitCarAnnualInspectionService.add(dto);
+        return R.ok();
+    }
+
+    /**
+     * 编辑年检记录
+     *
+     * @param dto
+     * @return
+     */
+    @PostMapping("/edit")
+    @ApiOperation("编辑年检记录")
+    public R<?> edit(@Valid @RequestBody MwTransitCarAnnualInspectionDTO dto) {
+        mwTransitCarAnnualInspectionService.edit(dto);
+        return R.ok();
+    }
+
+    /**
+     * 删除
+     *
+     * @param id
+     * @return
+     */
+    @DeleteMapping("/{id}")
+    @ApiOperation("删除")
+    public R<?> delete(@ApiParam(name = "id", value = "年检记录id", required = true) @PathVariable("id") Long id) {
+        mwTransitCarAnnualInspectionService.removeById(id);
+        return R.ok();
+    }
 }
diff --git a/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarController.java b/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarController.java
index f0c24de..574dac9 100644
--- a/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarController.java
+++ b/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarController.java
@@ -1,7 +1,25 @@
 package com.sinata.web.controller.backend;
 
+import com.sinata.common.core.domain.R;
+import com.sinata.common.entity.PageDTO;
+import com.sinata.system.domain.dto.MwTransitCarDTO;
+import com.sinata.system.domain.query.TransitCarQuery;
+import com.sinata.system.domain.vo.MwTransitCarVO;
+import com.sinata.system.service.MwTransitCarService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.RequiredArgsConstructor;
+import org.springframework.validation.annotation.Validated;
+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.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+
+import javax.validation.Valid;
 
 /**
  * <p>
@@ -11,8 +29,76 @@
  * @author mitao
  * @since 2024-12-02
  */
+@Validated
 @RestController
+@RequiredArgsConstructor
+@Api(tags = {"车辆管理相关接口"})
 @RequestMapping("/backend/mwTransitCar")
 public class MwTransitCarController {
+    private final MwTransitCarService mwTransitCarService;
+
+    /**
+     * 车辆分页列表
+     *
+     * @param query
+     * @return
+     */
+    @PostMapping("/page")
+    @ApiOperation("车辆分页列表")
+    public R<PageDTO<MwTransitCarVO>> pageList(@Valid @RequestBody TransitCarQuery query) {
+        return R.ok(mwTransitCarService.pageList(query));
+    }
+
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("/{id}")
+    @ApiOperation("详情")
+    public R<MwTransitCarVO> detail(@ApiParam(name = "id", value = "车辆id", required = true) @PathVariable("id") Long id) {
+        return R.ok(mwTransitCarService.detail(id));
+    }
+
+    /**
+     * 新增车辆
+     *
+     * @param dto
+     * @return
+     */
+    @PostMapping("/add")
+    @ApiOperation("新增车辆")
+    public R<?> add(@Valid @RequestBody MwTransitCarDTO dto) {
+        mwTransitCarService.add(dto);
+        return R.ok();
+    }
+
+    /**
+     * 编辑车辆
+     *
+     * @param dto
+     * @return
+     */
+    @PostMapping("/edit")
+    @ApiOperation("编辑车辆")
+    public R<?> edit(@Valid @RequestBody MwTransitCarDTO dto) {
+        mwTransitCarService.edit(dto);
+        return R.ok();
+    }
+
+    /**
+     * 删除
+     *
+     * @param id
+     * @return
+     */
+    @DeleteMapping("/{id}")
+    @ApiOperation("删除")
+    public R<?> delete(@ApiParam(name = "id", value = "车辆id", required = true) @PathVariable("id") Long id) {
+        mwTransitCarService.removeById(id);
+        return R.ok();
+    }
+
 
 }
diff --git a/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarMaintenanceController.java b/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarMaintenanceController.java
index b1fd047..49c44f3 100644
--- a/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarMaintenanceController.java
+++ b/medicalWaste-admin/src/main/java/com/sinata/web/controller/backend/MwTransitCarMaintenanceController.java
@@ -1,7 +1,25 @@
 package com.sinata.web.controller.backend;
 
+import com.sinata.common.core.domain.R;
+import com.sinata.common.entity.PageDTO;
+import com.sinata.system.domain.dto.MwTransitCarMaintenanceDTO;
+import com.sinata.system.domain.query.MwTransitCarMaintenanceQuery;
+import com.sinata.system.domain.vo.MwTransitCarMaintenanceVO;
+import com.sinata.system.service.MwTransitCarMaintenanceService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.RequiredArgsConstructor;
+import org.springframework.validation.annotation.Validated;
+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.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+
+import javax.validation.Valid;
 
 /**
  * <p>
@@ -11,8 +29,75 @@
  * @author mitao
  * @since 2024-12-02
  */
+@Validated
 @RestController
+@RequiredArgsConstructor
+@Api(tags = {"车辆保养记录相关接口"})
 @RequestMapping("/backend/mwTransitCarMaintenance")
 public class MwTransitCarMaintenanceController {
+    private final MwTransitCarMaintenanceService mwTransitCarMaintenanceService;
+
+    /**
+     * 保养记录分页列表
+     *
+     * @param query
+     * @return
+     */
+    @PostMapping("/page")
+    @ApiOperation("保养记录分页列表")
+    public R<PageDTO<MwTransitCarMaintenanceVO>> pageList(@Valid @RequestBody MwTransitCarMaintenanceQuery query) {
+        return R.ok(mwTransitCarMaintenanceService.pageList(query));
+    }
+
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("/{id}")
+    @ApiOperation("详情")
+    public R<MwTransitCarMaintenanceVO> detail(@ApiParam(name = "id", value = "保养记录id", required = true) @PathVariable Long id) {
+        return R.ok(mwTransitCarMaintenanceService.detail(id));
+    }
+
+    /**
+     * 新增
+     *
+     * @param dto
+     * @return
+     */
+    @PostMapping("/add")
+    @ApiOperation("新增")
+    public R<?> add(@Valid @RequestBody MwTransitCarMaintenanceDTO dto) {
+        mwTransitCarMaintenanceService.add(dto);
+        return R.ok();
+    }
+
+    /**
+     * 编辑
+     *
+     * @param dto
+     * @return
+     */
+    @PostMapping("/edit")
+    @ApiOperation("编辑")
+    public R<?> edit(@Valid @RequestBody MwTransitCarMaintenanceDTO dto) {
+        mwTransitCarMaintenanceService.edit(dto);
+        return R.ok();
+    }
+
+    /**
+     * 删除
+     *
+     * @param id
+     * @return
+     */
+    @DeleteMapping("/{id}")
+    @ApiOperation("删除")
+    public R<?> delete(@ApiParam(name = "id", value = "保养记录id", required = true) @PathVariable("id") Long id) {
+        mwTransitCarMaintenanceService.removeById(id);
+        return R.ok();
+    }
 
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/MwProtectionEquipment.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/MwProtectionEquipment.java
index 6191557..e839f24 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/domain/MwProtectionEquipment.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/MwProtectionEquipment.java
@@ -38,6 +38,10 @@
     @TableField("PROTECTION_EQUIPMENT_TYPE")
     private Long protectionEquipmentType;
 
+    @ApiModelProperty("器具类型名称")
+    @TableField("PROTECTION_EQUIPMENT_TYPE_STR")
+    private String protectionEquipmentTypeStr;
+
     @ApiModelProperty("器具名称")
     @TableField("EQUIPMENT_NAME")
     private String equipmentName;
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/MwProtectionEquipmentRecord.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/MwProtectionEquipmentRecord.java
index 74db237..7877b0a 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/domain/MwProtectionEquipmentRecord.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/MwProtectionEquipmentRecord.java
@@ -46,5 +46,9 @@
     @TableField("OPERATOR")
     private String operator;
 
+    @ApiModelProperty("备注")
+    @TableField("REMARK")
+    private String remark;
+
 
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/MwTransitCar.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/MwTransitCar.java
index b32c6b5..18de500 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/domain/MwTransitCar.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/MwTransitCar.java
@@ -10,6 +10,8 @@
 import lombok.Getter;
 import lombok.Setter;
 
+import java.math.BigDecimal;
+
 /**
  * <p>
  * 运输车辆
@@ -64,7 +66,7 @@
 
     @ApiModelProperty("最大载重")
     @TableField("MAXIMUM_LOAD")
-    private Double maximumLoad;
+    private BigDecimal maximumLoad;
 
     @ApiModelProperty("备注")
     @TableField("REMARK")
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwProtectionEquipmentDTO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwProtectionEquipmentDTO.java
new file mode 100644
index 0000000..1f184eb
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwProtectionEquipmentDTO.java
@@ -0,0 +1,37 @@
+package com.sinata.system.domain.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@ApiModel("防护器具数据传输对象")
+public class MwProtectionEquipmentDTO {
+
+    @ApiModelProperty("防护器具id")
+    private Long id;
+
+    @ApiModelProperty("区域id(处置单位id)")
+    @NotNull(message = "区域id不能为空")
+    private Long departmentId;
+
+    @ApiModelProperty("器具类型(数据字典)")
+    @NotNull(message = "器具类型不能为空")
+    private Long protectionEquipmentType;
+
+    @ApiModelProperty("器具名称")
+    @NotNull(message = "器具名称不能为空")
+    private String equipmentName;
+
+    @ApiModelProperty("备注")
+    private String remark;
+
+    @ApiModelProperty("附件,多个使用英文逗号拼接")
+    private String attachment;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwProtectionEquipmentRecordDTO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwProtectionEquipmentRecordDTO.java
new file mode 100644
index 0000000..995fc89
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwProtectionEquipmentRecordDTO.java
@@ -0,0 +1,26 @@
+package com.sinata.system.domain.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@ApiModel("防护器具增减记录数据传输对象")
+public class MwProtectionEquipmentRecordDTO {
+
+    @ApiModelProperty("防护器具id")
+    private Long protectionEquipmentId;
+
+    @ApiModelProperty("库存变动数量")
+    private Integer changeQuantity;
+
+    @ApiModelProperty("经办人")
+    private String operator;
+
+    @ApiModelProperty("备注")
+    private String remark;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarAnnualInspectionDTO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarAnnualInspectionDTO.java
new file mode 100644
index 0000000..5fec9b6
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarAnnualInspectionDTO.java
@@ -0,0 +1,43 @@
+package com.sinata.system.domain.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@ApiModel("车辆年检记录数据传输对象")
+public class MwTransitCarAnnualInspectionDTO {
+    
+    @ApiModelProperty("车辆年检记录id")
+    private Long id;
+
+    @ApiModelProperty("车辆id")
+    private Long carId;
+
+    @ApiModelProperty("年检日期")
+    private Date inspectionDate;
+
+    @ApiModelProperty("下次年检到期日")
+    private Date nextInspectionDate;
+
+    @ApiModelProperty("检验机构名称")
+    private String inspectionAgency;
+
+    @ApiModelProperty("检验结果 1:合格 0:不合格")
+    private Integer inspectionResult;
+
+    @ApiModelProperty("经办人姓名")
+    private String operator;
+
+    @ApiModelProperty("检验证明图片")
+    private String certificateImageUrl;
+
+    @ApiModelProperty("备注")
+    private String remark;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarDTO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarDTO.java
new file mode 100644
index 0000000..c7bbc5c
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarDTO.java
@@ -0,0 +1,48 @@
+package com.sinata.system.domain.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@ApiModel("车辆数据传输对象")
+public class MwTransitCarDTO {
+    @ApiModelProperty("车辆id")
+    private Long id;
+
+    @ApiModelProperty("区域id(处置单位id)")
+    private Long departmentId;
+
+    @ApiModelProperty("车辆图片")
+    private String imageUrl;
+
+    @ApiModelProperty("车牌号")
+    private String licensePlateNumber;
+
+    @ApiModelProperty("负责人")
+    private String personInCharge;
+
+    @ApiModelProperty("负责人联系方式")
+    private String phoneNumber;
+
+    @ApiModelProperty("车辆品牌")
+    private String brand;
+
+    @ApiModelProperty("车辆颜色")
+    private String color;
+
+    @ApiModelProperty("车辆识别代码")
+    private String code;
+
+    @ApiModelProperty("最大载重")
+    private BigDecimal maximumLoad;
+
+    @ApiModelProperty("备注")
+    private String remark;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarMaintenanceDTO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarMaintenanceDTO.java
new file mode 100644
index 0000000..d4e386a
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/dto/MwTransitCarMaintenanceDTO.java
@@ -0,0 +1,45 @@
+package com.sinata.system.domain.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+import java.util.Date;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@ApiModel("车辆保养记录数据传输对象")
+public class MwTransitCarMaintenanceDTO {
+
+    @ApiModelProperty("车辆保养记录id")
+    private Long id;
+
+    @ApiModelProperty("车辆id")
+    @NotNull(message = "车辆id不能为空")
+    private Long carId;
+
+    @ApiModelProperty("保养日期")
+    private Date maintenanceDate;
+
+    @ApiModelProperty("保养项目")
+    private String maintenanceItem;
+
+    @ApiModelProperty("保养时里程数")
+    private Double mileage;
+
+    @ApiModelProperty("保养地点")
+    private String maintenanceLocation;
+
+    @ApiModelProperty("经办人姓名")
+    private String operator;
+
+    @ApiModelProperty("附加图片")
+    private String imageUrl;
+
+    @ApiModelProperty("备注")
+    private String remark;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/query/CheckoutRecordQuery.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/CheckoutRecordQuery.java
index 294dbfd..72c1661 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/domain/query/CheckoutRecordQuery.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/CheckoutRecordQuery.java
@@ -7,6 +7,7 @@
 import lombok.EqualsAndHashCode;
 
 import java.util.Date;
+import java.util.List;
 
 /**
  * @author mitao
@@ -30,4 +31,9 @@
 
     @ApiModelProperty("出库时间-结束")
     private Date checkoutTimeEnd;
+
+    @ApiModelProperty("id列表")
+    private List<Long> ids;
+
+
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwProtectionEquipmentQuery.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwProtectionEquipmentQuery.java
new file mode 100644
index 0000000..71d2a06
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwProtectionEquipmentQuery.java
@@ -0,0 +1,28 @@
+package com.sinata.system.domain.query;
+
+import com.sinata.common.entity.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("防护器具查询数据传输对象")
+public class MwProtectionEquipmentQuery extends BasePage {
+
+    private static final long serialVersionUID = 5232781881563841706L;
+
+    @ApiModelProperty("机构id")
+    private Long departmentId;
+
+    @ApiModelProperty("器具类型(数据字典)")
+    private Long protectionEquipmentType;
+
+    @ApiModelProperty("器具名称")
+    private String equipmentName;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitCarAnnualInspectionQuery.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitCarAnnualInspectionQuery.java
new file mode 100644
index 0000000..3ef2e18
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitCarAnnualInspectionQuery.java
@@ -0,0 +1,25 @@
+package com.sinata.system.domain.query;
+
+import com.sinata.common.entity.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("车辆年检记录查询数据传输对象")
+public class MwTransitCarAnnualInspectionQuery extends BasePage {
+
+    private static final long serialVersionUID = 377102013493203764L;
+
+    @ApiModelProperty("车辆id")
+    @NotNull(message = "车辆id不能为空")
+    private Long id;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitCarMaintenanceQuery.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitCarMaintenanceQuery.java
new file mode 100644
index 0000000..8dcea2c
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitCarMaintenanceQuery.java
@@ -0,0 +1,25 @@
+package com.sinata.system.domain.query;
+
+import com.sinata.common.entity.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("车辆保养记录查询数据传输对象")
+public class MwTransitCarMaintenanceQuery extends BasePage {
+
+    private static final long serialVersionUID = 566706371010982081L;
+
+    @ApiModelProperty("车辆id")
+    @NotNull(message = "车辆id不能为空")
+    private Long id;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitRecordQuery.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitRecordQuery.java
index 8c4a018..fba963f 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitRecordQuery.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/MwTransitRecordQuery.java
@@ -18,6 +18,9 @@
 public class MwTransitRecordQuery extends BasePage {
     private static final long serialVersionUID = 3585169031300259198L;
     
+    @ApiModelProperty("路线id")
+    private Long id;
+
     @ApiModelProperty("机构id")
     private Long departmentId;
 
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/query/TransitCarQuery.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/TransitCarQuery.java
new file mode 100644
index 0000000..383c1b2
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/query/TransitCarQuery.java
@@ -0,0 +1,32 @@
+package com.sinata.system.domain.query;
+
+import com.sinata.common.entity.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel("车辆查询数据传输对象")
+public class TransitCarQuery extends BasePage {
+
+    private static final long serialVersionUID = -7535232627331851047L;
+
+    @ApiModelProperty("机构id")
+    private Long departmentId;
+
+    @ApiModelProperty("车牌号")
+    private String licensePlateNumber;
+
+    @ApiModelProperty("负责人")
+    private String personInCharge;
+
+    @ApiModelProperty("负责人联系方式")
+    private String phoneNumber;
+
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwCheckoutRecordExcelVO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwCheckoutRecordExcelVO.java
new file mode 100644
index 0000000..e21866b
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwCheckoutRecordExcelVO.java
@@ -0,0 +1,57 @@
+package com.sinata.system.domain.vo;
+
+import cn.idev.excel.annotation.ExcelProperty;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @author mitao
+ * @date 2024/12/13
+ */
+@Data
+@ApiModel("转运记录视图对象")
+public class MwCheckoutRecordExcelVO implements Serializable {
+
+    private static final long serialVersionUID = -851971023455890457L;
+
+    @ApiModelProperty("记录id")
+    private Long id;
+
+    @ExcelProperty(value = "转运时间", index = 1)
+    private Date checkoutTime;
+
+
+    @ApiModelProperty("医院名称")
+    @ExcelProperty(value = "医院名称", index = 2)
+    private String hospitalName;
+
+    @ApiModelProperty("箱数")
+    @ExcelProperty(value = "箱数", index = 3)
+    private Integer boxNum;
+
+    @ApiModelProperty("袋数")
+    @ExcelProperty(value = "袋数", index = 4)
+    private Integer bagNum;
+
+    @ApiModelProperty("总重量")
+    @ExcelProperty(value = "重量", index = 5)
+    private BigDecimal totalWeight;
+
+    @ApiModelProperty("司机姓名")
+    @ExcelProperty(value = "司机姓名", index = 6)
+    private String driverName;
+
+    @ApiModelProperty("车牌号")
+    @ExcelProperty(value = "车牌号", index = 7)
+    private String licensePlateNumber;
+
+    @ApiModelProperty("转运线路")
+    @ExcelProperty(value = "转运路线", index = 8)
+    private String routeName;
+
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwCheckoutRecordVO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwCheckoutRecordVO.java
index 75d3534..8883818 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwCheckoutRecordVO.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwCheckoutRecordVO.java
@@ -23,6 +23,7 @@
     private Long id;
 
     @ApiModelProperty("出库时间")
+    @ExcelProperty(value = "出库时间", index = 1)
     private Date checkoutTime;
 
     @ApiModelProperty("区域id")
@@ -33,24 +34,31 @@
     private String hospitalName;
 
     @ApiModelProperty("暂存间名称")
+    @ExcelProperty(value = "暂存间", index = 3)
     private String roomName;
 
     @ApiModelProperty("箱数")
+    @ExcelProperty(value = "箱数", index = 4)
     private Integer boxNum;
 
     @ApiModelProperty("袋数")
+    @ExcelProperty(value = "袋数", index = 5)
     private Integer bagNum;
 
     @ApiModelProperty("总重量")
+    @ExcelProperty(value = "总重量", index = 6)
     private BigDecimal totalWeight;
     
     @ApiModelProperty("医院签名")
+    @ExcelProperty(value = "医院签名", index = 7)
     private String hospitalSignature;
 
     @ApiModelProperty("司机姓名")
+    @ExcelProperty(value = "司机姓名", index = 8)
     private String driverName;
 
     @ApiModelProperty("车牌号")
+    @ExcelProperty(value = "车牌号", index = 9)
     private String licensePlateNumber;
 
     @ApiModelProperty("转运线路")
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwProtectionEquipmentVO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwProtectionEquipmentVO.java
new file mode 100644
index 0000000..648d2ae
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwProtectionEquipmentVO.java
@@ -0,0 +1,41 @@
+package com.sinata.system.domain.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@ApiModel("防护器具视图对象")
+public class MwProtectionEquipmentVO {
+
+    @ApiModelProperty("防护器具id")
+    private Long id;
+
+    @ApiModelProperty("区域id(处置单位id)")
+    private Long departmentId;
+
+    @ApiModelProperty("所属单位")
+    private String departmentName;
+
+    @ApiModelProperty("器具类型(数据字典)")
+    private Long protectionEquipmentType;
+
+    @ApiModelProperty("器具类型名称")
+    private Long protectionEquipmentTypeStr;
+
+    @ApiModelProperty("器具名称")
+    private String equipmentName;
+
+    @ApiModelProperty("库存")
+    private Integer stock;
+
+    @ApiModelProperty("备注")
+    private String remark;
+
+    @ApiModelProperty("附件,多个使用英文逗号拼接")
+    private String attachment;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarAnnualInspectionVO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarAnnualInspectionVO.java
new file mode 100644
index 0000000..bc0378f
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarAnnualInspectionVO.java
@@ -0,0 +1,41 @@
+package com.sinata.system.domain.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@ApiModel("车辆年检记录视图对象")
+public class MwTransitCarAnnualInspectionVO {
+
+    @ApiModelProperty("车辆年检记录id")
+    private Long id;
+
+    @ApiModelProperty("年检日期")
+    private Date inspectionDate;
+
+    @ApiModelProperty("下次年检到期日")
+    private Date nextInspectionDate;
+
+    @ApiModelProperty("检验机构名称")
+    private String inspectionAgency;
+
+    @ApiModelProperty("检验结果 1:合格 0:不合格")
+    private Integer inspectionResult;
+
+    @ApiModelProperty("经办人姓名")
+    private String operator;
+
+    @ApiModelProperty("检验证明图片")
+    private String certificateImageUrl;
+
+    @ApiModelProperty("备注")
+    private String remark;
+
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarMaintenanceVO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarMaintenanceVO.java
new file mode 100644
index 0000000..0012cd4
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarMaintenanceVO.java
@@ -0,0 +1,40 @@
+package com.sinata.system.domain.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@ApiModel("车辆保养记录视图对象")
+public class MwTransitCarMaintenanceVO {
+
+    @ApiModelProperty("车辆保养记录id")
+    private Long id;
+    
+    @ApiModelProperty("保养日期")
+    private Date maintenanceDate;
+
+    @ApiModelProperty("保养项目")
+    private String maintenanceItem;
+
+    @ApiModelProperty("保养时里程数")
+    private Double mileage;
+
+    @ApiModelProperty("保养地点")
+    private String maintenanceLocation;
+
+    @ApiModelProperty("经办人姓名")
+    private String operator;
+
+    @ApiModelProperty("附加图片")
+    private String imageUrl;
+
+    @ApiModelProperty("备注")
+    private String remark;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarVO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarVO.java
new file mode 100644
index 0000000..0a641c0
--- /dev/null
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitCarVO.java
@@ -0,0 +1,52 @@
+package com.sinata.system.domain.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author mitao
+ * @date 2024/12/18
+ */
+@Data
+@ApiModel("车辆视图对象")
+public class MwTransitCarVO {
+
+    @ApiModelProperty("车辆id")
+    private Long id;
+
+    @ApiModelProperty("区域id(处置单位id)")
+    private Long departmentId;
+
+    @ApiModelProperty("处置单位")
+    private String departmentName;
+
+    @ApiModelProperty("车辆图片")
+    private String imageUrl;
+
+    @ApiModelProperty("车牌号")
+    private String licensePlateNumber;
+
+    @ApiModelProperty("负责人")
+    private String personInCharge;
+
+    @ApiModelProperty("负责人联系方式")
+    private String phoneNumber;
+
+    @ApiModelProperty("车辆品牌")
+    private String brand;
+
+    @ApiModelProperty("车辆颜色")
+    private String color;
+
+    @ApiModelProperty("车辆识别代码")
+    private String code;
+
+    @ApiModelProperty("最大载重")
+    private BigDecimal maximumLoad;
+
+    @ApiModelProperty("备注")
+    private String remark;
+}
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitRecordVO.java b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitRecordVO.java
index 2651090..9699519 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitRecordVO.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/domain/vo/MwTransitRecordVO.java
@@ -15,7 +15,7 @@
 @ApiModel("运输记录视图对象")
 public class MwTransitRecordVO {
 
-    @ApiModelProperty("车辆id")
+    @ApiModelProperty("路线id")
     private Long id;
 
     @ApiModelProperty("单位名称")
@@ -38,4 +38,7 @@
 
     @ApiModelProperty("运输结束时间")
     private Date endTime;
+
+    @ApiModelProperty("状态 1:暂存中; 2:运输中; 3:已接收; 4:已处置;")
+    private Integer status;
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCheckoutRecordMapper.java b/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCheckoutRecordMapper.java
index 1fd5d41..f4c8c7e 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCheckoutRecordMapper.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwCheckoutRecordMapper.java
@@ -11,6 +11,8 @@
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * <p>
  * 暂存间出库记录 Mapper 接口
@@ -57,4 +59,29 @@
      * @return
      */
     Page<MwTransitRecordVO> transitPageList(Page<MwTransitRecordVO> page, @Param("query") MwTransitRecordQuery query, String treeCode);
+
+    /**
+     * 运输记录详情
+     *
+     * @param id
+     * @return
+     */
+    MwTransitRecordVO transitDetail(Long id);
+
+    /**
+     * 运输记录详情分页列表
+     *
+     * @param objectPage
+     * @param id
+     * @return
+     */
+    Page<MwMedicalWasteBoxVO> transitDetailPageList(Page<MwMedicalWasteBoxVO> objectPage, Long id);
+
+    /**
+     * 转运记录导出
+     *
+     * @param query
+     * @param treeCode
+     */
+    List<MwCheckoutRecordVO> hospitalTransitList(@Param("query") CheckoutRecordQuery query, @Param("treeCode") String treeCode);
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwProtectionEquipmentMapper.java b/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwProtectionEquipmentMapper.java
index 124764a..315828f 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwProtectionEquipmentMapper.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwProtectionEquipmentMapper.java
@@ -1,8 +1,12 @@
 package com.sinata.system.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.sinata.system.domain.MwProtectionEquipment;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sinata.system.domain.query.MwProtectionEquipmentQuery;
+import com.sinata.system.domain.vo.MwProtectionEquipmentVO;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * <p>
@@ -14,5 +18,13 @@
  */
 @Mapper
 public interface MwProtectionEquipmentMapper extends BaseMapper<MwProtectionEquipment> {
-
+    /**
+     * 防护器具分页列表
+     *
+     * @param page
+     * @param query
+     * @param treeCode
+     * @return
+     */
+    Page<MwProtectionEquipmentVO> pageList(Page<MwProtectionEquipmentVO> page, @Param("query") MwProtectionEquipmentQuery query, @Param("treeCode") String treeCode);
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwTransitCarMapper.java b/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwTransitCarMapper.java
index c0f40dc..fc4795b 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwTransitCarMapper.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/mapper/MwTransitCarMapper.java
@@ -1,8 +1,12 @@
 package com.sinata.system.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.sinata.system.domain.MwTransitCar;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sinata.system.domain.query.TransitCarQuery;
+import com.sinata.system.domain.vo.MwTransitCarVO;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * <p>
@@ -14,5 +18,21 @@
  */
 @Mapper
 public interface MwTransitCarMapper extends BaseMapper<MwTransitCar> {
+    /**
+     * 车辆分页列表
+     *
+     * @param page
+     * @param query
+     * @param treeCode
+     * @return
+     */
+    Page<MwTransitCarVO> pageList(Page<MwTransitCarVO> page, @Param("query") TransitCarQuery query, @Param("treeCode") String treeCode);
 
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    MwTransitCarVO detail(Long id);
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/MwCheckoutRecordService.java b/medicalWaste-system/src/main/java/com/sinata/system/service/MwCheckoutRecordService.java
index c03641c..a504e7c 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/MwCheckoutRecordService.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/MwCheckoutRecordService.java
@@ -10,6 +10,9 @@
 import com.sinata.system.domain.vo.MwMedicalWasteBoxVO;
 import com.sinata.system.domain.vo.MwTransitRecordVO;
 
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+
 /**
  * <p>
  * 暂存间出库记录 服务类
@@ -50,4 +53,28 @@
      * @return
      */
     PageDTO<MwTransitRecordVO> transitPageList(MwTransitRecordQuery query);
+
+    /**
+     * 运输记录详情
+     *
+     * @param id
+     * @return
+     */
+    MwTransitRecordVO transitDetail(Long id);
+
+    /**
+     * 运输记录详情分页列表
+     *
+     * @param query
+     * @return
+     */
+    PageDTO<MwMedicalWasteBoxVO> transitDetailPageList(MwTransitRecordQuery query);
+
+    /**
+     * 转运记录导出
+     *
+     * @param query
+     * @param response
+     */
+    void checkoutRecordExport(CheckoutRecordQuery query, HttpServletResponse response) throws IOException;
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/MwProtectionEquipmentRecordService.java b/medicalWaste-system/src/main/java/com/sinata/system/service/MwProtectionEquipmentRecordService.java
index 12af051..32cf377 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/MwProtectionEquipmentRecordService.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/MwProtectionEquipmentRecordService.java
@@ -1,7 +1,7 @@
 package com.sinata.system.service;
 
-import com.sinata.system.domain.MwProtectionEquipmentRecord;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.sinata.system.domain.MwProtectionEquipmentRecord;
 
 /**
  * <p>
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/MwProtectionEquipmentService.java b/medicalWaste-system/src/main/java/com/sinata/system/service/MwProtectionEquipmentService.java
index 8af50f6..755a72f 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/MwProtectionEquipmentService.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/MwProtectionEquipmentService.java
@@ -1,7 +1,12 @@
 package com.sinata.system.service;
 
+import com.sinata.common.entity.PageDTO;
 import com.sinata.system.domain.MwProtectionEquipment;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.sinata.system.domain.dto.MwProtectionEquipmentDTO;
+import com.sinata.system.domain.dto.MwProtectionEquipmentRecordDTO;
+import com.sinata.system.domain.query.MwProtectionEquipmentQuery;
+import com.sinata.system.domain.vo.MwProtectionEquipmentVO;
 
 /**
  * <p>
@@ -12,5 +17,42 @@
  * @since 2024-12-02
  */
 public interface MwProtectionEquipmentService extends IService<MwProtectionEquipment> {
+    /**
+     * 防护器具分页列表
+     *
+     * @param query
+     * @return
+     */
+    PageDTO<MwProtectionEquipmentVO> pageList(MwProtectionEquipmentQuery query);
 
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    MwProtectionEquipmentVO detail(Long id);
+
+    /**
+     * 新增防护器具
+     *
+     * @param dto
+     * @return
+     */
+    void add(MwProtectionEquipmentDTO dto);
+
+    /**
+     * 编辑
+     *
+     * @param dto
+     * @return
+     */
+    void edit(MwProtectionEquipmentDTO dto);
+
+    /**
+     * 增加库存
+     *
+     * @param dto
+     */
+    void addStock(MwProtectionEquipmentRecordDTO dto);
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarAnnualInspectionService.java b/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarAnnualInspectionService.java
index 5046241..873b451 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarAnnualInspectionService.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarAnnualInspectionService.java
@@ -1,7 +1,11 @@
 package com.sinata.system.service;
 
+import com.sinata.common.entity.PageDTO;
 import com.sinata.system.domain.MwTransitCarAnnualInspection;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.sinata.system.domain.dto.MwTransitCarAnnualInspectionDTO;
+import com.sinata.system.domain.query.MwTransitCarAnnualInspectionQuery;
+import com.sinata.system.domain.vo.MwTransitCarAnnualInspectionVO;
 
 /**
  * <p>
@@ -12,5 +16,34 @@
  * @since 2024-12-02
  */
 public interface MwTransitCarAnnualInspectionService extends IService<MwTransitCarAnnualInspection> {
+    /**
+     * 年检记录分页列表
+     *
+     * @param query
+     * @return
+     */
+    PageDTO<MwTransitCarAnnualInspectionVO> pageList(MwTransitCarAnnualInspectionQuery query);
 
+    /**
+     * 新增年检记录
+     *
+     * @param dto
+     */
+    void add(MwTransitCarAnnualInspectionDTO dto);
+
+    /**
+     * 编辑年检记录
+     *
+     * @param dto
+     * @return
+     */
+    void edit(MwTransitCarAnnualInspectionDTO dto);
+
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    MwTransitCarAnnualInspectionVO detail(Long id);
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarMaintenanceService.java b/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarMaintenanceService.java
index 4f63978..a4aafad 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarMaintenanceService.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarMaintenanceService.java
@@ -1,7 +1,11 @@
 package com.sinata.system.service;
 
+import com.sinata.common.entity.PageDTO;
 import com.sinata.system.domain.MwTransitCarMaintenance;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.sinata.system.domain.dto.MwTransitCarMaintenanceDTO;
+import com.sinata.system.domain.query.MwTransitCarMaintenanceQuery;
+import com.sinata.system.domain.vo.MwTransitCarMaintenanceVO;
 
 /**
  * <p>
@@ -12,5 +16,35 @@
  * @since 2024-12-02
  */
 public interface MwTransitCarMaintenanceService extends IService<MwTransitCarMaintenance> {
+    /**
+     * 保养记录分页列表
+     *
+     * @param query
+     * @return
+     */
+    PageDTO<MwTransitCarMaintenanceVO> pageList(MwTransitCarMaintenanceQuery query);
 
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    MwTransitCarMaintenanceVO detail(Long id);
+
+    /**
+     * 新增
+     *
+     * @param dto
+     * @return
+     */
+    void add(MwTransitCarMaintenanceDTO dto);
+
+    /**
+     * 编辑
+     *
+     * @param dto
+     * @return
+     */
+    void edit(MwTransitCarMaintenanceDTO dto);
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarService.java b/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarService.java
index df66483..dae3696 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarService.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/MwTransitCarService.java
@@ -1,7 +1,11 @@
 package com.sinata.system.service;
 
+import com.sinata.common.entity.PageDTO;
 import com.sinata.system.domain.MwTransitCar;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.sinata.system.domain.dto.MwTransitCarDTO;
+import com.sinata.system.domain.query.TransitCarQuery;
+import com.sinata.system.domain.vo.MwTransitCarVO;
 
 /**
  * <p>
@@ -12,5 +16,37 @@
  * @since 2024-12-02
  */
 public interface MwTransitCarService extends IService<MwTransitCar> {
+    /**
+     * 车辆分页列表
+     *
+     * @param query
+     * @return
+     */
+    PageDTO<MwTransitCarVO> pageList(TransitCarQuery query);
+
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    MwTransitCarVO detail(Long id);
+
+    /**
+     * 新增车辆
+     *
+     * @param dto
+     * @return
+     */
+    void add(MwTransitCarDTO dto);
+
+    /**
+     * 编辑车辆
+     *
+     * @param dto
+     * @return
+     */
+    void edit(MwTransitCarDTO dto);
+
 
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCheckoutRecordServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCheckoutRecordServiceImpl.java
index 768c277..e27052e 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCheckoutRecordServiceImpl.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwCheckoutRecordServiceImpl.java
@@ -1,13 +1,16 @@
 package com.sinata.system.service.impl;
 
+import cn.idev.excel.EasyExcel;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.sinata.common.entity.PageDTO;
+import com.sinata.common.utils.BeanUtils;
 import com.sinata.common.utils.StringUtils;
 import com.sinata.system.domain.MwCheckoutRecord;
 import com.sinata.system.domain.query.CheckoutRecordQuery;
 import com.sinata.system.domain.query.MwCheckoutRecordItemQuery;
 import com.sinata.system.domain.query.MwTransitRecordQuery;
+import com.sinata.system.domain.vo.MwCheckoutRecordExcelVO;
 import com.sinata.system.domain.vo.MwCheckoutRecordVO;
 import com.sinata.system.domain.vo.MwMedicalWasteBoxVO;
 import com.sinata.system.domain.vo.MwTransitRecordVO;
@@ -16,6 +19,11 @@
 import com.sinata.system.service.SysDepartmentService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.util.List;
 
 /**
  * <p>
@@ -44,6 +52,29 @@
         }
         Page<MwCheckoutRecordVO> page = baseMapper.pageHospitalTransitList(new Page<>(query.getPageCurr(), query.getPageSize()), query, treeCode);
         return PageDTO.of(page);
+    }
+
+    /**
+     * 转运记录导出
+     *
+     * @param query
+     * @param response
+     */
+    @Override
+    public void checkoutRecordExport(CheckoutRecordQuery query, HttpServletResponse response) throws IOException {
+        String treeCode = sysDepartmentService.getTreeCode(query.getDepartmentId());
+        if (StringUtils.isBlank(treeCode)) {
+            return;
+        }
+        List<MwCheckoutRecordVO> list = baseMapper.hospitalTransitList(query, treeCode);
+        List<MwCheckoutRecordExcelVO> mwCheckoutRecordExcelVOS = BeanUtils.copyToList(list, MwCheckoutRecordExcelVO.class);
+        // 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman
+        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
+        response.setCharacterEncoding("utf-8");
+        // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系
+        String fileName = URLEncoder.encode("转运记录", "UTF-8").replaceAll("\\+", "%20");
+        response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
+        EasyExcel.write(response.getOutputStream(), MwCheckoutRecordExcelVO.class).sheet("转运记录").doWrite(mwCheckoutRecordExcelVOS);
     }
 
     /**
@@ -81,4 +112,27 @@
         Page<MwTransitRecordVO> page = baseMapper.transitPageList(new Page<>(query.getPageCurr(), query.getPageSize()), query, treeCode);
         return PageDTO.of(page);
     }
+
+    /**
+     * 运输记录详情
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public MwTransitRecordVO transitDetail(Long id) {
+        return baseMapper.transitDetail(id);
+    }
+
+    /**
+     * 运输记录详情分页列表
+     *
+     * @param query
+     * @return
+     */
+    @Override
+    public PageDTO<MwMedicalWasteBoxVO> transitDetailPageList(MwTransitRecordQuery query) {
+        Page<MwMedicalWasteBoxVO> page = baseMapper.transitDetailPageList(new Page<>(query.getPageCurr(), query.getPageSize()), query.getId());
+        return PageDTO.of(page);
+    }
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwProtectionEquipmentRecordServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwProtectionEquipmentRecordServiceImpl.java
index ab644d9..06bde56 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwProtectionEquipmentRecordServiceImpl.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwProtectionEquipmentRecordServiceImpl.java
@@ -1,6 +1,7 @@
 package com.sinata.system.service.impl;
 
 import com.sinata.system.domain.MwProtectionEquipmentRecord;
+import com.sinata.system.domain.dto.MwProtectionEquipmentRecordDTO;
 import com.sinata.system.mapper.MwProtectionEquipmentRecordMapper;
 import com.sinata.system.service.MwProtectionEquipmentRecordService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwProtectionEquipmentServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwProtectionEquipmentServiceImpl.java
index 68f0564..41caada 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwProtectionEquipmentServiceImpl.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwProtectionEquipmentServiceImpl.java
@@ -1,10 +1,26 @@
 package com.sinata.system.service.impl;
 
-import com.sinata.system.domain.MwProtectionEquipment;
-import com.sinata.system.mapper.MwProtectionEquipmentMapper;
-import com.sinata.system.service.MwProtectionEquipmentService;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sinata.common.core.domain.entity.SysDictData;
+import com.sinata.common.entity.PageDTO;
+import com.sinata.common.exception.ServiceException;
+import com.sinata.common.utils.BeanUtils;
+import com.sinata.system.domain.MwProtectionEquipment;
+import com.sinata.system.domain.MwProtectionEquipmentRecord;
+import com.sinata.system.domain.dto.MwProtectionEquipmentDTO;
+import com.sinata.system.domain.dto.MwProtectionEquipmentRecordDTO;
+import com.sinata.system.domain.query.MwProtectionEquipmentQuery;
+import com.sinata.system.domain.vo.MwProtectionEquipmentVO;
+import com.sinata.system.mapper.MwProtectionEquipmentMapper;
+import com.sinata.system.service.ISysDictDataService;
+import com.sinata.system.service.MwProtectionEquipmentRecordService;
+import com.sinata.system.service.MwProtectionEquipmentService;
+import com.sinata.system.service.SysDepartmentService;
+import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
+
+import java.util.Objects;
 
 /**
  * <p>
@@ -15,6 +31,82 @@
  * @since 2024-12-02
  */
 @Service
+@RequiredArgsConstructor
 public class MwProtectionEquipmentServiceImpl extends ServiceImpl<MwProtectionEquipmentMapper, MwProtectionEquipment> implements MwProtectionEquipmentService {
+    private final SysDepartmentService sysDepartmentService;
+    private final ISysDictDataService sysDictDataService;
+    private final MwProtectionEquipmentRecordService mwProtectionEquipmentRecordService;
 
+    /**
+     * 防护器具分页列表
+     *
+     * @param query
+     * @return
+     */
+    @Override
+    public PageDTO<MwProtectionEquipmentVO> pageList(MwProtectionEquipmentQuery query) {
+        String treeCode = sysDepartmentService.getTreeCode(query.getDepartmentId());
+        Page<MwProtectionEquipmentVO> page = baseMapper.pageList(new Page<>(query.getPageCurr(), query.getPageSize()), query, treeCode);
+        return PageDTO.of(page);
+    }
+
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public MwProtectionEquipmentVO detail(Long id) {
+        return BeanUtils.copyBean(this.getById(id), MwProtectionEquipmentVO.class);
+    }
+
+    /**
+     * 新增防护器具
+     *
+     * @param dto
+     * @return
+     */
+    @Override
+    public void add(MwProtectionEquipmentDTO dto) {
+        MwProtectionEquipment mwProtectionEquipment = BeanUtils.copyBean(dto, MwProtectionEquipment.class);
+        SysDictData dictData = sysDictDataService.lambdaQuery().eq(SysDictData::getDictCode, dto.getProtectionEquipmentType()).one();
+        if (Objects.nonNull(dictData)) {
+            mwProtectionEquipment.setProtectionEquipmentTypeStr(dictData.getDictLabel());
+        }
+        save(mwProtectionEquipment);
+    }
+
+    /**
+     * 编辑
+     *
+     * @param dto
+     * @return
+     */
+    @Override
+    public void edit(MwProtectionEquipmentDTO dto) {
+        if (Objects.isNull(dto.getId())) {
+            throw new ServiceException("防护器具id不能为空");
+        }
+        MwProtectionEquipment mwProtectionEquipment = BeanUtils.copyBean(dto, MwProtectionEquipment.class);
+        SysDictData dictData = sysDictDataService.lambdaQuery().eq(SysDictData::getDictCode, dto.getProtectionEquipmentType()).one();
+        if (Objects.nonNull(dictData)) {
+            mwProtectionEquipment.setProtectionEquipmentTypeStr(dictData.getDictLabel());
+        }
+        updateById(mwProtectionEquipment);
+    }
+
+    @Override
+    public void addStock(MwProtectionEquipmentRecordDTO dto) {
+        MwProtectionEquipment equipment = getById(dto.getProtectionEquipmentId());
+        if (Objects.isNull(equipment)) {
+            throw new ServiceException("防护器具不存在");
+        }
+        equipment.setStock(equipment.getStock() + dto.getChangeQuantity());
+        updateById(equipment);
+        // 新增库存记录
+        MwProtectionEquipmentRecord mwProtectionEquipmentRecord = BeanUtils.copyBean(dto, MwProtectionEquipmentRecord.class);
+        mwProtectionEquipmentRecord.setType(1);
+        mwProtectionEquipmentRecordService.save(mwProtectionEquipmentRecord);
+    }
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarAnnualInspectionServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarAnnualInspectionServiceImpl.java
index e7413c5..4d638c2 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarAnnualInspectionServiceImpl.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarAnnualInspectionServiceImpl.java
@@ -1,10 +1,19 @@
 package com.sinata.system.service.impl;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.sinata.common.entity.PageDTO;
+import com.sinata.common.exception.ServiceException;
+import com.sinata.common.utils.BeanUtils;
 import com.sinata.system.domain.MwTransitCarAnnualInspection;
+import com.sinata.system.domain.dto.MwTransitCarAnnualInspectionDTO;
+import com.sinata.system.domain.query.MwTransitCarAnnualInspectionQuery;
+import com.sinata.system.domain.vo.MwTransitCarAnnualInspectionVO;
 import com.sinata.system.mapper.MwTransitCarAnnualInspectionMapper;
 import com.sinata.system.service.MwTransitCarAnnualInspectionService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
+
+import java.util.Objects;
 
 /**
  * <p>
@@ -16,5 +25,55 @@
  */
 @Service
 public class MwTransitCarAnnualInspectionServiceImpl extends ServiceImpl<MwTransitCarAnnualInspectionMapper, MwTransitCarAnnualInspection> implements MwTransitCarAnnualInspectionService {
+    /**
+     * 年检记录分页列表
+     *
+     * @param query
+     * @return
+     */
+    @Override
+    public PageDTO<MwTransitCarAnnualInspectionVO> pageList(MwTransitCarAnnualInspectionQuery query) {
+        Page<MwTransitCarAnnualInspection> page = this.lambdaQuery()
+                .eq(MwTransitCarAnnualInspection::getCarId, query.getId())
+                .orderByDesc(MwTransitCarAnnualInspection::getCreateTime)
+                .page(new Page<>(query.getPageCurr(), query.getPageSize()));
+        return PageDTO.of(page, MwTransitCarAnnualInspectionVO.class);
+    }
 
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public MwTransitCarAnnualInspectionVO detail(Long id) {
+        return BeanUtils.copyBean(getById(id), MwTransitCarAnnualInspectionVO.class);
+    }
+
+    /**
+     * 新增年检记录
+     *
+     * @param dto
+     */
+    @Override
+    public void add(MwTransitCarAnnualInspectionDTO dto) {
+        MwTransitCarAnnualInspection mwTransitCarAnnualInspection = BeanUtils.copyBean(dto, MwTransitCarAnnualInspection.class);
+        save(mwTransitCarAnnualInspection);
+    }
+
+    /**
+     * 编辑年检记录
+     *
+     * @param dto
+     * @return
+     */
+    @Override
+    public void edit(MwTransitCarAnnualInspectionDTO dto) {
+        if (Objects.isNull(dto.getId())) {
+            throw new ServiceException("年检记录id不能为空");
+        }
+        MwTransitCarAnnualInspection mwTransitCarAnnualInspection = BeanUtils.copyBean(dto, MwTransitCarAnnualInspection.class);
+        updateById(mwTransitCarAnnualInspection);
+    }
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarMaintenanceServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarMaintenanceServiceImpl.java
index 08f0bfa..6611f2a 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarMaintenanceServiceImpl.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarMaintenanceServiceImpl.java
@@ -1,10 +1,19 @@
 package com.sinata.system.service.impl;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sinata.common.entity.PageDTO;
+import com.sinata.common.exception.ServiceException;
+import com.sinata.common.utils.BeanUtils;
 import com.sinata.system.domain.MwTransitCarMaintenance;
+import com.sinata.system.domain.dto.MwTransitCarMaintenanceDTO;
+import com.sinata.system.domain.query.MwTransitCarMaintenanceQuery;
+import com.sinata.system.domain.vo.MwTransitCarMaintenanceVO;
 import com.sinata.system.mapper.MwTransitCarMaintenanceMapper;
 import com.sinata.system.service.MwTransitCarMaintenanceService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
+
+import java.util.Objects;
 
 /**
  * <p>
@@ -16,5 +25,57 @@
  */
 @Service
 public class MwTransitCarMaintenanceServiceImpl extends ServiceImpl<MwTransitCarMaintenanceMapper, MwTransitCarMaintenance> implements MwTransitCarMaintenanceService {
+    /**
+     * 保养记录分页列表
+     *
+     * @param query
+     * @return
+     */
+    @Override
+    public PageDTO<MwTransitCarMaintenanceVO> pageList(MwTransitCarMaintenanceQuery query) {
+        Page<MwTransitCarMaintenance> page = this.lambdaQuery()
+                .eq(MwTransitCarMaintenance::getCarId, query.getId())
+                .orderByDesc(MwTransitCarMaintenance::getCreateTime)
+                .page(new Page<>(query.getPageCurr(), query.getPageSize()));
+        return PageDTO.of(page, MwTransitCarMaintenanceVO.class);
+    }
 
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+
+    @Override
+    public MwTransitCarMaintenanceVO detail(Long id) {
+        return BeanUtils.copyBean(getById(id), MwTransitCarMaintenanceVO.class);
+    }
+
+    /**
+     * 新增
+     *
+     * @param dto
+     * @return
+     */
+    @Override
+    public void add(MwTransitCarMaintenanceDTO dto) {
+        MwTransitCarMaintenance mwTransitCarMaintenance = BeanUtils.copyBean(dto, MwTransitCarMaintenance.class);
+        save(mwTransitCarMaintenance);
+    }
+
+    /**
+     * 编辑
+     *
+     * @param dto
+     * @return
+     */
+    @Override
+    public void edit(MwTransitCarMaintenanceDTO dto) {
+        if (Objects.isNull(dto.getId())) {
+            throw new ServiceException("保养记录id不能为空");
+        }
+        MwTransitCarMaintenance mwTransitCarMaintenance = BeanUtils.copyBean(dto, MwTransitCarMaintenance.class);
+        updateById(mwTransitCarMaintenance);
+    }
 }
diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarServiceImpl.java
index 33057c9..f72ffc8 100644
--- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarServiceImpl.java
+++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarServiceImpl.java
@@ -1,10 +1,21 @@
 package com.sinata.system.service.impl;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sinata.common.entity.PageDTO;
+import com.sinata.common.exception.ServiceException;
+import com.sinata.common.utils.BeanUtils;
 import com.sinata.system.domain.MwTransitCar;
+import com.sinata.system.domain.dto.MwTransitCarDTO;
+import com.sinata.system.domain.query.TransitCarQuery;
+import com.sinata.system.domain.vo.MwTransitCarVO;
 import com.sinata.system.mapper.MwTransitCarMapper;
 import com.sinata.system.service.MwTransitCarService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sinata.system.service.SysDepartmentService;
+import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
+
+import java.util.Objects;
 
 /**
  * <p>
@@ -15,6 +26,62 @@
  * @since 2024-12-02
  */
 @Service
+@RequiredArgsConstructor
 public class MwTransitCarServiceImpl extends ServiceImpl<MwTransitCarMapper, MwTransitCar> implements MwTransitCarService {
+    private final SysDepartmentService sysDepartmentService;
 
+    /**
+     * 车辆分页列表
+     *
+     * @param query
+     * @return
+     */
+    @Override
+    public PageDTO<MwTransitCarVO> pageList(TransitCarQuery query) {
+        String treeCode = sysDepartmentService.getTreeCode(query.getDepartmentId());
+        Page<MwTransitCarVO> page = baseMapper.pageList(new Page<>(query.getPageCurr(), query.getPageSize()), query, treeCode);
+        return PageDTO.of(page);
+    }
+
+    /**
+     * 详情
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public MwTransitCarVO detail(Long id) {
+        return baseMapper.detail(id);
+    }
+
+    /**
+     * 新增车辆
+     *
+     * @param dto
+     * @return
+     */
+    @Override
+    public void add(MwTransitCarDTO dto) {
+        MwTransitCar mwTransitCar = BeanUtils.copyBean(dto, MwTransitCar.class);
+        Long count = lambdaQuery().eq(MwTransitCar::getLicensePlateNumber, dto.getLicensePlateNumber()).count();
+        if (count > 0) {
+            throw new ServiceException("车牌号已存在");
+        }
+        save(mwTransitCar);
+    }
+
+    /**
+     * 编辑车辆
+     *
+     * @param dto
+     * @return
+     */
+    @Override
+    public void edit(MwTransitCarDTO dto) {
+        if (Objects.isNull(dto.getId())) {
+            throw new ServiceException("车辆id不能为空");
+        }
+        MwTransitCar mwTransitCar = BeanUtils.copyBean(dto, MwTransitCar.class);
+        updateById(mwTransitCar);
+    }
 }
diff --git a/medicalWaste-system/src/main/resources/mapper/system/MwCheckoutRecordMapper.xml b/medicalWaste-system/src/main/resources/mapper/system/MwCheckoutRecordMapper.xml
index 649692d..3f08408 100644
--- a/medicalWaste-system/src/main/resources/mapper/system/MwCheckoutRecordMapper.xml
+++ b/medicalWaste-system/src/main/resources/mapper/system/MwCheckoutRecordMapper.xml
@@ -89,6 +89,7 @@
         LEFT JOIN SYS_USER su ON mcr.COLLECT_USER_ID = su.USER_ID
         LEFT JOIN SYS_DEPARTMENT sd ON su.DEPARTMENT_ID = sd.ID
         <where>
+            mcr.STATUS = 2
             <if test="departmentId != null and departmentId != ''">
                 AND mcr.DEPARTMENT_ID = #{departmentId}
             </if>
@@ -97,21 +98,24 @@
         ORDER BY mcr.CREATE_TIME DESC
     </select>
     <select id="transitPageList" resultType="com.sinata.system.domain.vo.MwTransitRecordVO">
-        SELECT MDR.DISPOSAL_UNIT_NAME,
+        SELECT
+        MTRC.ROUTE_ID AS id,
+        MDR.DISPOSAL_UNIT_NAME,
         MTC.LICENSE_PLATE_NUMBER,
         SU.NICK_NAME,
         SUM(MCR.BOX_NUM) AS boxNum,
         SUM(MCR.TOTAL_WEIGHT) AS weight,
         MIN(MCR2.BOX_TIME) AS startTime,
         MDR.RECEIVE_TIME AS endTime
-        FROM MW_DISPOSAL_RECORD MDR
-        LEFT JOIN MW_DISPOSAL_RECORD_ITEM MDRI ON MDR.ID = MDRI.DISPOSAL_RECORD_ID
-        LEFT JOIN MW_CHECKOUT_RECORD_ITEM MCRI ON MDRI.COLLECT_RECORD_ID = MCRI.COLLECT_RECORD_ID
-        LEFT JOIN MW_CHECKOUT_RECORD MCR ON MCRI.CHECKOUT_RECORD_ID = MCR.ID
+        FROM MW_CHECKOUT_RECORD MCR
+        LEFT JOIN MW_CHECKOUT_RECORD_ITEM MCRI ON MCRI.CHECKOUT_RECORD_ID = MCR.ID
+        LEFT JOIN MW_DISPOSAL_RECORD_ITEM MDRI ON MDRI.COLLECT_RECORD_ID = MCRI.COLLECT_RECORD_ID
+        LEFT JOIN MW_DISPOSAL_RECORD MDR ON MDR.ID = MDRI.DISPOSAL_RECORD_ID
         LEFT JOIN MW_COLLECT_RECORD MCR2 ON MCRI.COLLECT_RECORD_ID = MCR2.ID
         LEFT JOIN MW_TRANSIT_CAR MTC ON MCR.CAR_ID = MTC.ID
         LEFT JOIN SYS_USER SU ON MCR.DRIVER_ID = SU.USER_ID
         LEFT JOIN SYS_DEPARTMENT SD ON SD.ID = MDR.DEPARTMENT_ID
+        LEFT JOIN MW_TRANSIT_ROUTE_CAR MTRC ON MTRC.CAR_ID = MCR.CAR_ID
         <where>
             <if test="treeCode != null and treeCode != null">
                 AND SD.TREE_CODE LIKE CONCAT(#{treeCode},'%')
@@ -126,7 +130,79 @@
                 AND MDR.RECEIVE_TIME BETWEEN #{query.startTime} AND #{query.endTime}
             </if>
         </where>
-        GROUP BY MCR.CAR_ID
+        GROUP BY MTRC.ROUTE_ID
+        ORDER BY startTime DESC
+    </select>
+    <select id="transitDetail" resultType="com.sinata.system.domain.vo.MwTransitRecordVO">
+        SELECT
+        MTRC.ROUTE_ID AS id,
+        MDR.DISPOSAL_UNIT_NAME,
+        MTC.LICENSE_PLATE_NUMBER,
+        SU.NICK_NAME,
+        SUM(MCR.BOX_NUM) AS boxNum,
+        SUM(MCR.TOTAL_WEIGHT) AS weight,
+        MIN(MCR2.BOX_TIME) AS startTime,
+        MDR.RECEIVE_TIME AS endTime
+        FROM MW_CHECKOUT_RECORD MCR
+        LEFT JOIN MW_CHECKOUT_RECORD_ITEM MCRI ON MCRI.CHECKOUT_RECORD_ID = MCR.ID
+        LEFT JOIN MW_DISPOSAL_RECORD_ITEM MDRI ON MDRI.COLLECT_RECORD_ID = MCRI.COLLECT_RECORD_ID
+        LEFT JOIN MW_DISPOSAL_RECORD MDR ON MDR.ID = MDRI.DISPOSAL_RECORD_ID
+        LEFT JOIN MW_COLLECT_RECORD MCR2 ON MCRI.COLLECT_RECORD_ID = MCR2.ID
+        LEFT JOIN MW_TRANSIT_CAR MTC ON MCR.CAR_ID = MTC.ID
+        LEFT JOIN SYS_USER SU ON MCR.DRIVER_ID = SU.USER_ID
+        LEFT JOIN SYS_DEPARTMENT SD ON SD.ID = MDR.DEPARTMENT_ID
+        LEFT JOIN MW_TRANSIT_ROUTE_CAR MTRC ON MTRC.CAR_ID = MCR.CAR_ID
+        <where>
+            MTRC.ROUTE_ID = #{id}
+        </where>
+        GROUP BY MTRC.ROUTE_ID
+    </select>
+    <select id="transitDetailPageList" resultType="com.sinata.system.domain.vo.MwMedicalWasteBoxVO">
+        SELECT MCR2.HOSPITAL_NAME,
+               MCR2.BOX_NUMBER,
+               MCR2.WASTE_TYPE_STR,
+               COUNT(MCR2.ID)         AS bagNum,
+               SUM(MCR2.WEIGHT)       AS totalWeight,
+               MAX(MCR.CHECKOUT_TIME) AS latestCheckoutTime
+        FROM MW_TRANSIT_ROUTE_CAR MTRC
+                 LEFT JOIN MW_CHECKOUT_RECORD MCR on MTRC.CAR_ID = MCR.CAR_ID
+                 LEFT JOIN MW_CHECKOUT_RECORD_ITEM MCRI on MCR.ID = MCRI.CHECKOUT_RECORD_ID
+                 LEFT JOIN MW_COLLECT_RECORD MCR2 ON MCR2.ID = MCRI.COLLECT_RECORD_ID
+        WHERE MTRC.ROUTE_ID = #{id}
+        GROUP BY MCR2.BOX_ID
+        ORDER BY latestCheckoutTime DESC
+    </select>
+    <select id="hospitalTransitList" resultType="com.sinata.system.domain.vo.MwCheckoutRecordVO">
+        SELECT mcr.ID,
+        mcr.CHECKOUT_TIME,
+        mcr.HOSPITAL_NAME,
+        SUM(mcr.BOX_NUM) AS boxNum,
+        SUM(mcr.BAG_NUM) AS bagNum,
+        SUM(mcr.TOTAL_WEIGHT) AS totalWeight,
+        su.NICK_NAME AS driverName,
+        mtc.LICENSE_PLATE_NUMBER
+        FROM MW_CHECKOUT_RECORD mcr
+        LEFT JOIN SYS_USER su
+        ON mcr.DRIVER_ID = su.USER_ID
+        LEFT JOIN MW_TRANSIT_CAR mtc
+        ON mcr.CAR_ID = mtc.ID
+        LEFT JOIN SYS_DEPARTMENT sd
+        ON mcr.DEPARTMENT_ID = sd.ID
+        <where>
+            <if test="treeCode != null and treeCode != ''">
+                AND sd.TREE_CODE LIKE CONCAT(#{treeCode},'%')
+            </if>
+            <if test="query.checkoutTimeStart != null and query.checkoutTimeEnd!=null">
+                AND mcr.CHECKOUT_TIME BETWEEN #{query.checkoutTimeStart} AND #{query.checkoutTimeEnd}
+            </if>
+            <if test="query.ids != null and ids.size() > 0">
+                AND mcr.ID IN
+                <foreach collection="query.ids" item="id" separator="," open="(" close=")">
+                    #{id}
+                </foreach>
+            </if>
+        </where>
+        GROUP BY mcr.DEPARTMENT_ID
     </select>
 
 </mapper>
diff --git a/medicalWaste-system/src/main/resources/mapper/system/MwProtectionEquipmentMapper.xml b/medicalWaste-system/src/main/resources/mapper/system/MwProtectionEquipmentMapper.xml
index ffb4c9a..79e866a 100644
--- a/medicalWaste-system/src/main/resources/mapper/system/MwProtectionEquipmentMapper.xml
+++ b/medicalWaste-system/src/main/resources/mapper/system/MwProtectionEquipmentMapper.xml
@@ -27,5 +27,33 @@
         UPDATE_TIME,
         ID, DEPARTMENT_ID, PROTECTION_EQUIPMENT_TYPE, EQUIPMENT_NAME, STOCK, REMARK, ATTACHMENT
     </sql>
+    <select id="pageList" resultType="com.sinata.system.domain.vo.MwProtectionEquipmentVO">
+        SELECT MPE.ID,
+        MPE.DEPARTMENT_ID,
+        MPE.PROTECTION_EQUIPMENT_TYPE,
+        MPE.EQUIPMENT_NAME,
+        MPE.STOCK,
+        MPE.REMARK,
+        MPE.ATTACHMENT,
+        MPE.DEL_FLAG,
+        MPE.CREATE_BY,
+        MPE.CREATE_TIME,
+        MPE.UPDATE_BY,
+        MPE.UPDATE_TIME,
+        SD.DEPARTMENT_NAME
+        FROM MW_PROTECTION_EQUIPMENT MPE
+        LEFT JOIN SYS_DEPARTMENT SD ON MPE.DEPARTMENT_ID = SD.ID
+        <where>
+            <if test="treeCode != null and treeCode != ''">
+                AND SD.TREE_CODE LIKE CONCAT(#{treeCode},'%')
+            </if>
+            <if test="query.protectionEquipmentType != null">
+                AND MPE.PROTECTION_EQUIPMENT_TYPE = #{query.protectionEquipmentType}
+            </if>
+            <if test="query.equipmentName !=null and query.equipmentName!= ''">
+                AND MPE.EQUIPMENT_NAME LIKE CONCAT('%',#{query.equipmentName},'%')
+            </if>
+        </where>
+    </select>
 
 </mapper>
diff --git a/medicalWaste-system/src/main/resources/mapper/system/MwTransitCarMapper.xml b/medicalWaste-system/src/main/resources/mapper/system/MwTransitCarMapper.xml
index 2889bc8..29ce48f 100644
--- a/medicalWaste-system/src/main/resources/mapper/system/MwTransitCarMapper.xml
+++ b/medicalWaste-system/src/main/resources/mapper/system/MwTransitCarMapper.xml
@@ -31,5 +31,65 @@
         UPDATE_TIME,
         ID, DEPARTMENT_ID, IMAGE_URL, LICENSE_PLATE_NUMBER, PERSON_IN_CHARGE, PHONE_NUMBER, BRAND, COLOR, CODE, MAXIMUM_LOAD, REMARK
     </sql>
+    <select id="pageList" resultType="com.sinata.system.domain.vo.MwTransitCarVO">
+        SELECT MTC.ID,
+        MTC.DEPARTMENT_ID,
+        MTC.IMAGE_URL,
+        MTC.LICENSE_PLATE_NUMBER,
+        MTC.PERSON_IN_CHARGE,
+        MTC.PHONE_NUMBER,
+        MTC.BRAND,
+        MTC.COLOR,
+        MTC.CODE,
+        MTC.MAXIMUM_LOAD,
+        MTC.REMARK,
+        MTC.DEL_FLAG,
+        MTC.CREATE_BY,
+        MTC.CREATE_TIME,
+        MTC.UPDATE_BY,
+        MTC.UPDATE_TIME,
+        SD.DEPARTMENT_NAME AS DEPARTMENT_NAME
+        FROM MW_TRANSIT_CAR MTC
+        LEFT JOIN SYS_DEPARTMENT SD ON SD.ID = MTC.DEPARTMENT_ID
+        <where>
+            <if test="treeCode != null and treeCode != ''">
+                AND SD.TREE_CODE = #{treeCode}
+            </if>
+            <if test="query.licensePlateNumber !=null and query.licensePlateNumber != ''">
+                AND MTC.LICENSE_PLATE_NUMBER LIKE CONCAT('%',#{query.licensePlateNumber},'%')
+            </if>
+            <if test="query.personInCharge != null and query.personInCharge !=''">
+                AND MTC.PERSON_IN_CHARGE LIKE CONCAT('%',#{query.personInCharge},'%')
+            </if>
+            <if test="query.phoneNumber!=null and query.phoneNumber!=''">
+                AND MTC.PHONE_NUMBER LIKE CONCAT('%',#{query.phoneNumber},'%')
+            </if>
+        </where>
+        ORDER BY MTC.CREATE_TIME DESC
+    </select>
+    <select id="detail" resultType="com.sinata.system.domain.vo.MwTransitCarVO">
+        SELECT MTC.ID,
+        MTC.DEPARTMENT_ID,
+        MTC.IMAGE_URL,
+        MTC.LICENSE_PLATE_NUMBER,
+        MTC.PERSON_IN_CHARGE,
+        MTC.PHONE_NUMBER,
+        MTC.BRAND,
+        MTC.COLOR,
+        MTC.CODE,
+        MTC.MAXIMUM_LOAD,
+        MTC.REMARK,
+        MTC.DEL_FLAG,
+        MTC.CREATE_BY,
+        MTC.CREATE_TIME,
+        MTC.UPDATE_BY,
+        MTC.UPDATE_TIME,
+        SD.DEPARTMENT_NAME AS DEPARTMENT_NAME
+        FROM MW_TRANSIT_CAR MTC
+        LEFT JOIN SYS_DEPARTMENT SD ON SD.ID = MTC.DEPARTMENT_ID
+        <where>
+            MTC.ID = #{id}
+        </where>
+    </select>
 
 </mapper>

--
Gitblit v1.7.1