From 49f08d1191b23bb6b08cfee02c7f2fc6472de4bb Mon Sep 17 00:00:00 2001 From: xupei Date: Wed, 6 Nov 2024 17:51:51 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=91=98=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E4=BC=98=E5=8C=96-1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ConvenientInquiryController.java | 5 +++-- .../ai/da/mapper/primary/TrialOrderMapper.java | 3 --- .../da/model/dto/UserDesignStatisticDTO.java | 2 ++ .../da/service/ConvenientInquiryService.java | 2 +- .../impl/ConvenientInquiryServiceImpl.java | 18 ++++++++++++++++-- .../mapper/primary/TrialOrderMapper.xml | 9 --------- 6 files changed, 22 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/ai/da/controller/ConvenientInquiryController.java b/src/main/java/com/ai/da/controller/ConvenientInquiryController.java index 25010c6d..ecc8fdd1 100644 --- a/src/main/java/com/ai/da/controller/ConvenientInquiryController.java +++ b/src/main/java/com/ai/da/controller/ConvenientInquiryController.java @@ -122,8 +122,9 @@ public class ConvenientInquiryController { @ApiOperation("试用用户到正式用户的转化率") @GetMapping("/conversionRate") - public Response> conversionRate() { - return Response.success(convenientInquiryService.conversionRate()); + public Response> conversionRate(@ApiParam(value = "startTime") @RequestParam(required = false) @Nullable String startTime, + @ApiParam(value = "endTime") @RequestParam(required = false) @Nullable String endTime) { + return Response.success(convenientInquiryService.conversionRate(startTime, endTime)); } @ApiOperation("试用用户国家/城市分布") diff --git a/src/main/java/com/ai/da/mapper/primary/TrialOrderMapper.java b/src/main/java/com/ai/da/mapper/primary/TrialOrderMapper.java index f39f8dee..d1de236e 100644 --- a/src/main/java/com/ai/da/mapper/primary/TrialOrderMapper.java +++ b/src/main/java/com/ai/da/mapper/primary/TrialOrderMapper.java @@ -16,7 +16,4 @@ public interface TrialOrderMapper extends CommonMapper { Map countOfficialUser(); - List selectIdsByEmails(List emails); - - } diff --git a/src/main/java/com/ai/da/model/dto/UserDesignStatisticDTO.java b/src/main/java/com/ai/da/model/dto/UserDesignStatisticDTO.java index b0713077..0b087213 100644 --- a/src/main/java/com/ai/da/model/dto/UserDesignStatisticDTO.java +++ b/src/main/java/com/ai/da/model/dto/UserDesignStatisticDTO.java @@ -15,6 +15,8 @@ public class UserDesignStatisticDTO { private String isTrial; + private String credits; + private String trialOrderId; private String title; diff --git a/src/main/java/com/ai/da/service/ConvenientInquiryService.java b/src/main/java/com/ai/da/service/ConvenientInquiryService.java index 29b4a551..fa4210f4 100644 --- a/src/main/java/com/ai/da/service/ConvenientInquiryService.java +++ b/src/main/java/com/ai/da/service/ConvenientInquiryService.java @@ -32,7 +32,7 @@ public interface ConvenientInquiryService extends IService { Map> getActiveUserFunc(String startTime, String endTime, List ids); - Map conversionRate(); + Map conversionRate(String startTime, String endTime); Map> trialUserCountry(String startTime, String endTime); diff --git a/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java b/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java index 1ce25b35..819dc95d 100644 --- a/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java @@ -392,9 +392,15 @@ public class ConvenientInquiryServiceImpl extends ServiceImpl conversionRate() { + public Map conversionRate(String startTime, String endTime) { QueryWrapper queryWrapper = new QueryWrapper<>(); + if (!StringUtils.isNullOrEmpty(startTime)){ + queryWrapper.gt("create_time", startTime); + } + if (!StringUtils.isNullOrEmpty(endTime)){ + queryWrapper.lt("create_time", endTime); + } // 获取试用用户总数 queryWrapper.select("count(distinct email) as count"); @@ -403,7 +409,15 @@ public class ConvenientInquiryServiceImpl extends ServiceImpl paidCustomerEmail = accountService.getPaidCustomerEmail(); - List paidTrialUsers = trialOrderMapper.selectIdsByEmails(paidCustomerEmail); + QueryWrapper qw = new QueryWrapper<>(); + if (!StringUtils.isNullOrEmpty(startTime)){ + qw.gt("create_time", startTime); + } + if (!StringUtils.isNullOrEmpty(endTime)){ + qw.lt("create_time", endTime); + } + qw.in("email", paidCustomerEmail); + List paidTrialUsers = trialOrderMapper.selectList(qw); // Map officialMaps = trialOrderMapper.countOfficialUser(); // Long trialToOfficial = officialMaps.get("count"); diff --git a/src/main/resources/mapper/primary/TrialOrderMapper.xml b/src/main/resources/mapper/primary/TrialOrderMapper.xml index 01574ca3..827aa65d 100644 --- a/src/main/resources/mapper/primary/TrialOrderMapper.xml +++ b/src/main/resources/mapper/primary/TrialOrderMapper.xml @@ -24,13 +24,4 @@ ON a.user_email = b.email - -