diff --git a/ruoyi-admin/src/main/java/com/ruoyi/operation/controller/ZcCarDamageController.java b/ruoyi-admin/src/main/java/com/ruoyi/operation/controller/ZcCarDamageController.java new file mode 100644 index 0000000..71bf14e --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/operation/controller/ZcCarDamageController.java @@ -0,0 +1,127 @@ +package com.ruoyi.operation.controller; + +import java.util.List; +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.ModelMap; +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.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.operation.domain.ZcCarDamage; +import com.ruoyi.operation.service.IZcCarDamageService; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; + +/** + * 车辆报损记录Controller + * + * @author ruoyi + * @date 2025-07-17 + */ +@Controller +@RequestMapping("/operation/carDamage") +public class ZcCarDamageController extends BaseController +{ + private String prefix = "operation/carDamage"; + + @Autowired + private IZcCarDamageService zcCarDamageService; + + @RequiresPermissions("operation:carDamage:view") + @GetMapping() + public String carDamage() + { + return prefix + "/carDamage"; + } + + /** + * 查询车辆报损记录列表 + */ + @RequiresPermissions("operation:carDamage:list") + @PostMapping("/list") + @ResponseBody + public TableDataInfo list(ZcCarDamage zcCarDamage) + { + startPage(); + List list = zcCarDamageService.selectZcCarDamageList(zcCarDamage); + return getDataTable(list); + } + + /** + * 导出车辆报损记录列表 + */ + @RequiresPermissions("operation:carDamage:export") + @Log(title = "车辆报损记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + @ResponseBody + public AjaxResult export(ZcCarDamage zcCarDamage) + { + List list = zcCarDamageService.selectZcCarDamageList(zcCarDamage); + ExcelUtil util = new ExcelUtil(ZcCarDamage.class); + return util.exportExcel(list, "车辆报损记录数据"); + } + + /** + * 新增车辆报损记录 + */ + @GetMapping("/add") + public String add() + { + return prefix + "/add"; + } + + /** + * 新增保存车辆报损记录 + */ + @RequiresPermissions("operation:carDamage:add") + @Log(title = "车辆报损记录", businessType = BusinessType.INSERT) + @PostMapping("/add") + @ResponseBody + public AjaxResult addSave(ZcCarDamage zcCarDamage) + { + return toAjax(zcCarDamageService.insertZcCarDamage(zcCarDamage)); + } + + /** + * 修改车辆报损记录 + */ + @RequiresPermissions("operation:carDamage:edit") + @GetMapping("/edit/{id}") + public String edit(@PathVariable("id") Long id, ModelMap mmap) + { + ZcCarDamage zcCarDamage = zcCarDamageService.selectZcCarDamageById(id); + mmap.put("zcCarDamage", zcCarDamage); + return prefix + "/edit"; + } + + /** + * 修改保存车辆报损记录 + */ + @RequiresPermissions("operation:carDamage:edit") + @Log(title = "车辆报损记录", businessType = BusinessType.UPDATE) + @PostMapping("/edit") + @ResponseBody + public AjaxResult editSave(ZcCarDamage zcCarDamage) + { + return toAjax(zcCarDamageService.updateZcCarDamage(zcCarDamage)); + } + + /** + * 删除车辆报损记录 + */ + @RequiresPermissions("operation:carDamage:remove") + @Log(title = "车辆报损记录", businessType = BusinessType.DELETE) + @PostMapping( "/remove") + @ResponseBody + public AjaxResult remove(String ids) + { + return toAjax(zcCarDamageService.deleteZcCarDamageByIds(ids)); + } +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/operation/domain/ZcCarDamage.java b/ruoyi-admin/src/main/java/com/ruoyi/operation/domain/ZcCarDamage.java new file mode 100644 index 0000000..f05d495 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/operation/domain/ZcCarDamage.java @@ -0,0 +1,258 @@ +package com.ruoyi.operation.domain; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.annotation.Excels; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 车辆报损记录对象 zc_car_damage + * + * @author ruoyi + * @date 2025-07-17 + */ +public class ZcCarDamage extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 报损记录ID */ + private Long id; + + @Excels({ + @Excel(name = "所属运营商", targetAttr = "operatorName", type = Excel.Type.EXPORT), + @Excel(name = "所属门店", targetAttr = "storeName", type = Excel.Type.EXPORT), + @Excel(name = "车架号", targetAttr = "vin", type = Excel.Type.EXPORT), + @Excel(name = "车牌号码", targetAttr = "licensePlate", type = Excel.Type.EXPORT), + @Excel(name = "车辆品牌", targetAttr = "brandName", type = Excel.Type.EXPORT), + @Excel(name = "车辆型号", targetAttr = "modelName", type = Excel.Type.EXPORT), + @Excel(name = "采购价格(元)", targetAttr = "purchasePrice", type = Excel.Type.EXPORT) + }) + private ZcCar zcCar; + + /** 关联车辆ID,外键关联zc_car表 */ + private Long carId; + + /** 报损类型 */ + @Excel(name = "报损类型",dictType = "key_car_damage_type") + private String damageType; + + /** 报损原因 */ + @Excel(name = "报损原因") + private String damageReason; + + /** 报损提交人姓名 */ + @Excel(name = "报损提交人") + private String submitterName; + + /** 报损提交时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "报损提交时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date submitTime; + + /** 报损状态(0:待审核,1:审核通过,2:审核不通过,3:已处理) */ + @Excel(name = "报损状态",dictType = "key_car_damage_status") + private Long damageStatus; + + /** 审核人姓名 */ + @Excel(name = "审核人姓名") + private String auditorName; + + /** 审核时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date auditTime; + + /** 审核意见 */ + @Excel(name = "审核意见") + private String auditComment; + + /** 状态(0正常 1停用) */ + private String status; + + /** 删除标志(0代表存在 2代表删除) */ + private String delFlag; + + /** 扩展字段1 */ + private String extend1; + + /** 扩展字段2 */ + private String extend2; + + /** 扩展字段3 */ + private String extend3; + + + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setCarId(Long carId) + { + this.carId = carId; + } + + public Long getCarId() + { + return carId; + } + public void setDamageType(String damageType) + { + this.damageType = damageType; + } + + public String getDamageType() + { + return damageType; + } + public void setDamageReason(String damageReason) + { + this.damageReason = damageReason; + } + + public String getDamageReason() + { + return damageReason; + } + public void setSubmitterName(String submitterName) + { + this.submitterName = submitterName; + } + + public String getSubmitterName() + { + return submitterName; + } + public void setSubmitTime(Date submitTime) + { + this.submitTime = submitTime; + } + + public Date getSubmitTime() + { + return submitTime; + } + public void setDamageStatus(Long damageStatus) + { + this.damageStatus = damageStatus; + } + + public Long getDamageStatus() + { + return damageStatus; + } + public void setAuditorName(String auditorName) + { + this.auditorName = auditorName; + } + + public String getAuditorName() + { + return auditorName; + } + public void setAuditTime(Date auditTime) + { + this.auditTime = auditTime; + } + + public Date getAuditTime() + { + return auditTime; + } + public void setAuditComment(String auditComment) + { + this.auditComment = auditComment; + } + + public String getAuditComment() + { + return auditComment; + } + public void setStatus(String status) + { + this.status = status; + } + + public String getStatus() + { + return status; + } + public void setDelFlag(String delFlag) + { + this.delFlag = delFlag; + } + + public String getDelFlag() + { + return delFlag; + } + public void setExtend1(String extend1) + { + this.extend1 = extend1; + } + + public String getExtend1() + { + return extend1; + } + public void setExtend2(String extend2) + { + this.extend2 = extend2; + } + + public String getExtend2() + { + return extend2; + } + public void setExtend3(String extend3) + { + this.extend3 = extend3; + } + + public String getExtend3() + { + return extend3; + } + + public ZcCar getZcCar() { + return zcCar; + } + + public void setZcCar(ZcCar zcCar) { + this.zcCar = zcCar; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("carId", getCarId()) + .append("damageType", getDamageType()) + .append("damageReason", getDamageReason()) + .append("submitterName", getSubmitterName()) + .append("submitTime", getSubmitTime()) + .append("damageStatus", getDamageStatus()) + .append("auditorName", getAuditorName()) + .append("auditTime", getAuditTime()) + .append("auditComment", getAuditComment()) + .append("status", getStatus()) + .append("delFlag", getDelFlag()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .append("extend1", getExtend1()) + .append("extend2", getExtend2()) + .append("extend3", getExtend3()) + .toString(); + } +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/operation/mapper/ZcCarDamageMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/operation/mapper/ZcCarDamageMapper.java new file mode 100644 index 0000000..d9db277 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/operation/mapper/ZcCarDamageMapper.java @@ -0,0 +1,61 @@ +package com.ruoyi.operation.mapper; + +import java.util.List; +import com.ruoyi.operation.domain.ZcCarDamage; + +/** + * 车辆报损记录Mapper接口 + * + * @author ruoyi + * @date 2025-07-17 + */ +public interface ZcCarDamageMapper +{ + /** + * 查询车辆报损记录 + * + * @param id 车辆报损记录主键 + * @return 车辆报损记录 + */ + public ZcCarDamage selectZcCarDamageById(Long id); + + /** + * 查询车辆报损记录列表 + * + * @param zcCarDamage 车辆报损记录 + * @return 车辆报损记录集合 + */ + public List selectZcCarDamageList(ZcCarDamage zcCarDamage); + + /** + * 新增车辆报损记录 + * + * @param zcCarDamage 车辆报损记录 + * @return 结果 + */ + public int insertZcCarDamage(ZcCarDamage zcCarDamage); + + /** + * 修改车辆报损记录 + * + * @param zcCarDamage 车辆报损记录 + * @return 结果 + */ + public int updateZcCarDamage(ZcCarDamage zcCarDamage); + + /** + * 删除车辆报损记录 + * + * @param id 车辆报损记录主键 + * @return 结果 + */ + public int deleteZcCarDamageById(Long id); + + /** + * 批量删除车辆报损记录 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteZcCarDamageByIds(String[] ids); +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/operation/service/IZcCarDamageService.java b/ruoyi-admin/src/main/java/com/ruoyi/operation/service/IZcCarDamageService.java new file mode 100644 index 0000000..7b9fc37 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/operation/service/IZcCarDamageService.java @@ -0,0 +1,61 @@ +package com.ruoyi.operation.service; + +import java.util.List; +import com.ruoyi.operation.domain.ZcCarDamage; + +/** + * 车辆报损记录Service接口 + * + * @author ruoyi + * @date 2025-07-17 + */ +public interface IZcCarDamageService +{ + /** + * 查询车辆报损记录 + * + * @param id 车辆报损记录主键 + * @return 车辆报损记录 + */ + public ZcCarDamage selectZcCarDamageById(Long id); + + /** + * 查询车辆报损记录列表 + * + * @param zcCarDamage 车辆报损记录 + * @return 车辆报损记录集合 + */ + public List selectZcCarDamageList(ZcCarDamage zcCarDamage); + + /** + * 新增车辆报损记录 + * + * @param zcCarDamage 车辆报损记录 + * @return 结果 + */ + public int insertZcCarDamage(ZcCarDamage zcCarDamage); + + /** + * 修改车辆报损记录 + * + * @param zcCarDamage 车辆报损记录 + * @return 结果 + */ + public int updateZcCarDamage(ZcCarDamage zcCarDamage); + + /** + * 批量删除车辆报损记录 + * + * @param ids 需要删除的车辆报损记录主键集合 + * @return 结果 + */ + public int deleteZcCarDamageByIds(String ids); + + /** + * 删除车辆报损记录信息 + * + * @param id 车辆报损记录主键 + * @return 结果 + */ + public int deleteZcCarDamageById(Long id); +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/operation/service/impl/ZcCarDamageServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/operation/service/impl/ZcCarDamageServiceImpl.java new file mode 100644 index 0000000..a2dd74e --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/operation/service/impl/ZcCarDamageServiceImpl.java @@ -0,0 +1,97 @@ +package com.ruoyi.operation.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.operation.mapper.ZcCarDamageMapper; +import com.ruoyi.operation.domain.ZcCarDamage; +import com.ruoyi.operation.service.IZcCarDamageService; +import com.ruoyi.common.core.text.Convert; + +/** + * 车辆报损记录Service业务层处理 + * + * @author ruoyi + * @date 2025-07-17 + */ +@Service +public class ZcCarDamageServiceImpl implements IZcCarDamageService +{ + @Autowired + private ZcCarDamageMapper zcCarDamageMapper; + + /** + * 查询车辆报损记录 + * + * @param id 车辆报损记录主键 + * @return 车辆报损记录 + */ + @Override + public ZcCarDamage selectZcCarDamageById(Long id) + { + return zcCarDamageMapper.selectZcCarDamageById(id); + } + + /** + * 查询车辆报损记录列表 + * + * @param zcCarDamage 车辆报损记录 + * @return 车辆报损记录 + */ + @Override + public List selectZcCarDamageList(ZcCarDamage zcCarDamage) + { + return zcCarDamageMapper.selectZcCarDamageList(zcCarDamage); + } + + /** + * 新增车辆报损记录 + * + * @param zcCarDamage 车辆报损记录 + * @return 结果 + */ + @Override + public int insertZcCarDamage(ZcCarDamage zcCarDamage) + { + zcCarDamage.setCreateTime(DateUtils.getNowDate()); + return zcCarDamageMapper.insertZcCarDamage(zcCarDamage); + } + + /** + * 修改车辆报损记录 + * + * @param zcCarDamage 车辆报损记录 + * @return 结果 + */ + @Override + public int updateZcCarDamage(ZcCarDamage zcCarDamage) + { + zcCarDamage.setUpdateTime(DateUtils.getNowDate()); + return zcCarDamageMapper.updateZcCarDamage(zcCarDamage); + } + + /** + * 批量删除车辆报损记录 + * + * @param ids 需要删除的车辆报损记录主键 + * @return 结果 + */ + @Override + public int deleteZcCarDamageByIds(String ids) + { + return zcCarDamageMapper.deleteZcCarDamageByIds(Convert.toStrArray(ids)); + } + + /** + * 删除车辆报损记录信息 + * + * @param id 车辆报损记录主键 + * @return 结果 + */ + @Override + public int deleteZcCarDamageById(Long id) + { + return zcCarDamageMapper.deleteZcCarDamageById(id); + } +} diff --git a/ruoyi-admin/src/main/resources/mapper/operation/ZcCarDamageMapper.xml b/ruoyi-admin/src/main/resources/mapper/operation/ZcCarDamageMapper.xml new file mode 100644 index 0000000..b5fc977 --- /dev/null +++ b/ruoyi-admin/src/main/resources/mapper/operation/ZcCarDamageMapper.xml @@ -0,0 +1,157 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select a.id, a.car_id, a.damage_type, a.damage_reason, a.submitter_name, a.submit_time, a.damage_status, a.auditor_name, a.audit_time, a.audit_comment, a.status, a.del_flag, a.create_by, a.create_time, a.update_by, a.update_time, a.remark, a.extend1, a.extend2, a.extend3, + c.vin, c.license_plate, c.brand_name, c.model_name, c.purchase_price, c.belong_type, c.operator_name, c.store_name + from zc_car_damage a + left join zc_car c on a.car_id = c.id + + + + + + + + insert into zc_car_damage + + car_id, + damage_type, + damage_reason, + submitter_name, + submit_time, + damage_status, + auditor_name, + audit_time, + audit_comment, + status, + del_flag, + create_by, + create_time, + update_by, + update_time, + remark, + extend1, + extend2, + extend3, + + + #{carId}, + #{damageType}, + #{damageReason}, + #{submitterName}, + #{submitTime}, + #{damageStatus}, + #{auditorName}, + #{auditTime}, + #{auditComment}, + #{status}, + #{delFlag}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{remark}, + #{extend1}, + #{extend2}, + #{extend3}, + + + + + update zc_car_damage + + car_id = #{carId}, + damage_type = #{damageType}, + damage_reason = #{damageReason}, + submitter_name = #{submitterName}, + submit_time = #{submitTime}, + damage_status = #{damageStatus}, + auditor_name = #{auditorName}, + audit_time = #{auditTime}, + audit_comment = #{auditComment}, + status = #{status}, + del_flag = #{delFlag}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark}, + extend1 = #{extend1}, + extend2 = #{extend2}, + extend3 = #{extend3}, + + where id = #{id} + + + + delete from zc_car_damage where id = #{id} + + + + delete from zc_car_damage where id in + + #{id} + + + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/operation/carDamage/add.html b/ruoyi-admin/src/main/resources/templates/operation/carDamage/add.html new file mode 100644 index 0000000..0511767 --- /dev/null +++ b/ruoyi-admin/src/main/resources/templates/operation/carDamage/add.html @@ -0,0 +1,134 @@ + + + + + + + +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ + + + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/operation/carDamage/carDamage.html b/ruoyi-admin/src/main/resources/templates/operation/carDamage/carDamage.html new file mode 100644 index 0000000..e3db637 --- /dev/null +++ b/ruoyi-admin/src/main/resources/templates/operation/carDamage/carDamage.html @@ -0,0 +1,169 @@ + + + + + + +
+
+
+
+
+
    +
  • + + +
  • +
  • + + +
  • +
  • + + +
  • +
  • + + +
  • +
  • +  搜索 +  重置 +
  • +
+
+
+
+ +
+ + + + + + + + + + + 导出 + +
+
+
+
+
+
+ + + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/operation/carDamage/edit.html b/ruoyi-admin/src/main/resources/templates/operation/carDamage/edit.html new file mode 100644 index 0000000..dd2481a --- /dev/null +++ b/ruoyi-admin/src/main/resources/templates/operation/carDamage/edit.html @@ -0,0 +1,107 @@ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+ +
+
+ + + + + \ No newline at end of file