From 6a3ba709bb26d51500b0d1df6989a0cabff410c3 Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Fri, 22 Dec 2023 14:01:42 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=89=B9=E9=87=8F?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E6=95=B0=E6=8D=AE=E5=8A=9F=E8=83=BD=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=95=B0=E5=80=BC=E5=BC=82=E5=B8=B8=E6=97=B6=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E7=9A=84=E8=AF=AD=E5=8F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java b/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java index 21b5255..ee3875c 100644 --- a/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java +++ b/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java @@ -1345,12 +1345,12 @@ public class LpkGiftCardService extends MybatisBaseService Date: Fri, 22 Dec 2023 14:21:38 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=89=B9=E9=87=8F?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E6=95=B0=E6=8D=AE=E5=8A=9F=E8=83=BD=E6=8F=92?= =?UTF-8?q?=E5=85=A5=E6=97=B6=E4=BF=9D=E5=AD=98=E7=A4=BC=E5=8C=85=E5=90=8D?= =?UTF-8?q?=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yxt/yyth/biz/lpkgiftbag/LpkGiftBagMapper.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/yxt/yyth/biz/lpkgiftbag/LpkGiftBagMapper.xml b/src/main/java/com/yxt/yyth/biz/lpkgiftbag/LpkGiftBagMapper.xml index 376e6d9..0f0ffca 100644 --- a/src/main/java/com/yxt/yyth/biz/lpkgiftbag/LpkGiftBagMapper.xml +++ b/src/main/java/com/yxt/yyth/biz/lpkgiftbag/LpkGiftBagMapper.xml @@ -5,10 +5,10 @@ - insert into lpk_giftbag(sid,createTime,dateStart,dateEnd) + insert into lpk_giftbag(sid,createTime,`name`,dateStart,dateEnd) values - (#{item.sid},#{item.createTime},#{item.dateStart},#{item.dateEnd}) + (#{item.sid},#{item.createTime},#{item.name},#{item.dateStart},#{item.dateEnd}) From ca0b2ade16b658be1bf0147fde181abf599fbda0 Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Fri, 22 Dec 2023 15:24:38 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=89=B9=E9=87=8F?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E6=95=B0=E6=8D=AE=E5=8A=9F=E8=83=BD=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=AF=B9=E5=BC=82=E5=B8=B8=E6=8D=95=E8=8E=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/lpkgiftcard/LpkGiftCardService.java | 276 +++++++++--------- 1 file changed, 140 insertions(+), 136 deletions(-) diff --git a/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java b/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java index ee3875c..cad1fe8 100644 --- a/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java +++ b/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java @@ -1123,154 +1123,158 @@ public class LpkGiftCardService extends MybatisBaseService setMsg = returnMsg.getSetMsg(); - StringBuffer sbMsg = new StringBuffer(); - if (null != setMsg && setMsg.size() > 0) { - for (String s : setMsg) { - sbMsg.append(s).append(","); + try { + String temp = request.getSession().getServletContext().getRealPath(File.separator) + "temp";// 临时目录 + File tempFile = new File(temp); + if (!tempFile.exists()) { + tempFile.mkdirs(); } - sbMsg.delete(sbMsg.length() - 1, sbMsg.length()); - if (StringUtils.isNotBlank(sbMsg.toString())) { - return rb.setMsg(sbMsg.toString()); + String fileName = file.getOriginalFilename(); + if (!fileName.matches("^.+\\.(?i)(xls)$") && !fileName.matches("^.+\\.(?i)(xlsx)$")) { + return rb.fail().setMsg("上传文件不正确"); } - } - List importReturn = returnMsg.getInfos(); - importReturn.removeAll(Collections.singleton(null)); - String startNo = ""; - String endNo = ""; - List cards = new ArrayList<>(); //卡片 - List bagGoods = new ArrayList<>(); //卡片礼包关联 - List bags = new ArrayList<>(); //礼包 - List codes = new ArrayList<>(); //二维码 - List records = new ArrayList<>(); //二维码 - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - int cardSerNum = 0; - //生成卡包 - if (!importReturn.isEmpty()) { - for (int i = 0; i < importReturn.size(); i++) { - ReturnExcelInfo info = importReturn.get(i); - LpkGiftCard card = new LpkGiftCard(); - LpkGiftBag bag = new LpkGiftBag(); - LpkCardQrcode code = new LpkCardQrcode(); - LpkCardBuildRecord record = new LpkCardBuildRecord(); - String serNum = baseMapper.selctMaxSerNumForExport(); - card.setCreateTime(new DateTime());//卡片生成时间 - bag.setCreateTime(new DateTime());//礼包生成时间 - code.setCreateTime(new DateTime());//二维码生成时间 - record.setCreateTime(new DateTime());//礼包记录生成时间 - record.setBuildDate(new DateTime());//礼包记录生成时间 - record.setGiftbagSid(bag.getSid()); - record.setCountNumber("1"); - if (StringUtils.isNotBlank(serNum)) { - int serNumInt = Integer.parseInt(serNum); - if (i == 0) { - cardSerNum = serNumInt + 1; - } - } else { - if (cardSerNum == 0) { - cardSerNum = 70000001; - } + boolean isExcel2003 = true; + if (fileName.matches("^.+\\.(?i)(xlsx)$")) { + isExcel2003 = false; + } + InputStream is = file.getInputStream(); + Workbook wb = null; + if (isExcel2003) { + wb = new HSSFWorkbook(is); + } else { + wb = new XSSFWorkbook(is); + } + Sheet sheet = wb.getSheetAt(0); + ReturnMsg returnMsg = getSheetVal2(sheet); + Set setMsg = returnMsg.getSetMsg(); + StringBuffer sbMsg = new StringBuffer(); + if (null != setMsg && setMsg.size() > 0) { + for (String s : setMsg) { + sbMsg.append(s).append(","); } - card.setSerialNumber(String.valueOf(cardSerNum)); - record.setStartNumber(String.valueOf(cardSerNum)); - record.setEndNumber(String.valueOf(cardSerNum)); - bag.setName("家庭菜窖" + cardSerNum); - card.setGiftbagSid(bag.getSid()); //卡片赋值关联礼包sid - card.setRecordSid(record.getSid()); //卡片赋值关联生成卡记录sid - card.setState("1"); - String uuid = UniqueIdGenerator.generateUniqueID(); - int randomNumber = new Random().nextInt(900000) + 100000; - card.setCodeKey(String.valueOf(randomNumber)); //6位密码 - card.setCode(uuid); //20位提货码 - //生成二维码转base64 - String s = genarateQRCodesToBase64ForExport(card.getCode()); - code.setCardSid(card.getSid()); - code.setCreateTime(new DateTime()); - code.setFile(s); - //------礼包信息赋值------------- - try { - bag.setDateStart(sdf.parse(startDate)); - bag.setDateEnd(sdf.parse(endDate)); - } catch (ParseException e) { - e.printStackTrace(); + sbMsg.delete(sbMsg.length() - 1, sbMsg.length()); + if (StringUtils.isNotBlank(sbMsg.toString())) { + return rb.setMsg(sbMsg.toString()); } - cards.add(card); - bags.add(bag); - codes.add(code); - records.add(record); - List infoDetails = info.getInfoDetails(); - if (!infoDetails.isEmpty()) { - for (ReturnExcelInfoDetails detail : infoDetails) { - LpkGiftBagGoods giftBagGoods = new LpkGiftBagGoods(); - giftBagGoods.setCreateTime(new DateTime()); - if (StringUtils.isNotBlank(detail.getGoodNum()) && StringUtils.isNotBlank(detail.getGoodName())) { - LpkGoods lpkGoods = lpkGoodsService.getGoodsByName(detail.getGoodName()); - if (null != lpkGoods) { - giftBagGoods.setGoodsSid(lpkGoods.getSid()); - if (detail.getGoodNum().contains(".")) { - String num = detail.getGoodNum().substring(0, detail.getGoodNum().indexOf(".")); - giftBagGoods.setGoodsNumber(num); - } else { - giftBagGoods.setGoodsNumber(detail.getGoodNum()); + } + List importReturn = returnMsg.getInfos(); + importReturn.removeAll(Collections.singleton(null)); + String startNo = ""; + String endNo = ""; + List cards = new ArrayList<>(); //卡片 + List bagGoods = new ArrayList<>(); //卡片礼包关联 + List bags = new ArrayList<>(); //礼包 + List codes = new ArrayList<>(); //二维码 + List records = new ArrayList<>(); //二维码 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + int cardSerNum = 0; + //生成卡包 + if (!importReturn.isEmpty()) { + for (int i = 0; i < importReturn.size(); i++) { + ReturnExcelInfo info = importReturn.get(i); + LpkGiftCard card = new LpkGiftCard(); + LpkGiftBag bag = new LpkGiftBag(); + LpkCardQrcode code = new LpkCardQrcode(); + LpkCardBuildRecord record = new LpkCardBuildRecord(); + String serNum = baseMapper.selctMaxSerNumForExport(); + card.setCreateTime(new DateTime());//卡片生成时间 + bag.setCreateTime(new DateTime());//礼包生成时间 + code.setCreateTime(new DateTime());//二维码生成时间 + record.setCreateTime(new DateTime());//礼包记录生成时间 + record.setBuildDate(new DateTime());//礼包记录生成时间 + record.setGiftbagSid(bag.getSid()); + record.setCountNumber("1"); + if (StringUtils.isNotBlank(serNum)) { + int serNumInt = Integer.parseInt(serNum); + if (i == 0) { + cardSerNum = serNumInt + 1; + } + } else { + if (cardSerNum == 0) { + cardSerNum = 70000001; + } + } + card.setSerialNumber(String.valueOf(cardSerNum)); + record.setStartNumber(String.valueOf(cardSerNum)); + record.setEndNumber(String.valueOf(cardSerNum)); + bag.setName("家庭菜窖" + cardSerNum); + card.setGiftbagSid(bag.getSid()); //卡片赋值关联礼包sid + card.setRecordSid(record.getSid()); //卡片赋值关联生成卡记录sid + card.setState("1"); + String uuid = UniqueIdGenerator.generateUniqueID(); + int randomNumber = new Random().nextInt(900000) + 100000; + card.setCodeKey(String.valueOf(randomNumber)); //6位密码 + card.setCode(uuid); //20位提货码 + //生成二维码转base64 + String s = genarateQRCodesToBase64ForExport(card.getCode()); + code.setCardSid(card.getSid()); + code.setCreateTime(new DateTime()); + code.setFile(s); + //------礼包信息赋值------------- + try { + bag.setDateStart(sdf.parse(startDate)); + bag.setDateEnd(sdf.parse(endDate)); + } catch (ParseException e) { + e.printStackTrace(); + } + cards.add(card); + bags.add(bag); + codes.add(code); + records.add(record); + List infoDetails = info.getInfoDetails(); + if (!infoDetails.isEmpty()) { + for (ReturnExcelInfoDetails detail : infoDetails) { + LpkGiftBagGoods giftBagGoods = new LpkGiftBagGoods(); + giftBagGoods.setCreateTime(new DateTime()); + if (StringUtils.isNotBlank(detail.getGoodNum()) && StringUtils.isNotBlank(detail.getGoodName())) { + LpkGoods lpkGoods = lpkGoodsService.getGoodsByName(detail.getGoodName()); + if (null != lpkGoods) { + giftBagGoods.setGoodsSid(lpkGoods.getSid()); + if (detail.getGoodNum().contains(".")) { + String num = detail.getGoodNum().substring(0, detail.getGoodNum().indexOf(".")); + giftBagGoods.setGoodsNumber(num); + } else { + giftBagGoods.setGoodsNumber(detail.getGoodNum()); + } } + giftBagGoods.setGiftbagSid(bag.getSid()); + bagGoods.add(giftBagGoods); } - giftBagGoods.setGiftbagSid(bag.getSid()); - bagGoods.add(giftBagGoods); } } + if (i == 0) { + startNo = String.valueOf(cardSerNum); + } + if (i == importReturn.size() - 1) { + endNo = String.valueOf(cardSerNum); + } + cardSerNum = cardSerNum + 1; } - if (i == 0) { - startNo = String.valueOf(cardSerNum); + //批量插入数据 + //卡片 + if (!cards.isEmpty()) { + int i = baseMapper.saveCards(cards); } - if (i == importReturn.size() - 1) { - endNo = String.valueOf(cardSerNum); + //卡记录 + if (!records.isEmpty()) { + int i = lpkCardBuildRecordService.saveRecords(records); } - cardSerNum = cardSerNum + 1; - } - //批量插入数据 - //卡片 - if (!cards.isEmpty()) { - int i = baseMapper.saveCards(cards); - } - //卡记录 - if (!records.isEmpty()) { - int i = lpkCardBuildRecordService.saveRecords(records); - } - //二维码 - if (!codes.isEmpty()) { - int i = lpkCardQrcodeService.saveCodes(codes); - } - //礼包 - if (!bags.isEmpty()) { - int i = lpkGiftBagService.saveBags(bags); - } - //礼包商品 - if (!bagGoods.isEmpty()) { - int i = LpkGiftBagGoodsService.saveBagGoods(bagGoods); + //二维码 + if (!codes.isEmpty()) { + int i = lpkCardQrcodeService.saveCodes(codes); + } + //礼包 + if (!bags.isEmpty()) { + int i = lpkGiftBagService.saveBags(bags); + } + //礼包商品 + if (!bagGoods.isEmpty()) { + int i = LpkGiftBagGoodsService.saveBagGoods(bagGoods); + } + return rb.success().setMsg("本次导入:" + importReturn.size() + "条数据,生成卡券共计" + importReturn.size() + "张;卡券序列号:" + startNo + "-" + endNo); } - return rb.success().setMsg("本次导入:" + importReturn.size() + "条数据,生成卡券共计" + importReturn.size() + "张;卡券序列号:" + startNo + "-" + endNo); + } catch (Exception e) { + e.printStackTrace(); } return rb.success().setMsg("导入成功"); }