Sfoglia il codice sorgente

mj用户镜像详情

zoujiajian 2 anni fa
parent
commit
c740272e9f

+ 10 - 0
netflix-dao/src/main/java/com/cyksj/model/views/MidjourneyUserDetailView.java

@@ -3,6 +3,8 @@ package com.cyksj.model.views;
 import lombok.Getter;
 import lombok.Setter;
 
+import java.util.Date;
+
 /**
  * 项目名: yhlxj
  * 文件名: MidjourneyUserDetailView
@@ -15,4 +17,12 @@ public class MidjourneyUserDetailView {
 	private Integer useFastNum;
 
 	private Integer useRelaxNum;
+
+	private Integer mjFastNum;
+
+	private Integer mjRelaxNum;
+
+	private Long userId;
+
+	private Date expiryTime;
 }

+ 30 - 4
netflix-web/src/main/java/com/cyksj/web/controller/manage/CmsOrderController.java

@@ -109,6 +109,8 @@ public class CmsOrderController {
 
 	private final MidjourneyUserConversationMapper midjourneyUserConversationMapper;
 
+	private final MidjourneyUserMapper midjourneyUserMapper;
+
 
 	@GetMapping("/get")
 	@SaCheckPermission("order:view")
@@ -968,9 +970,33 @@ public class CmsOrderController {
 	 * midjourney查询订单用户账号剩余次数
 	 */
 	@GetMapping("/get/midjourney/user")
-	public Result<SearchResult<MidjourneyUserView>> getMidjourneyUser(Long userId,Long relationId) {
-		SearchResult<MidjourneyUserView> search = beanSearcher.search(MidjourneyUserView.class, MapUtils.flatBuilder(request.getParameterMap())
-				.field(MidjourneyUserView::getUserId,userId).field(MidjourneyUserView::getRelationId,relationId).build());
-		return GatewayResponse.SUCCESS.newBuilder().toResult(search);
+	public Result<MidjourneyUserDetailView> getMidjourneyUser(Long orderId) {
+		OrderDon orderDon = orderDonMapper.selectById(orderId);
+		//续费订单
+		Date startTime = null;
+		Date expiryTime = null;
+		if (orderDon.getOrderType() == 2) {
+			GoodsDonSku sku = skuMapper.selectById(orderDon.getSkuId());
+			GroupsRelation relation = relationMapper.selectOne(Wrappers.lambdaQuery(GroupsRelation.class)
+					.eq(GroupsRelation::getId, orderDon.getRelationId())
+					.eq(GroupsRelation::getUserId, orderDon.getUserId()).last("limit 1"));
+			if (relation == null) {
+				return GatewayResponse.SUCCESS.newBuilder().toResult();
+			}
+			startTime = relation.getStartTime();
+			startTime = DateUtil.offsetMonth(startTime, sku.getMonths());
+			expiryTime = relation.getExpiryTime();
+		}
+		MidjourneyUserDetailView midjourneyUserDetailView = midjourneyUserConversationMapper.getMjMirrorOrderDetail(orderDon.getRelationId(), startTime, expiryTime);
+
+		GoodsDonSku sku = skuMapper.selectById(orderDon.getSkuId());
+		MidjourneyUser midjourneyUser = midjourneyUserMapper.selectOne(Wrappers.lambdaQuery(MidjourneyUser.class)
+				.eq(MidjourneyUser::getRelationId, orderDon.getRelationId())
+				.last("limit 1"));
+		midjourneyUserDetailView.setUserId(orderDon.getUserId());
+		midjourneyUserDetailView.setExpiryTime(midjourneyUser.getExpireTime());
+		midjourneyUserDetailView.setMjFastNum(sku.getMjFastNum() - midjourneyUserDetailView.getUseFastNum());
+		midjourneyUserDetailView.setMjRelaxNum(sku.getMjRelaxNum() - midjourneyUserDetailView.getUseRelaxNum());
+		return GatewayResponse.SUCCESS.newBuilder().toResult(midjourneyUserDetailView);
 	}
 }