From 54b89641e1840636b0ee3d65ecce4a92a6263947 Mon Sep 17 00:00:00 2001 From: SjS Date: Wed, 26 Mar 2025 14:39:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=85=E9=9A=9C=E7=94=B3=E8=AF=89=E7=AE=A1?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ruoyi/bst/fault/domain/Fault.java | 49 ++++ .../ruoyi/bst/fault/domain/FaultQuery.java | 17 ++ .../com/ruoyi/bst/fault/domain/FaultVO.java | 8 + .../bst/fault/domain/enums/FaultStatus.java | 17 ++ .../ruoyi/bst/fault/mapper/FaultMapper.java | 74 ++++++ .../ruoyi/bst/fault/mapper/FaultMapper.xml | 224 ++++++++++++++++++ .../ruoyi/bst/fault/service/FaultService.java | 63 +++++ .../fault/service/impl/FaultServiceImpl.java | 97 ++++++++ .../com/ruoyi/web/bst/FaultController.java | 101 ++++++++ 9 files changed, 650 insertions(+) create mode 100644 ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/Fault.java create mode 100644 ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/FaultQuery.java create mode 100644 ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/FaultVO.java create mode 100644 ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/enums/FaultStatus.java create mode 100644 ruoyi-service/src/main/java/com/ruoyi/bst/fault/mapper/FaultMapper.java create mode 100644 ruoyi-service/src/main/java/com/ruoyi/bst/fault/mapper/FaultMapper.xml create mode 100644 ruoyi-service/src/main/java/com/ruoyi/bst/fault/service/FaultService.java create mode 100644 ruoyi-service/src/main/java/com/ruoyi/bst/fault/service/impl/FaultServiceImpl.java create mode 100644 ruoyi-web/src/main/java/com/ruoyi/web/bst/FaultController.java diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/Fault.java b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/Fault.java new file mode 100644 index 0000000..ddccd9d --- /dev/null +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/Fault.java @@ -0,0 +1,49 @@ +package com.ruoyi.bst.fault.domain; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 故障对象 bst_fault + * + * @author ruoyi + * @date 2025-03-26 + */ +@Data +public class Fault extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + private Long id; + + @Excel(name = "用户") + @ApiModelProperty("用户") + private String userName; + + @Excel(name = "车辆编号") + @ApiModelProperty("车辆编号") + private Long vehicleCode; + + @Excel(name = "图片") + @ApiModelProperty("图片") + private String picture; + + @Excel(name = "订单编号") + @ApiModelProperty("订单编号") + private String orderId; + + @Excel(name = "故障部位") + @ApiModelProperty("故障部位") + private String faultSite; + + @Excel(name = "故障详情") + @ApiModelProperty("故障详情") + private String faultDetail; + + @Excel(name = "状态") + @ApiModelProperty("状态") + private String appealStatus; + +} diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/FaultQuery.java b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/FaultQuery.java new file mode 100644 index 0000000..b31251b --- /dev/null +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/FaultQuery.java @@ -0,0 +1,17 @@ +package com.ruoyi.bst.fault.domain; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + + + +@Data +public class FaultQuery extends Fault{ + + @ApiModelProperty("故障部位") + private String faultSite; + + @ApiModelProperty("报修进度") + private String appealStatus; + +} diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/FaultVO.java b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/FaultVO.java new file mode 100644 index 0000000..e0da8e2 --- /dev/null +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/FaultVO.java @@ -0,0 +1,8 @@ +package com.ruoyi.bst.fault.domain; + +import lombok.Data; + +@Data +public class FaultVO extends Fault{ + +} diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/enums/FaultStatus.java b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/enums/FaultStatus.java new file mode 100644 index 0000000..32c79f1 --- /dev/null +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/domain/enums/FaultStatus.java @@ -0,0 +1,17 @@ +package com.ruoyi.bst.fault.domain.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum FaultStatus { + + STORAGE("0", "已驳回"), + AVAILABLE("1", "已提交"), + RESERVED("2", "维修中"); + + private final String code; + private final String name; + +} diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/fault/mapper/FaultMapper.java b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/mapper/FaultMapper.java new file mode 100644 index 0000000..e9a3f53 --- /dev/null +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/mapper/FaultMapper.java @@ -0,0 +1,74 @@ +package com.ruoyi.bst.fault.mapper; + +import java.util.List; +import com.ruoyi.bst.fault.domain.Fault; +import com.ruoyi.bst.fault.domain.FaultVO; +import com.ruoyi.bst.fault.domain.FaultQuery; +import org.apache.ibatis.annotations.Param; + +/** + * 故障Mapper接口 + * + * @author ruoyi + * @date 2025-03-26 + */ +public interface FaultMapper +{ + /** + * 查询故障 + * + * @param id 故障主键 + * @return 故障 + */ + FaultVO selectFaultById(Long id); + + /** + * 查询故障列表 + * + * @param query 故障 + * @return 故障集合 + */ + List selectFaultList(@Param("query")FaultQuery query); + + /** + * 新增故障 + * + * @param fault 故障 + * @return 结果 + */ + int insertFault(Fault fault); + + /** + * 批量新增故障 + */ + int batchInsert(@Param("list") List list); + + /** + * 批量修改故障 + */ + int batchUpdate(@Param("list") List list); + + /** + * 修改故障 + * + * @param fault 故障 + * @return 结果 + */ + public int updateFault(@Param("data") Fault fault); + + /** + * 删除故障 + * + * @param id 故障主键 + * @return 结果 + */ + int deleteFaultById(Long id); + + /** + * 批量删除故障 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteFaultByIds(Long[] ids); +} diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/fault/mapper/FaultMapper.xml b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/mapper/FaultMapper.xml new file mode 100644 index 0000000..708c3d5 --- /dev/null +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/mapper/FaultMapper.xml @@ -0,0 +1,224 @@ + + + + + + + + select + bf.id, + bf.user_name, + bf.vehicle_code, + bf.picture, + bf.order_id, + bf.fault_site, + bf.fault_detail, + bf.appeal_status, + bf.create_time + from bst_fault bf + + + + and bf.user_name like concat('%', #{query.userName}, '%') + and bf.vehicle_code = #{query.vehicleCode} + and bf.picture = #{query.picture} + and bf.order_id = #{query.orderId} + and bf.fault_site = #{query.faultSite} + and bf.fault_detail = #{query.faultDetail} + and bf.appeal_status = #{query.appealStatus} + ${query.params.dataScope} + + + + + + + + insert into bst_fault + + user_name, + vehicle_code, + picture, + order_id, + fault_site, + fault_detail, + appeal_status, + create_time, + + + #{userName}, + #{vehicleCode}, + #{picture}, + #{orderId}, + #{faultSite}, + #{faultDetail}, + #{appealStatus}, + #{createTime}, + + + + + insert into bst_fault + + user_name, + vehicle_code, + picture, + order_id, + fault_site, + fault_detail, + appeal_status, + create_time, + + values + + + #{i.userName}, + default, + #{i.vehicleCode}, + default, + #{i.picture}, + default, + #{i.orderId}, + default, + #{i.faultSite}, + default, + #{i.faultDetail}, + default, + #{i.appealStatus}, + default, + #{i.createTime}, + default, + + + + + + update bst_fault + + + + + WHEN #{item.id} THEN #{item.userName} + + + WHEN #{item.id} THEN `user_name` + + + + + + + WHEN #{item.id} THEN #{item.vehicleCode} + + + WHEN #{item.id} THEN `vehicle_code` + + + + + + + WHEN #{item.id} THEN #{item.picture} + + + WHEN #{item.id} THEN `picture` + + + + + + + WHEN #{item.id} THEN #{item.orderId} + + + WHEN #{item.id} THEN `order_id` + + + + + + + WHEN #{item.id} THEN #{item.faultSite} + + + WHEN #{item.id} THEN `fault_site` + + + + + + + WHEN #{item.id} THEN #{item.faultDetail} + + + WHEN #{item.id} THEN `fault_detail` + + + + + + + WHEN #{item.id} THEN #{item.appealStatus} + + + WHEN #{item.id} THEN `appeal_status` + + + + + + + WHEN #{item.id} THEN #{item.createTime} + + + WHEN #{item.id} THEN `create_time` + + + + + where id in + + #{item.id} + + + + + update bst_fault + + + + where id = #{data.id} + + + + user_name = #{data.userName}, + vehicle_code = #{data.vehicleCode}, + picture = #{data.picture}, + order_id = #{data.orderId}, + fault_site = #{data.faultSite}, + fault_detail = #{data.faultDetail}, + appeal_status = #{data.appealStatus}, + create_time = #{data.createTime}, + + + + delete from bst_fault where id = #{id} + + + + delete from bst_fault where id in + + #{id} + + + diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/fault/service/FaultService.java b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/service/FaultService.java new file mode 100644 index 0000000..8a08130 --- /dev/null +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/service/FaultService.java @@ -0,0 +1,63 @@ +package com.ruoyi.bst.fault.service; + +import java.util.List; +import com.ruoyi.bst.fault.domain.Fault; +import com.ruoyi.bst.fault.domain.FaultVO; +import com.ruoyi.bst.fault.domain.FaultQuery; + +/** + * 故障Service接口 + * + * @author ruoyi + * @date 2025-03-26 + */ +public interface FaultService +{ + /** + * 查询故障 + * + * @param id 故障主键 + * @return 故障 + */ + public FaultVO selectFaultById(Long id); + + /** + * 查询故障列表 + * + * @param fault 故障 + * @return 故障集合 + */ + public List selectFaultList(FaultQuery fault); + + /** + * 新增故障 + * + * @param fault 故障 + * @return 结果 + */ + public int insertFault(Fault fault); + + /** + * 修改故障 + * + * @param fault 故障 + * @return 结果 + */ + public int updateFault(Fault fault); + + /** + * 批量删除故障 + * + * @param ids 需要删除的故障主键集合 + * @return 结果 + */ + public int deleteFaultByIds(Long[] ids); + + /** + * 删除故障信息 + * + * @param id 故障主键 + * @return 结果 + */ + public int deleteFaultById(Long id); +} diff --git a/ruoyi-service/src/main/java/com/ruoyi/bst/fault/service/impl/FaultServiceImpl.java b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/service/impl/FaultServiceImpl.java new file mode 100644 index 0000000..2881b91 --- /dev/null +++ b/ruoyi-service/src/main/java/com/ruoyi/bst/fault/service/impl/FaultServiceImpl.java @@ -0,0 +1,97 @@ +package com.ruoyi.bst.fault.service.impl; + +import java.util.List; +import com.ruoyi.common.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.ruoyi.bst.fault.mapper.FaultMapper; +import com.ruoyi.bst.fault.domain.Fault; +import com.ruoyi.bst.fault.domain.FaultVO; +import com.ruoyi.bst.fault.domain.FaultQuery; +import com.ruoyi.bst.fault.service.FaultService; + +/** + * 故障Service业务层处理 + * + * @author ruoyi + * @date 2025-03-26 + */ +@Service +public class FaultServiceImpl implements FaultService +{ + @Autowired + private FaultMapper faultMapper; + + /** + * 查询故障 + * + * @param id 故障主键 + * @return 故障 + */ + @Override + public FaultVO selectFaultById(Long id) + { + return faultMapper.selectFaultById(id); + } + + /** + * 查询故障列表 + * + * @param fault 故障 + * @return 故障 + */ + @Override + public List selectFaultList(FaultQuery fault) + { + return faultMapper.selectFaultList(fault); + } + + /** + * 新增故障 + * + * @param fault 故障 + * @return 结果 + */ + @Override + public int insertFault(Fault fault) + { + fault.setCreateTime(DateUtils.getNowDate()); + return faultMapper.insertFault(fault); + } + + /** + * 修改故障 + * + * @param fault 故障 + * @return 结果 + */ + @Override + public int updateFault(Fault fault) + { + return faultMapper.updateFault(fault); + } + + /** + * 批量删除故障 + * + * @param ids 需要删除的故障主键 + * @return 结果 + */ + @Override + public int deleteFaultByIds(Long[] ids) + { + return faultMapper.deleteFaultByIds(ids); + } + + /** + * 删除故障信息 + * + * @param id 故障主键 + * @return 结果 + */ + @Override + public int deleteFaultById(Long id) + { + return faultMapper.deleteFaultById(id); + } +} diff --git a/ruoyi-web/src/main/java/com/ruoyi/web/bst/FaultController.java b/ruoyi-web/src/main/java/com/ruoyi/web/bst/FaultController.java new file mode 100644 index 0000000..af413f7 --- /dev/null +++ b/ruoyi-web/src/main/java/com/ruoyi/web/bst/FaultController.java @@ -0,0 +1,101 @@ +package com.ruoyi.web.bst; + +import com.ruoyi.bst.fault.domain.Fault; +import com.ruoyi.bst.fault.domain.FaultQuery; +import com.ruoyi.bst.fault.domain.FaultVO; +import com.ruoyi.bst.fault.service.FaultService; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.poi.ExcelUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 故障Controller + * + * @author ruoyi + * @date 2025-03-26 + */ +@RestController +@RequestMapping("/bst/fault") +public class FaultController extends BaseController +{ + @Autowired + private FaultService faultService; + + /** + * 查询故障列表 + */ + @PreAuthorize("@ss.hasPermi('bst:fault:list')") + @GetMapping("/list") + public TableDataInfo list(FaultQuery query) + { + startPage(); + startOrderBy(); + List list = faultService.selectFaultList(query); + return getDataTable(list); + } + + /** + * 导出故障列表 + */ + @PreAuthorize("@ss.hasPermi('bst:fault:export')") + @Log(title = "故障", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, FaultQuery query) + { + List list = faultService.selectFaultList(query); + ExcelUtil util = new ExcelUtil(FaultVO.class); + util.exportExcel(response, list, "故障数据"); + } + + /** + * 获取故障详细信息 + */ + @PreAuthorize("@ss.hasPermi('bst:fault:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(faultService.selectFaultById(id)); + } + + /** + * 新增故障 + */ + @PreAuthorize("@ss.hasPermi('bst:fault:add')") + @Log(title = "故障", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody Fault fault) + { + return toAjax(faultService.insertFault(fault)); + } + + /** + * 修改故障 + */ + @PreAuthorize("@ss.hasPermi('bst:fault:edit')") + @Log(title = "故障", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody Fault fault) + { + return toAjax(faultService.updateFault(fault)); + } + + /** + * 删除故障 + */ + @PreAuthorize("@ss.hasPermi('bst:fault:remove')") + @Log(title = "故障", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(faultService.deleteFaultByIds(ids)); + } +}