From 3e6202c61c182bc26150f1e30caa9c9519659cc8 Mon Sep 17 00:00:00 2001 From: 李宇 <986321569@qq.com> Date: 星期二, 17 八月 2021 13:35:58 +0800 Subject: [PATCH] 修改个人领用查询 --- src/main/java/com/nanometer/smartlab/service/OpeApplyServiceImpl.java | 48 +++++++++++++++++++++++++++++++++++++----------- 1 files changed, 37 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/service/OpeApplyServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/OpeApplyServiceImpl.java index a4e9fc5..c1c1861 100644 --- a/src/main/java/com/nanometer/smartlab/service/OpeApplyServiceImpl.java +++ b/src/main/java/com/nanometer/smartlab/service/OpeApplyServiceImpl.java @@ -36,6 +36,7 @@ import java.io.InputStream; import java.math.BigDecimal; import java.sql.Timestamp; +import java.text.DecimalFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; @@ -776,12 +777,12 @@ for (int index = 0; index < totalCells; index++) { String cellInfo = ""; if (row.getCell(index) != null) { - if (row.getCell(index).getCellTypeEnum() == CellType.BLANK && index != 9) { + if (row.getCell(index).getCellType() == CellType.BLANK && index != 9) { throw new BusinessException(ExceptionEnumCode.PARAM_NULL, "第" + ++i + "行:除了课题组都不能为空"); } - - if (row.getCell(index).getCellTypeEnum() == CellType.NUMERIC) { - cellInfo = String.valueOf(row.getCell(index).getNumericCellValue()); + if (row.getCell(index).getCellType() == CellType.NUMERIC) { + DecimalFormat df = new DecimalFormat("#######"); //格式化number String字符 + cellInfo = df.format(row.getCell(index).getNumericCellValue()); }else{ cellInfo = row.getCell(index).getStringCellValue(); } @@ -810,16 +811,36 @@ if (applyUser == null) throw new BusinessException(ExceptionEnumCode.PARAM_NO_EXIST, i+"行:申购人不存在或者申购人姓名存在重复,导入失败"); //课题组名称 String objective = valuesList.get(9); - String applyDateStr = valuesList.get(10); + String format = "yyyy-MM-dd"; SimpleDateFormat dateFormat = new SimpleDateFormat(format); Date applyDate = null; - try { - applyDate = dateFormat.parse(applyDateStr); - } catch (ParseException e) { - e.printStackTrace(); - throw new BusinessException(ExceptionEnumCode.PARAM_NO_EXIST, i+"行:申购日期不合法,应如2016-10-09,导入失败"); + int cellnum = 10; + CellType type = row.getCell(cellnum).getCellType(); + Object value = row.getCell(cellnum); + if (null == value || StringUtils.isBlank(value.toString())) { + throw new BusinessException(ExceptionEnumCode.PARAM_NO_EXIST, i+"行,申购日期不能为空"); + } else { + if (type.equals(CellType.NUMERIC)) { + try { + applyDate = row.getCell(cellnum).getDateCellValue(); + } catch (Exception e) { + e.printStackTrace(); + throw new BusinessException(ExceptionEnumCode.PARAM_NO_EXIST, i+"行,申购日期解析错误,请检查是否有无效字符"); + } + } else if (type.equals(CellType.STRING)) { + String cellInfo = row.getCell(10).getStringCellValue(); + try { + applyDate = dateFormat.parse(cellInfo); + } catch (ParseException e) { + e.printStackTrace(); + throw new BusinessException(ExceptionEnumCode.PARAM_NO_EXIST, i+"行:申购日期不合法,应如2016-10-09,导入失败"); + } + } else { + throw new BusinessException(ExceptionEnumCode.PARAM_NO_EXIST, i+"行:申购日期解析错误,请检查是否有无效字符"); + } } + //选择的审批人姓名 String approveUserName = valuesList.get(11); //根据姓名获取用户信息的id @@ -842,7 +863,7 @@ //申购数量 opeApply.setNum(num); //申购人 - opeApply.setApplyUserId(user.getId()); + opeApply.setApplyUserId(applyUser.getId()); //选择的审批人 opeApply.setApproveUserId(approveUser.getId()); //选择的课题组信息 @@ -858,4 +879,9 @@ } + @Override + public OpeApplyReserve getOpeApplyReserveListByNameForRowData(String rowKey) { + return opeApplyDao.getOpeApplyReserveListByNameForRowData(rowKey); + } + } -- Gitblit v1.9.2