diff --git a/ludu-module-ticketing/ludu-module-ticketing-biz/src/main/java/cn/iocoder/yudao/module/ticket/service/checkticket/CheckTicketServiceImpl.java b/ludu-module-ticketing/ludu-module-ticketing-biz/src/main/java/cn/iocoder/yudao/module/ticket/service/checkticket/CheckTicketServiceImpl.java index 39bafbbdd..46c0e880e 100644 --- a/ludu-module-ticketing/ludu-module-ticketing-biz/src/main/java/cn/iocoder/yudao/module/ticket/service/checkticket/CheckTicketServiceImpl.java +++ b/ludu-module-ticketing/ludu-module-ticketing-biz/src/main/java/cn/iocoder/yudao/module/ticket/service/checkticket/CheckTicketServiceImpl.java @@ -6,6 +6,7 @@ import cn.iocoder.yudao.module.ticket.controller.admin.checkticket.vo.vo.CheckTi import cn.iocoder.yudao.module.ticket.controller.admin.checkticket.vo.vo.CheckTicketSaveReqVO; import cn.iocoder.yudao.module.ticket.dal.dataobject.checkticket.CheckTicket; import cn.iocoder.yudao.module.ticket.dal.mongodb.checkticket.CheckTicketRepository; +import com.mongodb.MongoException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -118,11 +119,13 @@ public class CheckTicketServiceImpl implements CheckTicketService { @Override public String createCheckTicketByMongoDB(CheckTicketSaveReqDTO checkTicketSaveReqDTO) { CheckTicket checkTicket = BeanUtils.toBean(checkTicketSaveReqDTO, CheckTicket.class); - // TODO 插入失败会自动抛出异常,需要对异常进行处理 - // DuplicateKeyException:当插入的文档违反唯一索引约束时,会抛出此异常。 - // MongoWriteException:在写入操作中发生的其他错误,例如文档格式不正确或数据库连接问题。 - checkTicketRepository.insert(checkTicket); - return "添加成功"; + try { + // 执行插入操作 + checkTicketRepository.insert(checkTicket); + return "添加成功"; + } catch (MongoException e){ + return "Mongo数据库写入异常"; + } } } \ No newline at end of file diff --git a/ludu-module-ticketing/ludu-module-ticketing-biz/src/main/java/cn/iocoder/yudao/module/ticket/service/saledata/SaleDataServiceImpl.java b/ludu-module-ticketing/ludu-module-ticketing-biz/src/main/java/cn/iocoder/yudao/module/ticket/service/saledata/SaleDataServiceImpl.java index 88dde56f0..93fb42028 100644 --- a/ludu-module-ticketing/ludu-module-ticketing-biz/src/main/java/cn/iocoder/yudao/module/ticket/service/saledata/SaleDataServiceImpl.java +++ b/ludu-module-ticketing/ludu-module-ticketing-biz/src/main/java/cn/iocoder/yudao/module/ticket/service/saledata/SaleDataServiceImpl.java @@ -5,6 +5,7 @@ import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.module.ticket.api.saledata.dto.SaleDataSaveReqDTO; import cn.iocoder.yudao.module.ticket.dal.dataobject.saledata.SaleData; import cn.iocoder.yudao.module.ticket.dal.mongodb.saledata.SaleDataRepository; +import com.mongodb.MongoException; import kotlin.jvm.internal.Lambda; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -92,11 +93,11 @@ public class SaleDataServiceImpl implements SaleDataService { } @Override - public List> findCheckticketcountBytime(String startTime) { + public List> findCheckticketcountBytime(String startTime) { SimpleDateFormat inputFormat = new SimpleDateFormat("yyyyMMdd"); SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd"); Calendar calendar = Calendar.getInstance(); - Date date1= null; + Date date1 = null; try { date1 = inputFormat.parse(startTime); } catch (ParseException e) { @@ -104,11 +105,11 @@ public class SaleDataServiceImpl implements SaleDataService { } calendar.setTime(date1); calendar.add(Calendar.DAY_OF_YEAR, -9); - List>map = new ArrayList<>(); - while (!calendar.getTime().after(date1)){ - Mapmap1= new HashMap<>(); + List> map = new ArrayList<>(); + while (!calendar.getTime().after(date1)) { + Map map1 = new HashMap<>(); String date = inputFormat.format(calendar.getTime()); - map1.put("date",outputFormat.format(calendar.getTime())); + map1.put("date", outputFormat.format(calendar.getTime())); map1.put("count", String.valueOf(this.countBySddate(date))); map.add(map1); calendar.add(Calendar.DAY_OF_YEAR, 1); @@ -120,14 +121,14 @@ public class SaleDataServiceImpl implements SaleDataService { public List> findByGender() { List> allByCertificateno = saleDataMapper.findByGender(); List> map = new ArrayList<>(); - Mapmap1=new HashMap<>(); - Mapmap2=new HashMap<>(); - map1.put("sex","女生" ); - map2.put("sex","男生" ); + Map map1 = new HashMap<>(); + Map map2 = new HashMap<>(); + map1.put("sex", "女生"); + map2.put("sex", "男生"); for (Map stringMap : allByCertificateno) { - if("female".equals(stringMap.get("gender"))){ - map1.put("count",stringMap.get("count")); - }else if ("male".equals(stringMap.get("gender"))){ + if ("female".equals(stringMap.get("gender"))) { + map1.put("count", stringMap.get("count")); + } else if ("male".equals(stringMap.get("gender"))) { map2.put("count", stringMap.get("count")); } } @@ -139,33 +140,33 @@ public class SaleDataServiceImpl implements SaleDataService { @Override public List> findByAge() { List> ageRangeList = saleDataMapper.findByAge(); - List>map=new ArrayList<>(); - Mapmap1=new LinkedHashMap<>(); - Mapmap2=new LinkedHashMap<>(); - Mapmap3=new LinkedHashMap<>(); - Mapmap4=new LinkedHashMap<>(); - Mapmap5=new LinkedHashMap<>(); - Mapmap6=new LinkedHashMap<>(); + List> map = new ArrayList<>(); + Map map1 = new LinkedHashMap<>(); + Map map2 = new LinkedHashMap<>(); + Map map3 = new LinkedHashMap<>(); + Map map4 = new LinkedHashMap<>(); + Map map5 = new LinkedHashMap<>(); + Map map6 = new LinkedHashMap<>(); - map1.put("age","20以下"); // (~, 20) - map2.put("age","20-30"); // [20, 30) - map3.put("age","30-40"); // [30, 40) - map4.put("age","40-50"); // [40, 50) - map5.put("age","50-60"); // [50, 60) - map6.put("age","60以上"); // [60, ~) + map1.put("age", "20以下"); // (~, 20) + map2.put("age", "20-30"); // [20, 30) + map3.put("age", "30-40"); // [30, 40) + map4.put("age", "40-50"); // [40, 50) + map5.put("age", "50-60"); // [50, 60) + map6.put("age", "60以上"); // [60, ~) for (Map stringStringMap : ageRangeList) { - if ("one".equals(stringStringMap.get("age_group"))){ - map1.put("count",stringStringMap.get("count")); - }else if("two".equals(stringStringMap.get("age_group"))){ - map2.put("count",stringStringMap.get("count")); - }else if("three".equals(stringStringMap.get("age_group"))){ - map3.put("count",stringStringMap.get("count")); - }else if("four".equals(stringStringMap.get("age_group"))){ - map4.put("count",stringStringMap.get("count")); - }else if("five".equals(stringStringMap.get("age_group"))){ - map5.put("count",stringStringMap.get("count")); - }else if("six".equals(stringStringMap.get("age_group"))){ - map6.put("count",stringStringMap.get("count")); + if ("one".equals(stringStringMap.get("age_group"))) { + map1.put("count", stringStringMap.get("count")); + } else if ("two".equals(stringStringMap.get("age_group"))) { + map2.put("count", stringStringMap.get("count")); + } else if ("three".equals(stringStringMap.get("age_group"))) { + map3.put("count", stringStringMap.get("count")); + } else if ("four".equals(stringStringMap.get("age_group"))) { + map4.put("count", stringStringMap.get("count")); + } else if ("five".equals(stringStringMap.get("age_group"))) { + map5.put("count", stringStringMap.get("count")); + } else if ("six".equals(stringStringMap.get("age_group"))) { + map6.put("count", stringStringMap.get("count")); } } map.add(map1); @@ -189,6 +190,7 @@ public class SaleDataServiceImpl implements SaleDataService { wrapperX.between(SaleDataDO::getSddate, start, end).select(SaleDataDO::getCertificateno, SaleDataDO::getAmount); return saleDataMapper.selectList(wrapperX); } + @Override public List findEventsThisYear() { DateTimeFormatter date = DateTimeFormatter.ofPattern("yyyyMMdd"); @@ -242,15 +244,14 @@ public class SaleDataServiceImpl implements SaleDataService { } - @Override public List> findBySaleMethod() { List saleDataList = saleDataMapper.selectList(new LambdaQueryWrapperX().select(SaleDataDO::getTransactiontypeno)); int[] saleMethodCounts = new int[5]; - Mapmap=new LinkedHashMap<>(); + Map map = new LinkedHashMap<>(); for (SaleDataDO saleData : saleDataList) { String transactiontypeno = saleData.getTransactiontypeno(); - switch (transactiontypeno){ + switch (transactiontypeno) { case "SD01": saleMethodCounts[0]++; break; @@ -275,11 +276,11 @@ public class SaleDataServiceImpl implements SaleDataService { map.put("特殊退票", String.valueOf(saleMethodCounts[2])); map.put("预约单", String.valueOf(saleMethodCounts[3])); map.put("快速购票", String.valueOf(saleMethodCounts[4])); - List>mapList=new ArrayList<>(); + List> mapList = new ArrayList<>(); for (Map.Entry stringStringEntry : map.entrySet()) { - Map map1=new LinkedHashMap<>(); - map1.put("transactiontypeno",stringStringEntry.getKey()); - map1.put("count",stringStringEntry.getValue()); + Map map1 = new LinkedHashMap<>(); + map1.put("transactiontypeno", stringStringEntry.getKey()); + map1.put("count", stringStringEntry.getValue()); mapList.add(map1); } return mapList; @@ -301,7 +302,7 @@ public class SaleDataServiceImpl implements SaleDataService { for (SaleDataDO saleData : saleDataList) { String sddate = saleData.getSddate(); String substring = sddate.substring(6, 8); - switch (substring){ + switch (substring) { case "01": Counts[0]++; break; @@ -321,16 +322,16 @@ public class SaleDataServiceImpl implements SaleDataService { break; } } - List>mapList=new ArrayList<>(); - Map map=new LinkedHashMap<>(); + List> mapList = new ArrayList<>(); + Map map = new LinkedHashMap<>(); map.put("第一天", String.valueOf(Counts[0])); map.put("第二天", String.valueOf(Counts[1])); map.put("第三天", String.valueOf(Counts[2])); map.put("第四天", String.valueOf(Counts[3])); map.put("第五天", String.valueOf(Counts[4])); for (Map.Entry stringStringEntry : map.entrySet()) { - Map map1=new LinkedHashMap<>(); - map1.put("day", stringStringEntry.getKey()); + Map map1 = new LinkedHashMap<>(); + map1.put("day", stringStringEntry.getKey()); map1.put("count", stringStringEntry.getValue()); mapList.add(map1); } @@ -353,7 +354,7 @@ public class SaleDataServiceImpl implements SaleDataService { for (SaleDataDO saleData : saleDataList) { String sddate = saleData.getSddate(); String substring = sddate.substring(6, 8); - switch (substring){ + switch (substring) { case "01": Counts[0]++; break; @@ -379,8 +380,8 @@ public class SaleDataServiceImpl implements SaleDataService { break; } } - List>mapList=new ArrayList<>(); - Map map=new LinkedHashMap<>(); + List> mapList = new ArrayList<>(); + Map map = new LinkedHashMap<>(); map.put("第一天", String.valueOf(Counts[0])); map.put("第二天", String.valueOf(Counts[1])); map.put("第三天", String.valueOf(Counts[2])); @@ -389,9 +390,9 @@ public class SaleDataServiceImpl implements SaleDataService { map.put("第六天", String.valueOf(Counts[5])); map.put("第七天", String.valueOf(Counts[6])); for (Map.Entry stringStringEntry : map.entrySet()) { - Map map1=new LinkedHashMap<>(); - map1.put("day",stringStringEntry.getKey()); - map1.put("count",stringStringEntry.getValue()); + Map map1 = new LinkedHashMap<>(); + map1.put("day", stringStringEntry.getKey()); + map1.put("count", stringStringEntry.getValue()); mapList.add(map1); } return mapList; @@ -411,23 +412,23 @@ public class SaleDataServiceImpl implements SaleDataService { assert date1 != null; calendar.setTime(date1); calendar.add(Calendar.DAY_OF_YEAR, -29); - Mapmap = new LinkedHashMap<>(); + Map map = new LinkedHashMap<>(); int count = 0; - while (!calendar.getTime().after(date1)){ + while (!calendar.getTime().after(date1)) { String date = inputFormat.format(calendar.getTime()); long i = this.countBySddate(date); - count+=i; + count += i; calendar.add(Calendar.DAY_OF_YEAR, 1); } - return String.valueOf(count/30); + return String.valueOf(count / 30); } @Override public BigDecimal findyearJun(List list) { - BigDecimal total=new BigDecimal(0); + BigDecimal total = new BigDecimal(0); for (SaleDataDO saleData : list) { BigDecimal amount = saleData.getAmount(); - total=total.add(amount); + total = total.add(amount); } return total; } @@ -435,8 +436,13 @@ public class SaleDataServiceImpl implements SaleDataService { @Override public String createSaleDataByMongoDB(SaleDataSaveReqDTO saleDataSaveReqDTO) { SaleData saleData = BeanUtils.toBean(saleDataSaveReqDTO, SaleData.class); - saleDataRepository.insert(saleData); - return "添加成功"; + try { + saleDataRepository.insert(saleData); + return "添加成功"; + } catch (MongoException e) { + return "Mongo数据库写入异常"; + } + }