From 916a3cbabe4e50062fce61ff6f2f5d46c05dfbd1 Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 목, 17 3월 2022 17:47:45 +0900 Subject: [PATCH] - api로 이슈 추가 시 url/ip로 업체 찾는 코드 수정 --- src/main/java/kr/wisestone/owl/service/impl/NoticeServiceImpl.java | 68 ++++++++++++++++++++++++++++++++-- 1 files changed, 64 insertions(+), 4 deletions(-) diff --git a/src/main/java/kr/wisestone/owl/service/impl/NoticeServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/NoticeServiceImpl.java index 4d30df3..480f85b 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/NoticeServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/NoticeServiceImpl.java @@ -1,5 +1,6 @@ package kr.wisestone.owl.service.impl; +import kr.wisestone.owl.common.ExcelConditionCheck; import kr.wisestone.owl.config.kafka.KafkaSender; import kr.wisestone.owl.constant.Constants; import kr.wisestone.owl.constant.MsgConstants; @@ -10,17 +11,24 @@ import kr.wisestone.owl.repository.NoticeRepository; import kr.wisestone.owl.service.NoticeService; import kr.wisestone.owl.service.UserService; +import kr.wisestone.owl.service.WorkspaceService; import kr.wisestone.owl.util.ConvertUtil; -import kr.wisestone.owl.vo.NoticeVo; -import kr.wisestone.owl.vo.ResPage; +import kr.wisestone.owl.vo.*; +import kr.wisestone.owl.web.condition.CompanyFieldCondition; import kr.wisestone.owl.web.condition.NoticeCondition; +import kr.wisestone.owl.web.form.CompanyFieldForm; import kr.wisestone.owl.web.form.NoticeForm; +import kr.wisestone.owl.web.view.ExcelView; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.ui.Model; +import org.springframework.web.servlet.ModelAndView; + +import javax.servlet.http.HttpServletRequest; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -32,13 +40,22 @@ private NoticeRepository noticeRepository; @Autowired + private NoticeMapper noticeMapper; + + @Autowired private UserService userService; @Autowired - private KafkaSender kafkaSender; + private WorkspaceService workspaceService; @Autowired - private NoticeMapper noticeMapper; + private ExcelView excelView; + + @Autowired + private ExcelConditionCheck excelConditionCheck; + + @Autowired + private KafkaSender kafkaSender; @Override protected JpaRepository<Notice, Long> getRepository() { @@ -153,4 +170,47 @@ this.kafkaSender.send("common-topic", message); } } + + @Override + public void remove(NoticeForm noticeForm) { + if (noticeForm.getRemoveIds().size() < 1) { + throw new OwlRuntimeException( + this.messageAccessor.getMessage(MsgConstants.COMPANY_REMOVE_NOT_SELECT)); + } + for (Long id : noticeForm.getRemoveIds()) { + this.noticeRepository.deleteById(id); + this.noticeRepository.flush(); + } + } + + @Override + public ModelAndView downloadExcel(HttpServletRequest request, Model model) { + ModelAndView modelAndView = this.workspaceService.checkUseExcelDownload(model); + if (modelAndView != null) { + return modelAndView; + } + + Map<String, Object> conditions = new HashMap<>(); + // �뿊�� �떎�슫濡쒕뱶�뿉 �븘�슂�븳 寃��깋 議곌굔 �젙蹂대�� 異붿텧�븯怨� 寃��깋 議곌굔 異붿텧�뿉 �삤瑜섍� 諛쒖깮�븯硫� 寃쎄퀬瑜� �몴�떆�빐以��떎. + modelAndView = this.excelConditionCheck.checkCondition(conditions, request, model); + if (modelAndView != null) { + return modelAndView; + } + + NoticeCondition noticeCondition = NoticeCondition.make(conditions); + List<Map<String, Object>> results = this.noticeMapper.find(noticeCondition); + List<NoticeVo> noticeVos = ConvertUtil.convertListToListClass(results, NoticeVo.class); + + // code_ko_KR �뿉 code紐� �꽕�젙 + ExportExcelVo excelInfo = new ExportExcelVo(); + excelInfo.setFileName(this.messageAccessor.message("怨듭��궗�빆 紐⑸줉")); + excelInfo.addAttrInfos(new ExportExcelAttrVo("title", this.messageAccessor.message("notice.title"), 6, ExportExcelAttrVo.ALIGN_CENTER)); + excelInfo.addAttrInfos(new ExportExcelAttrVo("registerDate", this.messageAccessor.message("notice.registerDate"), 10, ExportExcelAttrVo.ALIGN_CENTER)); + excelInfo.addAttrInfos(new ExportExcelAttrVo("writer", this.messageAccessor.message("notice.registerId"), 10, ExportExcelAttrVo.ALIGN_CENTER)); + + excelInfo.setDatas(noticeVos); + + model.addAttribute(Constants.EXCEL, excelInfo); + return new ModelAndView(this.excelView); + } } -- Gitblit v1.8.0