From 1305d0aa469fe7330fd2f8e9fbb10d95042571be Mon Sep 17 00:00:00 2001
From: zhangfeng <1603559716@qq.com>
Date: 星期一, 10 十月 2022 12:33:36 +0800
Subject: [PATCH] 应急系统和事故管理统计接口
---
goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentStandardServiceImpl.java | 104 +++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 98 insertions(+), 6 deletions(-)
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentStandardServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentStandardServiceImpl.java
index fc54337..df1ab4b 100644
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentStandardServiceImpl.java
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentStandardServiceImpl.java
@@ -3,9 +3,18 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.commons.utils.PageUtils;
+import com.gkhy.safePlatform.targetDuty.excepiton.TargetDutyException;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentStandardImportExcel;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.RewardPunishmentStandardExcel;
import com.gkhy.safePlatform.targetDuty.repository.RewardPunishmentStandardRepository;
import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentStandard;
import com.gkhy.safePlatform.targetDuty.service.RewardPunishmentStandardService;
+import com.gkhy.safePlatform.targetDuty.service.baseService.RewardPunishmentStandardBaseService;
+import com.gkhy.safePlatform.targetDuty.utils.DateUtils;
+import com.gkhy.safePlatform.targetDuty.utils.poihelper.ExcelLogs;
+import com.gkhy.safePlatform.targetDuty.utils.poihelper.ExcelUtil;
+import org.apache.commons.collections.CollectionUtils;
import org.springframework.stereotype.Service;
import org.springframework.beans.factory.annotation.Autowired;
import com.gkhy.safePlatform.commons.enums.ResultCodes;
@@ -16,8 +25,12 @@
import com.gkhy.safePlatform.targetDuty.model.dto.resp.RewardPunishmentStandardDto;
import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+import org.springframework.web.multipart.MultipartFile;
-import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.util.*;
/**
* (RewardPunishmentStandard)表服务实现类
@@ -26,20 +39,23 @@
* @since 2022-07-21 10:20:10
*/
@Service("rewardPunishmentStandardService")
-public class RewardPunishmentStandardServiceImpl extends ServiceImpl<RewardPunishmentStandardRepository, RewardPunishmentStandard> implements RewardPunishmentStandardService {
+public class RewardPunishmentStandardServiceImpl implements RewardPunishmentStandardService {
@Autowired
- private RewardPunishmentStandardRepository rewardPunishmentStandardRepository;
-
+ private RewardPunishmentStandardBaseService rewardPunishmentStandardBaseService;
+
+ @Autowired
+ public HttpServletResponse response;
@Override
public ResultVO queryAll(PageQuery<RewardPunishmentStandardQueryCriteria> pageQuery) {
+ PageUtils.checkCheck(pageQuery);
Long pageIndex = pageQuery.getPageIndex();
Long pageSize = pageQuery.getPageSize();
IPage<RewardPunishmentStandard> page = new Page<>(pageIndex, pageSize);
- page = baseMapper.selectPage(page,
+ page = rewardPunishmentStandardBaseService.selectPage(page,
QueryHelpPlus.getPredicate(RewardPunishmentStandard.class, pageQuery.getSearchParams()));
List<RewardPunishmentStandardDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), RewardPunishmentStandardDto.class);
@@ -56,6 +72,82 @@
@Override
public List<RewardPunishmentStandard> queryAll(RewardPunishmentStandardQueryCriteria criteria) {
- return baseMapper.selectList(QueryHelpPlus.getPredicate(RewardPunishmentStandard.class, criteria));
+ return rewardPunishmentStandardBaseService.queryAll(criteria);
+ }
+
+ @Override
+ public void importData(MultipartFile file) throws IOException {
+ String contentType = file.getContentType();
+ if(!"application/vnd.ms-excel".equals(contentType)
+ && !"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet".equals(contentType)) {
+ throw new TargetDutyException("上传的excel格式错误");
+ }
+
+ Collection<RewardPunishmentStandardImportExcel> importExcel = ExcelUtil.importExcel(RewardPunishmentStandardImportExcel.class, file.getInputStream(), "yyyy-MM-dd HH:mm:ss", new ExcelLogs() , 0);
+
+ if (CollectionUtils.isEmpty(importExcel)) {
+ return ;
+ }
+
+ List<RewardPunishmentStandard> respList = BeanCopyUtils.copyBeanList((List<RewardPunishmentStandardImportExcel>)importExcel, RewardPunishmentStandard.class);
+
+ rewardPunishmentStandardBaseService.saveBatch(respList);
+ }
+
+ @Override
+ public void delete(Long[] ids) {
+ if(ids == null){
+ throw new TargetDutyException(ResultCodes.CLIENT_PARAM_ILLEGAL);
+ }
+ List<Long> idList = Arrays.asList(ids);
+
+ List<RewardPunishmentStandard> delList = new ArrayList<>();
+ idList.forEach(f->{
+ RewardPunishmentStandard info = new RewardPunishmentStandard();
+ info.setDelFlag(1);
+ info.setId(f);
+ delList.add(info);
+ });
+ rewardPunishmentStandardBaseService.updateBatchById(delList);
+ }
+
+ @Override
+ public void exportTemplate() throws IOException {
+ Map<String,String> map = new LinkedHashMap<>();
+ map.put("1","奖惩名称");
+ map.put("2","奖惩类型 1:奖励 2:惩罚");
+ map.put("3","奖惩内容");
+ map.put("4","依据");
+ map.put("5","备注");
+
+ String fileName = URLEncoder.encode("奖惩标准设定数据导入模板.xls", "UTF-8");
+ response.setContentType("application/vnd.ms-excel");
+ response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");
+ response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");
+
+ ExcelUtil.exportExcel(map,new ArrayList<>() , response.getOutputStream());
+ response.getOutputStream().close();
+ }
+
+ @Override
+ public void exportData(RewardPunishmentStandardQueryCriteria queryCriteria) throws IOException {
+ Map<String,String> map = new LinkedHashMap<>();
+ map.put("1","奖惩名称");
+ map.put("2","奖惩类型");
+ map.put("3","奖惩内容");
+ map.put("4","依据");
+ map.put("5","备注");
+
+ String key = DateUtils.date2String(new Date(), DateUtils.PATTERN_ALLTIME_NOSIGN) ;
+ String fileName = URLEncoder.encode("奖惩标准设定"+key+".xls", "UTF-8");
+ response.setContentType("application/vnd.ms-excel");
+ response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");
+ response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");
+
+
+ List<RewardPunishmentStandardExcel> respList = BeanCopyUtils.copyBeanList(this.queryAll(queryCriteria), RewardPunishmentStandardExcel.class);
+
+ ExcelUtil.exportExcel(map,respList , response.getOutputStream(),DateUtils.PATTERN_STANDARD);
+ response.getOutputStream().close();
}
}
\ No newline at end of file
--
Gitblit v1.9.2