Commit 42ee8357 authored by 周昊's avatar 周昊

1、修改pc端导出项目风险清单表excel列表

2、修改pc端导出风险告知卡图片
parent 7f366b42
......@@ -132,18 +132,22 @@ public class RiskPlanController extends BaseController
RiskNotificationExportWordDto exportWordDto = riskPlanInherentListService.getRiskNotificationExportWordDto(inherentId);
Map<String, Object> dataMap = Convert.convert(Map.class, exportWordDto);
WordUtil word = new WordUtil();
word.exportWord(request, response,dataMap,"风险告知卡");
dataMap.put("title", "风险告知卡");
dataMap.put("path", "D:/ruoyi/uploadPath/upload/");
// 数据填装至模板,保存文件
String name = WordUtil.createDoc(dataMap, "word.ftl");
// word导出
WordUtil.responseDownloadFile(request, response, "D:/ruoyi/uploadPath/upload/", name);
}
/**
* 导出项目风险清单表
*/
@PostMapping("/exportExcel/InherentList/{inherentId}")
public void export(@PathVariable Long inherentId, HttpServletResponse response) {
@PostMapping("/exportExcel/InherentList/{planId}")
public void export(@PathVariable Long planId, HttpServletResponse response) {
try {
List<RiskInherentListExportDto> dtos = riskPlanInherentListService.getPlanInherentListByPlanId(inherentId);
List<RiskInherentListExportDto> dtos = riskPlanInherentListService.getPlanInherentListByPlanId(planId);
riskPlanInherentListService.exportPlanInherentList(response,dtos);
} catch (IOException e) {
e.printStackTrace();
......
......@@ -59,6 +59,5 @@ public class RiskNotificationExportWordDto {
/**
* 应急措施
*/
@TableField("measures_emergency")
private String measuresEmergency;
}
......@@ -16,6 +16,7 @@ import com.censoft.censoftrongtong.mapper.RiskPlanTaskMapper;
import com.censoft.censoftrongtong.service.IRiskPlanInherentListService;
import com.censoft.censoftrongtong.service.IRiskPlanTaskService;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.WordUtil;
import com.ruoyi.system.service.ISysUploadFileService;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Workbook;
......@@ -29,6 +30,7 @@ import java.io.IOException;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
......@@ -235,7 +237,11 @@ public class RiskPlanInherentListServiceImpl
@Override
public RiskNotificationExportWordDto getRiskNotificationExportWordDto(Long inherentId) {
return riskPlanInherentListMapper.getRiskNotificationExportWordDto(inherentId);
RiskNotificationExportWordDto dto = riskPlanInherentListMapper.getRiskNotificationExportWordDto(inherentId);
if (StrUtil.isNotBlank(dto.getSafetyWarningSigns())){
dto.setSafetyWarningSigns(WordUtil.getImageStr("D:\\ruoyi\\uploadPath\\upload\\警告标志\\"+dto.getSafetyWarningSigns()+".png"));
}
return dto;
}
@Override
......
......@@ -423,7 +423,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
LEFT JOIN risk_plan_inherent_list rpil ON rpil.room_id = lr.id
LEFT JOIN risk_plan_existing_list rpel ON rpel.inherent_id = rpil.id
WHERE
rp.id = #{planId}
AND rpil.id IS NOT NULL
-- rp.id = #{planId}
rpil.plan_id = #{planId}
AND rpil.id IS NOT NULL
GROUP BY rpel.id
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?mso-application progid="Word.Document"?>
<w:wordDocument xmlns:aml="http://schemas.microsoft.com/aml/2001/core"
xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas"
xmlns:cx="http://schemas.microsoft.com/office/drawing/2014/chartex"
xmlns:cx1="http://schemas.microsoft.com/office/drawing/2015/9/8/chartex"
xmlns:cx2="http://schemas.microsoft.com/office/drawing/2015/10/21/chartex"
xmlns:cx3="http://schemas.microsoft.com/office/drawing/2016/5/9/chartex"
xmlns:cx4="http://schemas.microsoft.com/office/drawing/2016/5/10/chartex"
xmlns:cx5="http://schemas.microsoft.com/office/drawing/2016/5/11/chartex"
xmlns:cx6="http://schemas.microsoft.com/office/drawing/2016/5/12/chartex"
xmlns:cx7="http://schemas.microsoft.com/office/drawing/2016/5/13/chartex"
xmlns:cx8="http://schemas.microsoft.com/office/drawing/2016/5/14/chartex"
xmlns:cr="http://schemas.microsoft.com/office/comments/2020/reactions"
xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:aink="http://schemas.microsoft.com/office/drawing/2016/ink"
xmlns:am3d="http://schemas.microsoft.com/office/drawing/2017/model3d"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:oel="http://schemas.microsoft.com/office/2019/extlst" xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:w10="urn:schemas-microsoft-com:office:word"
xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml"
xmlns:wx="http://schemas.microsoft.com/office/word/2003/auxHint"
xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml"
xmlns:wsp="http://schemas.microsoft.com/office/word/2003/wordml/sp2"
xmlns:sl="http://schemas.microsoft.com/schemaLibrary/2003/core" w:macrosPresent="no"
w:embeddedObjPresent="no" w:ocxPresent="no" xml:space="preserve"><w:ignoreSubtree
w:val="http://schemas.microsoft.com/office/word/2003/wordml/sp2"/>
<o:DocumentProperties>
<o:Author>x066563</o:Author>
<o:LastAuthor>x066563</o:LastAuthor>
<o:Revision>2</o:Revision>
<o:TotalTime>1</o:TotalTime>
<o:Created>2023-07-24T09:59:00Z</o:Created>
<o:LastSaved>2023-07-24T09:59:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Words>24</o:Words>
<o:Characters>138</o:Characters>
<o:Lines>1</o:Lines>
<o:Paragraphs>1</o:Paragraphs>
<o:CharactersWithSpaces>161</o:CharactersWithSpaces>
<o:Version>16</o:Version>
</o:DocumentProperties>
<w:fonts>
<w:defaultFonts w:ascii="Calibri" w:fareast="宋体" w:h-ansi="Calibri" w:cs="Times New Roman"/>
<w:font w:name="Times New Roman">
<w:panose-1 w:val="02020603050405020304"/>
<w:charset w:val="00"/>
<w:family w:val="Roman"/>
<w:pitch w:val="variable"/>
<w:sig w:usb-0="E0002EFF" w:usb-1="C000785B" w:usb-2="00000009" w:usb-3="00000000" w:csb-0="000001FF"
w:csb-1="00000000"/>
</w:font>
<w:font w:name="Helvetica">
<w:panose-1 w:val="020B0604020202020204"/>
<w:charset w:val="00"/>
<w:family w:val="Swiss"/>
<w:pitch w:val="variable"/>
<w:sig w:usb-0="E0002EFF" w:usb-1="C000785B" w:usb-2="00000009" w:usb-3="00000000" w:csb-0="000001FF"
w:csb-1="00000000"/>
</w:font>
<w:font w:name="宋体">
<w:altName w:val="SimSun"/>
<w:panose-1 w:val="02010600030101010101"/>
<w:charset w:val="86"/>
<w:family w:val="auto"/>
<w:pitch w:val="variable"/>
<w:sig w:usb-0="00000003" w:usb-1="288F0000" w:usb-2="00000016" w:usb-3="00000000" w:csb-0="00040001"
w:csb-1="00000000"/>
</w:font>
<w:font w:name="Cambria Math">
<w:panose-1 w:val="02040503050406030204"/>
<w:charset w:val="00"/>
<w:family w:val="Roman"/>
<w:pitch w:val="variable"/>
<w:sig w:usb-0="00000003" w:usb-1="00000000" w:usb-2="00000000" w:usb-3="00000000" w:csb-0="00000001"
w:csb-1="00000000"/>
</w:font>
<w:font w:name="Calibri">
<w:panose-1 w:val="020F0502020204030204"/>
<w:charset w:val="00"/>
<w:family w:val="Swiss"/>
<w:pitch w:val="variable"/>
<w:sig w:usb-0="E4002EFF" w:usb-1="C000247B" w:usb-2="00000009" w:usb-3="00000000" w:csb-0="000001FF"
w:csb-1="00000000"/>
</w:font>
<w:font w:name="@宋体">
<w:panose-1 w:val="02010600030101010101"/>
<w:charset w:val="86"/>
<w:family w:val="auto"/>
<w:pitch w:val="variable"/>
<w:sig w:usb-0="00000003" w:usb-1="288F0000" w:usb-2="00000016" w:usb-3="00000000" w:csb-0="00040001"
w:csb-1="00000000"/>
</w:font>
</w:fonts>
<w:styles>
<w:versionOfBuiltInStylenames w:val="7"/>
<w:latentStyles w:defLockedState="off" w:latentStyleCount="376">
<w:lsdException w:name="Normal"/>
<w:lsdException w:name="heading 1"/>
<w:lsdException w:name="heading 2"/>
<w:lsdException w:name="heading 3"/>
<w:lsdException w:name="heading 4"/>
<w:lsdException w:name="heading 5"/>
<w:lsdException w:name="heading 6"/>
<w:lsdException w:name="heading 7"/>
<w:lsdException w:name="heading 8"/>
<w:lsdException w:name="heading 9"/>
<w:lsdException w:name="caption"/>
<w:lsdException w:name="Title"/>
<w:lsdException w:name="Subtitle"/>
<w:lsdException w:name="Strong"/>
<w:lsdException w:name="Emphasis"/>
<w:lsdException w:name="Normal Table"/>
<w:lsdException w:name="Table Simple 1"/>
<w:lsdException w:name="Table Simple 2"/>
<w:lsdException w:name="Table Simple 3"/>
<w:lsdException w:name="Table Classic 1"/>
<w:lsdException w:name="Table Classic 2"/>
<w:lsdException w:name="Table Classic 3"/>
<w:lsdException w:name="Table Classic 4"/>
<w:lsdException w:name="Table Colorful 1"/>
<w:lsdException w:name="Table Colorful 2"/>
<w:lsdException w:name="Table Colorful 3"/>
<w:lsdException w:name="Table Columns 1"/>
<w:lsdException w:name="Table Columns 2"/>
<w:lsdException w:name="Table Columns 3"/>
<w:lsdException w:name="Table Columns 4"/>
<w:lsdException w:name="Table Columns 5"/>
<w:lsdException w:name="Table Grid 1"/>
<w:lsdException w:name="Table Grid 2"/>
<w:lsdException w:name="Table Grid 3"/>
<w:lsdException w:name="Table Grid 4"/>
<w:lsdException w:name="Table Grid 5"/>
<w:lsdException w:name="Table Grid 6"/>
<w:lsdException w:name="Table Grid 7"/>
<w:lsdException w:name="Table Grid 8"/>
<w:lsdException w:name="Table List 1"/>
<w:lsdException w:name="Table List 2"/>
<w:lsdException w:name="Table List 3"/>
<w:lsdException w:name="Table List 4"/>
<w:lsdException w:name="Table List 5"/>
<w:lsdException w:name="Table List 6"/>
<w:lsdException w:name="Table List 7"/>
<w:lsdException w:name="Table List 8"/>
<w:lsdException w:name="Table 3D effects 1"/>
<w:lsdException w:name="Table 3D effects 2"/>
<w:lsdException w:name="Table 3D effects 3"/>
<w:lsdException w:name="Table Contemporary"/>
<w:lsdException w:name="Table Elegant"/>
<w:lsdException w:name="Table Professional"/>
<w:lsdException w:name="Table Subtle 1"/>
<w:lsdException w:name="Table Subtle 2"/>
<w:lsdException w:name="Table Web 1"/>
<w:lsdException w:name="Table Web 2"/>
<w:lsdException w:name="Table Web 3"/>
<w:lsdException w:name="Table Theme"/>
<w:lsdException w:name="No Spacing"/>
<w:lsdException w:name="Light Shading"/>
<w:lsdException w:name="Light List"/>
<w:lsdException w:name="Light Grid"/>
<w:lsdException w:name="Medium Shading 1"/>
<w:lsdException w:name="Medium Shading 2"/>
<w:lsdException w:name="Medium List 1"/>
<w:lsdException w:name="Medium List 2"/>
<w:lsdException w:name="Medium Grid 1"/>
<w:lsdException w:name="Medium Grid 2"/>
<w:lsdException w:name="Medium Grid 3"/>
<w:lsdException w:name="Dark List"/>
<w:lsdException w:name="Colorful Shading"/>
<w:lsdException w:name="Colorful List"/>
<w:lsdException w:name="Colorful Grid"/>
<w:lsdException w:name="Light Shading Accent 1"/>
<w:lsdException w:name="Light List Accent 1"/>
<w:lsdException w:name="Light Grid Accent 1"/>
<w:lsdException w:name="Medium Shading 1 Accent 1"/>
<w:lsdException w:name="Medium Shading 2 Accent 1"/>
<w:lsdException w:name="Medium List 1 Accent 1"/>
<w:lsdException w:name="List Paragraph"/>
<w:lsdException w:name="Quote"/>
<w:lsdException w:name="Intense Quote"/>
<w:lsdException w:name="Medium List 2 Accent 1"/>
<w:lsdException w:name="Medium Grid 1 Accent 1"/>
<w:lsdException w:name="Medium Grid 2 Accent 1"/>
<w:lsdException w:name="Medium Grid 3 Accent 1"/>
<w:lsdException w:name="Dark List Accent 1"/>
<w:lsdException w:name="Colorful Shading Accent 1"/>
<w:lsdException w:name="Colorful List Accent 1"/>
<w:lsdException w:name="Colorful Grid Accent 1"/>
<w:lsdException w:name="Light Shading Accent 2"/>
<w:lsdException w:name="Light List Accent 2"/>
<w:lsdException w:name="Light Grid Accent 2"/>
<w:lsdException w:name="Medium Shading 1 Accent 2"/>
<w:lsdException w:name="Medium Shading 2 Accent 2"/>
<w:lsdException w:name="Medium List 1 Accent 2"/>
<w:lsdException w:name="Medium List 2 Accent 2"/>
<w:lsdException w:name="Medium Grid 1 Accent 2"/>
<w:lsdException w:name="Medium Grid 2 Accent 2"/>
<w:lsdException w:name="Medium Grid 3 Accent 2"/>
<w:lsdException w:name="Dark List Accent 2"/>
<w:lsdException w:name="Colorful Shading Accent 2"/>
<w:lsdException w:name="Colorful List Accent 2"/>
<w:lsdException w:name="Colorful Grid Accent 2"/>
<w:lsdException w:name="Light Shading Accent 3"/>
<w:lsdException w:name="Light List Accent 3"/>
<w:lsdException w:name="Light Grid Accent 3"/>
<w:lsdException w:name="Medium Shading 1 Accent 3"/>
<w:lsdException w:name="Medium Shading 2 Accent 3"/>
<w:lsdException w:name="Medium List 1 Accent 3"/>
<w:lsdException w:name="Medium List 2 Accent 3"/>
<w:lsdException w:name="Medium Grid 1 Accent 3"/>
<w:lsdException w:name="Medium Grid 2 Accent 3"/>
<w:lsdException w:name="Medium Grid 3 Accent 3"/>
<w:lsdException w:name="Dark List Accent 3"/>
<w:lsdException w:name="Colorful Shading Accent 3"/>
<w:lsdException w:name="Colorful List Accent 3"/>
<w:lsdException w:name="Colorful Grid Accent 3"/>
<w:lsdException w:name="Light Shading Accent 4"/>
<w:lsdException w:name="Light List Accent 4"/>
<w:lsdException w:name="Light Grid Accent 4"/>
<w:lsdException w:name="Medium Shading 1 Accent 4"/>
<w:lsdException w:name="Medium Shading 2 Accent 4"/>
<w:lsdException w:name="Medium List 1 Accent 4"/>
<w:lsdException w:name="Medium List 2 Accent 4"/>
<w:lsdException w:name="Medium Grid 1 Accent 4"/>
<w:lsdException w:name="Medium Grid 2 Accent 4"/>
<w:lsdException w:name="Medium Grid 3 Accent 4"/>
<w:lsdException w:name="Dark List Accent 4"/>
<w:lsdException w:name="Colorful Shading Accent 4"/>
<w:lsdException w:name="Colorful List Accent 4"/>
<w:lsdException w:name="Colorful Grid Accent 4"/>
<w:lsdException w:name="Light Shading Accent 5"/>
<w:lsdException w:name="Light List Accent 5"/>
<w:lsdException w:name="Light Grid Accent 5"/>
<w:lsdException w:name="Medium Shading 1 Accent 5"/>
<w:lsdException w:name="Medium Shading 2 Accent 5"/>
<w:lsdException w:name="Medium List 1 Accent 5"/>
<w:lsdException w:name="Medium List 2 Accent 5"/>
<w:lsdException w:name="Medium Grid 1 Accent 5"/>
<w:lsdException w:name="Medium Grid 2 Accent 5"/>
<w:lsdException w:name="Medium Grid 3 Accent 5"/>
<w:lsdException w:name="Dark List Accent 5"/>
<w:lsdException w:name="Colorful Shading Accent 5"/>
<w:lsdException w:name="Colorful List Accent 5"/>
<w:lsdException w:name="Colorful Grid Accent 5"/>
<w:lsdException w:name="Light Shading Accent 6"/>
<w:lsdException w:name="Light List Accent 6"/>
<w:lsdException w:name="Light Grid Accent 6"/>
<w:lsdException w:name="Medium Shading 1 Accent 6"/>
<w:lsdException w:name="Medium Shading 2 Accent 6"/>
<w:lsdException w:name="Medium List 1 Accent 6"/>
<w:lsdException w:name="Medium List 2 Accent 6"/>
<w:lsdException w:name="Medium Grid 1 Accent 6"/>
<w:lsdException w:name="Medium Grid 2 Accent 6"/>
<w:lsdException w:name="Medium Grid 3 Accent 6"/>
<w:lsdException w:name="Dark List Accent 6"/>
<w:lsdException w:name="Colorful Shading Accent 6"/>
<w:lsdException w:name="Colorful List Accent 6"/>
<w:lsdException w:name="Colorful Grid Accent 6"/>
<w:lsdException w:name="Subtle Emphasis"/>
<w:lsdException w:name="Intense Emphasis"/>
<w:lsdException w:name="Subtle Reference"/>
<w:lsdException w:name="Intense Reference"/>
<w:lsdException w:name="Book Title"/>
<w:lsdException w:name="TOC Heading"/>
</w:latentStyles>
<w:style w:type="paragraph" w:default="on" w:styleId="a">
<w:name w:val="Normal"/>
<wx:uiName wx:val="正文"/>
<w:rsid w:val="001A0099"/>
<w:pPr>
<w:widowControl w:val="off"/>
<w:jc w:val="both"/>
</w:pPr>
<w:rPr>
<wx:font wx:val="Calibri"/>
<w:kern w:val="2"/>
<w:sz w:val="21"/>
<w:sz-cs w:val="22"/>
<w:lang w:val="EN-US" w:fareast="ZH-CN" w:bidi="AR-SA"/>
</w:rPr>
</w:style>
<w:style w:type="paragraph" w:styleId="1">
<w:name w:val="heading 1"/>
<wx:uiName wx:val="标题 1"/>
<w:basedOn w:val="a"/>
<w:next w:val="a"/>
<w:link w:val="10"/>
<w:rsid w:val="00A83D26"/>
<w:pPr>
<w:keepNext/>
<w:keepLines/>
<w:spacing w:before="340" w:after="330" w:line="578" w:line-rule="auto"/>
<w:outlineLvl w:val="0"/>
</w:pPr>
<w:rPr>
<wx:font wx:val="Calibri"/>
<w:b/>
<w:b-cs/>
<w:kern w:val="44"/>
<w:sz w:val="44"/>
<w:sz-cs w:val="44"/>
</w:rPr>
</w:style>
<w:style w:type="character" w:default="on" w:styleId="a0">
<w:name w:val="Default Paragraph Font"/>
<wx:uiName wx:val="默认段落字体"/>
</w:style>
<w:style w:type="table" w:default="on" w:styleId="a1">
<w:name w:val="Normal Table"/>
<wx:uiName wx:val="普通表格"/>
<w:rPr>
<wx:font wx:val="Calibri"/>
<w:lang w:val="EN-US" w:fareast="ZH-CN" w:bidi="AR-SA"/>
</w:rPr>
<w:tblPr>
<w:tblInd w:w="0" w:type="dxa"/>
<w:tblCellMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:bottom w:w="0" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tblCellMar>
</w:tblPr>
</w:style>
<w:style w:type="list" w:default="on" w:styleId="a2">
<w:name w:val="No List"/>
<wx:uiName wx:val="无列表"/>
</w:style>
<w:style w:type="paragraph" w:styleId="a3">
<w:name w:val="header"/>
<wx:uiName wx:val="页眉"/>
<w:basedOn w:val="a"/>
<w:link w:val="a4"/>
<w:rsid w:val="00A83D26"/>
<w:pPr>
<w:pBdr>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="1" w:color="auto"/>
</w:pBdr>
<w:tabs>
<w:tab w:val="center" w:pos="4153"/>
<w:tab w:val="right" w:pos="8306"/>
</w:tabs>
<w:snapToGrid w:val="off"/>
<w:jc w:val="center"/>
</w:pPr>
<w:rPr>
<wx:font wx:val="Calibri"/>
<w:sz w:val="18"/>
<w:sz-cs w:val="18"/>
</w:rPr>
</w:style>
<w:style w:type="character" w:styleId="a4">
<w:name w:val="页眉 字符"/>
<w:link w:val="a3"/>
<w:rsid w:val="00A83D26"/>
<w:rPr>
<w:sz w:val="18"/>
<w:sz-cs w:val="18"/>
</w:rPr>
</w:style>
<w:style w:type="paragraph" w:styleId="a5">
<w:name w:val="footer"/>
<wx:uiName wx:val="页脚"/>
<w:basedOn w:val="a"/>
<w:link w:val="a6"/>
<w:rsid w:val="00A83D26"/>
<w:pPr>
<w:tabs>
<w:tab w:val="center" w:pos="4153"/>
<w:tab w:val="right" w:pos="8306"/>
</w:tabs>
<w:snapToGrid w:val="off"/>
<w:jc w:val="left"/>
</w:pPr>
<w:rPr>
<wx:font wx:val="Calibri"/>
<w:sz w:val="18"/>
<w:sz-cs w:val="18"/>
</w:rPr>
</w:style>
<w:style w:type="character" w:styleId="a6">
<w:name w:val="页脚 字符"/>
<w:link w:val="a5"/>
<w:rsid w:val="00A83D26"/>
<w:rPr>
<w:sz w:val="18"/>
<w:sz-cs w:val="18"/>
</w:rPr>
</w:style>
<w:style w:type="character" w:styleId="10">
<w:name w:val="标题 1 字符"/>
<w:link w:val="1"/>
<w:rsid w:val="00A83D26"/>
<w:rPr>
<w:b/>
<w:b-cs/>
<w:kern w:val="44"/>
<w:sz w:val="44"/>
<w:sz-cs w:val="44"/>
</w:rPr>
</w:style>
<w:style w:type="table" w:styleId="a7">
<w:name w:val="Table Grid"/>
<wx:uiName wx:val="网格型"/>
<w:basedOn w:val="a1"/>
<w:rsid w:val="00A83D26"/>
<w:rPr>
<wx:font wx:val="Calibri"/>
</w:rPr>
<w:tblPr>
<w:tblBorders>
<w:top w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:left w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:bottom w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:right w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideH w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideV w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
</w:tblBorders>
</w:tblPr>
</w:style>
</w:styles>
<w:divs>
<w:div w:id="831411667">
<w:bodyDiv w:val="on"/>
<w:marLeft w:val="0"/>
<w:marRight w:val="0"/>
<w:marTop w:val="0"/>
<w:marBottom w:val="0"/>
<w:divBdr>
<w:top w:val="none" w:sz="0" wx:bdrwidth="0" w:space="0" w:color="auto"/>
<w:left w:val="none" w:sz="0" wx:bdrwidth="0" w:space="0" w:color="auto"/>
<w:bottom w:val="none" w:sz="0" wx:bdrwidth="0" w:space="0" w:color="auto"/>
<w:right w:val="none" w:sz="0" wx:bdrwidth="0" w:space="0" w:color="auto"/>
</w:divBdr>
</w:div>
<w:div w:id="2058704788">
<w:bodyDiv w:val="on"/>
<w:marLeft w:val="0"/>
<w:marRight w:val="0"/>
<w:marTop w:val="0"/>
<w:marBottom w:val="0"/>
<w:divBdr>
<w:top w:val="none" w:sz="0" wx:bdrwidth="0" w:space="0" w:color="auto"/>
<w:left w:val="none" w:sz="0" wx:bdrwidth="0" w:space="0" w:color="auto"/>
<w:bottom w:val="none" w:sz="0" wx:bdrwidth="0" w:space="0" w:color="auto"/>
<w:right w:val="none" w:sz="0" wx:bdrwidth="0" w:space="0" w:color="auto"/>
</w:divBdr>
</w:div>
</w:divs>
<w:shapeDefaults>
<o:shapedefaults v:ext="edit" spidmax="2050"/>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="2"/>
</o:shapelayout>
</w:shapeDefaults>
<w:docPr>
<w:view w:val="print"/>
<w:zoom w:percent="100"/>
<w:doNotEmbedSystemFonts/>
<w:bordersDontSurroundHeader/>
<w:bordersDontSurroundFooter/>
<w:proofState w:spelling="clean" w:grammar="clean"/>
<w:defaultTabStop w:val="420"/>
<w:drawingGridHorizontalSpacing w:val="105"/>
<w:drawingGridVerticalSpacing w:val="156"/>
<w:displayHorizontalDrawingGridEvery w:val="0"/>
<w:displayVerticalDrawingGridEvery w:val="2"/>
<w:punctuationKerning/>
<w:characterSpacingControl w:val="CompressPunctuation"/>
<w:optimizeForBrowser/>
<w:allowPNG/>
<w:validateAgainstSchema/>
<w:saveInvalidXML w:val="off"/>
<w:ignoreMixedContent w:val="off"/>
<w:alwaysShowPlaceholderText w:val="off"/>
<w:hdrShapeDefaults>
<o:shapedefaults v:ext="edit" spidmax="2050"/>
</w:hdrShapeDefaults>
<w:footnotePr>
<w:footnote w:type="separator">
<w:p wsp:rsidR="004416E4" wsp:rsidRDefault="004416E4" wsp:rsidP="00A83D26">
<w:r>
<w:separator/>
</w:r>
</w:p>
</w:footnote>
<w:footnote w:type="continuation-separator">
<w:p wsp:rsidR="004416E4" wsp:rsidRDefault="004416E4" wsp:rsidP="00A83D26">
<w:r>
<w:continuationSeparator/>
</w:r>
</w:p>
</w:footnote>
</w:footnotePr>
<w:endnotePr>
<w:endnote w:type="separator">
<w:p wsp:rsidR="004416E4" wsp:rsidRDefault="004416E4" wsp:rsidP="00A83D26">
<w:r>
<w:separator/>
</w:r>
</w:p>
</w:endnote>
<w:endnote w:type="continuation-separator">
<w:p wsp:rsidR="004416E4" wsp:rsidRDefault="004416E4" wsp:rsidP="00A83D26">
<w:r>
<w:continuationSeparator/>
</w:r>
</w:p>
</w:endnote>
</w:endnotePr>
<w:compat>
<w:spaceForUL/>
<w:balanceSingleByteDoubleByteWidth/>
<w:doNotLeaveBackslashAlone/>
<w:ulTrailSpace/>
<w:doNotExpandShiftReturn/>
<w:adjustLineHeightInTable/>
<w:breakWrappedTables/>
<w:snapToGridInCell/>
<w:wrapTextWithPunct/>
<w:useAsianBreakRules/>
<w:dontGrowAutofit/>
<w:useFELayout/>
</w:compat>
<wsp:rsids>
<wsp:rsidRoot wsp:val="002F6507"/>
<wsp:rsid wsp:val="00105C8A"/>
<wsp:rsid wsp:val="001A0099"/>
<wsp:rsid wsp:val="001F3F72"/>
<wsp:rsid wsp:val="002005D9"/>
<wsp:rsid wsp:val="002F6507"/>
<wsp:rsid wsp:val="004416E4"/>
<wsp:rsid wsp:val="004A7FC2"/>
<wsp:rsid wsp:val="004B508D"/>
<wsp:rsid wsp:val="004E41AD"/>
<wsp:rsid wsp:val="00566CAE"/>
<wsp:rsid wsp:val="006F07FB"/>
<wsp:rsid wsp:val="006F7739"/>
<wsp:rsid wsp:val="00877F9D"/>
<wsp:rsid wsp:val="00935467"/>
<wsp:rsid wsp:val="009370A0"/>
<wsp:rsid wsp:val="009A59FC"/>
<wsp:rsid wsp:val="009B622A"/>
<wsp:rsid wsp:val="00A83D26"/>
<wsp:rsid wsp:val="00D91E3B"/>
<wsp:rsid wsp:val="00E01588"/>
<wsp:rsid wsp:val="00F12161"/>
<wsp:rsid wsp:val="00F30D1C"/>
</wsp:rsids>
</w:docPr>
<w:body>
<wx:sect>
<wx:sub-section>
<w:p wsp:rsidR="004E41AD" wsp:rsidRDefault="00A83D26" wsp:rsidP="009A59FC">
<w:pPr>
<w:pStyle w:val="1"/>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="00A83D26">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>安全风险告知卡</w:t>
</w:r>
</w:p>
<w:tbl>
<w:tblPr>
<w:tblW w:w="0" w:type="auto"/>
<w:tblBorders>
<w:top w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:left w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:bottom w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:right w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideH w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideV w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
</w:tblBorders>
<w:tblLook w:val="04A0"/>
</w:tblPr>
<w:tblGrid>
<w:gridCol w:w="817"/>
<w:gridCol w:w="1134"/>
<w:gridCol w:w="6571"/>
</w:tblGrid>
<w:tr wsp:rsidR="00A83D26" wsp:rsidRPr="009370A0" wsp:rsidTr="009370A0">
<w:tc>
<w:tcPr>
<w:tcW w:w="1951" w:type="dxa"/>
<w:gridSpan w:val="2"/>
<w:shd w:val="clear" w:color="auto" w:fill="00B0F0"/>
</w:tcPr>
<w:p wsp:rsidR="00A83D26" wsp:rsidRPr="009370A0" wsp:rsidRDefault="00A83D26"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>风险点名称(等级)</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="6571" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="00B0F0"/>
</w:tcPr>
<w:p wsp:rsidR="00A83D26" wsp:rsidRPr="009370A0" wsp:rsidRDefault="00A83D26"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>危险源</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
<w:tr wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidTr="009370A0">
<w:tc>
<w:tcPr>
<w:tcW w:w="1951" w:type="dxa"/>
<w:gridSpan w:val="2"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="00566CAE"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>${name}</w:t>
</w:r>
<w:r wsp:rsidRPr="009370A0">
<w:t> (</w:t>
</w:r>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>${level}</w:t>
</w:r>
<w:r wsp:rsidRPr="009370A0">
<w:t>)</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="6571" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="00566CAE"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>${dangerName}</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
<w:tr wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidTr="009370A0">
<w:tc>
<w:tcPr>
<w:tcW w:w="1951" w:type="dxa"/>
<w:gridSpan w:val="2"/>
<w:shd w:val="clear" w:color="auto" w:fill="00B0F0"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="009A59FC"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>风险点类型</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="6571" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="00B0F0"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="009A59FC"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>可能导致的事故类型</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
<w:tr wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidTr="009370A0">
<w:tc>
<w:tcPr>
<w:tcW w:w="1951" w:type="dxa"/>
<w:gridSpan w:val="2"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="00566CAE"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>${pointType}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="6571" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="00566CAE"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>${type}</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
<w:tr wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidTr="009370A0">
<w:tc>
<w:tcPr>
<w:tcW w:w="1951" w:type="dxa"/>
<w:gridSpan w:val="2"/>
<w:shd w:val="clear" w:color="auto" w:fill="00B0F0"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="009A59FC"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>安全警示标志</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="6571" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="00B0F0"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="009A59FC"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>风险管控措施</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
<w:tr wsp:rsidR="00566CAE" wsp:rsidRPr="009370A0" wsp:rsidTr="009370A0">
<w:tc>
<w:tcPr>
<w:tcW w:w="1951" w:type="dxa"/>
<w:gridSpan w:val="2"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="00566CAE" wsp:rsidRPr="009370A0" wsp:rsidRDefault="00877F9D"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="00877F9D">
<w:rPr>
<w:rFonts w:ascii="Helvetica" w:h-ansi="Helvetica" w:cs="Helvetica"/>
<wx:font wx:val="Helvetica"/>
<w:noProof/>
<w:color w:val="333333"/>
<w:kern w:val="0"/>
<w:sz w:val="30"/>
<w:sz-cs w:val="30"/>
</w:rPr>
<w:pict>
<v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75"
o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f"
stroked="f">
<v:stroke joinstyle="miter"/>
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
<v:f eqn="sum @0 1 0"/>
<v:f eqn="sum 0 0 @1"/>
<v:f eqn="prod @2 1 2"/>
<v:f eqn="prod @3 21600 pixelWidth"/>
<v:f eqn="prod @3 21600 pixelHeight"/>
<v:f eqn="sum @0 0 1"/>
<v:f eqn="prod @6 1 2"/>
<v:f eqn="prod @7 21600 pixelWidth"/>
<v:f eqn="sum @8 21600 0"/>
<v:f eqn="prod @7 21600 pixelHeight"/>
<v:f eqn="sum @10 21600 0"/>
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
<o:lock v:ext="edit" aspectratio="t"/>
</v:shapetype>
<w:binData w:name="wordml://03000001.png" xml:space="preserve">${safetyWarningSigns}</w:binData>
<v:shape id="图片 1" o:spid="_x0000_i1027" type="#_x0000_t75"
style="width:66.75pt;height:58.5pt;visibility:visible;mso-wrap-style:square">
<v:imagedata src="wordml://03000001.png" o:title="" cropleft="2313f"
cropright="1808f"/>
</v:shape>
</w:pict>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="6571" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="00566CAE" wsp:rsidRPr="009370A0" wsp:rsidRDefault="006F07FB"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>${measuresAdministration}</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
<w:tr wsp:rsidR="009370A0" wsp:rsidRPr="009370A0" wsp:rsidTr="009370A0">
<w:tc>
<w:tcPr>
<w:tcW w:w="817" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="00B0F0"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="009A59FC"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>责任部门</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="1134" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="00B0F0"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="009A59FC"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>责任人</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="6571" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="00B0F0"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="009A59FC"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>应急措施</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
<w:tr wsp:rsidR="009370A0" wsp:rsidRPr="009370A0" wsp:rsidTr="009370A0">
<w:tc>
<w:tcPr>
<w:tcW w:w="817" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="006F07FB"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:t>${deptName}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="1134" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="006F07FB"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:t>${userName}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="6571" w:type="dxa"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="004A7FC2"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>${measuresEmergency}</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
<w:tr wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidTr="009370A0">
<w:tc>
<w:tcPr>
<w:tcW w:w="8522" w:type="dxa"/>
<w:gridSpan w:val="3"/>
<w:shd w:val="clear" w:color="auto" w:fill="FF0000"/>
</w:tcPr>
<w:p wsp:rsidR="009A59FC" wsp:rsidRPr="009370A0" wsp:rsidRDefault="009A59FC"
wsp:rsidP="009370A0">
<w:pPr>
<w:jc w:val="left"/>
</w:pPr>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>急救电话:火警电话:公司</w:t>
</w:r>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
</w:rPr>
<w:t>2</w:t>
</w:r>
<w:r wsp:rsidRPr="009370A0">
<w:t>4</w:t>
</w:r>
<w:r wsp:rsidRPr="009370A0">
<w:rPr>
<w:rFonts w:hint="fareast"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>小时应急值守电话:</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
</w:tbl>
<w:p wsp:rsidR="00A83D26" wsp:rsidRPr="00A83D26" wsp:rsidRDefault="00A83D26" wsp:rsidP="009A59FC">
<w:pPr>
<w:jc w:val="center"/>
</w:pPr>
</w:p>
</wx:sub-section>
<w:sectPr wsp:rsidR="00A83D26" wsp:rsidRPr="00A83D26" wsp:rsidSect="001A0099">
<w:pgSz w:w="11906" w:h="16838"/>
<w:pgMar w:top="1440" w:right="1800" w:bottom="1440" w:left="1800" w:header="851" w:footer="992"
w:gutter="0"/>
<w:cols w:space="425"/>
<w:docGrid w:type="lines" w:line-pitch="312"/>
</w:sectPr>
</wx:sect>
</w:body></w:wordDocument>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -3,84 +3,146 @@ package com.ruoyi.common.utils;
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import sun.misc.BASE64Encoder;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import static freemarker.template.Configuration.DEFAULT_INCOMPATIBLE_IMPROVEMENTS;
/**
* @author 笑小枫
* @date 2022/7/27
* @see <a href="https://www.xiaoxiaofeng.com">https://www.xiaoxiaofeng.com</a>
* @created: 2020/10/16 16:49
* @author: winston
* @description: 导出Word工具类
*/
@Component
public class WordUtil {
private final Configuration configuration;
@Autowired
private static Logger logger = LogManager.getLogger(WordUtil.class);
/**
* 模板路径
*/
private static final String FTL_FP = "/templates/ftl/";
public WordUtil() {
configuration = new Configuration(DEFAULT_INCOMPATIBLE_IMPROVEMENTS);
configuration.setDefaultEncoding("UTF-8");
private static Configuration configuration = null;
static {
configuration = new Configuration();
//设置默认的编码
configuration.setDefaultEncoding("utf-8");
}
public void createWord(Map<String, Object> dataMap, String templateName, String fileName) {
// 模板文件所在路径
configuration.setClassForTemplateLoading(this.getClass(), "/templates");
Template t = null;
/**
* @param dataMap 数据库数据
* @param ftl 替换的模板
* @return
* @throws IOException
*/
public static String createDoc(Map dataMap, String ftl) throws IOException {
configuration.setClassForTemplateLoading(WordUtil.class, FTL_FP);
String path = (String) dataMap.get("path");
Template template = null;
try {
// 获取模板文件
t = configuration.getTemplate(templateName, "UTF-8");
// yxkj.ftl为要装载的模板
template = configuration.getTemplate(ftl);
template.setEncoding("utf-8");
} catch (IOException e) {
e.printStackTrace();
}
// 导出文件
File outFile = new File(fileName);
try (Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), StandardCharsets.UTF_8))) {
if (t != null) {
// 将填充数据填入模板文件并输出到目标文件
t.process(dataMap, out);
}
} catch (IOException | TemplateException e1) {
e1.printStackTrace();
// 输出文档路径及名称
String fileName = dataMap.get("title") + ".doc";
File outFile = new File(path + fileName);
Writer out = null;
try {
out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), "utf-8"));
} catch (Exception e1) {
logger.error(e1);
fileName = "";
}
try {
template.process(dataMap, out);
out.close();
} catch (TemplateException e2) {
logger.error(e2);
fileName = "";
} catch (IOException e) {
logger.error(e);
fileName = "";
}
return fileName;
}
public void exportWord(HttpServletRequest request, HttpServletResponse response,Map<String, Object> dataMap,String exportName) throws IOException {
// 1.创建临时文件夹
String rootPath = request.getSession().getServletContext().getRealPath("/");
String fileName = UUID.randomUUID().toString().replace("-", "");
// 加载word中的数据信息
WordUtil word = new WordUtil();
word.createWord(dataMap, "word.xml", rootPath + "/" + fileName + ".doc");
response.setCharacterEncoding("utf-8");
response.setContentType("application/msword");
// 设置浏览器以下载的方式处理该文件名
response.setHeader("Content-Disposition", "attachment;filename=".concat(String.valueOf(URLEncoder.encode(exportName + ".doc", "UTF-8"))));
File file = new File(rootPath + "/" + fileName + ".doc");
try (InputStream fin = new FileInputStream(file);
ServletOutputStream out = response.getOutputStream()) {
// 缓冲区
byte[] buffer = new byte[512];
int bytesToRead;
// 通过循环将读入的Word文件的内容输出到浏览器中
while ((bytesToRead = fin.read(buffer)) != -1) {
out.write(buffer, 0, bytesToRead);
}
/**
* 通用文件下载方法
*
* @param response
* @param filePath 文件绝对路径
* this.getClass().getClassLoader().getResource("file").getPath
* ();
* @param fileName 文件名
* @throws IOException
*/
public static void responseDownloadFile(HttpServletRequest request, HttpServletResponse response, String filePath, String fileName) throws IOException {
// 读到流中
InputStream inStream = new FileInputStream(filePath + fileName);
String agent = request.getHeader("User-Agent").toUpperCase();
String encodedfileName = "";
// IE
if (agent.indexOf("MSIE") != -1 || agent.indexOf("TRIDENT") != -1) {
encodedfileName = URLEncoder.encode(fileName, "utf-8");
// 谷歌或火狐
} else if (agent.indexOf("CHROME") != -1 || agent.indexOf("FIREFOX") != -1) {
encodedfileName = new String(fileName.getBytes("utf-8"), "ISO8859-1");
} else {
encodedfileName = new String(fileName.getBytes("utf-8"), "ISO8859-1");
}
// 设置输出的格式
response.reset();
response.setContentType("bin");
response.addHeader("Content-Disposition", "attachment; filename=\"" + encodedfileName + "\"");
// 循环取出流中的数据
byte[] b = new byte[100];
int len;
while ((len = inStream.read(b)) > 0) {
response.getOutputStream().write(b, 0, len);
}
inStream.close();
}
public static String getImageStr(String imgFile) {
InputStream in = null;
byte[] data = null;
try {
in = new FileInputStream(imgFile);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
try {
data = new byte[in.available()];
//注:FileInputStream.available()方法可以从输入流中阻断由下一个方法调用这个输入流中读取的剩余字节数
in.read(data);
in.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
// 删除临时文件
file.delete();
}
BASE64Encoder encoder = new BASE64Encoder();
return encoder.encode(data);
}
public static void main(String[] args) {
System.out.println(getImageStr("C:/aqpt/uploadPath/upload/signature/20220114095137.png"));
}
}
......@@ -111,7 +111,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
// 过滤请求
.authorizeRequests()
// 对于登录login 注册register 验证码captchaImage 允许匿名访问
.antMatchers("/login","/app-api/login","/app-api/risk/plan/test", "/register", "/captchaImage").permitAll()
.antMatchers("/login","/app-api/login", "/register", "/captchaImage").permitAll()
// 静态资源,可匿名访问
.antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
.antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment