From c927b4d36b9e04a8b2ba08c8789f5277aa1c277d Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期四, 27 七月 2023 21:01:15 +0800
Subject: [PATCH] bug

---
 ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml                                    |    2 
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/scheduler/OrderScheduler.java                        |    2 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java   |    4 
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppOrderController.java           |    3 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java                        |    4 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditPageVo.java                |    5 
 ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/poi/ExcelUtil.java                  |   80 +++++----------
 ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/utils/OBSUploadUtils.java                              |    6 +
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/AppPlaceOrderDto.java                     |    2 
 ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java                                         |   32 +++--
 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/MerActivityPageVo.java                     |    4 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/AppMemberBrowseDto.java                 |   25 +++++
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java                 |    4 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java |    2 
 ruoyi-modules/ruoyi-file/pom.xml                                                                             |   11 +
 ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/ActivityCodeServiceImpl.java                   |   17 ++-
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/AppPlaceActivityDto.java                  |    6 +
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java         |   25 ++++-
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java     |    1 
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java             |   30 ++++-
 ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml                                 |    5 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java     |    2 
 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/RuoYiMemberApplication.java                        |    4 
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/RuoYiOrderApplication.java                           |    4 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/RuoYiShopApplication.java                              |    4 
 25 files changed, 173 insertions(+), 111 deletions(-)

diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/poi/ExcelUtil.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/poi/ExcelUtil.java
index 3daaafa..ac91a44 100644
--- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/poi/ExcelUtil.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/poi/ExcelUtil.java
@@ -1,56 +1,5 @@
 package com.ruoyi.common.core.utils.poi;
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.lang.reflect.ParameterizedType;
-import java.math.BigDecimal;
-import java.text.DecimalFormat;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Comparator;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.stream.Collectors;
-import javax.servlet.http.HttpServletResponse;
-import org.apache.commons.lang3.ArrayUtils;
-import org.apache.commons.lang3.RegExUtils;
-import org.apache.commons.lang3.reflect.FieldUtils;
-import org.apache.poi.ss.usermodel.BorderStyle;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.CellStyle;
-import org.apache.poi.ss.usermodel.CellType;
-import org.apache.poi.ss.usermodel.ClientAnchor;
-import org.apache.poi.ss.usermodel.DataValidation;
-import org.apache.poi.ss.usermodel.DataValidationConstraint;
-import org.apache.poi.ss.usermodel.DataValidationHelper;
-import org.apache.poi.ss.usermodel.DateUtil;
-import org.apache.poi.ss.usermodel.Drawing;
-import org.apache.poi.ss.usermodel.FillPatternType;
-import org.apache.poi.ss.usermodel.Font;
-import org.apache.poi.ss.usermodel.HorizontalAlignment;
-import org.apache.poi.ss.usermodel.IndexedColors;
-import org.apache.poi.ss.usermodel.Name;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.VerticalAlignment;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.ss.usermodel.WorkbookFactory;
-import org.apache.poi.ss.util.CellRangeAddress;
-import org.apache.poi.ss.util.CellRangeAddressList;
-import org.apache.poi.util.IOUtils;
-import org.apache.poi.xssf.streaming.SXSSFWorkbook;
-import org.apache.poi.xssf.usermodel.XSSFClientAnchor;
-import org.apache.poi.xssf.usermodel.XSSFDataValidation;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 import com.ruoyi.common.core.annotation.Excel;
 import com.ruoyi.common.core.annotation.Excel.ColumnType;
 import com.ruoyi.common.core.annotation.Excel.Type;
@@ -61,6 +10,31 @@
 import com.ruoyi.common.core.utils.file.FileTypeUtils;
 import com.ruoyi.common.core.utils.file.ImageUtils;
 import com.ruoyi.common.core.utils.reflect.ReflectUtils;
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.lang3.RegExUtils;
+import org.apache.commons.lang3.reflect.FieldUtils;
+import org.apache.poi.ss.usermodel.*;
+import org.apache.poi.ss.util.CellRangeAddress;
+import org.apache.poi.ss.util.CellRangeAddressList;
+import org.apache.poi.util.IOUtils;
+import org.apache.poi.xssf.streaming.SXSSFWorkbook;
+import org.apache.poi.xssf.usermodel.XSSFClientAnchor;
+import org.apache.poi.xssf.usermodel.XSSFDataValidation;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.InputStream;
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+import java.lang.reflect.ParameterizedType;
+import java.math.BigDecimal;
+import java.text.DecimalFormat;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * Excel相关处理
@@ -456,7 +430,7 @@
     public void exportExcel(HttpServletResponse response, List<T> list, String sheetName, String title)
     {
         response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
-        response.setCharacterEncoding("utf-8");
+        response.setCharacterEncoding("UTF-8");
         this.init(list, sheetName, title, Type.EXPORT);
         exportExcel(response);
     }
@@ -482,7 +456,7 @@
     public void importTemplateExcel(HttpServletResponse response, String sheetName, String title)
     {
         response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
-        response.setCharacterEncoding("utf-8");
+        response.setCharacterEncoding("UTF-8");
         this.init(null, sheetName, title, Type.IMPORT);
         exportExcel(response);
     }
diff --git a/ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java b/ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java
index 10af03d..c92d2d1 100644
--- a/ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java
+++ b/ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java
@@ -1,14 +1,5 @@
 package com.ruoyi.gateway.filter;
 
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cloud.gateway.filter.GatewayFilterChain;
-import org.springframework.cloud.gateway.filter.GlobalFilter;
-import org.springframework.core.Ordered;
-import org.springframework.http.server.reactive.ServerHttpRequest;
-import org.springframework.stereotype.Component;
-import org.springframework.web.server.ServerWebExchange;
 import com.ruoyi.common.core.constant.CacheConstants;
 import com.ruoyi.common.core.constant.HttpStatus;
 import com.ruoyi.common.core.constant.SecurityConstants;
@@ -19,6 +10,15 @@
 import com.ruoyi.common.redis.service.RedisService;
 import com.ruoyi.gateway.config.properties.IgnoreWhiteProperties;
 import io.jsonwebtoken.Claims;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cloud.gateway.filter.GatewayFilterChain;
+import org.springframework.cloud.gateway.filter.GlobalFilter;
+import org.springframework.core.Ordered;
+import org.springframework.http.server.reactive.ServerHttpRequest;
+import org.springframework.stereotype.Component;
+import org.springframework.web.server.ServerWebExchange;
 import reactor.core.publisher.Mono;
 
 import javax.annotation.Resource;
@@ -49,18 +49,26 @@
 
         String url = request.getURI().getPath();
         log.info("requestUrl---"+url);
+        String token = getToken(request);
+        Claims claims = null;
+        String userid = null;
+        if(StringUtils.isNotBlank(token)){
+            claims = JwtUtils.parseToken(token);
+            if(claims!=null){
+                userid = JwtUtils.getUserId(claims);
+                addHeader(mutate, SecurityConstants.DETAILS_USER_ID, userid);
+            }
+        }
         // 跳过不需要验证的路径
         if (StringUtils.matches(url, ignoreWhite.getWhites()))
         {
             return chain.filter(exchange);
         }
-        String token = getToken(request);
         log.info("requestToken---"+token);
         if (StringUtils.isEmpty(token))
         {
             return unauthorizedResponse(exchange, "需要先登录才能使用该功能");
         }
-        Claims claims = JwtUtils.parseToken(token);
         if (claims == null)
         {
             return unauthorizedResponse(exchange, "需要先登录才能使用该功能!");
@@ -71,13 +79,11 @@
         {
             return unauthorizedResponse(exchange, "登录状态已过期");
         }
-        String userid = JwtUtils.getUserId(claims);
         String username = JwtUtils.getUserName(claims);
         if (StringUtils.isEmpty(userid) || StringUtils.isEmpty(username))
         {
             return unauthorizedResponse(exchange, "登录验证失败");
         }
-
         // 设置用户信息到请求
         addHeader(mutate, SecurityConstants.USER_KEY, userkey);
         addHeader(mutate, SecurityConstants.DETAILS_USER_ID, userid);
diff --git a/ruoyi-modules/ruoyi-file/pom.xml b/ruoyi-modules/ruoyi-file/pom.xml
index a8089bf..3333cc2 100644
--- a/ruoyi-modules/ruoyi-file/pom.xml
+++ b/ruoyi-modules/ruoyi-file/pom.xml
@@ -90,14 +90,17 @@
 
         <dependency>
             <groupId>cn.hutool</groupId>
-            <artifactId>hutool-core</artifactId>
+            <artifactId>hutool-all</artifactId>
             <version>5.8.20</version>
         </dependency>
+
+
         <dependency>
-            <groupId>cn.hutool</groupId>
-            <artifactId>hutool-extra</artifactId>
-            <version>5.8.20</version>
+            <groupId>com.google.zxing</groupId>
+            <artifactId>core</artifactId>
+            <version>3.5.1</version>
         </dependency>
+
     </dependencies>
 
     <build>
diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/ActivityCodeServiceImpl.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/ActivityCodeServiceImpl.java
index e242d8f..009a019 100644
--- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/ActivityCodeServiceImpl.java
+++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/ActivityCodeServiceImpl.java
@@ -3,6 +3,7 @@
 import cn.binarywang.wx.miniapp.api.WxMaQrcodeService;
 import cn.binarywang.wx.miniapp.api.WxMaService;
 import cn.hutool.core.img.ImgUtil;
+import cn.hutool.extra.qrcode.QrCodeUtil;
 import com.ruoyi.file.utils.OBSUploadUtils;
 import me.chanjar.weixin.common.error.WxErrorException;
 import org.springframework.stereotype.Service;
@@ -58,15 +59,17 @@
     @Override
     public String createActivityCode(String activityId,String backImageUrl) throws WxErrorException, FileNotFoundException {
 
-        WxMaQrcodeService wxMaQrcodeService = wxMaService.getQrcodeService();
-        String scene = activityId;
-        String page = "";
-        String filePath = "";
+
         String fileUrl = null;
-        File file = wxMaQrcodeService.createWxaCodeUnlimit(scene,page,filePath);
+        File qrCodeFile = new File("/home/image/qrcode.png");
+        // 二维码内容
+        String text = ""+activityId;
+        // 生成二维码
+        QrCodeUtil.generate(text, 100, 100, qrCodeFile);
+        File backFile ;
         ByteArrayOutputStream out = new ByteArrayOutputStream();
-        InputStream codeStream = new FileInputStream(file);
-        InputStream backStream = new FileInputStream(file);
+        InputStream codeStream = new FileInputStream(qrCodeFile);
+        InputStream backStream = new FileInputStream(qrCodeFile);
         // 将图片合成在一起
         ImgUtil.pressImage(
                 backStream, // 主图片
diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/utils/OBSUploadUtils.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/utils/OBSUploadUtils.java
index 7803eab..fc18bc6 100644
--- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/utils/OBSUploadUtils.java
+++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/utils/OBSUploadUtils.java
@@ -133,4 +133,10 @@
         }
         return result.getResponse().getErrorResponseAsString();
     }
+
+    public static void getOSSFile(String key) throws Exception {
+
+
+    }
+
 }
diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/MerActivityPageVo.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/MerActivityPageVo.java
index 5aaed94..549ca26 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/MerActivityPageVo.java
+++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/MerActivityPageVo.java
@@ -23,11 +23,11 @@
     private String activityName;
 
     @ApiModelProperty(value = "活动开始时间")
-    @JsonFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy.MM.dd")
     private Date activityStartTime;
 
     @ApiModelProperty(value = "活动结束时间")
-    @JsonFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy.MM.dd")
     private Date activityEndTime;
 
     @ApiModelProperty(value = "活动状态")
diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml
index cc54bd2..2a9b836 100644
--- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml
+++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml
@@ -274,7 +274,7 @@
         INNER JOIN t_goods tg ON tg.goods_id = tag.goods_id
         LEFT JOIN t_goods_file tgf ON tg.goods_id = tgf.goods_id AND tgf.del_flag = 0 AND tgf.file_type = 1
         LEFT JOIN t_shop_goods tsg ON tg.goods_id = tsg.goods_id AND tsg.shop_id = #{param.shopId}
-        WHERE tg.del_flag = 0 AND tg.goods_status = 1
+        WHERE tg.del_flag = 0 AND tg.goods_status = 1 AND tag.del_flag = 0
         <if test="param.activityIdList != null and param.activityIdList.size() > 0">
             AND tag.activity_id IN
             <foreach collection="param.activityIdList" item="item" open="(" separator="," close=")">
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/RuoYiMemberApplication.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/RuoYiMemberApplication.java
index 0321dd2..727366a 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/RuoYiMemberApplication.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/RuoYiMemberApplication.java
@@ -1,10 +1,10 @@
 package com.ruoyi.member;
 
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
 import com.ruoyi.common.security.annotation.EnableCustomConfig;
 import com.ruoyi.common.security.annotation.EnableRyFeignClients;
 import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.context.annotation.ComponentScan;
 import org.springframework.context.annotation.ComponentScans;
 import org.springframework.scheduling.annotation.EnableScheduling;
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/AppMemberBrowseDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/AppMemberBrowseDto.java
new file mode 100644
index 0000000..50f943a
--- /dev/null
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/AppMemberBrowseDto.java
@@ -0,0 +1,25 @@
+package com.ruoyi.member.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.AppBaseDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName AppMemberBrowseDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/7/27 20:44
+ * @Version 1.0
+ */
+@Data
+public class AppMemberBrowseDto extends AppBaseDto {
+
+    @ApiModelProperty(value = "浏览类型1鸿瑞学堂2营销活动3商城商品4关于鸿瑞堂5申请加盟")
+    private Integer browseType;
+
+    @ApiModelProperty(value = "浏览id 营销活动为活动id 商城商品为商品id 关于鸿瑞堂为文章id")
+    private String browseId;
+
+    @ApiModelProperty(value = "浏览名称 营销活动为活动名称 商城商品为商品名称 关于鸿瑞堂为文章名称")
+    private String browseName;
+}
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditPageVo.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditPageVo.java
index 4fc940f..e196c16 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditPageVo.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponAuditPageVo.java
@@ -19,6 +19,9 @@
     @ApiModelProperty(value = "优惠券id")
     private String couponId;
 
+    @ApiModelProperty(value="店铺id")
+    private Long shopId;
+
     @ApiModelProperty(value="店铺名称")
     private String shopName;
 
@@ -56,7 +59,7 @@
 
 
     @ApiModelProperty(value = "发送时间")
-    @JsonFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private Date sendTime;
 
     @ApiModelProperty(value="创建时间")
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java
index db216c4..0cbb294 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java
@@ -672,7 +672,7 @@
             Map<Long, MgtSimpleShopVo> shopMap = simpleShopVoList.stream()
                     .collect(Collectors.toMap(MgtSimpleShopVo::getShopId, Function.identity()));
             for(AppMemberPrizePageVo appMemberPrizePageVo : memberPrizePageVoList){
-                appMemberPrizePageVo.setVerifyShopName(shopMap.get(appMemberPrizePageVo.getShopId().toString()).getShopName());
+                appMemberPrizePageVo.setVerifyShopName(shopMap.get(appMemberPrizePageVo.getShopId()).getShopName());
             }
         }
         return memberPrizePageVoList;
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java
index ba04ab2..b224026 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java
@@ -25,6 +25,7 @@
 import com.ruoyi.system.api.domain.poji.member.MemberCoupon;
 import com.ruoyi.system.api.domain.poji.shop.Shop;
 import com.ruoyi.system.api.domain.vo.MerGoodsPriceListVo;
+import com.ruoyi.system.api.domain.vo.MgtSimpleShopVo;
 import com.ruoyi.system.api.service.RemoteActivityService;
 import com.ruoyi.system.api.service.RemoteConfigService;
 import com.ruoyi.system.api.service.RemoteGoodsService;
@@ -34,11 +35,9 @@
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.StringJoiner;
+import java.util.*;
 import java.util.concurrent.TimeUnit;
+import java.util.function.Function;
 import java.util.stream.Collectors;
 
 /**
@@ -633,6 +632,7 @@
             Date validEndTime;
             Integer validDay;
             String validTime = "";
+            HashSet<Long> shopIdSet = new HashSet<>();
             for(MgtCouponAuditPageVo mgtCouponAuditPageVo : mgtCouponAuditPageVoList){
                 //处理有效期
                 validTimeType = mgtCouponAuditPageVo.getValidTimeType();
@@ -645,6 +645,20 @@
                     validTime = "领取之日起" + validDay.toString() + "天";
                 }
                 mgtCouponAuditPageVo.setValidTime(validTime);
+                if(mgtCouponAuditPageVo.getShopId()!=null){
+                    shopIdSet.add(mgtCouponAuditPageVo.getShopId());
+                }
+            }
+            String shopJoinedString = String.join(",", shopIdSet.stream().map(Object::toString).collect(Collectors.toList()));
+            MgtBaseBathDto mgtBaseBathDto = new MgtBaseBathDto();
+            mgtBaseBathDto.setIds(shopJoinedString);
+            List<MgtSimpleShopVo> simpleShopVoList = remoteShopService.listShopSimpleVoByIds(mgtBaseBathDto).getData();
+            Map<Long, MgtSimpleShopVo> shopMap = simpleShopVoList.stream()
+                    .collect(Collectors.toMap(MgtSimpleShopVo::getShopId, Function.identity()));
+            for(MgtCouponAuditPageVo mgtCouponAuditPageVo : mgtCouponAuditPageVoList){
+                if(mgtCouponAuditPageVo.getShopId()!=null){
+                    mgtCouponAuditPageVo.setShopName(shopMap.get(mgtCouponAuditPageVo.getShopId()).getShopName());
+                }
             }
         }
         return mgtCouponAuditPageVoList;
@@ -906,7 +920,8 @@
         coupon.setCouponName(merCouponEditDto.getCouponName());
         coupon.setSendType(merCouponEditDto.getSendType());
         coupon.setSendTarget(merCouponEditDto.getSendTarget());
-        coupon.setSendTimeType(merCouponEditDto.getSendTimeType());
+        //商户端默认立即发放
+        coupon.setSendTimeType(1);
         coupon.setSendTime(merCouponEditDto.getSendTime());
         coupon.setMoneyThreshold(merCouponEditDto.getMoneyThreshold());
         coupon.setDiscountMoney(merCouponEditDto.getDiscountMoney());
diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java
index 74b1e5d..32acc73 100644
--- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java
+++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java
@@ -81,7 +81,7 @@
             throw new ServiceException(AppErrorConstant.COUPON_EXPIRED);
         } else if (couponStatus == 2) {
             throw new ServiceException(AppErrorConstant.COUPON_USED);
-        } else if (couponStatus != 0) {
+        } else if (couponStatus != 1) {
             throw new ServiceException(AppErrorConstant.COUPON_NO_FIND);
         }
         // 检查优惠券类型
@@ -123,7 +123,7 @@
             throw new ServiceException(AppErrorConstant.COUPON_EXPIRED);
         }else if(memberCoupon.getCouponStatus()==2){
             throw new ServiceException(AppErrorConstant.COUPON_USED);
-        }else if(memberCoupon.getCouponStatus()==-1){
+        }else if(memberCoupon.getCouponStatus()!=1){
             throw new ServiceException(AppErrorConstant.COUPON_NO_FIND);
         }
         if(memberCoupon.getCouponType()!=4){
diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml
index d867f44..9bff2fa 100644
--- a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml
+++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/coupon/CouponMapper.xml
@@ -211,17 +211,18 @@
     <select id="pageMgtAuditCoupon" resultType="com.ruoyi.member.domain.vo.MgtCouponAuditPageVo">
         SELECT
         tc.coupon_id  couponId,
+        tc.shop_id shopId,
         tc.coupon_name  couponName,
         tc.valid_time_type  validTimeType,
         tc.valid_start_time  validStartTime,
         tc.valid_end_time  validEndTime,
         tc.valid_day  validDay,
         CASE tc.use_scope
-        WHEN 1 THEN '全部商品'
+        WHEN 1 THEN '全场通用'
         WHEN 2 THEN '指定商品'
         END useScope,
         CASE tc.send_type
-        WHEN 1 THEN '手动获取'
+        WHEN 1 THEN '手动领取'
         ELSE '指定发放'
         END sendType,
         CASE tc.send_target
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/RuoYiOrderApplication.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/RuoYiOrderApplication.java
index d6f9727..d75a449 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/RuoYiOrderApplication.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/RuoYiOrderApplication.java
@@ -1,10 +1,10 @@
 package com.ruoyi.order;
 
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
 import com.ruoyi.common.security.annotation.EnableCustomConfig;
 import com.ruoyi.common.security.annotation.EnableRyFeignClients;
 import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.context.annotation.ComponentScan;
 import org.springframework.context.annotation.ComponentScans;
 import org.springframework.scheduling.annotation.EnableScheduling;
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppOrderController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppOrderController.java
index 95526fe..d133b16 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppOrderController.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/AppOrderController.java
@@ -19,6 +19,7 @@
 import com.ruoyi.system.api.service.RemoteMemberService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
@@ -108,7 +109,7 @@
 
     @RequestMapping(value = "/placeActivityOrder", method = RequestMethod.POST)
     @ApiOperation(value = "创建活动订单")
-    public R<AppPlaceOrderVo> placeActivityOrder(@RequestBody AppPlaceActivityDto appPlaceActivityDto) {
+    public R<AppPlaceOrderVo> placeActivityOrder(@Validated @RequestBody AppPlaceActivityDto appPlaceActivityDto) {
         Long userId = SecurityUtils.getUserId();
         if(userId!=null){
             Member member = memberService.getMember(userId).getData();
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/AppPlaceActivityDto.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/AppPlaceActivityDto.java
index b8b3a3f..b79b189 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/AppPlaceActivityDto.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/AppPlaceActivityDto.java
@@ -4,6 +4,8 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import javax.validation.constraints.NotNull;
+
 /**
  * @ClassName AppPlaceActivityDto
  * @Description TODO
@@ -19,15 +21,19 @@
 
 
     @ApiModelProperty(value = "活动Id")
+    @NotNull(message = "活动Id不能为空")
     private String activityId;
 
     @ApiModelProperty(value = "商品id")
+    @NotNull(message = "商品id不能为空")
     private String goodsId;
 
     @ApiModelProperty(value = "购买数量")
+    @NotNull(message = "购买数量不能为空")
     private Integer buyNum;
 
     @ApiModelProperty(value = "支付方式1.全款2.订金")
+    @NotNull(message = "支付方式不能为空")
     private Integer payType;
 
     @ApiModelProperty(value = "订单备注")
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/AppPlaceOrderDto.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/AppPlaceOrderDto.java
index fb12e15..d104c96 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/AppPlaceOrderDto.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/dto/AppPlaceOrderDto.java
@@ -4,6 +4,7 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import javax.validation.constraints.NotNull;
 import java.util.List;
 
 /**
@@ -20,6 +21,7 @@
     private Long shopId;
 
     @ApiModelProperty(value = "支付方式1.全款2.订金")
+    @NotNull(message = "支付方式不能为空")
     private Integer payType;
 
     @ApiModelProperty(value = "订单备注")
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/scheduler/OrderScheduler.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/scheduler/OrderScheduler.java
index 0d45bbd..e3985a6 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/scheduler/OrderScheduler.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/scheduler/OrderScheduler.java
@@ -25,7 +25,7 @@
     /**
      * 定时检查跟进任务状态
      */
-    @Scheduled(cron="0 0/5 * * * ?")
+    @Scheduled(cron="0 0/15 * * * ?")
     private void timingCheckMemberCoupon(){
         if(schedulerUtils.getSchedulerRun()) {
             log.info("定时检查订单状态任务开始执行");
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
index a7d7a25..91de5b9 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
@@ -433,6 +433,7 @@
         remoteMemberService.changeMemberTotal(memberTotalChangeDto);
         ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto();
         shopTotalChangeDto.setShopId(shopId);
+        shopTotalChangeDto.setOrderType(1);
         shopTotalChangeDto.setTypeCycleService(1);
         shopTotalChangeDto.setCycleService(cycleService);
         shopTotalChangeDto.setCyclePerson(cyclePerson);
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
index dd6bab7..46d54f3 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -428,6 +428,7 @@
         if(goods.getGoodsStatus()!=1){
             throw new ServiceException(AppErrorConstant.GOODS_DOWN);
         }
+        appPanicBuyVo.setActivityId(activityId);
         appPanicBuyVo.setGoodsId(goodsId);
         appPanicBuyVo.setGoodsName(goods.getGoodsName());
         appPanicBuyVo.setGoodsIntroduction(goods.getGoodsIntroduction());
@@ -1247,8 +1248,12 @@
         order.setOfflinePayMoney(relPayMoney);
         order.setOffPayTime(nowTime);
         order.setPayMoney(order.getPayMoney().add(relPayMoney));
-        order.setCloseFlag(1);
         order.setChangeReceivableMoney(relReceiveMoney);
+        if(order.getPayMoney().compareTo(order.getChangeReceivableMoney())>=0){
+            order.setCloseFlag(1);
+        }else{
+            order.setCloseFlag(0);
+        }
         this.saveOrUpdate(order);
         //创建服务商品
         List<AppUserOrderGoodsPageVo> appUserOrderGoodsPageVoList = orderGoodsService.listAppVoByOrderId(orderId);
@@ -1536,10 +1541,14 @@
     @Override
     public void merCloseOrder(MerCloseOrderDto merCloseOrderDto) {
         Order order = this.getById(merCloseOrderDto.getOrderId());
-        order.setOfflinePayMoney(merCloseOrderDto.getPayMoney());
+        order.setOfflinePayMoney(order.getOfflinePayMoney().add(merCloseOrderDto.getPayMoney()));
         order.setOffPayTime(new Date());
         order.setPayMoney(order.getPayMoney().add(merCloseOrderDto.getPayMoney()));
-        order.setCloseFlag(1);
+        if(order.getPayMoney().compareTo(order.getChangeReceivableMoney())>=0){
+            order.setCloseFlag(0);
+        }else{
+            order.setCloseFlag(1);
+        }
         this.saveOrUpdate(order);
     }
 
@@ -1740,7 +1749,6 @@
         order.setPayMoney(orderPayMoney);
         order.setOnlinePayMoney(new BigDecimal("0.00"));
         order.setOfflinePayMoney(orderPayMoney);
-        order.setCloseFlag(1);
         order.setOrderRemark(merNewOrderDto.getOrderRemark());
         order.setGoodsNum(goodsNum);
         order.setCreateTime(nowTime);
@@ -1752,7 +1760,11 @@
         order.setOfflinePayMoney(merNewOrderDto.getPayMoney());
         order.setOffPayTime(nowTime);
         order.setPayType(1);
-        order.setCloseFlag(1);
+        if(order.getPayMoney().compareTo(order.getChangeReceivableMoney())>=0){
+            order.setCloseFlag(0);
+        }else{
+            order.setCloseFlag(1);
+        }
         this.save(order);
         //创建服务
         List<AppUserOrderGoodsPageVo> appUserOrderGoodsPageVoList = orderGoodsService.listAppVoByOrderId(orderId);
@@ -2783,12 +2795,16 @@
             throw new ServiceException(AppErrorConstant.COUPON_EXPIRED);
         } else if (couponStatus == 2) {
             throw new ServiceException(AppErrorConstant.COUPON_USED);
-        } else if (couponStatus != 0) {
+        } else if (couponStatus != 1) {
             throw new ServiceException(AppErrorConstant.COUPON_NO_FIND);
         }
-        if (!memberCoupon.getShopId().equals(shopId)) {
+        if (memberCoupon.getCouponFrom()==2&&!memberCoupon.getShopId().equals(shopId)) {
             throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
         }
+        //如果是平台优惠券
+        if(memberCoupon.getCouponFrom()==1&&memberCoupon.getShopId()==null){
+            memberCoupon.setShopId(shopId);
+        }
         List<Goods> goodsList = verifyCouponGetVo.getGoodsList();
         Long userId = verifyCouponGetVo.getUserId();
         // 调用remoteMemberService的getMember方法获取Member对象
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/RuoYiShopApplication.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/RuoYiShopApplication.java
index bced810..7d44544 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/RuoYiShopApplication.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/RuoYiShopApplication.java
@@ -1,10 +1,10 @@
 package com.ruoyi.shop;
 
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
 import com.ruoyi.common.security.annotation.EnableCustomConfig;
 import com.ruoyi.common.security.annotation.EnableRyFeignClients;
 import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.context.annotation.ComponentScan;
 import org.springframework.context.annotation.ComponentScans;
 import org.springframework.scheduling.annotation.EnableScheduling;
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java
index b8ad4ff..93d709c 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java
@@ -272,9 +272,9 @@
         Integer platformCouponFlag = shop.getPlatformCouponFlag();
         Integer platformBirthdayFlag = shop.getPlatformBirthdayFlag();
         Integer marketingStatus = 0;
-        if(platformCouponFlag==1&&platformBirthdayFlag==0){
+        if(platformCouponFlag==1&&platformBirthdayFlag==2){
             marketingStatus = 1;
-        }else if(platformCouponFlag==0&&platformBirthdayFlag==1){
+        }else if(platformCouponFlag==2&&platformBirthdayFlag==1){
             marketingStatus = 2;
         }else if(platformCouponFlag==1&&platformBirthdayFlag==1){
             marketingStatus = 3;
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java
index e546fa7..e0d4223 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java
@@ -1,10 +1,10 @@
 package com.ruoyi.system;
 
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
 import com.ruoyi.common.security.annotation.EnableCustomConfig;
 import com.ruoyi.common.security.annotation.EnableRyFeignClients;
 import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.scheduling.annotation.EnableScheduling;
 
 /**
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java
index c815f3a..c6e98ce 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java
@@ -375,7 +375,7 @@
 
     @RequestMapping(value = "/exportPageOperLog", method = RequestMethod.POST)
     @ApiOperation(value = "导出操作日志")
-    public void exportPageOperLog(@RequestBody MgtOperLogPageDto mgtOperLogPageDto, HttpServletResponse response) {
+    public void exportPageOperLog(MgtOperLogPageDto mgtOperLogPageDto, HttpServletResponse response) {
         Long userId = SecurityUtils.getUserId();
         mgtOperLogPageDto.setUserId(userId);
         Page<MgtOperLogPageVo> page = new Page<>();

--
Gitblit v1.7.1