From f84d9e69907cb678150eaa6393fd74cf042fcca4 Mon Sep 17 00:00:00 2001 From: zenglf <18502938215@163.com> Date: 星期四, 28 九月 2023 14:39:03 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' into develop --- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcPassRateController.java | 44 +++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 43 insertions(+), 1 deletions(-) diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcPassRateController.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcPassRateController.java index 06775cc..fc17afb 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcPassRateController.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcPassRateController.java @@ -1,6 +1,10 @@ package org.jeecg.modules.mdc.controller; +import java.math.BigDecimal; +import java.util.ArrayList; import java.util.Arrays; +import java.util.List; +import java.util.Map; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; @@ -22,7 +26,11 @@ import org.jeecg.modules.mdc.service.IMdcPassRateService; +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.entity.ImportParams; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.ModelAndView; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -160,7 +168,41 @@ */ @RequestMapping(value = "/importExcel", method = RequestMethod.POST) public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { - return super.importExcel(request, response, MdcPassRate.class); + MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; + Map<String, MultipartFile> fileMap = multipartRequest.getFileMap(); + for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) { + // 鑾峰彇涓婁紶鏂囦欢瀵硅薄 + MultipartFile file = entity.getValue(); + ImportParams params = new ImportParams(); + params.setTitleRows(2); + params.setHeadRows(1); + params.setNeedSave(true); + try { + List<MdcPassRate> list = ExcelImportUtil.importExcel(file.getInputStream(), MdcPassRate.class, params); + for (MdcPassRate passRate : list) { + if (passRate.getProcessQuantity() == null || passRate.getProcessQuantity() == 0) { + passRate.setPassRate(new BigDecimal("0")); + } else { + if (passRate.getUnqualifiedQuantity() == null || passRate.getUnqualifiedQuantity() == 0) { + passRate.setPassRate(new BigDecimal("1")); + } else { + passRate.setPassRate(new BigDecimal("1").subtract(new BigDecimal(passRate.getUnqualifiedQuantity()).divide(new BigDecimal(passRate.getProcessQuantity()), 4, BigDecimal.ROUND_HALF_UP))); + } + } + } + mdcPassRateService.saveBatch(list); + } catch (Exception e) { + log.error(e.getMessage(), e); + return Result.error("鏂囦欢瀵煎叆澶辫触锛�" + e.getMessage()); + } finally { + try { + file.getInputStream().close(); + } catch (Exception e) { + e.printStackTrace(); + } + } + } + return Result.error("鏂囦欢瀵煎叆澶辫触锛�"); } } -- Gitblit v1.9.3