From 9c5ebf3ef8b62884007b7f241a863db4047dbf1b Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 20 Aug 2025 10:37:32 +0800
Subject: [PATCH] feat(ai): 为产品亮点添加小图标功能
---
src/main/java/cc/mrbird/febs/ai/service/impl/AiProductPointServiceImpl.java | 2 +
src/main/resources/templates/febs/views/modules/ai/productPoint/info.html | 46 +++++++++++++++++++++++
src/main/java/cc/mrbird/febs/ai/entity/AiProductPoint.java | 5 ++
src/main/resources/templates/febs/views/modules/ai/productPoint/add.html | 41 ++++++++++++++++++++
4 files changed, 94 insertions(+), 0 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/ai/entity/AiProductPoint.java b/src/main/java/cc/mrbird/febs/ai/entity/AiProductPoint.java
index b153e9b..d094130 100644
--- a/src/main/java/cc/mrbird/febs/ai/entity/AiProductPoint.java
+++ b/src/main/java/cc/mrbird/febs/ai/entity/AiProductPoint.java
@@ -34,6 +34,11 @@
private String feedId;
/**
+ * 视频封面
+ */
+ private String feedImg;
+
+ /**
* 标题
*/
private String title;
diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductPointServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductPointServiceImpl.java
index 8bead4e..01eddb5 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductPointServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductPointServiceImpl.java
@@ -56,6 +56,7 @@
entity.setIsNormal(dto.getIsNormal() );
entity.setFinderUserName(dto.getFinderUserName());
entity.setFeedId(dto.getFeedId());
+ entity.setFeedImg(dto.getFeedImg());
entity.setTitle(dto.getTitle());
entity.setDescription(dto.getDescription());
entity.setCreatedTime(new Date());
@@ -74,6 +75,7 @@
.set(AiProductPoint::getFinderUserName, dto.getFinderUserName())
.set(AiProductPoint::getFeedId, dto.getFeedId())
.set(AiProductPoint::getTitle, dto.getTitle())
+ .set(AiProductPoint::getFeedImg, dto.getFeedImg())
.set(AiProductPoint::getDescription, dto.getDescription())
.set(AiProductPoint::getUpdatedTime, new Date())
.eq(AiProductPoint::getId, id)
diff --git a/src/main/resources/templates/febs/views/modules/ai/productPoint/add.html b/src/main/resources/templates/febs/views/modules/ai/productPoint/add.html
index e27e06d..4086992 100644
--- a/src/main/resources/templates/febs/views/modules/ai/productPoint/add.html
+++ b/src/main/resources/templates/febs/views/modules/ai/productPoint/add.html
@@ -37,6 +37,30 @@
</div>
</div>
</div>
+ <div class="layui-form-item febs-hide tc-set">
+ <div class="layui-row layui-col-space10 layui-form-item">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">小图标:</label>
+ <div class="layui-input-block">
+ <div class="layui-upload">
+ <button type="button" class="layui-btn layui-btn-normal layui-btn" id="productPointImageUploadButton">上传</button>
+ <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
+ <div class="layui-upload-list" id="productPointImageUpload"></div>
+ </blockquote>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="layui-row layui-col-space10 layui-form-item febs-hide">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label">小图标链接:</label>
+ <div class="layui-input-block">
+ <input type="text" id="feedImg" lay-verify="required" name="feedImg" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ </div>
+ </div>
<div class="layui-row layui-col-space10 layui-form-item">
<div class="layui-col-lg6">
<label class="layui-form-label febs-form-item-require">标题:</label>
@@ -130,6 +154,23 @@
})
});
+ //图片上传
+ upload.render({
+ elem: '#productPointImageUploadButton'
+ ,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
+ ,accept: 'file' //普通文件
+ ,size: 10240 //限制文件大小,单位 KB
+ ,before: function(obj){
+ //预读本地文件示例,不支持ie8
+ obj.preview(function(index, file, result){
+ $('#productPointImageUpload').html('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img single-image" style="width: 130px">')
+ });
+ }
+ ,done: function(res){
+ $("#feedImg").val(res.data.src);
+ }
+ });
+
form.on('submit(productPoint-add-form-submit)', function (data) {
data.field.description = editor.txt.html();
$.ajax({
diff --git a/src/main/resources/templates/febs/views/modules/ai/productPoint/info.html b/src/main/resources/templates/febs/views/modules/ai/productPoint/info.html
index 0d86d8b..4307f2b 100644
--- a/src/main/resources/templates/febs/views/modules/ai/productPoint/info.html
+++ b/src/main/resources/templates/febs/views/modules/ai/productPoint/info.html
@@ -40,6 +40,31 @@
</div>
</div>
</div>
+
+ <div class="layui-form-item febs-hide tc-set">
+ <div class="layui-row layui-col-space10 layui-form-item">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">小图标:</label>
+ <div class="layui-input-block">
+ <div class="layui-upload">
+ <button type="button" class="layui-btn layui-btn-normal layui-btn" id="productPointImageUploadButton">上传</button>
+ <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
+ <div class="layui-upload-list" id="productPointImageUpload"></div>
+ </blockquote>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="layui-row layui-col-space10 layui-form-item febs-hide">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label">小图标链接:</label>
+ <div class="layui-input-block">
+ <input type="text" id="feedImg" lay-verify="required" name="feedImg" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+ </div>
+ </div>
<div class="layui-row layui-col-space10 layui-form-item">
<div class="layui-col-lg6">
<label class="layui-form-label febs-form-item-require">标题:</label>
@@ -138,6 +163,23 @@
})
});
+ //图片上传
+ upload.render({
+ elem: '#productPointImageUploadButton'
+ ,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
+ ,accept: 'file' //普通文件
+ ,size: 10240 //限制文件大小,单位 KB
+ ,before: function(obj){
+ //预读本地文件示例,不支持ie8
+ obj.preview(function(index, file, result){
+ $('#productPointImageUpload').html('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img single-image" style="width: 130px">')
+ });
+ }
+ ,done: function(res){
+ $("#feedImg").val(res.data.src);
+ }
+ });
+
setTimeout(() => {
initProductPointInfo();
}, 500);
@@ -150,6 +192,10 @@
"feedId": aiProductPoint.feedId,
});
+
+
+ $('#productPointImageUpload').append('<img src="' + aiProductPoint.feedImg + '" alt="" class="layui-upload-img single-image" style="width: 130px">');
+ $("#feedImg").val(aiProductPoint.feedImg);
editor.txt.html(aiProductPoint.description);
if (aiProductPoint.isNormal == 2) {
--
Gitblit v1.9.1