瀏覽代碼

Merge branch 'mj_guide_func' into pre

# Conflicts:
#	netflix-common/src/main/java/com/cyksj/common/constant/Constant.java
#	netflix-service/src/main/java/com/cyksj/service/ticket/impl/UserReceiveTrialTicketRecordServiceImpl.java
#	netflix-web/src/main/java/com/cyksj/web/controller/mirror/MidjourneyController.java
zoujiajian 2 年之前
父節點
當前提交
a2a843c8c7

+ 1 - 1
netflix-common/src/main/java/com/cyksj/common/constant/Constant.java

@@ -326,5 +326,5 @@ public interface Constant {
 	/**
 	 * MJ试用规格id
 	 */
-	Long MIDJOURNEY_TRIAL_SKU_ID = 448L;
+	Long MIDJOURNEY_TRIAL_SKU_ID = 435L;
 }

+ 11 - 0
netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

@@ -3592,4 +3592,15 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 			userTrialTicketJumpPayRecordMapper.insert(userTrialTicketJumpPayRecord);
 		}
 	}
+
+	/**
+	 * 试用车票跳转购买正式车票订单记录
+	 */
+	public void recordOrderTrialTicketJumpPay(Boolean isTrial, Long orderId) {
+		if (isTrial != null && isTrial) {
+			UserTrialTicketJumpPayRecord userTrialTicketJumpPayRecord = new UserTrialTicketJumpPayRecord();
+			userTrialTicketJumpPayRecord.setOrderId(orderId);
+			userTrialTicketJumpPayRecordMapper.insert(userTrialTicketJumpPayRecord);
+		}
+	}
 }

+ 8 - 8
netflix-service/src/main/java/com/cyksj/service/ticket/impl/UserReceiveTrialTicketRecordServiceImpl.java

@@ -56,10 +56,10 @@ public class UserReceiveTrialTicketRecordServiceImpl implements UserReceiveTrial
 		}
 		Long goodsId = sku.getGoodsId();
 		//是否购买过mj镜像
-//		Integer count = orderDonMapper.checkUserHasPaidMjMirror(userIdList);
-//		if (count > 0) {
-//			throw BusinessRuntimeException.getInstance("您不符合领取条件");
-//		}
+		Integer count = orderDonMapper.checkUserHasPaidMjMirror(userIdList);
+		if (count > 0) {
+			throw BusinessRuntimeException.getInstance("您不符合领取条件");
+		}
 
 		Integer selectCount = userReceiveTrialTicketRecordMapper.selectCount(Wrappers.lambdaQuery(UserReceiveTrialTicketRecord.class)
 				.in(UserReceiveTrialTicketRecord::getUserId, userIdList)
@@ -89,10 +89,10 @@ public class UserReceiveTrialTicketRecordServiceImpl implements UserReceiveTrial
 	public Boolean isReceiveTrialTicket(long userId, Long trialSkuId) {
 		List<Long> userIdList = userBindRelationService.getRelationUserIdList(userId, null);
 		//是否购买过mj镜像
-//		Integer count = orderDonMapper.checkUserHasPaidMjMirror(userIdList);
-//		if (count > 0) {
-//			return true;
-//		}
+		Integer count = orderDonMapper.checkUserHasPaidMjMirror(userIdList);
+		if (count > 0) {
+			return true;
+		}
 		Integer selectCount = userReceiveTrialTicketRecordMapper.selectCount(Wrappers.lambdaQuery(UserReceiveTrialTicketRecord.class)
 				.in(UserReceiveTrialTicketRecord::getUserId, userIdList)
 				.eq(UserReceiveTrialTicketRecord::getSkuId, trialSkuId));

+ 37 - 25
netflix-web/src/main/java/com/cyksj/web/controller/mirror/MidjourneyController.java

@@ -1,29 +1,24 @@
 package com.cyksj.web.controller.mirror;
 
 import cn.hutool.core.util.StrUtil;
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.cyksj.common.annotation.NoSubmit;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.cyksj.common.exception.BusinessRuntimeException;
 import com.cyksj.common.util.IoKit;
 import com.cyksj.dto.Result;
 import com.cyksj.enums.GatewayResponse;
 import com.cyksj.mapper.GroupsRelationMapper;
-import com.cyksj.mapper.MidjourneyPaintingCollectRecordMapper;
 import com.cyksj.mapper.MidjourneyPaintingPlazaMapper;
+import com.cyksj.mapper.MidjourneyPaintingCollectRecordMapper;
 import com.cyksj.mapper.MidjourneyUserMapper;
-import com.cyksj.model.entity.MidjourneyUser;
-import com.cyksj.model.entity.MidjourneyUserConversation;
-import com.cyksj.model.response.SubmitResult;
 import com.cyksj.model.dto.*;
-import com.cyksj.model.entity.GroupsRelation;
 import com.cyksj.model.entity.MidjourneyPaintingPlaza;
 import com.cyksj.model.entity.MidjourneyUser;
 import com.cyksj.model.entity.MidjourneyUserConversation;
 import com.cyksj.model.views.MidjourneyPaintingUserView;
 import com.cyksj.model.views.MidjourneyUserPaintingDayRecordView;
 import com.cyksj.model.views.MidjourneyUserPaintingRecordView;
+import com.cyksj.model.response.SubmitResult;
 import com.cyksj.redis.RedisService;
 import com.cyksj.service.midjourney.MidjourneyService;
 import com.cyksj.service.user.UserBindRelationService;
@@ -65,29 +60,46 @@ public class MidjourneyController {
 
     private final GroupsRelationMapper groupsRelationMapper;
 
-    private final UserBindRelationService userBindRelationService;
-
     private final MidjourneyPaintingPlazaMapper midjourneyPaintingPlazaMapper;
 
-    private final MidjourneyPaintingCollectRecordMapper midjourneyPaintingCollectRecordMapper;
-
     public MidjourneyUser getUser(){
         String userToken = request.getHeader("user-token");
-
-        MidjourneyUser midjourneyUser = midjourneyUserMapper.selectOne(Wrappers.lambdaQuery(MidjourneyUser.class)
-                .eq(MidjourneyUser::getUserToken, userToken).last("limit 1"));
+        MidjourneyUser midjourneyUser = (MidjourneyUser) redisService.get(RedisService.key.MIDJOURNEY_USER.getName() + userToken);
         if (midjourneyUser == null){
-            throw new BusinessRuntimeException("账号不存在,请重新登录");
-        }
-        Long relationId = midjourneyUser.getRelationId();
-        GroupsRelation relation = groupsRelationMapper.selectById(relationId);
-        midjourneyUser.setAqType(relation.getAqType());
-        if(!redisService.hasKey(RedisService.key.MIDJOURNEY_FAST_LIMIT.getName() + midjourneyUser.getId())){
-            redisService.set(RedisService.key.MIDJOURNEY_FAST_LIMIT.getName() + midjourneyUser.getId(),midjourneyUser.getMjFastNum());
-        }
-
-        if(!redisService.hasKey(RedisService.key.MIDJOURNEY_RELAX_LIMIT.getName() + midjourneyUser.getId())){
-            redisService.set(RedisService.key.MIDJOURNEY_RELAX_LIMIT.getName() + midjourneyUser.getId(),midjourneyUser.getMjRelaxNum());
+            midjourneyUser = midjourneyUserMapper.selectOne(Wrappers.lambdaQuery(MidjourneyUser.class)
+                    .eq(MidjourneyUser::getUserToken, userToken).last("limit 1"));
+            if (midjourneyUser == null){
+                throw new BusinessRuntimeException("账号不存在,请重新登录");
+            }
+            Long relationId = midjourneyUser.getRelationId();
+            GroupsRelation relation = groupsRelationMapper.selectById(relationId);
+            midjourneyUser.setAqType(relation.getAqType());
+            redisService.set(RedisService.key.MIDJOURNEY_USER.getName() + userToken, midjourneyUser, RedisService.key.MIDJOURNEY_USER.getTimeout());
+            Object fastNum = redisService.get(RedisService.key.MIDJOURNEY_FAST_LIMIT.getName() + midjourneyUser.getId());
+            if (fastNum == null){
+                redisService.set(RedisService.key.MIDJOURNEY_FAST_LIMIT.getName() + midjourneyUser.getId(), midjourneyUser.getMjFastNum(), RedisService.key.MIDJOURNEY_FAST_LIMIT.getTimeout());
+            }
+            Object relaxNum = redisService.get(RedisService.key.MIDJOURNEY_RELAX_LIMIT.getName() + midjourneyUser.getId());
+            if (relaxNum == null){
+                if (midjourneyUser.getMjRelaxNum() != null){
+                    redisService.set(RedisService.key.MIDJOURNEY_RELAX_LIMIT.getName() + midjourneyUser.getId(), midjourneyUser.getMjRelaxNum(), RedisService.key.MIDJOURNEY_RELAX_LIMIT.getTimeout());
+                }
+            }
+        }else {
+            Object fastNum = redisService.get(RedisService.key.MIDJOURNEY_FAST_LIMIT.getName() + midjourneyUser.getId());
+            if (fastNum == null){
+                redisService.set(RedisService.key.MIDJOURNEY_FAST_LIMIT.getName() + midjourneyUser.getId(), midjourneyUser.getMjFastNum(), RedisService.key.MIDJOURNEY_FAST_LIMIT.getTimeout());
+            }else {
+                midjourneyUser.setMjFastNum(Integer.parseInt(fastNum.toString()));
+            }
+            Object relaxNum = redisService.get(RedisService.key.MIDJOURNEY_RELAX_LIMIT.getName() + midjourneyUser.getId());
+            if (relaxNum == null){
+                if (midjourneyUser.getMjRelaxNum() != null){
+                    redisService.set(RedisService.key.MIDJOURNEY_RELAX_LIMIT.getName() + midjourneyUser.getId(), midjourneyUser.getMjRelaxNum(), RedisService.key.MIDJOURNEY_RELAX_LIMIT.getTimeout());
+                }
+            }else {
+                midjourneyUser.setMjRelaxNum(Integer.parseInt(relaxNum.toString()));
+            }
         }
 
         return midjourneyUser;