zoujiajian 1 year ago
parent
commit
d65d4df403

+ 13 - 0
netflix-dao/src/main/java/com/cyksj/mapper/mini/MiniPopularizeConfigUseRecordMapper.java

@@ -0,0 +1,13 @@
+package com.cyksj.mapper.mini;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.cyksj.model.entity.MiniPopularizeConfigUseRecord;
+
+/**
+ * 项目名: yhlxj2
+ * 文件名: MiniPopularizeConfigUseRecordMapper
+ * 创建者: JavaZou
+ * 创建时间:2025/4/14 15:17
+ */
+public interface MiniPopularizeConfigUseRecordMapper extends BaseMapper<MiniPopularizeConfigUseRecord> {
+}

+ 18 - 0
netflix-dao/src/main/java/com/cyksj/model/entity/MiniPopularizeConfigUseRecord.java

@@ -0,0 +1,18 @@
+package com.cyksj.model.entity;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 项目名: yhlxj2
+ * 文件名: MiniPopularizeConfigUseRecord
+ * 创建者: JavaZou
+ * 创建时间:2025/4/14 15:16
+ */
+@Getter
+@Setter
+public class MiniPopularizeConfigUseRecord extends BaseEntity{
+	private Long configId;
+
+	private Long userId;
+}

+ 8 - 0
netflix-dao/src/main/java/com/cyksj/model/views/MiniPopularizeConfigView.java

@@ -2,6 +2,7 @@ package com.cyksj.model.views;
 
 import com.cyksj.model.entity.MiniPopularizeConfig;
 import com.ejlchina.searcher.bean.DbField;
+import com.ejlchina.searcher.bean.DbIgnore;
 import com.ejlchina.searcher.bean.SearchBean;
 import lombok.Getter;
 import lombok.Setter;
@@ -48,6 +49,13 @@ public class MiniPopularizeConfigView {
 	@DbField("mpc.status")
 	private Boolean status;
 
+	/**
+	 * 使用次数
+	 */
+	@DbIgnore
+	@DbField("select count(1) from mini_popularize_config_use_record mmr where mmr.config_id = mpc.id")
+	private Integer count;
+
 	@DbField("mpc.created_time")
 	private Date createdTime;
 

+ 13 - 0
netflix-service/src/main/java/com/cyksj/service/mini/impl/MiniPopularizeFrontServiceImpl.java

@@ -58,6 +58,9 @@ public class MiniPopularizeFrontServiceImpl implements MiniPopularizeFrontServic
 	private final MiniPopularizeConfigMapper miniPopularizeConfigMapper;
 
 	private final MiniPopularizeUserConversationChatMapper conversationChatMapper;
+
+	private final MiniPopularizeConfigUseRecordMapper miniPopularizeConfigUseRecordMapper;
+
 	/**
 	 * 连接超时
 	 */
@@ -201,6 +204,9 @@ public class MiniPopularizeFrontServiceImpl implements MiniPopularizeFrontServic
 					.header(Header.AUTHORIZATION.name(), GPT_DRAW_TOKEN)
 					.build();
 			factory.newEventSource(request, eventSourceListener);
+			if (miniAiPicturesReq.getId() != null) {
+				recordConfigUseRecord(miniAiPicturesReq.getId(), miniAiPicturesReq.getUserId());
+			}
 		} catch (Exception e) {
 			log.error("gpt create image请求出错:{}", StringUtil.getErrorText(e));
 		}
@@ -230,4 +236,11 @@ public class MiniPopularizeFrontServiceImpl implements MiniPopularizeFrontServic
 		client.readTimeout(TIMEOUT, TimeUnit.SECONDS);
 		return client.build();
 	}
+
+	public void recordConfigUseRecord(Long configId, Long userId) {
+		MiniPopularizeConfigUseRecord miniPopularizeConfigUseRecord = new MiniPopularizeConfigUseRecord();
+		miniPopularizeConfigUseRecord.setConfigId(configId);
+		miniPopularizeConfigUseRecord.setUserId(userId);
+		miniPopularizeConfigUseRecordMapper.insert(miniPopularizeConfigUseRecord);
+	}
 }