From d5653a35b810786e67616d0e9cee8dcb23c0622e Mon Sep 17 00:00:00 2001 From: 15036302109 Date: Tue, 12 Dec 2023 17:32:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=94=E6=80=A5=E6=95=91=E6=8F=B4=E9=98=9F?= =?UTF-8?q?=E4=BC=8D=E7=AE=A1=E7=90=86=E5=92=8C=E4=BA=BA=E5=91=98=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E5=8A=9F=E8=83=BD=E5=AE=8C=E6=88=90,=E4=BA=BA?= =?UTF-8?q?=E5=91=98=E4=BF=A1=E6=81=AF=E7=BC=BA=E4=B8=AA=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ehs/EhsRescueTeamController.java | 148 ++++++ .../ehs/EhsRescueTeamWorkerController.java | 150 ++++++ .../ruoyi/common/core/domain/ExcelExp.java | 21 + .../ruoyi/common/utils/ExcelExportUtil.java | 81 +++ .../ehsRescueTeam/domain/EhsRescueTeam.java | 53 ++ .../domain/RescueTeamImportTemplate.java | 20 + .../mapper/EhsRescueTeamMapper.java | 44 ++ .../service/IEhsRescueTeamService.java | 46 ++ .../impl/EhsRescueTeamServiceImpl.java | 123 +++++ .../ehsRescueTeam/vo/TeamResponseVo.java | 10 + .../domain/EhsRescueTeamWorker.java | 92 ++++ .../mapper/EhsRescueTeamWorkerMapper.java | 33 ++ .../service/IEhsRescueTeamWorkerService.java | 34 ++ .../impl/EhsRescueTeamWorkerServiceImpl.java | 74 +++ .../mapper/ehs/EhsRescueTeamMapper.xml | 56 +++ .../mapper/ehs/EhsRescueTeamWorkerMapper.xml | 62 +++ ruoyi-ui/src/api/ehs/ehsRescueTeam.js | 44 ++ ruoyi-ui/src/api/ehs/ehsRescueTeamWorker.js | 52 ++ ruoyi-ui/src/components/upload/upload.vue | 107 ++++ ruoyi-ui/src/views/ehs/ehsDocument/index.vue | 45 +- .../src/views/ehs/ehsRescueTeam/index.vue | 373 ++++++++++++++ .../views/ehs/ehsRescueTeamWorker/index.vue | 461 ++++++++++++++++++ 22 files changed, 2099 insertions(+), 30 deletions(-) create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/web/controller/ehs/EhsRescueTeamController.java create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/web/controller/ehs/EhsRescueTeamWorkerController.java create mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/core/domain/ExcelExp.java create mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/utils/ExcelExportUtil.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/domain/EhsRescueTeam.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/domain/RescueTeamImportTemplate.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/mapper/EhsRescueTeamMapper.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/service/IEhsRescueTeamService.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/service/impl/EhsRescueTeamServiceImpl.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/vo/TeamResponseVo.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/domain/EhsRescueTeamWorker.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/mapper/EhsRescueTeamWorkerMapper.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/service/IEhsRescueTeamWorkerService.java create mode 100644 ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/service/impl/EhsRescueTeamWorkerServiceImpl.java create mode 100644 ruoyi-system/src/main/resources/mapper/ehs/EhsRescueTeamMapper.xml create mode 100644 ruoyi-system/src/main/resources/mapper/ehs/EhsRescueTeamWorkerMapper.xml create mode 100644 ruoyi-ui/src/api/ehs/ehsRescueTeam.js create mode 100644 ruoyi-ui/src/api/ehs/ehsRescueTeamWorker.js create mode 100644 ruoyi-ui/src/components/upload/upload.vue create mode 100644 ruoyi-ui/src/views/ehs/ehsRescueTeam/index.vue create mode 100644 ruoyi-ui/src/views/ehs/ehsRescueTeamWorker/index.vue diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/ehs/EhsRescueTeamController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/ehs/EhsRescueTeamController.java new file mode 100644 index 0000000..5518086 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/ehs/EhsRescueTeamController.java @@ -0,0 +1,148 @@ +package com.ruoyi.web.controller.ehs; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import java.util.Arrays; +import javax.servlet.http.HttpServletResponse; + +import com.ruoyi.common.core.domain.ExcelExp; +import com.ruoyi.common.utils.ExcelExportUtil; +import com.ruoyi.ehsRescueTeam.domain.RescueTeamImportTemplate; +import com.ruoyi.ehsRescueTeamWorker.service.IEhsRescueTeamWorkerService; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.ehsRescueTeam.domain.EhsRescueTeam; +import com.ruoyi.ehsRescueTeam.service.IEhsRescueTeamService; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; +import org.springframework.web.multipart.MultipartFile; + +/** + * 应急救援队伍管理Controller + * + * @author ruoyi + * @date 2023-12-11 + */ +@Api(tags = "应急救援队伍管理管理") +@RestController +@RequestMapping("/ehs/ehsRescueTeam") +public class EhsRescueTeamController extends BaseController { + @Autowired + private IEhsRescueTeamService ehsRescueTeamService; + + @Autowired + private IEhsRescueTeamWorkerService ehsRescueTeamWorkerService; + + /** + * 查询应急救援队伍管理列表 + */ + @PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeam:list')") + @GetMapping("/list") + public TableDataInfo list(EhsRescueTeam ehsRescueTeam) { + startPage(); + List list = ehsRescueTeamService.selectEhsRescueTeamList(ehsRescueTeam); + return getDataTable(list); + } + + /** + * 导出应急救援队伍管理列表 + */ + @PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeam:export')") + @Log(title = "应急救援队伍管理", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, EhsRescueTeam ehsRescueTeam) { + List list = ehsRescueTeamService.selectEhsRescueTeamList(ehsRescueTeam); + ExcelUtil util = new ExcelUtil(EhsRescueTeam.class); + util.exportExcel(response, list, "应急救援队伍管理数据"); + } + + /** + * 下载批量导入模板 + */ + @PostMapping("/importTemplate") + public void importTemplate(HttpServletResponse response) throws IOException { + List ehsRescueTeamList = new ArrayList<>(); + String[] header = + {"队伍名称#", + "队伍级别#", + "备注#"}; + ExcelExp e1 = new ExcelExp("应急救援队伍信息", header, ehsRescueTeamList, EhsRescueTeam.class); + List mysheet = new ArrayList<>(); + mysheet.add(e1); + ExcelExportUtil.exportManySheetExcel("应急救援队伍信息批量导入模板", mysheet, response); + } + + /** + * 批量导入 + */ + @PostMapping("/importData") + public AjaxResult importHubManage(MultipartFile file, Boolean updateSupport) throws Exception { + ExcelUtil util = new ExcelUtil<>(RescueTeamImportTemplate.class); + List list = util.importExcel(file.getInputStream()); + String message = ehsRescueTeamService.importRescueTeam(list, updateSupport); + return AjaxResult.success(message); + } + + /** + * 获取应急救援队伍管理详细信息 + */ + @PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeam:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) { + return success(ehsRescueTeamService.selectEhsRescueTeamById(id)); + } + + /** + * 新增应急救援队伍管理 + */ + @ApiOperation("新增应急救援队伍管理") + @PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeam:add')") + @Log(title = "应急救援队伍管理", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody EhsRescueTeam ehsRescueTeam) { + return toAjax(ehsRescueTeamService.save(ehsRescueTeam)); + } + + /** + * 修改应急救援队伍管理 + */ + @ApiOperation("修改应急救援队伍管理") + @PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeam:edit')") + @Log(title = "应急救援队伍管理", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody EhsRescueTeam ehsRescueTeam) { + return toAjax(ehsRescueTeamService.updateById(ehsRescueTeam)); + } + + /** + * 删除应急救援队伍管理 + */ + @ApiOperation("删除应急救援队伍管理") + @PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeam:remove')") + @Log(title = "应急救援队伍管理", businessType = BusinessType.DELETE) + @Transactional + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) { + // 根据队伍ids删除队伍 + ehsRescueTeamService.removeByIds(Arrays.asList(ids)); + // 根据队伍ids删除队伍中的队员 + boolean result = ehsRescueTeamWorkerService.removeWorkerByTeamIds(Arrays.asList(ids)); + return toAjax(result); + } +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/ehs/EhsRescueTeamWorkerController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/ehs/EhsRescueTeamWorkerController.java new file mode 100644 index 0000000..7b9a59d --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/ehs/EhsRescueTeamWorkerController.java @@ -0,0 +1,150 @@ +package com.ruoyi.web.controller.ehs; + +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.domain.ExcelExp; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.ExcelExportUtil; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.ehsRescueTeam.domain.EhsRescueTeam; +import com.ruoyi.ehsRescueTeam.domain.RescueTeamImportTemplate; +import com.ruoyi.ehsRescueTeam.service.IEhsRescueTeamService; +import com.ruoyi.ehsRescueTeam.vo.TeamResponseVo; +import com.ruoyi.ehsRescueTeamWorker.domain.EhsRescueTeamWorker; +import com.ruoyi.ehsRescueTeamWorker.service.IEhsRescueTeamWorkerService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +/** + * 应急救援队人员信息Controller + * + * @author ruoyi + * @date 2023-12-11 + */ +@Api(tags = "应急救援队人员信息管理") +@RestController +@RequestMapping("/ehs/ehsRescueTeamWorker") +public class EhsRescueTeamWorkerController extends BaseController { + @Autowired + private IEhsRescueTeamWorkerService ehsRescueTeamWorkerService; + @Autowired + private IEhsRescueTeamService ehsRescueTeamService; + + /** + * 查询应急救援队人员信息列表 + */ + //@PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeamWorker:list')") + @GetMapping("/list") + public TableDataInfo list(EhsRescueTeamWorker ehsRescueTeamWorker) { + startPage(); + List list = ehsRescueTeamWorkerService.selectEhsRescueTeamWorkerList(ehsRescueTeamWorker); + return getDataTable(list); + } + + /** + * 导出应急救援队人员信息列表 + */ + //@PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeamWorker:export')") + @Log(title = "应急救援队人员信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, EhsRescueTeamWorker ehsRescueTeamWorker) { + List list = ehsRescueTeamWorkerService.selectEhsRescueTeamWorkerList(ehsRescueTeamWorker); + ExcelUtil util = new ExcelUtil(EhsRescueTeamWorker.class); + util.exportExcel(response, list, "应急救援队人员信息数据"); + } + + /** + * 获取应急救援队人员信息详细信息 + */ + //@PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeamWorker:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) { + return success(ehsRescueTeamWorkerService.selectEhsRescueTeamWorkerById(id)); + } + + /** + * 根据队伍id获取队伍信息 + */ + @GetMapping(value = "/getTeamInfo/{rescueTeamId}") + public AjaxResult getTeamInfo(@PathVariable("rescueTeamId") Long rescueTeamId) { + TeamResponseVo teamResponseVo = ehsRescueTeamService.getTeamInfoByTeamId(rescueTeamId); + return success(teamResponseVo); + } + + /** + * 新增应急救援队人员信息 + */ + @ApiOperation("新增应急救援队人员信息") + //@PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeamWorker:add')") + @Log(title = "应急救援队人员信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody EhsRescueTeamWorker ehsRescueTeamWorker) { + return toAjax(ehsRescueTeamWorkerService.save(ehsRescueTeamWorker)); + } + + /** + * 修改应急救援队人员信息 + */ + @ApiOperation("修改应急救援队人员信息") + //@PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeamWorker:edit')") + @Log(title = "应急救援队人员信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody EhsRescueTeamWorker ehsRescueTeamWorker) { + return toAjax(ehsRescueTeamWorkerService.updateById(ehsRescueTeamWorker)); + } + + /** + * 删除应急救援队人员信息 + */ + @ApiOperation("删除应急救援队人员信息") + //@PreAuthorize("@ss.hasPermi('ehs:ehsRescueTeamWorker:remove')") + @Log(title = "应急救援队人员信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) { + return toAjax(ehsRescueTeamWorkerService.removeByIds(Arrays.asList(ids))); + } + + /** + * 下载批量导入模板 + */ + @PostMapping("/importTemplate") + public void importTemplate(HttpServletResponse response) throws IOException { + List teamWorkerList = new ArrayList<>(); + String[] header = + {"人员姓名#", + "性别(0男 1女)#", + "出生年月(格式为2023-12-12)#", + "身份证号#", + "联系方式#", + "工作年限#", + "救援技能特长#", + "备注#"}; + ExcelExp e1 = new ExcelExp("应急救援队伍人员信息", header, teamWorkerList, EhsRescueTeamWorker.class); + List mysheet = new ArrayList<>(); + mysheet.add(e1); + ExcelExportUtil.exportManySheetExcel("应急救援队伍人员信息批量导入模板", mysheet, response); + } + + + /** + * 批量导入 + */ + @PostMapping("/importData") + public AjaxResult importHubManage(MultipartFile file, Boolean updateSupport) throws Exception { + ExcelUtil util = new ExcelUtil<>(RescueTeamImportTemplate.class); + List list = util.importExcel(file.getInputStream()); + String message = ehsRescueTeamService.importRescueTeam(list, updateSupport); + return AjaxResult.success(message); + } +} diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/ExcelExp.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/ExcelExp.java new file mode 100644 index 0000000..865b872 --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/ExcelExp.java @@ -0,0 +1,21 @@ +package com.ruoyi.common.core.domain; + +import lombok.Data; + +import java.util.List; + +@Data +public class ExcelExp { + + private String fileName;// sheet的名称 + private String[] handers;// sheet里的标题 + private List dataset;// sheet里的数据集 + private Class clazz; + + public ExcelExp(String fileName, String[] handers, List dataset, Class clazz) { + this.fileName = fileName; + this.handers = handers; + this.dataset = dataset; + this.clazz=clazz; + } +} \ No newline at end of file diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ExcelExportUtil.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/ExcelExportUtil.java new file mode 100644 index 0000000..87e51f2 --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/ExcelExportUtil.java @@ -0,0 +1,81 @@ +package com.ruoyi.common.utils; + +import cn.hutool.json.JSONUtil; +import com.alibaba.fastjson2.JSONObject; +import com.ruoyi.common.core.domain.ExcelExp; +import org.apache.poi.hssf.usermodel.*; +import org.apache.poi.ss.usermodel.HorizontalAlignment; +import org.apache.poi.ss.usermodel.VerticalAlignment; + +import javax.servlet.http.HttpServletResponse; +import java.net.URLEncoder; +import java.util.Collections; +import java.util.List; + +/** + * 多sheet 导出 + */ +public class ExcelExportUtil { + public static void exportManySheetExcel(String fileName, List mysheets, HttpServletResponse response) { + HSSFWorkbook wb = new HSSFWorkbook();//创建工作薄 + List sheets = mysheets; + //表头样式 + HSSFCellStyle style = wb.createCellStyle(); + style.setVerticalAlignment(VerticalAlignment.CENTER);// 垂直 + style.setAlignment(HorizontalAlignment.CENTER);// 水平 + //字体样式 + HSSFFont fontStyle = wb.createFont(); + fontStyle.setFontName("微软雅黑"); + fontStyle.setFontHeightInPoints((short) 12); + style.setFont(fontStyle); + for (ExcelExp excel : sheets) { + //新建一个sheet + HSSFSheet sheet = wb.createSheet(excel.getFileName());//获取该sheet名称 + String[] handers = excel.getHanders();//获取sheet的标题名 + String[] header = new String[handers.length]; + String[] code = new String[handers.length]; + for (int i = 0; i < handers.length; i++) { + String[] temp = handers[i].split("#");//由两部分组成 + header[i] = temp[0];//#号之前的是标题汉字 + if (temp.length > 1) { + code[i] = temp[1]; //#号之后的是查询出得映射字段 + } + } + HSSFRow rowFirst = sheet.createRow(0);//第一个sheet的第一行为标题 + //写标题 + for (int i = 0; i < header.length; i++) { + //获取第一行的每个单元格 + HSSFCell cell = rowFirst.createCell(i); + //往单元格里写数据 + cell.setCellValue(header[i]); + cell.setCellStyle(style); //加样式 + sheet.setColumnWidth(i, 10000); //设置每列的列宽 + } + //写数据集 + List clazz = Collections.singletonList(excel.getClazz()); + clazz = excel.getDataset(); + for (int i = 0; i < clazz.size(); i++) { //获取多少行 + HSSFRow row = sheet.createRow(i + 1); //设置行 + String json = JSONUtil.parse(clazz.get(i)).toString(); + JSONObject jsonObject = JSONObject.parseObject(json); //转换成json + for (int j = 0; j < header.length; j++) { + row.createCell(j).setCellValue((String) jsonObject.get(code[j])); //填充指定的单元格 + } + } + } + + //下载 + try { + HSSFWorkbook hssfWorkbook = new HSSFWorkbook(); + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName + ".xls", "utf-8")); + response.setHeader("Cache-Control", "No-cache"); + response.flushBuffer(); + wb.write(response.getOutputStream()); + wb.close(); + } catch (Exception e) { + e.printStackTrace(); + } + } + +} \ No newline at end of file diff --git a/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/domain/EhsRescueTeam.java b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/domain/EhsRescueTeam.java new file mode 100644 index 0000000..36e7a54 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/domain/EhsRescueTeam.java @@ -0,0 +1,53 @@ +package com.ruoyi.ehsRescueTeam.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.ToString; +import lombok.experimental.Accessors; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 应急救援队伍管理对象 ehs_rescue_team + * + * @author ruoyi + * @date 2023-12-11 + */ +@Data +@ToString +@NoArgsConstructor +@Accessors(chain = true) +@TableName("ehs_rescue_team") +public class EhsRescueTeam extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(type = IdType.AUTO) + private Long id; + + /** + * 队伍名称 + */ + @Excel(name = "队伍名称") + private String teamName; + + /** + * 队伍级别 + */ + @Excel(name = "队伍级别") + private String teamLevel; + + /** + * 救援人员数量 + */ + @Excel(name = "救援人员数量") + @TableField(exist = false) + private Long rescueWorkerNum; + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/domain/RescueTeamImportTemplate.java b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/domain/RescueTeamImportTemplate.java new file mode 100644 index 0000000..92a1a10 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/domain/RescueTeamImportTemplate.java @@ -0,0 +1,20 @@ +package com.ruoyi.ehsRescueTeam.domain; + +import com.ruoyi.common.annotation.Excel; +import lombok.Data; + +@Data +public class RescueTeamImportTemplate { + /** 队伍名称 */ + @Excel(name = "队伍名称",type = Excel.Type.ALL) + private String teamName; + + /** 队伍级别 */ + @Excel(name = "队伍级别",type = Excel.Type.ALL) + private String teamLevel; + + /** 备注 */ + @Excel(name = "备注",type = Excel.Type.ALL) + private String remark; + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/mapper/EhsRescueTeamMapper.java b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/mapper/EhsRescueTeamMapper.java new file mode 100644 index 0000000..cb465ed --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/mapper/EhsRescueTeamMapper.java @@ -0,0 +1,44 @@ +package com.ruoyi.ehsRescueTeam.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.ehsRescueTeam.domain.EhsRescueTeam; +import com.ruoyi.ehsRescueTeam.vo.TeamResponseVo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 应急救援队伍管理Mapper接口 + * + * @author ruoyi + * @date 2023-12-11 + */ +public interface EhsRescueTeamMapper extends BaseMapper { + /** + * 查询应急救援队伍管理 + * + * @param id 应急救援队伍管理主键 + * @return 应急救援队伍管理 + */ + public EhsRescueTeam selectEhsRescueTeamById(Long id); + + /** + * 查询应急救援队伍管理列表 + * + * @param ehsRescueTeam 应急救援队伍管理 + * @return 应急救援队伍管理集合 + */ + public List selectEhsRescueTeamList(EhsRescueTeam ehsRescueTeam); + + /** + * 根据营救救援队伍id,查询该队伍人数 + * @param id + * @return + */ + Long getWorkerNumByTeamId(@Param("id") Long id); + + /** + * 根据队伍id获取队伍信息 + */ + TeamResponseVo getTeamInfoByTeamId(Long rescueTeamId); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/service/IEhsRescueTeamService.java b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/service/IEhsRescueTeamService.java new file mode 100644 index 0000000..3a61f63 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/service/IEhsRescueTeamService.java @@ -0,0 +1,46 @@ +package com.ruoyi.ehsRescueTeam.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.ehsRescueTeam.domain.EhsRescueTeam; +import com.ruoyi.ehsRescueTeam.domain.RescueTeamImportTemplate; +import com.ruoyi.ehsRescueTeam.vo.TeamResponseVo; + +import java.util.List; + +/** + * 应急救援队伍管理Service接口 + * + * @author ruoyi + * @date 2023-12-11 + */ +public interface IEhsRescueTeamService extends IService { + + /** + * 查询应急救援队伍管理 + * + * @param id 应急救援队伍管理主键 + * @return 应急救援队伍管理 + */ + public EhsRescueTeam selectEhsRescueTeamById(Long id); + + /** + * 查询应急救援队伍管理列表 + * + * @param ehsRescueTeam 应急救援队伍管理 + * @return 应急救援队伍管理集合 + */ + public List selectEhsRescueTeamList(EhsRescueTeam ehsRescueTeam); + + /** + * 导入模板数据 + * @param list + * @param updateSupport + * @return + */ + public String importRescueTeam(List list, Boolean updateSupport) throws Exception; + + /** + * 根据队伍id获取队伍信息 + */ + TeamResponseVo getTeamInfoByTeamId(Long rescueTeamId); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/service/impl/EhsRescueTeamServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/service/impl/EhsRescueTeamServiceImpl.java new file mode 100644 index 0000000..6aefcbb --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/service/impl/EhsRescueTeamServiceImpl.java @@ -0,0 +1,123 @@ +package com.ruoyi.ehsRescueTeam.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.ehsRescueTeam.domain.EhsRescueTeam; +import com.ruoyi.ehsRescueTeam.domain.RescueTeamImportTemplate; +import com.ruoyi.ehsRescueTeam.mapper.EhsRescueTeamMapper; +import com.ruoyi.ehsRescueTeam.service.IEhsRescueTeamService; +import com.ruoyi.ehsRescueTeam.vo.TeamResponseVo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + * 应急救援队伍管理Service业务层处理 + * + * @author ruoyi + * @date 2023-12-11 + */ +@Service +public class EhsRescueTeamServiceImpl extends ServiceImpl implements IEhsRescueTeamService { + + @Autowired + private EhsRescueTeamMapper ehsRescueTeamMapper; + + /** + * 查询应急救援队伍管理 + * + * @param id 应急救援队伍管理主键 + * @return 应急救援队伍管理 + */ + @Override + public EhsRescueTeam selectEhsRescueTeamById(Long id) { + return ehsRescueTeamMapper.selectEhsRescueTeamById(id); + } + + + /** + * 查询应急救援队伍管理列表 + * + * @param ehsRescueTeam 应急救援队伍管理 + * @return 应急救援队伍管理 + */ + @Override + public List selectEhsRescueTeamList(EhsRescueTeam ehsRescueTeam) { + List ehsRescueTeamList = ehsRescueTeamMapper.selectEhsRescueTeamList(ehsRescueTeam); + ehsRescueTeamList.stream().forEach(item->{ + Long count = ehsRescueTeamMapper.getWorkerNumByTeamId(item.getId()); + if (count != null){ + item.setRescueWorkerNum(count); + } + }); + + return ehsRescueTeamList; + } + + /** + * 根据队伍id获取队伍信息 + */ + @Override + public TeamResponseVo getTeamInfoByTeamId(Long rescueTeamId) { + return ehsRescueTeamMapper.getTeamInfoByTeamId(rescueTeamId); + } + + /** + * 导入模板数据 + * @param list + * @param updateSupport + * @return + */ + @Override + public String importRescueTeam(List list, Boolean updateSupport) throws Exception { + if (StringUtils.isNull(list) || list.size() == 0) { + throw new Exception("导入救援队伍信息数据不能为空!"); + } + int successNum = 0; + int failureNum = 0; + + StringBuilder successMsg = new StringBuilder(); + StringBuilder failureMsg = new StringBuilder(); + for (RescueTeamImportTemplate rescueTeamTemplate : list) { + + EhsRescueTeam temp = new EhsRescueTeam(); + /** + * 因为是插入数据,所以id需要处理,如果id是String类型,那么生成个uuid插入到数据库 + * 如果id是整数,并且自动递增,那么无需设置id + */ + // temp.setId(IdUtils.fastSimpleUUID()); + temp.setTeamName(rescueTeamTemplate.getTeamName()); //队伍名称 + temp.setTeamLevel(rescueTeamTemplate.getTeamLevel()); //队伍级别 + temp.setRemark(rescueTeamTemplate.getRemark()); // 备注 + try { + //插入数据 + this.save(temp); + successNum++; + successMsg.append("
" + successNum + "、应急救援队伍信息" + temp.getTeamName() + "导入成功"); + } catch (Exception e) { + e.printStackTrace(); + log.error(e.getLocalizedMessage()); + failureNum++; + successMsg.append("
" + failureNum + "、应急救援队伍信息" + temp.getTeamName() + "导入异常,请联系管理员!"); + continue; + } + } + return successMsg.toString(); + } + + + + private LambdaQueryWrapper buildQueryWrapper(EhsRescueTeam query) { + Map params = query.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.like(StringUtils.isNotBlank(query.getTeamName()), EhsRescueTeam::getTeamName, query.getTeamName()); + lqw.like(StringUtils.isNotBlank(query.getTeamLevel()), EhsRescueTeam::getTeamLevel, query.getTeamLevel()); + lqw.orderByDesc(EhsRescueTeam::getCreateTime); + return lqw; + } + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/vo/TeamResponseVo.java b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/vo/TeamResponseVo.java new file mode 100644 index 0000000..786276b --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeam/vo/TeamResponseVo.java @@ -0,0 +1,10 @@ +package com.ruoyi.ehsRescueTeam.vo; + +import lombok.Data; + +@Data +public class TeamResponseVo { + + private Long rescueTeamId; + private String rescueTeamName; +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/domain/EhsRescueTeamWorker.java b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/domain/EhsRescueTeamWorker.java new file mode 100644 index 0000000..060c334 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/domain/EhsRescueTeamWorker.java @@ -0,0 +1,92 @@ +package com.ruoyi.ehsRescueTeamWorker.domain; + +import java.util.Date; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.ToString; +import lombok.experimental.Accessors; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 应急救援队人员信息对象 ehs_rescue_team_worker + * + * @author ruoyi + * @date 2023-12-11 + */ +@Data +@ToString +@NoArgsConstructor +@Accessors(chain = true) +@TableName("ehs_rescue_team_worker") +public class EhsRescueTeamWorker extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(type = IdType.AUTO) + private Long id; + + /** + * 应急救援队伍id + */ + @Excel(name = "应急救援队伍id") + private Long rescueTeamId; + + /** + * 应急救援队伍名称 + */ + @Excel(name = "应急救援队伍名称") + private String rescueTeamName; + + /** + * 人员姓名 + */ + @Excel(name = "人员姓名") + private String workerName; + + /** + * 性别 + */ + @Excel(name = "性别") + private Integer gender; + + /** + * 出生年月 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "出生年月", width = 30, dateFormat = "yyyy-MM-dd") + private Date birthday; + + /** + * 身份证号 + */ + @Excel(name = "身份证号") + private String idCard; + + /** + * 联系方式 + */ + @Excel(name = "联系方式") + private String phone; + + /** + * 工作年限 + */ + @Excel(name = "工作年限") + private String workYear; + + /** + * 救援技能特长 + */ + @Excel(name = "救援技能特长") + private String speciality; + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/mapper/EhsRescueTeamWorkerMapper.java b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/mapper/EhsRescueTeamWorkerMapper.java new file mode 100644 index 0000000..56032f7 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/mapper/EhsRescueTeamWorkerMapper.java @@ -0,0 +1,33 @@ +package com.ruoyi.ehsRescueTeamWorker.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.ehsRescueTeamWorker.domain.EhsRescueTeamWorker; + +import java.util.List; + +/** + * 应急救援队人员信息Mapper接口 + * + * @author ruoyi + * @date 2023-12-11 + */ +public interface EhsRescueTeamWorkerMapper extends BaseMapper { + /** + * 查询应急救援队人员信息 + * + * @param id 应急救援队人员信息主键 + * @return 应急救援队人员信息 + */ + public EhsRescueTeamWorker selectEhsRescueTeamWorkerById(Long id); + + /** + * 查询应急救援队人员信息列表 + * + * @param ehsRescueTeamWorker 应急救援队人员信息 + * @return 应急救援队人员信息集合 + */ + public List selectEhsRescueTeamWorkerList(EhsRescueTeamWorker ehsRescueTeamWorker); + + // 根据队伍ids删除队伍中的队员 + boolean removeWorkerByTeamIds(List teamIds); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/service/IEhsRescueTeamWorkerService.java b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/service/IEhsRescueTeamWorkerService.java new file mode 100644 index 0000000..06e0c15 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/service/IEhsRescueTeamWorkerService.java @@ -0,0 +1,34 @@ +package com.ruoyi.ehsRescueTeamWorker.service; + +import java.util.List; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.ehsRescueTeamWorker.domain.EhsRescueTeamWorker; + +/** + * 应急救援队人员信息Service接口 + * + * @author ruoyi + * @date 2023-12-11 + */ +public interface IEhsRescueTeamWorkerService extends IService { + + /** + * 查询应急救援队人员信息 + * + * @param id 应急救援队人员信息主键 + * @return 应急救援队人员信息 + */ + public EhsRescueTeamWorker selectEhsRescueTeamWorkerById(Long id); + + /** + * 查询应急救援队人员信息列表 + * + * @param ehsRescueTeamWorker 应急救援队人员信息 + * @return 应急救援队人员信息集合 + */ + public List selectEhsRescueTeamWorkerList(EhsRescueTeamWorker ehsRescueTeamWorker); + + // 根据队伍ids删除队伍中的队员 + boolean removeWorkerByTeamIds(List teamIds); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/service/impl/EhsRescueTeamWorkerServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/service/impl/EhsRescueTeamWorkerServiceImpl.java new file mode 100644 index 0000000..d075d4a --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/ehsRescueTeamWorker/service/impl/EhsRescueTeamWorkerServiceImpl.java @@ -0,0 +1,74 @@ +package com.ruoyi.ehsRescueTeamWorker.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import org.springframework.stereotype.Service; +import org.springframework.beans.factory.annotation.Autowired; +import com.ruoyi.common.utils.StringUtils; + +import java.util.List; +import java.util.Map; + +import com.ruoyi.ehsRescueTeamWorker.mapper.EhsRescueTeamWorkerMapper; +import com.ruoyi.ehsRescueTeamWorker.domain.EhsRescueTeamWorker; +import com.ruoyi.ehsRescueTeamWorker.service.IEhsRescueTeamWorkerService; + +/** + * 应急救援队人员信息Service业务层处理 + * + * @author ruoyi + * @date 2023-12-11 + */ +@Service +public class EhsRescueTeamWorkerServiceImpl extends ServiceImpl implements IEhsRescueTeamWorkerService { + + @Autowired + private EhsRescueTeamWorkerMapper ehsRescueTeamWorkerMapper; + + /** + * 查询应急救援队人员信息 + * + * @param id 应急救援队人员信息主键 + * @return 应急救援队人员信息 + */ + @Override + public EhsRescueTeamWorker selectEhsRescueTeamWorkerById(Long id) { + return ehsRescueTeamWorkerMapper.selectEhsRescueTeamWorkerById(id); + } + + /** + * 查询应急救援队人员信息列表 + * + * @param ehsRescueTeamWorker 应急救援队人员信息 + * @return 应急救援队人员信息 + */ + @Override + public List selectEhsRescueTeamWorkerList(EhsRescueTeamWorker ehsRescueTeamWorker) { + return ehsRescueTeamWorkerMapper.selectEhsRescueTeamWorkerList(ehsRescueTeamWorker); + } + + // 根据队伍ids删除队伍中的队员 + @Override + public boolean removeWorkerByTeamIds(List teamIds) { + return ehsRescueTeamWorkerMapper.removeWorkerByTeamIds(teamIds); + } + + + private LambdaQueryWrapper buildQueryWrapper(EhsRescueTeamWorker query) { + Map params = query.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(query.getRescueTeamId() != null, EhsRescueTeamWorker::getRescueTeamId, query.getRescueTeamId()); + lqw.like(StringUtils.isNotBlank(query.getRescueTeamName()), EhsRescueTeamWorker::getRescueTeamName, query.getRescueTeamName()); + lqw.like(StringUtils.isNotBlank(query.getWorkerName()), EhsRescueTeamWorker::getWorkerName, query.getWorkerName()); + lqw.eq(query.getGender() != null, EhsRescueTeamWorker::getGender, query.getGender()); + lqw.eq(query.getBirthday() != null, EhsRescueTeamWorker::getBirthday, query.getBirthday()); + lqw.eq(StringUtils.isNotBlank(query.getIdCard()), EhsRescueTeamWorker::getIdCard, query.getIdCard()); + lqw.eq(StringUtils.isNotBlank(query.getPhone()), EhsRescueTeamWorker::getPhone, query.getPhone()); + lqw.eq(StringUtils.isNotBlank(query.getWorkYear()), EhsRescueTeamWorker::getWorkYear, query.getWorkYear()); + lqw.eq(StringUtils.isNotBlank(query.getSpeciality()), EhsRescueTeamWorker::getSpeciality, query.getSpeciality()); + lqw.orderByDesc(EhsRescueTeamWorker::getCreateTime); + return lqw; + } + +} diff --git a/ruoyi-system/src/main/resources/mapper/ehs/EhsRescueTeamMapper.xml b/ruoyi-system/src/main/resources/mapper/ehs/EhsRescueTeamMapper.xml new file mode 100644 index 0000000..ac1570a --- /dev/null +++ b/ruoyi-system/src/main/resources/mapper/ehs/EhsRescueTeamMapper.xml @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + select id, team_name, team_level, create_by, create_time, update_by, update_time, remark, dept_id, create_user_id, update_user_id from ehs_rescue_team + + + + + + + + + + \ No newline at end of file diff --git a/ruoyi-system/src/main/resources/mapper/ehs/EhsRescueTeamWorkerMapper.xml b/ruoyi-system/src/main/resources/mapper/ehs/EhsRescueTeamWorkerMapper.xml new file mode 100644 index 0000000..2e3d9ac --- /dev/null +++ b/ruoyi-system/src/main/resources/mapper/ehs/EhsRescueTeamWorkerMapper.xml @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, rescue_team_id, rescue_team_name, worker_name, gender, birthday, id_card, phone, work_year, speciality, create_by, create_time, update_by, update_time, remark, dept_id, create_user_id, update_user_id from ehs_rescue_team_worker + + + + + + + + delete from ehs_rescue_team_worker + where rescue_team_id in + + #{items} + + + + + + \ No newline at end of file diff --git a/ruoyi-ui/src/api/ehs/ehsRescueTeam.js b/ruoyi-ui/src/api/ehs/ehsRescueTeam.js new file mode 100644 index 0000000..26672c7 --- /dev/null +++ b/ruoyi-ui/src/api/ehs/ehsRescueTeam.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询应急救援队伍管理列表 +export function listEhsRescueTeam(query) { + return request({ + url: '/ehs/ehsRescueTeam/list', + method: 'get', + params: query + }) +} + +// 查询应急救援队伍管理详细 +export function getEhsRescueTeam(id) { + return request({ + url: '/ehs/ehsRescueTeam/' + id, + method: 'get' + }) +} + +// 新增应急救援队伍管理 +export function addEhsRescueTeam(data) { + return request({ + url: '/ehs/ehsRescueTeam', + method: 'post', + data: data + }) +} + +// 修改应急救援队伍管理 +export function updateEhsRescueTeam(data) { + return request({ + url: '/ehs/ehsRescueTeam', + method: 'put', + data: data + }) +} + +// 删除应急救援队伍管理 +export function delEhsRescueTeam(id) { + return request({ + url: '/ehs/ehsRescueTeam/' + id, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/api/ehs/ehsRescueTeamWorker.js b/ruoyi-ui/src/api/ehs/ehsRescueTeamWorker.js new file mode 100644 index 0000000..27bf848 --- /dev/null +++ b/ruoyi-ui/src/api/ehs/ehsRescueTeamWorker.js @@ -0,0 +1,52 @@ +import request from '@/utils/request' + +// 查询应急救援队人员信息列表 +export function listEhsRescueTeamWorker(query) { + return request({ + url: '/ehs/ehsRescueTeamWorker/list', + method: 'get', + params: query + }) +} + +// 查询应急救援队人员信息详细 +export function getEhsRescueTeamWorker(id) { + return request({ + url: '/ehs/ehsRescueTeamWorker/' + id, + method: 'get' + }) +} + +// 新增会话框查询队伍信息 +export function getTeamInfo(rescueTeamId) { + return request({ + url: '/ehs/ehsRescueTeamWorker/getTeamInfo/' + rescueTeamId, + method: 'get' + }) +} + +// 新增应急救援队人员信息 +export function addEhsRescueTeamWorker(data) { + return request({ + url: '/ehs/ehsRescueTeamWorker', + method: 'post', + data: data + }) +} + +// 修改应急救援队人员信息 +export function updateEhsRescueTeamWorker(data) { + return request({ + url: '/ehs/ehsRescueTeamWorker', + method: 'put', + data: data + }) +} + +// 删除应急救援队人员信息 +export function delEhsRescueTeamWorker(id) { + return request({ + url: '/ehs/ehsRescueTeamWorker/' + id, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/components/upload/upload.vue b/ruoyi-ui/src/components/upload/upload.vue new file mode 100644 index 0000000..ca4f297 --- /dev/null +++ b/ruoyi-ui/src/components/upload/upload.vue @@ -0,0 +1,107 @@ + + + + + diff --git a/ruoyi-ui/src/views/ehs/ehsDocument/index.vue b/ruoyi-ui/src/views/ehs/ehsDocument/index.vue index 54f36e2..7793a7e 100644 --- a/ruoyi-ui/src/views/ehs/ehsDocument/index.vue +++ b/ruoyi-ui/src/views/ehs/ehsDocument/index.vue @@ -215,15 +215,6 @@ -