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 20a62ab..dae7804 100644 --- a/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java +++ b/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java @@ -19,6 +19,7 @@ import cn.hutool.extra.qrcode.QrCodeUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.google.common.util.concurrent.ThreadFactoryBuilder; import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.ExportExcelUtils; @@ -50,6 +51,7 @@ import com.yxt.yyth.api.lpkreserveorder.*; import com.yxt.yyth.api.lpkreserveordergoods.LpkReserveOrderGoods; import com.yxt.yyth.api.lpkstore.LpkStoreDetailsVo; import com.yxt.yyth.api.lpkstore.StoreSelect; +import com.yxt.yyth.api.sysuser.SysUserVo; import com.yxt.yyth.biz.customerstore.CustomerStoreService; import com.yxt.yyth.biz.empcard.EmpCardService; import com.yxt.yyth.biz.empcardgift.EmpCardGiftService; @@ -67,6 +69,8 @@ import com.yxt.yyth.utils.StyleUtils; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.apache.tomcat.util.threads.ThreadPoolExecutor; +import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -80,6 +84,7 @@ import java.awt.image.BufferedImage; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.util.*; +import java.util.concurrent.*; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -155,15 +160,16 @@ public class LpkGiftCardService extends MybatisBaseService().eq("code", bindCardDto.getCode())); @@ -193,6 +199,7 @@ public class LpkGiftCardService extends MybatisBaseService pq) { ResultBean rb = new ResultBean().fail(); LpkGiftCardQuery query = pq.getParams(); @@ -209,6 +216,7 @@ public class LpkGiftCardService extends MybatisBaseService pq) { ResultBean rb = new ResultBean().fail(); LpkGiftCardQuery query = pq.getParams(); @@ -222,18 +230,18 @@ public class LpkGiftCardService extends MybatisBaseService page = PagerUtil.queryToPage(pq); IPage list = baseMapper.getGifCardsByCustomerSid(page, query.getCustomerSid()); - list.getRecords().forEach(s->{ - if(s.getLogo().equals("1")){ + list.getRecords().forEach(s -> { + if (s.getLogo().equals("1")) { //家庭卡 - List vo= getGifCardsBySid(s.getSid()).getData(); + List vo = getGifCardsBySid(s.getSid()).getData(); s.setList(vo); - }else if(s.getLogo().equals("2")){ + } else if (s.getLogo().equals("2")) { //亲情卡 - List vo= empCardGiftService.getGifCardsBySid(s.getSid()).getData(); + List vo = empCardGiftService.getGifCardsBySid(s.getSid()).getData(); s.setList(vo); } else if (s.getLogo().equals("3")) { //企业卡 - List list1=empCardService.getEmpCardsBySid(s.getSid()).getData(); + List list1 = empCardService.getEmpCardsBySid(s.getSid()).getData(); s.setList(list1); } }); @@ -241,41 +249,42 @@ public class LpkGiftCardService extends MybatisBaseService> getGifCardsBySid(String sid) { ResultBean rb = new ResultBean().fail(); AppletNewVo vo = baseMapper.getGifCardsBySid(sid); - List list=LpkGiftBagGoodsService.getGoodsByGiftSid(sid); - List list1=new ArrayList<>(); + List list = LpkGiftBagGoodsService.getGoodsByGiftSid(sid); + List list1 = new ArrayList<>(); List goodsVos = new ArrayList<>(); list.forEach(s -> { - LpkGifGoodsVo g=new LpkGifGoodsVo(); + LpkGifGoodsVo g = new LpkGifGoodsVo(); LpkReserveOrderGoods goods = lpkReserveOrderGoodsService.getReserveByCardSid(vo.getSid(), s.getGoodsSid()).getData(); - EmpCardGiftVo vo1=empCardGiftService.getEmpCardGoods(vo.getSid(),s.getGoodsSid()).getData(); + EmpCardGiftVo vo1 = empCardGiftService.getEmpCardGoods(vo.getSid(), s.getGoodsSid()).getData(); GoodsVo goodsVo = new GoodsVo(); if (vo.getState().equals("已过期")) { goodsVo.setLNum(0); } else if (!vo.isShowBtn()) { goodsVo.setLNum(0); } else { - if (null != goods && null!=vo1) { + if (null != goods && null != vo1) { if (goods.getGoodsNumber() != s.getGoodsNumber()) { - goodsVo.setLNum(s.getGoodsNumber() - goods.getGoodsNumber()-vo1.getGoodsNumber()); + goodsVo.setLNum(s.getGoodsNumber() - goods.getGoodsNumber() - vo1.getGoodsNumber()); } - } else if(null != vo1){ + } else if (null != vo1) { if (vo1.getGoodsNumber() != s.getGoodsNumber()) { - goodsVo.setLNum(s.getGoodsNumber()- vo1.getGoodsNumber()); + goodsVo.setLNum(s.getGoodsNumber() - vo1.getGoodsNumber()); } - }else if(null != goods) { + } else if (null != goods) { if (goods.getGoodsNumber() != s.getGoodsNumber()) { goodsVo.setLNum(s.getGoodsNumber() - goods.getGoodsNumber()); } - }else { + } else { goodsVo.setLNum(s.getGoodsNumber()); } - if(goodsVo.getLNum()!=0){ + if (goodsVo.getLNum() != 0) { // g.setContent("剩余"+goodsVo.getLNum()+"份/"+"共"+s.getGoodsNumber()+"份"); - g.setContent("共"+(int)goodsVo.getLNum()+"份"); - g.setRemarks(s.getWeight()+s.getSpecificationUnit()+"/"+s.getUnitName()); + g.setContent("共" + (int) goodsVo.getLNum() + "份"); + g.setRemarks(s.getWeight() + s.getSpecificationUnit() + "/" + s.getUnitName()); g.setGoodsName(s.getGoodsName()); list1.add(g); } @@ -284,6 +293,7 @@ public class LpkGiftCardService extends MybatisBaseService getGifCardBySid(String sid) { ResultBean rb = new ResultBean().fail(); AppletVo vo = baseMapper.getGifCardBySid(sid); @@ -291,7 +301,7 @@ public class LpkGiftCardService extends MybatisBaseService goodsVos = new ArrayList<>(); list.forEach(s -> { LpkReserveOrderGoods goods = lpkReserveOrderGoodsService.getReserveByCardSid(vo.getSid(), s.getGoodsSid()).getData(); - EmpCardGiftVo vo1=empCardGiftService.getEmpCardGoods(vo.getSid(),s.getGoodsSid()).getData(); + EmpCardGiftVo vo1 = empCardGiftService.getEmpCardGoods(vo.getSid(), s.getGoodsSid()).getData(); GoodsVo goodsVo = new GoodsVo(); goodsVo.setGoods(s.getGoodsName()); goodsVo.setNum(s.getGoodsNumber()); @@ -306,23 +316,23 @@ public class LpkGiftCardService extends MybatisBaseService empCardGift =empCardGiftService.list(new QueryWrapper().eq("empCardSid",vo.getSid()).eq("cardType","3").orderByDesc("createTime")); - empCardGift.forEach(s->{ - List list1= empCardGiftGoodsService.list(new QueryWrapper().eq("empCardGiftSid",s.getSid())); - list1.forEach(l->{ - LpkGoods goods=lpkGoodsService.getOne(new QueryWrapper().eq("sid",l.getGoodsSid())); - if(StringUtils.isBlank(s.getGoods())){ - s.setGoods(goods.getName()+":"+l.getGoodsNumber()+"份"); - }else{ - s.setGoods(s.getGoods()+" "+goods.getName()+":"+l.getGoodsNumber()+"份"); + List empCardGift = empCardGiftService.list(new QueryWrapper().eq("empCardSid", vo.getSid()).eq("cardType", "3").orderByDesc("createTime")); + empCardGift.forEach(s -> { + List list1 = empCardGiftGoodsService.list(new QueryWrapper().eq("empCardGiftSid", s.getSid())); + list1.forEach(l -> { + LpkGoods goods = lpkGoodsService.getOne(new QueryWrapper().eq("sid", l.getGoodsSid())); + if (StringUtils.isBlank(s.getGoods())) { + s.setGoods(goods.getName() + ":" + l.getGoodsNumber() + "份"); + } else { + s.setGoods(s.getGoods() + " " + goods.getName() + ":" + l.getGoodsNumber() + "份"); } }); }); @@ -595,7 +605,7 @@ public class LpkGiftCardService extends MybatisBaseService page = PagerUtil.queryToPage(pq); IPage pagging = baseMapper.selGiftCard(page, qw); pagging.getRecords().forEach(s -> { @@ -645,8 +655,8 @@ public class LpkGiftCardService extends MybatisBaseService page = PagerUtil.queryToPage(pq); IPage pagging = baseMapper.recordDetails(page, qw); PagerVo p = PagerUtil.pageToVo(pagging, null); - p.getRecords().forEach(s->{ - if(s.getIsEnable().equals("2")){ + p.getRecords().forEach(s -> { + if (s.getIsEnable().equals("2")) { s.setState("已作废"); } @@ -743,13 +753,13 @@ public class LpkGiftCardService extends MybatisBaseService isSaturAndSun(String cardSid) { ResultBean rb = new ResultBean().fail(); AppletVo appletVo = baseMapper.getGifCardBySid(cardSid); - Date date =new Date(); - SimpleDateFormat sdf1 =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String nowDate =sdf1.format(date); + Date date = new Date(); + SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String nowDate = sdf1.format(date); // AppletVo vo = getGifCardBySid(cardSid).getData(); // LocalDate now = DateUtil.parse(sdf1.format(DateUtil.parse(appletVo.getStart()))).toSqlDate().toLocalDate(); LocalDate now = DateUtil.parse(nowDate).toSqlDate().toLocalDate(); - LocalDate endD = DateUtil.parse(appletVo.getDateEnd()).toSqlDate().toLocalDate(); + LocalDate endD = DateUtil.parse(appletVo.getDateEnd()).toSqlDate().toLocalDate(); List weekMap = new ArrayList<>(); @@ -1294,7 +1304,7 @@ public class LpkGiftCardService extends MybatisBaseService records = new ArrayList<>(); //二维码 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); int cardSerNum = 0; + String serNum = baseMapper.selctMaxSerNumForExport(); //取当前最大流水号 + int serNumInt = 70000000; //默认为初始值-1 + if (StringUtils.isNotBlank(serNum)) { //如果当前礼品卡中存在流水号,则使用当前最大流水号进行计算 + serNumInt = Integer.parseInt(serNum); + } //生成卡包 if (!importReturn.isEmpty()) { for (int i = 0; i < importReturn.size(); i++) { @@ -1349,7 +1364,6 @@ public class LpkGiftCardService extends MybatisBaseService qw = new QueryWrapper<>(); qw.eq("1", "1"); - if(StringUtils.isNotBlank(query.getSerialNumber())){ - qw.like("a.serialNumber",query.getSerialNumber()); + if (StringUtils.isNotBlank(query.getSerialNumber())) { + qw.like("a.serialNumber", query.getSerialNumber()); } qw.groupBy("a.sid"); qw.orderByDesc("a.createTime"); // qw.groupBy("c.goodsSid"); - List statisticsExportVos=baseMapper.cardStatisticsListExport(qw); - statisticsExportVos.forEach(s->{ - if(s.getIsEnable().equals("2")){ + List statisticsExportVos = baseMapper.cardStatisticsListExport(qw); + statisticsExportVos.forEach(s -> { + if (s.getIsEnable().equals("2")) { s.setStateValue("已作废"); } }); String excelName = "提货卡信息.xlsx"; String fileNameURL = "1"; - response.setContentType( "application/vnd.ms-excel"); + response.setContentType("application/vnd.ms-excel"); response.setCharacterEncoding("utf8"); - response.setHeader("Content-disposition","attachment;filename="+ excelName ); + response.setHeader("Content-disposition", "attachment;filename=" + excelName); ServletOutputStream outputStream = null; try { WriteCellStyle headWriteCellStyle = new WriteCellStyle(); @@ -1609,76 +1626,80 @@ public class LpkGiftCardService extends MybatisBaseService pq) { - ResultBean rb=new ResultBean(); + ResultBean rb = new ResultBean(); LpkReserveOrderQuery query = pq.getParams(); QueryWrapper qw = new QueryWrapper<>(); qw.eq("1", "1"); - if(StringUtils.isNotBlank(query.getSerialNumber())){ - qw.like("a.serialNumber",query.getSerialNumber()); + if (StringUtils.isNotBlank(query.getSerialNumber())) { + qw.like("a.serialNumber", query.getSerialNumber()); } qw.groupBy("a.sid"); qw.orderByDesc("a.createTime"); // qw.groupBy("c.goodsSid"); IPage page = PagerUtil.queryToPage(pq); IPage pagging = baseMapper.cardStatisticsList(page, qw); - pagging.getRecords().forEach(s->{ - if(s.getIsEnable().equals("2")){ + pagging.getRecords().forEach(s -> { + if (s.getIsEnable().equals("2")) { s.setStateValue("已作废"); } }); return rb.success().setData(pagging); } - public ResultBean isEnable(String sid ) { - ResultBean rb=new ResultBean(); - LpkGiftCard card=baseMapper.selectOne(new QueryWrapper().eq("sid",sid)); + public ResultBean isEnable(String sid) { + ResultBean rb = new ResultBean(); + LpkGiftCard card = baseMapper.selectOne(new QueryWrapper().eq("sid", sid)); card.setIsEnable("2"); baseMapper.updateById(card); return rb.success().setData("成功"); } /** - *是否转赠 + * 是否转赠 + * * @param sid * @return */ - public ResultBean cardTransfer(String sid ) { - ResultBean rb=new ResultBean(); - LpkGiftCard card=baseMapper.selectOne(new QueryWrapper().eq("sid",sid)); + public ResultBean cardTransfer(String sid) { + ResultBean rb = new ResultBean(); + LpkGiftCard card = baseMapper.selectOne(new QueryWrapper().eq("sid", sid)); card.setIsTransfer("1"); card.setIsItInvalid("1");//失效 baseMapper.updateById(card); return rb.success().setData("成功"); } + /** - *共享家庭卡详情 + * 共享家庭卡详情 + * * @param sid * @return */ - public ResultBean cardShareDetail(String sid ) { - ResultBean rb=new ResultBean().fail(); - CardShareDetailVo vo=new CardShareDetailVo(); + public ResultBean cardShareDetail(String sid) { + ResultBean rb = new ResultBean().fail(); + CardShareDetailVo vo = new CardShareDetailVo(); vo.setCode("11111111111111111111"); - vo.setPeriodValidity(vo.getStartDate()+"~"+vo.getEndDate()); + vo.setPeriodValidity(vo.getStartDate() + "~" + vo.getEndDate()); vo.setCount("6种蔬菜"); - List list=new ArrayList<>(); - ShareUserVo vo1=new ShareUserVo(); + List list = new ArrayList<>(); + ShareUserVo vo1 = new ShareUserVo(); vo1.setName("测试一"); vo1.setIconUrl(""); - ShareUserVo vo2=new ShareUserVo(); + ShareUserVo vo2 = new ShareUserVo(); vo1.setName("测试二"); vo1.setIconUrl(""); list.add(vo1); list.add(vo2); - List v=new ArrayList<>(); - ShareRecord record=new ShareRecord(); + List v = new ArrayList<>(); + ShareRecord record = new ShareRecord(); record.setDate("2023-12-25 09:30"); record.setOperate("xx接受共享邀请"); - ShareRecord record1=new ShareRecord(); + ShareRecord record1 = new ShareRecord(); record1.setDate("2023-12-27 10:10"); record1.setOperate("xx接受共享邀请"); - ShareRecord record2=new ShareRecord(); + ShareRecord record2 = new ShareRecord(); record2.setDate("2023-12-28 12:30"); record2.setOperate("xx接受共享邀请"); v.add(record); @@ -1688,13 +1709,14 @@ public class LpkGiftCardService extends MybatisBaseService goods=new ArrayList<>(); - com.yxt.yyth.api.appletgiftbag.GiftBagGoods goodss=new com.yxt.yyth.api.appletgiftbag.GiftBagGoods(); + vo.setPeriodValidity(vo.getStartDate() + "~" + vo.getEndDate()); + List goods = new ArrayList<>(); + com.yxt.yyth.api.appletgiftbag.GiftBagGoods goodss = new com.yxt.yyth.api.appletgiftbag.GiftBagGoods(); goodss.setRemark("富含蛋白顾、钙、铁、硒等有益元素。"); goodss.setName("西瓜红密薯"); goodss.setUnitName("份"); @@ -1703,7 +1725,7 @@ public class LpkGiftCardService extends MybatisBaseService