diff --git a/src/main/java/org/springblade/modules/business/controller/ReportController.java b/src/main/java/org/springblade/modules/business/controller/ReportController.java index 38b6ca1..b1967c3 100644 --- a/src/main/java/org/springblade/modules/business/controller/ReportController.java +++ b/src/main/java/org/springblade/modules/business/controller/ReportController.java @@ -28,8 +28,10 @@ import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tenant.annotation.TenantDS; import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.DateUtil; import org.springblade.modules.business.excel.AppealExcel; import org.springblade.modules.business.service.ILargeScreenService; +import org.springblade.modules.business.vo.AppealListVO; import org.springblade.modules.system.excel.UserExcel; import org.springblade.modules.system.excel.UserImporter; import org.springframework.web.bind.annotation.GetMapping; @@ -38,6 +40,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; +import javax.servlet.http.HttpServletResponse; import java.text.ParseException; import java.util.Date; import java.util.List; @@ -146,4 +149,13 @@ public class ReportController extends BladeController { largeScreenService.importAppeal(excels); return R.success("操作成功"); } + + /** + * 导出 + */ + @GetMapping("/exportAppeal") + public void exportAppeal(HttpServletResponse response, String appealStatus, String startTime, String endTime, String appealType, String windowId, String username) { + List appealExcels = largeScreenService.exportAppeal(appealStatus, startTime, endTime, appealType, windowId, username); + ExcelUtil.export(response, "纠纷数据" + DateUtil.time(), "纠纷数据表", appealExcels, AppealExcel.class); + } } diff --git a/src/main/java/org/springblade/modules/business/excel/AppealExcel.java b/src/main/java/org/springblade/modules/business/excel/AppealExcel.java index 11a367d..d56e976 100644 --- a/src/main/java/org/springblade/modules/business/excel/AppealExcel.java +++ b/src/main/java/org/springblade/modules/business/excel/AppealExcel.java @@ -1,14 +1,12 @@ package org.springblade.modules.business.excel; import com.alibaba.excel.annotation.ExcelProperty; -import com.alibaba.excel.annotation.format.DateTimeFormat; import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ContentRowHeight; import com.alibaba.excel.annotation.write.style.HeadRowHeight; import lombok.Data; import java.io.Serializable; -import java.util.Date; @Data @ColumnWidth(25) @@ -26,8 +24,8 @@ public class AppealExcel implements Serializable { @ExcelProperty("上报时间") private String firstRegTime; -// @ExcelProperty("事件来源") -// private String disputeName; + @ExcelProperty("事件来源") + private String sjly; @ExcelProperty("事件等级") private String disputeLevel; @@ -35,11 +33,11 @@ public class AppealExcel implements Serializable { @ExcelProperty("所属镇街") private String streetId; -// @ExcelProperty("地点") -// private String disputeName; + @ExcelProperty("地点") + private String dd; -// @ExcelProperty("坐标") -// private String disputeName; + @ExcelProperty("坐标") + private String zb; @ExcelProperty("矛盾 纠纷详情") private String problemDesc; @@ -47,8 +45,8 @@ public class AppealExcel implements Serializable { @ExcelProperty("状态") private String status; -// @ExcelProperty("调解员") -// private String disputeName; + @ExcelProperty("调解员") + private String tjy; @ExcelProperty("所属部门") private String handleDept; diff --git a/src/main/java/org/springblade/modules/business/mapper/AppealMapper.java b/src/main/java/org/springblade/modules/business/mapper/AppealMapper.java index 9e0cb25..4a49d90 100644 --- a/src/main/java/org/springblade/modules/business/mapper/AppealMapper.java +++ b/src/main/java/org/springblade/modules/business/mapper/AppealMapper.java @@ -18,6 +18,9 @@ package org.springblade.modules.business.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.springblade.modules.business.entity.Appeal; +import org.springblade.modules.business.excel.AppealExcel; + +import java.util.List; /** * Mapper 接口 @@ -27,4 +30,5 @@ import org.springblade.modules.business.entity.Appeal; public interface AppealMapper extends BaseMapper { + List exportAppeal(String appealStatus, String startTime, String endTime, String appealType, String windowId, String username); } diff --git a/src/main/java/org/springblade/modules/business/mapper/AppealMapper.xml b/src/main/java/org/springblade/modules/business/mapper/AppealMapper.xml index df1ac63..557806b 100644 --- a/src/main/java/org/springblade/modules/business/mapper/AppealMapper.xml +++ b/src/main/java/org/springblade/modules/business/mapper/AppealMapper.xml @@ -2,4 +2,40 @@ + diff --git a/src/main/java/org/springblade/modules/business/service/ILargeScreenService.java b/src/main/java/org/springblade/modules/business/service/ILargeScreenService.java index ea2ce3d..483e9ad 100644 --- a/src/main/java/org/springblade/modules/business/service/ILargeScreenService.java +++ b/src/main/java/org/springblade/modules/business/service/ILargeScreenService.java @@ -55,4 +55,6 @@ public interface ILargeScreenService { IPage getImmediateList(String streetId, IPage page); void importAppeal(List excels); + + List exportAppeal(String appealStatus, String startTime, String endTime, String appealType, String windowId, String username); } diff --git a/src/main/java/org/springblade/modules/business/service/impl/LargeScreenServiceImpl.java b/src/main/java/org/springblade/modules/business/service/impl/LargeScreenServiceImpl.java index 20749ae..f4856f9 100644 --- a/src/main/java/org/springblade/modules/business/service/impl/LargeScreenServiceImpl.java +++ b/src/main/java/org/springblade/modules/business/service/impl/LargeScreenServiceImpl.java @@ -23,12 +23,14 @@ import com.baomidou.mybatisplus.core.toolkit.IdWorker; import lombok.AllArgsConstructor; import org.apache.commons.lang3.StringUtils; import org.springblade.common.cache.DictBizCache; +import org.springblade.common.constant.BusinessConstant; import org.springblade.common.enums.DictBizEnum; import org.springblade.core.tool.utils.BeanUtil; import org.springblade.modules.business.entity.Appeal; import org.springblade.modules.business.entity.AppealVisitor; import org.springblade.modules.business.entity.DataEntity; import org.springblade.modules.business.excel.AppealExcel; +import org.springblade.modules.business.mapper.AppealMapper; import org.springblade.modules.business.service.IAppealService; import org.springblade.modules.business.service.IAppealVisitorService; import org.springblade.modules.business.service.ILargeScreenService; @@ -62,6 +64,8 @@ public class LargeScreenServiceImpl implements ILargeScreenService { private final IAppealService appealService; + private final AppealMapper appealMapper; + private final IAppealVisitorService appealVisitorService; private final IUserService userService; @@ -348,7 +352,7 @@ public class LargeScreenServiceImpl implements ILargeScreenService { } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public void importAppeal(List excels) { if (CollectionUtils.isNotEmpty(excels)) { SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); @@ -419,7 +423,7 @@ public class LargeScreenServiceImpl implements ILargeScreenService { appeal.setSkipGrant(0); // 数据来源 0:系统添加, 1:数据导入 - appeal.setSourceType(1); + appeal.setSourceType(BusinessConstant.SOURCE_TYPE_IMPORT); // 上访人员 if (StringUtils.isNotBlank(excel.getUsername())) { @@ -437,6 +441,12 @@ public class LargeScreenServiceImpl implements ILargeScreenService { } } + @Override + public List exportAppeal(String appealStatus, String startTime, String endTime, String appealType, String windowId, String username) { + List excels = appealMapper.exportAppeal(appealStatus, startTime, endTime, appealType, windowId, username); + return excels; + } + @Override public Map> getAppealHot() { Map> map = new HashMap();