From 2d870aa74982ceae62badc85ea622b066d1cc51e Mon Sep 17 00:00:00 2001 From: wxc <191104855@qq.com> Date: Fri, 17 Oct 2025 14:57:08 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=B0=83=E6=95=B4=E6=8A=9A=E6=85=B0?= =?UTF-8?q?=E9=87=91=E5=91=88=E6=8A=A5=E7=9A=84=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 9 +- .../controller/FileController.java | 11 + .../DataPetitionComplaint12337Controller.java | 1 + .../supervise/SuperviseReportController.java | 5 + .../pojo/dto/DataPetition12337Dto.java | 4 +- .../supervision/pojo/entity/RpcApply.java | 2 + .../supervision/pojo/vo/ExportNegativeVo.java | 10 +- .../supervision/pojo/vo/RpcApplyVo.java | 12 + .../pojo/vo/SuperviseReportVo.java | 3 +- .../service/RpcApplyApproveService.java | 3 +- .../supervision/service/RpcApplyService.java | 4 +- .../service/RpcComfortPacksService.java | 79 +- .../service/SuperviseReportFileService.java | 7 + .../service/SuperviseReportService.java | 15 +- .../com/biutag/supervision/util/WordUtil.java | 11 + .../mapper/NegativeCointersignMapper.xml | 4 +- src/main/resources/mapper/RpcApplyMapper.xml | 5 +- .../5、民警维权抚慰申请表.doc | 3 + .../ftl/2、维权抚慰登记表.xml | 1922 ---------- .../ftl/3、抚慰金申报批处理表.xml | 2752 -------------- .../4、抚慰金申请发放明细表.xml | 2218 ----------- .../ftl/5、民警维权抚慰申请表.xml | 3379 ----------------- .../java/com/biutag/supervision/StrUtil.java | 41 +- 23 files changed, 191 insertions(+), 10309 deletions(-) create mode 100644 src/main/resources/static/templates/5、民警维权抚慰申请表.doc delete mode 100644 src/main/resources/static/templates/ftl/2、维权抚慰登记表.xml delete mode 100644 src/main/resources/static/templates/ftl/3、抚慰金申报批处理表.xml delete mode 100644 src/main/resources/static/templates/ftl/4、抚慰金申请发放明细表.xml delete mode 100644 src/main/resources/static/templates/ftl/5、民警维权抚慰申请表.xml diff --git a/pom.xml b/pom.xml index 73ae78c..56fc046 100644 --- a/pom.xml +++ b/pom.xml @@ -101,8 +101,7 @@ gbase-jdbc system 8.3.81.53-build55.2.1-bin - ${project.basedir}/src/main/resources/lib/gbase-connector-java-8.3.81.53-build52.8-bin.jar - + ${project.basedir}/src/main/resources/lib/gbase-connector-java-8.3.81.53-build52.8-bin.jar @@ -230,6 +229,12 @@ 3.0.1 + + org.jsoup + jsoup + 1.17.2 + + diff --git a/src/main/java/com/biutag/supervision/controller/FileController.java b/src/main/java/com/biutag/supervision/controller/FileController.java index 89de957..00b7ca4 100644 --- a/src/main/java/com/biutag/supervision/controller/FileController.java +++ b/src/main/java/com/biutag/supervision/controller/FileController.java @@ -3,6 +3,7 @@ package com.biutag.supervision.controller; import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.IoUtil; import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson2.JSONObject; import com.biutag.supervision.mapper.FileBase64Mapper; import com.biutag.supervision.pojo.Result; import com.biutag.supervision.pojo.dto.FileBase64Dto; @@ -11,6 +12,7 @@ import com.biutag.supervision.pojo.vo.FileVo; import com.biutag.supervision.service.FileService; import com.biutag.supervision.util.ImgUtils; import com.biutag.supervision.util.WordUtil; +import io.swagger.v3.oas.annotations.Operation; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; @@ -88,4 +90,13 @@ public class FileController { return Result.success(base64); } + @Operation(summary = "附件转HTMl(word)") + @ResponseBody + @GetMapping("convertHtml/**") + public Result convertHtml(HttpServletRequest request) { + String requestURI = request.getRequestURI(); + InputStream is = fileService.download(requestURI.substring("/file/convertHtml/".length())); + return Result.success(JSONObject.of("html", WordUtil.convertHtml(is))); + } + } diff --git a/src/main/java/com/biutag/supervision/controller/data/DataPetitionComplaint12337Controller.java b/src/main/java/com/biutag/supervision/controller/data/DataPetitionComplaint12337Controller.java index 9e705b3..ac1464f 100644 --- a/src/main/java/com/biutag/supervision/controller/data/DataPetitionComplaint12337Controller.java +++ b/src/main/java/com/biutag/supervision/controller/data/DataPetitionComplaint12337Controller.java @@ -93,6 +93,7 @@ public class DataPetitionComplaint12337Controller { List departs = departService.list(new LambdaUpdateWrapper().eq(SupDepart::getShortName, data.getReviewOrg())); if (departs.size() == 1) { data.setDepartId(departs.get(0).getId()); + data.setDepartName(departs.get(0).getShortName()); } } list.add(data); diff --git a/src/main/java/com/biutag/supervision/controller/supervise/SuperviseReportController.java b/src/main/java/com/biutag/supervision/controller/supervise/SuperviseReportController.java index e7d66c5..a3d5ca3 100644 --- a/src/main/java/com/biutag/supervision/controller/supervise/SuperviseReportController.java +++ b/src/main/java/com/biutag/supervision/controller/supervise/SuperviseReportController.java @@ -35,6 +35,11 @@ public class SuperviseReportController { return Result.success(service.page(queryParam)); } + @GetMapping("detail/{id}") + Result get(@PathVariable String id){ + return Result.success(service.get(id)); + } + @GetMapping("subQueryPage") Result> subQueryPage(SuperviseReportQueryParam queryParam){ return Result.success(service.page(queryParam)); diff --git a/src/main/java/com/biutag/supervision/pojo/dto/DataPetition12337Dto.java b/src/main/java/com/biutag/supervision/pojo/dto/DataPetition12337Dto.java index b329acc..8c3f542 100644 --- a/src/main/java/com/biutag/supervision/pojo/dto/DataPetition12337Dto.java +++ b/src/main/java/com/biutag/supervision/pojo/dto/DataPetition12337Dto.java @@ -8,7 +8,6 @@ import jakarta.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; -import java.time.LocalDateTime; import java.util.Date; /** @@ -560,4 +559,7 @@ public class DataPetition12337Dto { @NotBlank(message = "核查办理单位不能为空") private String departId; + @ExcelIgnore + private String departName; + } diff --git a/src/main/java/com/biutag/supervision/pojo/entity/RpcApply.java b/src/main/java/com/biutag/supervision/pojo/entity/RpcApply.java index 5c6c993..e95b9e4 100644 --- a/src/main/java/com/biutag/supervision/pojo/entity/RpcApply.java +++ b/src/main/java/com/biutag/supervision/pojo/entity/RpcApply.java @@ -116,4 +116,6 @@ public class RpcApply { // 数据来源 private String source; + private String crtUser; + } diff --git a/src/main/java/com/biutag/supervision/pojo/vo/ExportNegativeVo.java b/src/main/java/com/biutag/supervision/pojo/vo/ExportNegativeVo.java index bc60deb..0debb44 100644 --- a/src/main/java/com/biutag/supervision/pojo/vo/ExportNegativeVo.java +++ b/src/main/java/com/biutag/supervision/pojo/vo/ExportNegativeVo.java @@ -1,7 +1,6 @@ package com.biutag.supervision.pojo.vo; import com.alibaba.excel.annotation.ExcelProperty; -import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Getter; import lombok.Setter; @@ -25,15 +24,16 @@ public class ExportNegativeVo { private String caseNumber; // 问题发生时间 - @ExcelProperty({"问题基本信息","问题发生时间"}) - @JsonFormat(pattern = "yyyy-MM-dd HH:mm") + @ExcelProperty(value = {"问题基本信息","问题发生时间"}, format = "yyyy-MM-dd HH:mm") private LocalDateTime happenTime; // 问题发现时间 - @ExcelProperty({"问题基本信息","问题发现时间"}) - @JsonFormat(pattern = "yyyy-MM-dd HH:mm") + @ExcelProperty(value = {"问题基本信息","问题发现时间"}, format = "yyyy-MM-dd HH:mm") private LocalDateTime discoveryTime; + @ExcelProperty(value = {"问题基本信息","问题录入时间"}, format = "yyyy-MM-dd") + private LocalDateTime crtTime; + // 问题来源 @ExcelProperty({"问题基本信息","问题来源"}) private String problemSources; diff --git a/src/main/java/com/biutag/supervision/pojo/vo/RpcApplyVo.java b/src/main/java/com/biutag/supervision/pojo/vo/RpcApplyVo.java index 8ddc93f..b765ba8 100644 --- a/src/main/java/com/biutag/supervision/pojo/vo/RpcApplyVo.java +++ b/src/main/java/com/biutag/supervision/pojo/vo/RpcApplyVo.java @@ -1,5 +1,6 @@ package com.biutag.supervision.pojo.vo; +import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Getter; import lombok.Setter; @@ -27,23 +28,34 @@ public class RpcApplyVo { @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm") private LocalDateTime happenTime; + private String happenTimeStr; + // 部门id private String departId; // 部门 private String departName; + private String departFullName; + private String applicantEmpName; private String applicantEmpNo; + private String idCode; + + // 人员类型 + private String personType; + // 开户行 private String bankCard; // 支行信息 private String bankBranch; + private String bankCardAccount; + private String rpcStatus; private String approver; diff --git a/src/main/java/com/biutag/supervision/pojo/vo/SuperviseReportVo.java b/src/main/java/com/biutag/supervision/pojo/vo/SuperviseReportVo.java index 74b4f51..56135c0 100644 --- a/src/main/java/com/biutag/supervision/pojo/vo/SuperviseReportVo.java +++ b/src/main/java/com/biutag/supervision/pojo/vo/SuperviseReportVo.java @@ -1,7 +1,7 @@ package com.biutag.supervision.pojo.vo; -import com.baomidou.mybatisplus.annotation.TableField; import com.biutag.supervision.pojo.entity.SuperviseReportFile; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Getter; import lombok.Setter; @@ -17,6 +17,7 @@ public class SuperviseReportVo { //督察报告 private String reportName; //创建人 + @JsonFormat(pattern = "yyyy-MM-dd") private Date crtTime; //创建单位 private String crtDepart; diff --git a/src/main/java/com/biutag/supervision/service/RpcApplyApproveService.java b/src/main/java/com/biutag/supervision/service/RpcApplyApproveService.java index d00746e..52e857e 100644 --- a/src/main/java/com/biutag/supervision/service/RpcApplyApproveService.java +++ b/src/main/java/com/biutag/supervision/service/RpcApplyApproveService.java @@ -1,5 +1,6 @@ package com.biutag.supervision.service; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.biutag.supervision.mapper.RpcApplyApproveMapper; @@ -19,7 +20,7 @@ public class RpcApplyApproveService extends ServiceImpl list = list(new LambdaQueryWrapper().eq(RpcApplyApprove::getRpcId, rpcApply.getRpcId()).orderByDesc(RpcApplyApprove::getCreateTime)); RpcApplyApproveVo approveVo2 = new RpcApplyApproveVo(); diff --git a/src/main/java/com/biutag/supervision/service/RpcApplyService.java b/src/main/java/com/biutag/supervision/service/RpcApplyService.java index 06eefa5..6a28206 100644 --- a/src/main/java/com/biutag/supervision/service/RpcApplyService.java +++ b/src/main/java/com/biutag/supervision/service/RpcApplyService.java @@ -109,12 +109,14 @@ public class RpcApplyService extends ServiceImpl { } rpcApply.setRpcStatus(ComfortStatus.approval.name()); rpcApply.setStep(2); + UserAuth user = UserContextHolder.getCurrentUser(); + rpcApply.setCrtUser(user.getNickName()); save(rpcApply); // 已办 RpcApplyWork done = new RpcApplyWork(); done.setRpcId(rpcApply.getRpcId()); done.setStatus(WorkStatusEnum.done.name()); - done.setHandleIdCode(UserContextHolder.getCurrentUser().getUserName()); + done.setHandleIdCode(user.getUserName()); done.setCreateTime(LocalDateTime.now()); done.setStep(1); rpcApplyWorkService.save(done); diff --git a/src/main/java/com/biutag/supervision/service/RpcComfortPacksService.java b/src/main/java/com/biutag/supervision/service/RpcComfortPacksService.java index efe8762..e2d9152 100644 --- a/src/main/java/com/biutag/supervision/service/RpcComfortPacksService.java +++ b/src/main/java/com/biutag/supervision/service/RpcComfortPacksService.java @@ -5,15 +5,19 @@ import cn.hutool.core.date.DateUtil; import cn.hutool.core.io.IoUtil; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.NumberUtil; +import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.ZipUtil; import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.biutag.supervision.constants.enums.ComfortStatus; +import com.biutag.supervision.constants.enums.PersonTypeEnum; import com.biutag.supervision.mapper.RpcComfortPacksMapper; import com.biutag.supervision.pojo.dto.ComfortPacksDto; import com.biutag.supervision.pojo.entity.RpcComfortPacks; import com.biutag.supervision.pojo.entity.RpcRightPerson; +import com.biutag.supervision.pojo.entity.SupPolice; import com.biutag.supervision.pojo.vo.RpcApplyVo; import com.biutag.supervision.pojo.vo.RpcComfortPacksVo; import com.biutag.supervision.util.Arrays; @@ -24,10 +28,13 @@ import freemarker.template.Version; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.StringUtils; import java.io.*; import java.nio.charset.StandardCharsets; +import java.time.LocalDate; import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -40,9 +47,10 @@ public class RpcComfortPacksService extends ServiceImpl polices = policeService.list(new LambdaQueryWrapper().in(SupPolice::getEmpNo, comfortPacksDto.getComforts().stream().map(RpcApplyVo::getApplicantEmpNo).toList())); + comfortPacksDto.getComforts().forEach(item -> { + String personType = polices.stream().filter(p -> p.getEmpNo().equals(item.getApplicantEmpNo())).findFirst().map(SupPolice::getPersonType).orElse(""); + item.setPersonType(StrUtil.isNotBlank(personType) ? PersonTypeEnum.getLabel(personType) : ""); + item.setHappenTimeStr(item.getHappenTime().format(DateTimeFormatter.ofPattern("yyyy年MM月dd日"))); + }); // 生成呈报文件 genReports(rpcComfortPacks, comfortPacksDto.getComforts()); return true; @@ -105,36 +121,65 @@ public class RpcComfortPacksService extends ServiceImpl { item.setSexName(item.getSex() == 0 ? "男" : item.getSex() == 1 ?"女" : ""); }); - String rightsPersons = rpcRightPersonService.listByCouncil().stream().map(RpcRightPerson::getEmpName).collect(Collectors.joining(" ")); + //String rightsPersons = rpcRightPersonService.listByCouncil().stream().map(RpcRightPerson::getEmpName).collect(Collectors.joining(" ")); + List applyDates = comforts.stream().map(RpcApplyVo::getApplyDate).sorted().toList(); + String applyMonth; + String applyDate; + List distinctDates = applyDates.stream().map(item -> item.format(DateTimeFormatter.ofPattern("yyyy年MM月dd日"))).distinct().toList(); + LocalDate beginDate = applyDates.get(0); + LocalDate endDate = applyDates.get(applyDates.size() - 1); + // 同一日 + if (distinctDates.size() == 1) { + applyMonth = beginDate.format(DateTimeFormatter.ofPattern("yyyy年MM月")); + applyDate = distinctDates.get(0); + } else { + // 同一年 + if (beginDate.getYear() == endDate.getYear()) { + // 同一月 + if (beginDate.getMonth() == endDate.getMonth()) { + applyMonth = beginDate.format(DateTimeFormatter.ofPattern("yyyy年MM月")); + applyDate = distinctDates.get(0) + "至" + endDate.format(DateTimeFormatter.ofPattern("dd日")); + } else { + applyMonth = beginDate.format(DateTimeFormatter.ofPattern("yyyy年MM月")) + "至" + endDate.format(DateTimeFormatter.ofPattern("MM月")); + applyDate = distinctDates.get(0) + "至" + endDate.format(DateTimeFormatter.ofPattern("MM月dd日")); + } + } else { + applyMonth = beginDate.format(DateTimeFormatter.ofPattern("yyyy年MM月")) + "至" + endDate.format(DateTimeFormatter.ofPattern("yyyy年MM月")); + applyDate = distinctDates.get(0) + "至" + endDate.format(DateTimeFormatter.ofPattern("yyyy年MM月dd日")); + } + } // 1、抚慰金审批签呈 + String reportMoneyChinese = NumberChineseFormatter.format(rpcComfortPacks.getReportMoney(), true) + "元整"; JSONObject data1 = new JSONObject() - .fluentPut("monthDate", DateUtil.format(new Date(), "yyyy年MM月")) + .fluentPut("applyMonth", applyMonth) + .fluentPut("applyDate", applyDate) .fluentPut("policeName", comforts.get(0).getApplicantEmpName()) .fluentPut("reportNum", rpcComfortPacks.getReportNum()) .fluentPut("reportMoney", rpcComfortPacks.getReportMoney()) - .fluentPut("reportMoneyChinese", NumberChineseFormatter.format(rpcComfortPacks.getReportMoney(), true)) - .fluentPut("rightsPersons", rightsPersons) + .fluentPut("reportMoneyChinese", reportMoneyChinese) .fluentPut("date", DateUtil.format(new Date(), "yyyy年MM月dd日")); ByteArrayOutputStream os1 = new ByteArrayOutputStream(); template1.process(data1, new BufferedWriter(new OutputStreamWriter(os1, StandardCharsets.UTF_8))); - // 2、维权抚慰登记表 + // 2、抚慰金申报批处理表 JSONObject data2 = new JSONObject() - .fluentPut("rpcApplys", comforts); + .fluentPut("rpcApplys", comforts) + .fluentPut("reportMoney", rpcComfortPacks.getReportMoney()) + .fluentPut("reportMoneyChinese", reportMoneyChinese); ByteArrayOutputStream os2 = new ByteArrayOutputStream(); template2.process(data2, new BufferedWriter(new OutputStreamWriter(os2, StandardCharsets.UTF_8))); - // 3、抚慰金申报批处理表 + // 3、维权抚慰登记表.xml JSONObject data3 = new JSONObject() .fluentPut("rpcApplys", comforts) - .fluentPut("reportMoney", rpcComfortPacks.getReportMoney()) - .fluentPut("reportMoneyChinese", NumberChineseFormatter.format(rpcComfortPacks.getReportMoney(), true)); + .fluentPut("applyMonth", applyMonth); ByteArrayOutputStream os3 = new ByteArrayOutputStream(); template3.process(data3, new BufferedWriter(new OutputStreamWriter(os3, StandardCharsets.UTF_8))); - // 4、抚慰金申请发放明细表.xml + // 4、抚慰金申请发放明细表.xml JSONObject data4 = new JSONObject() .fluentPut("rpcApplys", comforts) + .fluentPut("applyMonth", applyMonth) .fluentPut("reportMoney", rpcComfortPacks.getReportMoney()); ByteArrayOutputStream os4 = new ByteArrayOutputStream(); template4.process(data4, new BufferedWriter(new OutputStreamWriter(os4, StandardCharsets.UTF_8))); @@ -146,7 +191,7 @@ public class RpcComfortPacksService extends ServiceImpl { + + public List list(String superviseId) { + return list(new LambdaQueryWrapper().eq(SuperviseReportFile::getSuperviseId, superviseId)); + } } diff --git a/src/main/java/com/biutag/supervision/service/SuperviseReportService.java b/src/main/java/com/biutag/supervision/service/SuperviseReportService.java index 1c68220..c604883 100644 --- a/src/main/java/com/biutag/supervision/service/SuperviseReportService.java +++ b/src/main/java/com/biutag/supervision/service/SuperviseReportService.java @@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -16,14 +15,11 @@ import com.biutag.supervision.constants.enums.SuperviseReportTypeEnum; import com.biutag.supervision.mapper.SuperviseReportMapper; import com.biutag.supervision.pojo.entity.*; import com.biutag.supervision.pojo.model.UserAuth; -import com.biutag.supervision.pojo.param.SamplingQueryParam; import com.biutag.supervision.pojo.param.SuperviseReportQueryParam; -import com.biutag.supervision.pojo.vo.SamplingVo; import com.biutag.supervision.pojo.vo.SuperviseReportVo; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; import java.time.LocalDateTime; import java.util.ArrayList; @@ -71,7 +67,7 @@ public class SuperviseReportService extends ServiceImpl page= baseMapper.queryPage(Page.of(queryParam.getCurrent(), queryParam.getSize()), queryWrapper); page.getRecords().forEach(s->{ - List files= superviseReportFileService.list(new LambdaQueryWrapper().eq(SuperviseReportFile::getSuperviseId,s.getId())); + List files= superviseReportFileService.list(s.getId()); if(CollectionUtil.isNotEmpty(files)){ s.setFiles(files); } @@ -125,7 +121,7 @@ public class SuperviseReportService extends ServiceImpl diff --git a/src/main/resources/mapper/RpcApplyMapper.xml b/src/main/resources/mapper/RpcApplyMapper.xml index 1e1a0f5..9a3dac9 100644 --- a/src/main/resources/mapper/RpcApplyMapper.xml +++ b/src/main/resources/mapper/RpcApplyMapper.xml @@ -6,11 +6,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" diff --git a/src/main/resources/static/templates/5、民警维权抚慰申请表.doc b/src/main/resources/static/templates/5、民警维权抚慰申请表.doc new file mode 100644 index 0000000..2db738a --- /dev/null +++ b/src/main/resources/static/templates/5、民警维权抚慰申请表.doc @@ -0,0 +1,3 @@ + + +长沙市公安局维护民警(辅警)执法权威抚慰申请表申请人姓名性别出生年月单位及职务警衔身份证号码联系电话身份类别民警 警务辅助人员 其他人员()受侵害情形 重伤 轻伤 轻微伤 其他侵害情形申请抚慰方式精神抚慰(看望慰问 心理干预 维权正名 宣传表彰经济抚慰(10000元 5000元 3000元 其他(2000元)申请抚慰主要事实 所在单位意见负责人签章: 年 月 日(单位盖章)市局维权办意见负责人签章: 年 月 日(单位盖章)市局维权委意见负责人签章: 年 月 日(单位盖章)注:经济抚慰按明显性损伤2000元、轻伤3000元、轻伤5000元、重伤10000元填报,并出具伤情法医鉴定书及其它相关材料。173419316falsefalse491WPS Office_12.8.2.17149_F1E327BC-269C-435d-A152-05C5408002CA02025-03-14T10:14:00ZMercurli WangAdministrator2025-10-15T07:23:52Z22052-12.8.2.17149F812166A3AE84E14A4555B7152A67E79_12 \ No newline at end of file diff --git a/src/main/resources/static/templates/ftl/2、维权抚慰登记表.xml b/src/main/resources/static/templates/ftl/2、维权抚慰登记表.xml deleted file mode 100644 index 22e5869..0000000 --- a/src/main/resources/static/templates/ftl/2、维权抚慰登记表.xml +++ /dev/null @@ -1,1922 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2025 - - - - - - - - - - - 年维护民警执法权威被侵害抚慰情况登记表 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 序号 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 被侵权民警 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 所在单位 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 伤情 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 经济抚慰 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 追究行为人法律责任 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 备注 - - - - - <#list rpcApplys as item> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item_index + 1} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.applicantEmpName} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.departName} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.factReason} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.injurySeverityName} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.injurySeverity} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.job!} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Mercurli Wang - - - Mercurli Wang - 2 - 2025-03-14T10:00:00Z - 2025-03-14T10:00:00Z - - - - - - - - 1 - 1 - 35 - 204 - Microsoft Office Word - 0 - 1 - 1 - false - - false - 238 - false - false - 16.0000 - - - - \ No newline at end of file diff --git a/src/main/resources/static/templates/ftl/3、抚慰金申报批处理表.xml b/src/main/resources/static/templates/ftl/3、抚慰金申报批处理表.xml deleted file mode 100644 index 4bb6bde..0000000 --- a/src/main/resources/static/templates/ftl/3、抚慰金申报批处理表.xml +++ /dev/null @@ -1,2752 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 民警执法权威被侵害抚慰申请批处理表 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 编号 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 姓名 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 类型 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 被侵权民警单位 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 伤情 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 抚慰金 - - - - - <#list rpcApplys as item> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item_index + 1} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.applicantEmpName} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.job!} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.departName} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.injurySeverityName} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.injurySeverity} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 总金额 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${reportMoneyChinese}元整(${reportMoney})元 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 市局维权办意见 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 负责人签章 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 日(单位盖章) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 市局警保部意见 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 负责人签章 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 日(单位盖章) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 市局维权委意见 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 负责人签章 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 日(单位盖章) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Mercurli Wang - - - Mercurli Wang - 2 - 2025-03-14T10:00:00Z - 2025-03-14T10:00:00Z - - - - - - - - 0 - 1 - 34 - 194 - Microsoft Office Word - 0 - 1 - 1 - false - - false - 227 - false - false - 16.0000 - - - - \ No newline at end of file diff --git a/src/main/resources/static/templates/ftl/4、抚慰金申请发放明细表.xml b/src/main/resources/static/templates/ftl/4、抚慰金申请发放明细表.xml deleted file mode 100644 index c0569ed..0000000 --- a/src/main/resources/static/templates/ftl/4、抚慰金申请发放明细表.xml +++ /dev/null @@ -1,2218 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 抚慰金申请发放明细表( - - - - - - - - - - - 2025 - - - - - - - - - - - - - - - - - - - - - - 03 - - - - - - - - - - - 月份) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 编号 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 身份证号码 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 长沙银行 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 银行账号(本人长沙银行) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 金额 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 电话 - - - - - - - - - - - - - - - - - - - - - (银行预留电话) - - - - - <#list rpcApplys as item> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item_index + 1} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.departName} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.applicantEmpName} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.idCode!} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.bankCard!}${item.bankBranch!} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.bankCardAccount!} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.injurySeverity} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.mobile!} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 金额合计 - - - - - - - - - : - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${reportMoney} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Mercurli Wang - - - Mercurli Wang - 2 - 2025-03-14T09:49:00Z - 2025-03-14T09:49:00Z - - - - - - - - 1 - 1 - 27 - 160 - Microsoft Office Word - 0 - 1 - 1 - false - - false - 186 - false - false - 16.0000 - - - - \ No newline at end of file diff --git a/src/main/resources/static/templates/ftl/5、民警维权抚慰申请表.xml b/src/main/resources/static/templates/ftl/5、民警维权抚慰申请表.xml deleted file mode 100644 index ae8e150..0000000 --- a/src/main/resources/static/templates/ftl/5、民警维权抚慰申请表.xml +++ /dev/null @@ -1,3379 +0,0 @@ - - - - - - - - - - - - - - - - - <#list rpcApplys as item> - - - - - - - - - - - - - - - - - - - - 长沙市公安局 - - - - - - - - - - - - - - - - - - - - - - 民警执法权威被侵害抚慰申请表 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 申请人姓名 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.applicantEmpName} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.sexName} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 出生年月 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.birthday} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 文化程度 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.levelEducation} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 政治面貌 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.politicCountenance} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 警衔 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.policeRank!} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 单位 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.departName} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 职务 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.job!} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 联系电话 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${item.mobile} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 申请抚慰主要事实 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2025年1月29日时许,违法行为人王治在高新分局黄金派出所接警大厅与民警的沟通过程中,因情绪激动,大声吵闹,并用右手打到正在向其做解释工作值班所领导蔡尔夫的左肩膀部位。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 申请类别 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - - - - - - - 、精神抚慰() 2、经济抚慰:(元) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 经办人意见 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 签章: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 所在单位意见 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 负责人签章: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 市局维权办意见 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 负责人签章: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 市局警保部意见 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 负责人签章: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 市局维权委意见 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 负责人签章: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 注:经济抚慰按轻微伤2000元、轻伤3000元、重伤元填报,并出具伤情法医鉴定书及其它相关材料。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Mercurli Wang - - - Mercurli Wang - 2 - 2025-03-14T10:14:00Z - 2025-03-14T10:14:00Z - - - - - - - - 0 - 2 - 73 - 419 - Microsoft Office Word - 0 - 3 - 1 - false - - false - 491 - false - false - 16.0000 - - - - - - - - - - - \ No newline at end of file diff --git a/src/test/java/com/biutag/supervision/StrUtil.java b/src/test/java/com/biutag/supervision/StrUtil.java index 32fe6bb..f240678 100644 --- a/src/test/java/com/biutag/supervision/StrUtil.java +++ b/src/test/java/com/biutag/supervision/StrUtil.java @@ -16,7 +16,9 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import java.io.*; import java.nio.charset.StandardCharsets; +import java.time.LocalDate; import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.Date; import java.util.List; @@ -99,7 +101,44 @@ public class StrUtil { @Test public void template3() throws FileNotFoundException { - System.out.println(LocalDateTime.now().minusMinutes(240)); + LocalDate localDate = LocalDate.of(2025, 9, 16); + LocalDate now = LocalDate.now(); + List applyDates = List.of(LocalDate.of(2024, 1, 1), now, localDate).stream().sorted().toList(); + String applyMonth; + String applyDate; + List distinctDates = applyDates.stream().map(item -> item.format(DateTimeFormatter.ofPattern("yyyy年MM月dd日"))).distinct().toList(); + LocalDate beginDate = applyDates.get(0); + LocalDate endDate = applyDates.get(applyDates.size() - 1); + // 同一日 + if (distinctDates.size() == 1) { + applyMonth = beginDate.format(DateTimeFormatter.ofPattern("yyyy年MM月")); + applyDate = distinctDates.get(0); + } else { + // 同一年 + if (beginDate.getYear() == endDate.getYear()) { + // 同一月 + if (beginDate.getMonth() == endDate.getMonth()) { + applyMonth = beginDate.format(DateTimeFormatter.ofPattern("yyyy年MM月")); + applyDate = distinctDates.get(0) + "至" + endDate.format(DateTimeFormatter.ofPattern("dd日")); + } else { + applyMonth = beginDate.format(DateTimeFormatter.ofPattern("yyyy年MM月")) + "至" + endDate.format(DateTimeFormatter.ofPattern("MM月")); + applyDate = distinctDates.get(0) + "至" + endDate.format(DateTimeFormatter.ofPattern("MM月dd日")); + } + } else { + applyMonth = beginDate.format(DateTimeFormatter.ofPattern("yyyy年MM月")) + "至" + endDate.format(DateTimeFormatter.ofPattern("yyyy年MM月")); + applyDate = distinctDates.get(0) + "至" + endDate.format(DateTimeFormatter.ofPattern("yyyy年MM月dd日")); + } + } + + System.out.println(applyMonth); + System.out.println(applyDate); + } + + @Test + public void template4() { + String s = "123"; + + System.out.println(String.format(" %s", s)); } }