Browse Source

兑换码

zhangkaikai 1 year ago
parent
commit
db57b9d882

+ 8 - 22
mp-admin/src/main/java/com/qs/mp/web/controller/api/admin/CdKeyMgrController.java

@@ -8,6 +8,7 @@ import com.qs.mp.admin.domain.CdKeyGroupGoods;
 import com.qs.mp.admin.domain.excel.CdKeyOrderExcel;
 import com.qs.mp.admin.domain.excel.CdKeyOrderExcel;
 import com.qs.mp.admin.domain.param.CdKeyActivateParam;
 import com.qs.mp.admin.domain.param.CdKeyActivateParam;
 import com.qs.mp.admin.domain.param.CdKeyCreateParam;
 import com.qs.mp.admin.domain.param.CdKeyCreateParam;
+import com.qs.mp.admin.domain.param.CdKeyExportParam;
 import com.qs.mp.admin.domain.param.CdKeyQueryParam;
 import com.qs.mp.admin.domain.param.CdKeyQueryParam;
 import com.qs.mp.admin.domain.vo.CdKeyExchangeVO;
 import com.qs.mp.admin.domain.vo.CdKeyExchangeVO;
 import com.qs.mp.admin.domain.vo.CdKeyGroupListVO;
 import com.qs.mp.admin.domain.vo.CdKeyGroupListVO;
@@ -19,8 +20,6 @@ import com.qs.mp.common.core.domain.AjaxResult;
 import com.qs.mp.common.core.page.TableDataInfo;
 import com.qs.mp.common.core.page.TableDataInfo;
 import com.qs.mp.common.enums.CdKeyGroupStatusEnum;
 import com.qs.mp.common.enums.CdKeyGroupStatusEnum;
 import com.qs.mp.common.enums.CdKeyStatusEnum;
 import com.qs.mp.common.enums.CdKeyStatusEnum;
-import com.qs.mp.common.enums.ValidityPeriodEnum;
-import com.qs.mp.common.utils.DateUtils;
 import com.qs.mp.common.utils.StringUtils;
 import com.qs.mp.common.utils.StringUtils;
 import com.qs.mp.common.utils.bean.BeanUtils;
 import com.qs.mp.common.utils.bean.BeanUtils;
 import com.qs.mp.utils.ExcelUtil;
 import com.qs.mp.utils.ExcelUtil;
@@ -33,7 +32,6 @@ import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 
 
 import java.util.*;
 import java.util.*;
-import java.util.Arrays;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
 
 
 /**
 /**
@@ -167,27 +165,15 @@ public class CdKeyMgrController extends BaseController {
     @ApiOperation("导出兑换码订单")
     @ApiOperation("导出兑换码订单")
     @PreAuthorize("@ss.hasPermi('business:cdKey:export')")
     @PreAuthorize("@ss.hasPermi('business:cdKey:export')")
     @PostMapping("/export")
     @PostMapping("/export")
-    public AjaxResult export(@RequestBody CdKeyQueryParam  param) {
-        Date activeTimeStart = param.getActiveTimeStart();
-        Date activeTimeEnd = param.getActiveTimeEnd();
-        if (activeTimeStart == null || activeTimeEnd == null) {
-            return AjaxResult.error("导出订单必须设置激活时间范围");
-        }
-
-        List<CdKeyGroupListVO> list = cdKeyService.listCdKeyVO(new QueryWrapper<CdKeyGroup>()
-                .between("t2.activation_time", activeTimeStart, activeTimeEnd)
-                .between(null != param.getMinCdKeyNum() && null != param.getMaxCdKeyNum(), "t2.quantity", param.getMinCdKeyNum(), param.getMaxCdKeyNum())
-                .eq(null != param.getChannelId(), "t2.channel_id", param.getChannelId())
-                .eq(null != param.getStatus(), "t2.status", param.getStatus())
-        );
-
+    public AjaxResult export(@RequestBody CdKeyExportParam param) {
+        List<CdKey> cdKeyExportList = cdKeyService.listByIds(param.getGroupIdList());
         List<CdKeyOrderExcel> excelList = new ArrayList<>();
         List<CdKeyOrderExcel> excelList = new ArrayList<>();
-        list.forEach(cdKeyGroupVO -> {
+        cdKeyExportList.forEach(cdKey -> {
             CdKeyOrderExcel cdKeyOrderExcel = new CdKeyOrderExcel();
             CdKeyOrderExcel cdKeyOrderExcel = new CdKeyOrderExcel();
-            cdKeyOrderExcel.setSiteName(cdKeyGroupVO.getSiteName());
-            cdKeyOrderExcel.setCdKey(cdKeyGroupVO.getCdKey());
-            cdKeyOrderExcel.setGoodsName(cdKeyGroupVO.getTitle());
-            cdKeyOrderExcel.setPicUrl(cdKeyGroupVO.getPicUrl());
+            cdKeyOrderExcel.setCdKey(cdKey.getCdKey());
+            CdKeyGroupGoods groupGoods = cdKeyGroupGoodsService.getOne(new QueryWrapper<CdKeyGroupGoods>().eq("ref_id", cdKey.getRefId()));
+            cdKeyOrderExcel.setGoodsName(groupGoods.getTitle());
+            cdKeyOrderExcel.setPicUrl(cdKey.getPicUrl());
             excelList.add(cdKeyOrderExcel);
             excelList.add(cdKeyOrderExcel);
         });
         });
 
 

+ 19 - 0
mp-service/src/main/java/com/qs/mp/admin/domain/param/CdKeyExportParam.java

@@ -0,0 +1,19 @@
+package com.qs.mp.admin.domain.param;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author zhangkaikai
+ * @create 2023-05-18 3:52 PM
+ **/
+@ApiModel("兑换码导出参数")
+@Data
+public class CdKeyExportParam {
+
+    @ApiModelProperty("兑换码组id")
+    List<String> groupIdList;
+}

+ 3 - 0
mp-service/src/main/java/com/qs/mp/admin/domain/vo/CdKeyGroupListVO.java

@@ -1,5 +1,7 @@
 package com.qs.mp.admin.domain.vo;
 package com.qs.mp.admin.domain.vo;
 
 
+import com.alibaba.fastjson.annotation.JSONField;
+import com.alibaba.fastjson.serializer.SerializerFeature;
 import com.qs.mp.common.enums.CdKeyGroupStatusEnum;
 import com.qs.mp.common.enums.CdKeyGroupStatusEnum;
 import lombok.Data;
 import lombok.Data;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModel;
@@ -32,6 +34,7 @@ public class CdKeyGroupListVO {
     private Date activeTime;
     private Date activeTime;
 
 
     @ApiModelProperty("状态,待生成waiting/未激活nonactivated/已激活activated/已失效invalid")
     @ApiModelProperty("状态,待生成waiting/未激活nonactivated/已激活activated/已失效invalid")
+    @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
     private CdKeyGroupStatusEnum status;
     private CdKeyGroupStatusEnum status;
 
 
     @ApiModelProperty("兑换码")
     @ApiModelProperty("兑换码")

+ 1 - 1
mp-service/src/main/java/com/qs/mp/framework/service/impl/AsyncTaskServiceImpl.java

@@ -308,7 +308,7 @@ public class AsyncTaskServiceImpl extends ServiceImpl<AsyncTaskMapper, AsyncTask
     public void cdKeyGenerate(AsyncTask asyncTask) {
     public void cdKeyGenerate(AsyncTask asyncTask) {
         String groupId = asyncTask.getBizId();
         String groupId = asyncTask.getBizId();
         CdKeyGroup cdKeyGroup = cdKeyGroupService.getById(groupId);
         CdKeyGroup cdKeyGroup = cdKeyGroupService.getById(groupId);
-        if (!CdKeyGroupStatusEnum.WAITING.getValue().equals(cdKeyGroup.getStatus())) {
+        if (!CdKeyGroupStatusEnum.WAITING.equals(cdKeyGroup.getStatus())) {
             LogUtil.error(logger, "收到兑换码生成任务,码组状态不是待生成,忽略任务。groupId=" + groupId);
             LogUtil.error(logger, "收到兑换码生成任务,码组状态不是待生成,忽略任务。groupId=" + groupId);
             return;
             return;
         }
         }